@bitgo-beta/sdk-coin-apt 1.0.1-beta.142 → 1.0.1-beta.1421
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/apt.d.ts +17 -3
- package/dist/src/apt.d.ts.map +1 -1
- package/dist/src/apt.js +47 -14
- package/dist/src/aptNFTCollection.d.ts +18 -0
- package/dist/src/aptNFTCollection.d.ts.map +1 -0
- package/dist/src/aptNFTCollection.js +52 -0
- package/dist/src/aptToken.d.ts +1 -1
- package/dist/src/aptToken.d.ts.map +1 -1
- package/dist/src/aptToken.js +3 -3
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/lib/constants.d.ts +9 -0
- package/dist/src/lib/constants.d.ts.map +1 -1
- package/dist/src/lib/constants.js +11 -2
- package/dist/src/lib/iface.d.ts +95 -1
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +1 -1
- package/dist/src/lib/index.d.ts +15 -5
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +30 -10
- package/dist/src/lib/transaction/abstractDelegationPoolAmountBasedTransaction.d.ts +21 -0
- package/dist/src/lib/transaction/abstractDelegationPoolAmountBasedTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/abstractDelegationPoolAmountBasedTransaction.js +61 -0
- package/dist/src/lib/transaction/abstractDelegationPoolTransaction.d.ts +13 -0
- package/dist/src/lib/transaction/abstractDelegationPoolTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/abstractDelegationPoolTransaction.js +23 -0
- package/dist/src/lib/transaction/abstractTransferTransaction.d.ts +10 -0
- package/dist/src/lib/transaction/abstractTransferTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/abstractTransferTransaction.js +39 -0
- package/dist/src/lib/transaction/customTransaction.d.ts +89 -0
- package/dist/src/lib/transaction/customTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/customTransaction.js +278 -0
- package/dist/src/lib/transaction/delegationPoolAddStakeTransaction.d.ts +10 -0
- package/dist/src/lib/transaction/delegationPoolAddStakeTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/delegationPoolAddStakeTransaction.js +48 -0
- package/dist/src/lib/transaction/delegationPoolUnlockTransaction.d.ts +10 -0
- package/dist/src/lib/transaction/delegationPoolUnlockTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/delegationPoolUnlockTransaction.js +24 -0
- package/dist/src/lib/transaction/delegationPoolWithdrawTransaction.d.ts +10 -0
- package/dist/src/lib/transaction/delegationPoolWithdrawTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/delegationPoolWithdrawTransaction.js +43 -0
- package/dist/src/lib/transaction/digitalAssetTransfer.d.ts +5 -4
- package/dist/src/lib/transaction/digitalAssetTransfer.d.ts.map +1 -1
- package/dist/src/lib/transaction/digitalAssetTransfer.js +20 -33
- package/dist/src/lib/transaction/fungibleAssetTransfer.d.ts +7 -4
- package/dist/src/lib/transaction/fungibleAssetTransfer.d.ts.map +1 -1
- package/dist/src/lib/transaction/fungibleAssetTransfer.js +52 -38
- package/dist/src/lib/transaction/transaction.d.ts +22 -4
- package/dist/src/lib/transaction/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction/transaction.js +46 -24
- package/dist/src/lib/transaction/transferTransaction.d.ts +7 -4
- package/dist/src/lib/transaction/transferTransaction.d.ts.map +1 -1
- package/dist/src/lib/transaction/transferTransaction.js +43 -37
- package/dist/src/lib/transactionBuilder/customTransactionBuilder.d.ts +64 -0
- package/dist/src/lib/transactionBuilder/customTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/customTransactionBuilder.js +127 -0
- package/dist/src/lib/transactionBuilder/delegationPoolAddStakeTransactionBuilder.d.ts +15 -0
- package/dist/src/lib/transactionBuilder/delegationPoolAddStakeTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/delegationPoolAddStakeTransactionBuilder.js +50 -0
- package/dist/src/lib/transactionBuilder/delegationPoolUnlockTransactionBuilder.d.ts +15 -0
- package/dist/src/lib/transactionBuilder/delegationPoolUnlockTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/delegationPoolUnlockTransactionBuilder.js +50 -0
- package/dist/src/lib/transactionBuilder/delegationPoolWithdrawTransactionBuilder.d.ts +15 -0
- package/dist/src/lib/transactionBuilder/delegationPoolWithdrawTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/delegationPoolWithdrawTransactionBuilder.js +50 -0
- package/dist/src/lib/transactionBuilder/digitalAssetTransferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder/digitalAssetTransferBuilder.js +3 -2
- package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.d.ts +1 -0
- package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder/fungibleAssetTransferBuilder.js +14 -13
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts +6 -0
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder/transactionBuilder.js +25 -5
- package/dist/src/lib/transactionBuilder/transferBuilder.d.ts +1 -0
- package/dist/src/lib/transactionBuilder/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder/transferBuilder.js +13 -11
- package/dist/src/lib/transactionBuilderFactory.d.ts +15 -7
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +48 -11
- package/dist/src/lib/utils/validation.d.ts +32 -0
- package/dist/src/lib/utils/validation.d.ts.map +1 -0
- package/dist/src/lib/utils/validation.js +99 -0
- package/dist/src/lib/utils.d.ts +22 -2
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +91 -2
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/test/integration/index.d.ts +1 -0
- package/dist/test/integration/index.d.ts.map +1 -0
- package/dist/test/integration/index.js +1 -0
- package/dist/test/resources/apt.d.ts +56 -0
- package/dist/test/resources/apt.d.ts.map +1 -0
- package/dist/test/resources/apt.js +115 -0
- package/dist/test/unit/apt.d.ts +2 -0
- package/dist/test/unit/apt.d.ts.map +1 -0
- package/dist/test/unit/apt.js +360 -0
- package/dist/test/unit/aptToken.d.ts +2 -0
- package/dist/test/unit/aptToken.d.ts.map +1 -0
- package/dist/test/unit/aptToken.js +92 -0
- package/dist/test/unit/customTransaction.test.d.ts +2 -0
- package/dist/test/unit/customTransaction.test.d.ts.map +1 -0
- package/dist/test/unit/customTransaction.test.js +264 -0
- package/dist/test/unit/getBuilderFactory.d.ts +3 -0
- package/dist/test/unit/getBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/getBuilderFactory.js +10 -0
- package/dist/test/unit/keyPair.d.ts +2 -0
- package/dist/test/unit/keyPair.d.ts.map +1 -0
- package/dist/test/unit/keyPair.js +71 -0
- package/dist/test/unit/transactionBuilder/customTransactionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/customTransactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/customTransactionBuilder.js +743 -0
- package/dist/test/unit/transactionBuilder/delegationPoolAddStakeTransactionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/delegationPoolAddStakeTransactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/delegationPoolAddStakeTransactionBuilder.js +172 -0
- package/dist/test/unit/transactionBuilder/delegationPoolUnlockTransactionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/delegationPoolUnlockTransactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/delegationPoolUnlockTransactionBuilder.js +148 -0
- package/dist/test/unit/transactionBuilder/delegationPoolWithdrawTransactionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/delegationPoolWithdrawTransactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/delegationPoolWithdrawTransactionBuilder.js +172 -0
- package/dist/test/unit/transactionBuilder/digitalAssetTransferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/digitalAssetTransferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/digitalAssetTransferBuilder.js +276 -0
- package/dist/test/unit/transactionBuilder/fungibleAssetTransferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/fungibleAssetTransferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/fungibleAssetTransferBuilder.js +449 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transferBuilder.js +529 -0
- package/dist/test/unit/utils.d.ts +2 -0
- package/dist/test/unit/utils.d.ts.map +1 -0
- package/dist/test/unit/utils.js +108 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +15 -11
- package/.eslintignore +0 -4
- package/.gitignore +0 -3
- package/.mocharc.yml +0 -8
- package/.prettierignore +0 -2
- package/CHANGELOG.md +0 -114
|
@@ -10,5 +10,6 @@ export declare class FungibleAssetTransferBuilder extends TransactionBuilder {
|
|
|
10
10
|
/** @inheritdoc */
|
|
11
11
|
validateTransaction(transaction?: FungibleAssetTransfer): void;
|
|
12
12
|
protected isValidTransactionPayload(payload: TransactionPayload): boolean;
|
|
13
|
+
private isValidPayload;
|
|
13
14
|
}
|
|
14
15
|
//# sourceMappingURL=fungibleAssetTransferBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fungibleAssetTransferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/fungibleAssetTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"fungibleAssetTransferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/fungibleAssetTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAmC,MAAM,oBAAoB,CAAC;AAIzF,qBAAa,4BAA6B,SAAQ,kBAAkB;gBACtD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IAM5C,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI;IAQ9D,SAAS,CAAC,yBAAyB,CAAC,OAAO,EAAE,kBAAkB;IAmB/D,OAAO,CAAC,cAAc;CASvB"}
|
|
@@ -7,10 +7,10 @@ exports.FungibleAssetTransferBuilder = void 0;
|
|
|
7
7
|
const transactionBuilder_1 = require("./transactionBuilder");
|
|
8
8
|
const fungibleAssetTransfer_1 = require("../transaction/fungibleAssetTransfer");
|
|
9
9
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
10
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
11
10
|
const utils_1 = __importDefault(require("../utils"));
|
|
12
11
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
13
12
|
const constants_1 = require("../constants");
|
|
13
|
+
const logger_1 = require("@bitgo-beta/logger");
|
|
14
14
|
class FungibleAssetTransferBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
15
15
|
constructor(_coinConfig) {
|
|
16
16
|
super(_coinConfig);
|
|
@@ -35,27 +35,28 @@ class FungibleAssetTransferBuilder extends transactionBuilder_1.TransactionBuild
|
|
|
35
35
|
}
|
|
36
36
|
isValidTransactionPayload(payload) {
|
|
37
37
|
try {
|
|
38
|
-
if (!(payload
|
|
39
|
-
payload.entryFunction.args.length !== 3 ||
|
|
40
|
-
payload.entryFunction.type_args.length !== 1 ||
|
|
41
|
-
constants_1.FUNGIBLE_ASSET_TYPE_ARGUMENT !== payload.entryFunction.type_args[0].toString()) {
|
|
38
|
+
if (!this.isValidPayload(payload)) {
|
|
42
39
|
console.error('invalid transaction payload');
|
|
43
40
|
return false;
|
|
44
41
|
}
|
|
45
42
|
const entryFunction = payload.entryFunction;
|
|
46
43
|
const fungibleTokenAddress = entryFunction.args[0].toString();
|
|
47
|
-
const
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
return (utils_1.default.isValidAddress(recipientAddress) &&
|
|
51
|
-
utils_1.default.isValidAddress(fungibleTokenAddress) &&
|
|
52
|
-
!recipientAmount.isLessThan(0));
|
|
44
|
+
const addressArg = entryFunction.args[1];
|
|
45
|
+
const amountArg = entryFunction.args[2];
|
|
46
|
+
return (utils_1.default.isValidAddress(fungibleTokenAddress) && utils_1.default.fetchAndValidateRecipients(addressArg, amountArg).isValid);
|
|
53
47
|
}
|
|
54
48
|
catch (e) {
|
|
55
|
-
|
|
49
|
+
logger_1.logger.error('invalid transaction payload', e);
|
|
56
50
|
return false;
|
|
57
51
|
}
|
|
58
52
|
}
|
|
53
|
+
isValidPayload(payload) {
|
|
54
|
+
return (payload instanceof ts_sdk_1.TransactionPayloadEntryFunction &&
|
|
55
|
+
payload.entryFunction.args.length === 3 &&
|
|
56
|
+
(payload.entryFunction.type_args.length === 0 ||
|
|
57
|
+
(payload.entryFunction.type_args.length === 1 &&
|
|
58
|
+
constants_1.FUNGIBLE_ASSET_TYPE_ARGUMENT === payload.entryFunction.type_args[0].toString())));
|
|
59
|
+
}
|
|
59
60
|
}
|
|
60
61
|
exports.FungibleAssetTransferBuilder = FungibleAssetTransferBuilder;
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyL2Z1bmdpYmxlQXNzZXRUcmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkRBQTBEO0FBRTFELGdGQUE2RTtBQUM3RSxtREFBdUQ7QUFDdkQscURBQTZCO0FBQzdCLCtDQUF5RjtBQUN6Riw0Q0FBNEQ7QUFDNUQsK0NBQTRDO0FBRTVDLE1BQWEsNEJBQTZCLFNBQVEsdUNBQWtCO0lBQ2xFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxTQUFTLENBQUM7SUFDbkMsQ0FBQztJQUNELDhGQUE4RjtJQUM5RixPQUFPLENBQUMsT0FBZTtRQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxXQUFtQztRQUNyRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO1FBQzVELENBQUM7UUFDRCxLQUFLLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRVMseUJBQXlCLENBQUMsT0FBMkI7UUFDN0QsSUFBSSxDQUFDO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsT0FBTyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO2dCQUM3QyxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7WUFDRCxNQUFNLGFBQWEsR0FBSSxPQUEyQyxDQUFDLGFBQWEsQ0FBQztZQUNqRixNQUFNLG9CQUFvQixHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDOUQsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sQ0FDTCxlQUFLLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQUksZUFBSyxDQUFDLDBCQUEwQixDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQzlHLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLGVBQU0sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDL0MsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUEyQjtRQUNoRCxPQUFPLENBQ0wsT0FBTyxZQUFZLHdDQUErQjtZQUNsRCxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUN2QyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDO2dCQUMzQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDO29CQUMzQyx3Q0FBNEIsS0FBSyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQ3JGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFyREQsb0VBcURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgRnVuZ2libGVBc3NldFRyYW5zZmVyIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24vZnVuZ2libGVBc3NldFRyYW5zZmVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB1dGlscyBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblBheWxvYWQsIFRyYW5zYWN0aW9uUGF5bG9hZEVudHJ5RnVuY3Rpb24gfSBmcm9tICdAYXB0b3MtbGFicy90cy1zZGsnO1xuaW1wb3J0IHsgRlVOR0lCTEVfQVNTRVRfVFlQRV9BUkdVTUVOVCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICdAYml0Z28tYmV0YS9sb2dnZXInO1xuXG5leHBvcnQgY2xhc3MgRnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBGdW5naWJsZUFzc2V0VHJhbnNmZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmRUb2tlbjtcbiAgfVxuICAvL1RPRE86IFRpY2tldDogQ09JTi0yOTQxIDogQ2hlY2sgU3RhdGljcyBiYXNlZCBhc3NldCB2YWxpZGF0aW9uIGFuZCBpZiBwb3NzaWJsZSwgaW1wbGVtZW50IGl0XG4gIGFzc2V0SWQoYXNzZXRJZDogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IGFzc2V0SWQgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5hc3NldElkID0gYXNzZXRJZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uPzogRnVuZ2libGVBc3NldFRyYW5zZmVyKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdmdW5naWJsZSBhc3NldCB0cmFuc2FjdGlvbiBub3QgZGVmaW5lZCcpO1xuICAgIH1cbiAgICBzdXBlci52YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uKTtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHRyYW5zYWN0aW9uLmFzc2V0SWQgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNWYWxpZFRyYW5zYWN0aW9uUGF5bG9hZChwYXlsb2FkOiBUcmFuc2FjdGlvblBheWxvYWQpIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCF0aGlzLmlzVmFsaWRQYXlsb2FkKHBheWxvYWQpKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2ludmFsaWQgdHJhbnNhY3Rpb24gcGF5bG9hZCcpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICBjb25zdCBlbnRyeUZ1bmN0aW9uID0gKHBheWxvYWQgYXMgVHJhbnNhY3Rpb25QYXlsb2FkRW50cnlGdW5jdGlvbikuZW50cnlGdW5jdGlvbjtcbiAgICAgIGNvbnN0IGZ1bmdpYmxlVG9rZW5BZGRyZXNzID0gZW50cnlGdW5jdGlvbi5hcmdzWzBdLnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCBhZGRyZXNzQXJnID0gZW50cnlGdW5jdGlvbi5hcmdzWzFdO1xuICAgICAgY29uc3QgYW1vdW50QXJnID0gZW50cnlGdW5jdGlvbi5hcmdzWzJdO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgdXRpbHMuaXNWYWxpZEFkZHJlc3MoZnVuZ2libGVUb2tlbkFkZHJlc3MpICYmIHV0aWxzLmZldGNoQW5kVmFsaWRhdGVSZWNpcGllbnRzKGFkZHJlc3NBcmcsIGFtb3VudEFyZykuaXNWYWxpZFxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoJ2ludmFsaWQgdHJhbnNhY3Rpb24gcGF5bG9hZCcsIGUpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNWYWxpZFBheWxvYWQocGF5bG9hZDogVHJhbnNhY3Rpb25QYXlsb2FkKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIHBheWxvYWQgaW5zdGFuY2VvZiBUcmFuc2FjdGlvblBheWxvYWRFbnRyeUZ1bmN0aW9uICYmXG4gICAgICBwYXlsb2FkLmVudHJ5RnVuY3Rpb24uYXJncy5sZW5ndGggPT09IDMgJiZcbiAgICAgIChwYXlsb2FkLmVudHJ5RnVuY3Rpb24udHlwZV9hcmdzLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgICAocGF5bG9hZC5lbnRyeUZ1bmN0aW9uLnR5cGVfYXJncy5sZW5ndGggPT09IDEgJiZcbiAgICAgICAgICBGVU5HSUJMRV9BU1NFVF9UWVBFX0FSR1VNRU5UID09PSBwYXlsb2FkLmVudHJ5RnVuY3Rpb24udHlwZV9hcmdzWzBdLnRvU3RyaW5nKCkpKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,6 +11,8 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
|
|
|
11
11
|
* The transaction type.
|
|
12
12
|
*/
|
|
13
13
|
protected abstract get transactionType(): TransactionType;
|
|
14
|
+
getRebuiltTransaction(): Transaction;
|
|
15
|
+
getSequenceNumber(): number;
|
|
14
16
|
/**
|
|
15
17
|
* Initialize the transaction builder fields using the decoded transaction data
|
|
16
18
|
*
|
|
@@ -28,7 +30,11 @@ export declare abstract class TransactionBuilder extends BaseTransactionBuilder
|
|
|
28
30
|
* @returns {TransactionBuilder} This transaction builder
|
|
29
31
|
*/
|
|
30
32
|
sender(senderAddress: string): this;
|
|
33
|
+
/**
|
|
34
|
+
* @deprecated - use `recipients()`.
|
|
35
|
+
*/
|
|
31
36
|
recipient(recipient: Recipient): this;
|
|
37
|
+
recipients(recipients: Recipient[]): this;
|
|
32
38
|
gasData(gasData: GasData): this;
|
|
33
39
|
sequenceNumber(seqNo: number): TransactionBuilder;
|
|
34
40
|
expirationTime(expTimeSec: number): TransactionBuilder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EAGtB,SAAS,IAAI,aAAa,EAC1B,SAAS,EACT,eAAe,EAChB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EAGtB,SAAS,IAAI,aAAa,EAC1B,SAAS,EACT,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,8BAAsB,kBAAmB,SAAQ,sBAAsB;IACrE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;gBAExB,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK5C;;OAEG;IACH,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,eAAe,CAAC;IAE1D,qBAAqB,IAAI,WAAW;IAIpC,iBAAiB,IAAI,MAAM;IAI3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAIlC,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAED,kBAAkB;IAClB,SAAS,KAAK,WAAW,CAAC,WAAW,EAAE,WAAW,EAEjD;IAED;;;;;OAKG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAMnC;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAOrC,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IASzC,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQ/B,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,kBAAkB;IAKjD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB;IAKtD,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IAErD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;IAIvD,kBAAkB;IAClB,kBAAkB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrE,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAIvE,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAItC,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAMjE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAO3D,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAMnE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/B,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAAC,OAAO,EAAE,kBAAkB;IAExE,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI;IAWpD,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAYtD,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAQrC,OAAO,CAAC,eAAe;IAKvB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIzC,iBAAiB,IAAI,MAAM;CAG5B"}
|
|
@@ -5,12 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TransactionBuilder = void 0;
|
|
7
7
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
const logger_1 = require("@bitgo-beta/logger");
|
|
8
9
|
const utils_1 = __importDefault(require("../utils"));
|
|
9
10
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
11
|
class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
11
12
|
constructor(coinConfig) {
|
|
12
13
|
super(coinConfig);
|
|
13
14
|
}
|
|
15
|
+
getRebuiltTransaction() {
|
|
16
|
+
return this._transaction;
|
|
17
|
+
}
|
|
18
|
+
getSequenceNumber() {
|
|
19
|
+
return this.transaction.sequenceNumber;
|
|
20
|
+
}
|
|
14
21
|
/**
|
|
15
22
|
* Initialize the transaction builder fields using the decoded transaction data
|
|
16
23
|
*
|
|
@@ -38,10 +45,21 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
38
45
|
this.transaction.sender = senderAddress;
|
|
39
46
|
return this;
|
|
40
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated - use `recipients()`.
|
|
50
|
+
*/
|
|
41
51
|
recipient(recipient) {
|
|
42
52
|
this.validateAddress({ address: recipient.address });
|
|
43
53
|
this.validateValue(new bignumber_js_1.default(recipient.amount));
|
|
44
|
-
this.transaction.
|
|
54
|
+
this.transaction.recipients = [recipient];
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
recipients(recipients) {
|
|
58
|
+
for (const recipient of recipients) {
|
|
59
|
+
this.validateAddress({ address: recipient.address });
|
|
60
|
+
this.validateValue(new bignumber_js_1.default(recipient.amount));
|
|
61
|
+
}
|
|
62
|
+
this.transaction.recipients = recipients;
|
|
45
63
|
return this;
|
|
46
64
|
}
|
|
47
65
|
gasData(gasData) {
|
|
@@ -102,8 +120,10 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
102
120
|
throw new Error('transaction not defined');
|
|
103
121
|
}
|
|
104
122
|
this.validateAddress({ address: transaction.sender });
|
|
105
|
-
|
|
106
|
-
|
|
123
|
+
for (const recipient of transaction.recipients) {
|
|
124
|
+
this.validateAddress({ address: recipient.address });
|
|
125
|
+
this.validateValue(new bignumber_js_1.default(recipient.amount));
|
|
126
|
+
}
|
|
107
127
|
}
|
|
108
128
|
isValidRawTransaction(rawTransaction) {
|
|
109
129
|
try {
|
|
@@ -113,7 +133,7 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
113
133
|
return utils_1.default.isValidAddress(senderAddress) && this.isValidTransactionPayload(rawTxn.payload);
|
|
114
134
|
}
|
|
115
135
|
catch (e) {
|
|
116
|
-
|
|
136
|
+
logger_1.logger.error('invalid raw transaction', e);
|
|
117
137
|
return false;
|
|
118
138
|
}
|
|
119
139
|
}
|
|
@@ -147,4 +167,4 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
147
167
|
}
|
|
148
168
|
}
|
|
149
169
|
exports.TransactionBuilder = TransactionBuilder;
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNhY3Rpb25CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQVM4QjtBQUU5QixxREFBNkI7QUFDN0IsZ0VBQXFDO0FBS3JDLE1BQXNCLGtCQUFtQixTQUFRLGlDQUFzQjtJQUdyRSxZQUFZLFVBQWdDO1FBQzFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBUUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBYyxXQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQWMsV0FBVyxDQUFDLFdBQXdCO1FBQ2hELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxhQUFxQjtRQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELFNBQVMsQ0FBQyxTQUFvQjtRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxzQkFBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFH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LENBQUMsQ0FBQztRQUMzRCxDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEUsQ0FBQztJQUNILENBQUM7SUFFTyxlQUFlLENBQUMsT0FBZ0I7UUFDdEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLHNCQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLHNCQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELGtCQUFrQixDQUFDLE9BQWU7UUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDOUMsQ0FBQztDQUNGO0FBM0tELGdEQTJLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VBZGRyZXNzLFxuICBCYXNlS2V5LFxuICBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIFBhcnNlVHJhbnNhY3Rpb25FcnJvcixcbiAgUHVibGljS2V5IGFzIEJhc2VQdWJsaWNLZXksXG4gIFJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB1dGlscyBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBHYXNEYXRhIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25QYXlsb2FkIH0gZnJvbSAnQGFwdG9zLWxhYnMvdHMtc2RrJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlciBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKGNvaW5Db25maWcpO1xuICB9XG5cbiAgLy8gZ2V0IGFuZCBzZXQgcmVnaW9uXG4gIC8qKlxuICAgKiBUaGUgdHJhbnNhY3Rpb24gdHlwZS5cbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZTtcblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlciBmaWVsZHMgdXNpbmcgdGhlIGRlY29kZWQgdHJhbnNhY3Rpb24gZGF0YVxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9ufSB0eCB0aGUgdHJhbnNhY3Rpb24gZGF0YVxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIHNldCB0cmFuc2FjdGlvbih0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNlbmRlciBvZiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2VuZGVyQWRkcmVzcyB0aGUgYWNjb3VudCB0aGF0IGlzIHNlbmRpbmcgdGhpcyB0cmFuc2FjdGlvblxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSBUaGlzIHRyYW5zYWN0aW9uIGJ1aWxkZXJcbiAgICovXG4gIHNlbmRlcihzZW5kZXJBZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHNlbmRlckFkZHJlc3MgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZW5kZXIgPSBzZW5kZXJBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcmVjaXBpZW50KHJlY2lwaWVudDogUmVjaXBpZW50KTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoeyBhZGRyZXNzOiByZWNpcGllbnQuYWRkcmVzcyB9KTtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihyZWNpcGllbnQuYW1vdW50KSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5yZWNpcGllbnQgPSByZWNpcGllbnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnYXNEYXRhKGdhc0RhdGE6IEdhc0RhdGEpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlR2FzRGF0YShnYXNEYXRhKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLm1heEdhc0Ftb3VudCA9IGdhc0RhdGEubWF4R2FzQW1vdW50O1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZ2FzVW5pdFByaWNlID0gZ2FzRGF0YS5nYXNVbml0UHJpY2U7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5nYXNVc2VkID0gZ2FzRGF0YS5nYXNVc2VkID8/IDA7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXF1ZW5jZU51bWJlcihzZXFObzogbnVtYmVyKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNlcXVlbmNlTnVtYmVyID0gc2VxTm87XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBleHBpcmF0aW9uVGltZShleHBUaW1lU2VjOiBudW1iZXIpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZXhwaXJhdGlvblRpbWUgPSBleHBUaW1lU2VjO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYWJzdHJhY3QgYXNzZXRJZChhc3NldElkOiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXI7XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBzaWduSW1wbGVtZW50YXRpb24oa2V5OiBCYXNlS2V5KTogVHJhbnNhY3Rpb24ge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhZGRTZW5kZXJTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uYWRkU2VuZGVyU2lnbmF0dXJlKHB1YmxpY0tleSwgc2lnbmF0dXJlKTtcbiAgfVxuXG4gIGFkZEZlZVBheWVyU2lnbmF0dXJlKHB1YmxpY0tleTogQmFzZVB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZEZlZVBheWVyU2lnbmF0dXJlKHB1YmxpY0tleSwgc2lnbmF0dXJlKTtcbiAgfVxuXG4gIHNldElzU2ltdWxhdGVUeG4odmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmlzU2ltdWxhdGVUeG4gPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlID0gdGhpcy50cmFuc2FjdGlvblR5cGU7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlID0gdGhpcy50cmFuc2FjdGlvblR5cGU7XG4gICAgYXdhaXQgdGhpcy50cmFuc2FjdGlvbi5idWlsZCgpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLy8gcmVnaW9uIFZhbGlkYXRvcnNcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzOiBCYXNlQWRkcmVzcywgYWRkcmVzc0Zvcm1hdD86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcy5hZGRyZXNzKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBhZGRyZXNzICcgKyBhZGRyZXNzLmFkZHJlc3MpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUtleShrZXk6IEJhc2VLZXkpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgaXNWYWxpZFRyYW5zYWN0aW9uUGF5bG9hZChwYXlsb2FkOiBUcmFuc2FjdGlvblBheWxvYWQpO1xuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBpZiAoIXRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3RyYW5zYWN0aW9uIG5vdCBkZWZpbmVkJyk7XG4gICAgfVxuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogdHJhbnNhY3Rpb24uc2VuZGVyIH0pO1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogdHJhbnNhY3Rpb24ucmVjaXBpZW50LmFkZHJlc3MgfSk7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIodHJhbnNhY3Rpb24ucmVjaXBpZW50LmFtb3VudCkpO1xuICB9XG5cbiAgaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc2lnbmVkVHhuID0gdXRpbHMuZGVzZXJpYWxpemVTaWduZWRUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgICBjb25zdCByYXdUeG4gPSBzaWduZWRUeG4ucmF3X3R4bjtcbiAgICAgIGNvbnN0IHNlbmRlckFkZHJlc3MgPSByYXdUeG4uc2VuZGVyLnRvU3RyaW5nKCk7XG4gICAgICByZXR1cm4gdXRpbHMuaXNWYWxpZEFkZHJlc3Moc2VuZGVyQWRkcmVzcykgJiYgdGhpcy5pc1ZhbGlkVHJhbnNhY3Rpb25QYXlsb2FkKHJhd1R4bi5wYXlsb2FkKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicsIGUpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5pc1ZhbGlkUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUuaXNOYU4oKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBhbW91bnQgZm9ybWF0Jyk7XG4gICAgfSBlbHNlIGlmICh2YWx1ZS5pc0xlc3NUaGFuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdWYWx1ZSBjYW5ub3QgYmUgbGVzcyB0aGFuIHplcm8nKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlR2FzRGF0YShnYXNEYXRhOiBHYXNEYXRhKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoZ2FzRGF0YS5tYXhHYXNBbW91bnQpKTtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihnYXNEYXRhLmdhc1VuaXRQcmljZSkpO1xuICB9XG5cbiAgYWRkRmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uYWRkRmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3MpO1xuICB9XG5cbiAgZ2V0RmVlUGF5ZXJQdWJLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi5nZXRGZWVQYXllclB1YktleSgpO1xuICB9XG59XG4iXX0=
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNhY3Rpb25CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQVM4QjtBQUM5QiwrQ0FBNEM7QUFFNUMscURBQTZCO0FBQzdCLGdFQUFxQztBQUtyQyxNQUFzQixrQkFBbUIsU0FBUSxpQ0FBc0I7SUFHckUsWUFBWSxVQUFnQztRQUMxQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQVFELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsRUFBZTtRQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixJQUFjLFdBQVcsQ0FBQyxXQUF3QjtRQUNoRCxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsYUFBcUI7UUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQztRQUN4QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVMsQ0FBQyxTQUFvQjtRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxF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LE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQWpNRCxnREFpTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlQWRkcmVzcyxcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlcixcbiAgQnVpbGRUcmFuc2FjdGlvbkVycm9yLFxuICBQYXJzZVRyYW5zYWN0aW9uRXJyb3IsXG4gIFB1YmxpY0tleSBhcyBCYXNlUHVibGljS2V5LFxuICBSZWNpcGllbnQsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnQGJpdGdvLWJldGEvbG9nZ2VyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEdhc0RhdGEgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblBheWxvYWQgfSBmcm9tICdAYXB0b3MtbGFicy90cy1zZGsnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoY29pbkNvbmZpZyk7XG4gIH1cblxuICAvLyBnZXQgYW5kIHNldCByZWdpb25cbiAgLyoqXG4gICAqIFRoZSB0cmFuc2FjdGlvbiB0eXBlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIGdldFJlYnVpbHRUcmFuc2FjdGlvbigpOiBUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG5cbiAgZ2V0U2VxdWVuY2VOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi5zZXF1ZW5jZU51bWJlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb259IHR4IHRoZSB0cmFuc2FjdGlvbiBkYXRhXG4gICAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHR4O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2V0IHRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2VuZGVyIG9mIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzZW5kZXJBZGRyZXNzIHRoZSBhY2NvdW50IHRoYXQgaXMgc2VuZGluZyB0aGlzIHRyYW5zYWN0aW9uXG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlclxuICAgKi9cbiAgc2VuZGVyKHNlbmRlckFkZHJlc3M6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVBZGRyZXNzKHsgYWRkcmVzczogc2VuZGVyQWRkcmVzcyB9KTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNlbmRlciA9IHNlbmRlckFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgLSB1c2UgYHJlY2lwaWVudHMoKWAuXG4gICAqL1xuICByZWNpcGllbnQocmVjaXBpZW50OiBSZWNpcGllbnQpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzIH0pO1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKHJlY2lwaWVudC5hbW91bnQpKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnJlY2lwaWVudHMgPSBbcmVjaXBpZW50XTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHJlY2lwaWVudHMocmVjaXBpZW50czogUmVjaXBpZW50W10pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IHJlY2lwaWVudCBvZiByZWNpcGllbnRzKSB7XG4gICAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzIH0pO1xuICAgICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIocmVjaXBpZW50LmFtb3VudCkpO1xuICAgIH1cbiAgICB0aGlzLnRyYW5zYWN0aW9uLnJlY2lwaWVudHMgPSByZWNpcGllbnRzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZ2FzRGF0YShnYXNEYXRhOiBHYXNEYXRhKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUdhc0RhdGEoZ2FzRGF0YSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5tYXhHYXNBbW91bnQgPSBnYXNEYXRhLm1heEdhc0Ftb3VudDtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmdhc1VuaXRQcmljZSA9IGdhc0RhdGEuZ2FzVW5pdFByaWNlO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZ2FzVXNlZCA9IGdhc0RhdGEuZ2FzVXNlZCA/PyAwO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc2VxdWVuY2VOdW1iZXIoc2VxTm86IG51bWJlcik6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXF1ZW5jZU51bWJlciA9IHNlcU5vO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZXhwaXJhdGlvblRpbWUoZXhwVGltZVNlYzogbnVtYmVyKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmV4cGlyYXRpb25UaW1lID0gZXhwVGltZVNlYztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGFic3RyYWN0IGFzc2V0SWQoYXNzZXRJZDogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyO1xuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKGtleTogQmFzZUtleSk6IFRyYW5zYWN0aW9uIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgYWRkU2VuZGVyU2lnbmF0dXJlKHB1YmxpY0tleTogQmFzZVB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZFNlbmRlclNpZ25hdHVyZShwdWJsaWNLZXksIHNpZ25hdHVyZSk7XG4gIH1cblxuICBhZGRGZWVQYXllclNpZ25hdHVyZShwdWJsaWNLZXk6IEJhc2VQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5hZGRGZWVQYXllclNpZ25hdHVyZShwdWJsaWNLZXksIHNpZ25hdHVyZSk7XG4gIH1cblxuICBzZXRJc1NpbXVsYXRlVHhuKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5pc1NpbXVsYXRlVHhuID0gdmFsdWU7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uVHlwZSA9IHRoaXMudHJhbnNhY3Rpb25UeXBlO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uVHlwZSA9IHRoaXMudHJhbnNhY3Rpb25UeXBlO1xuICAgIGF3YWl0IHRoaXMudHJhbnNhY3Rpb24uYnVpbGQoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgYWRkcmVzcyAnICsgYWRkcmVzcy5hZGRyZXNzKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVLZXkoa2V5OiBCYXNlS2V5KTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGlzVmFsaWRUcmFuc2FjdGlvblBheWxvYWQocGF5bG9hZDogVHJhbnNhY3Rpb25QYXlsb2FkKTtcblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVUcmFuc2FjdGlvbih0cmFuc2FjdGlvbj86IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCd0cmFuc2FjdGlvbiBub3QgZGVmaW5lZCcpO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHRyYW5zYWN0aW9uLnNlbmRlciB9KTtcbiAgICBmb3IgKGNvbnN0IHJlY2lwaWVudCBvZiB0cmFuc2FjdGlvbi5yZWNpcGllbnRzKSB7XG4gICAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3M6IHJlY2lwaWVudC5hZGRyZXNzIH0pO1xuICAgICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIocmVjaXBpZW50LmFtb3VudCkpO1xuICAgIH1cbiAgfVxuXG4gIGlzVmFsaWRSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHNpZ25lZFR4biA9IHV0aWxzLmRlc2VyaWFsaXplU2lnbmVkVHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgY29uc3QgcmF3VHhuID0gc2lnbmVkVHhuLnJhd190eG47XG4gICAgICBjb25zdCBzZW5kZXJBZGRyZXNzID0gcmF3VHhuLnNlbmRlci50b1N0cmluZygpO1xuICAgICAgcmV0dXJuIHV0aWxzLmlzVmFsaWRBZGRyZXNzKHNlbmRlckFkZHJlc3MpICYmIHRoaXMuaXNWYWxpZFRyYW5zYWN0aW9uUGF5bG9hZChyYXdUeG4ucGF5bG9hZCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgbG9nZ2VyLmVycm9yKCdpbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicsIGUpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5pc1ZhbGlkUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVZhbHVlKHZhbHVlOiBCaWdOdW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodmFsdWUuaXNOYU4oKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBhbW91bnQgZm9ybWF0Jyk7XG4gICAgfSBlbHNlIGlmICh2YWx1ZS5pc0xlc3NUaGFuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdWYWx1ZSBjYW5ub3QgYmUgbGVzcyB0aGFuIHplcm8nKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlR2FzRGF0YShnYXNEYXRhOiBHYXNEYXRhKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoZ2FzRGF0YS5tYXhHYXNBbW91bnQpKTtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihnYXNEYXRhLmdhc1VuaXRQcmljZSkpO1xuICB9XG5cbiAgYWRkRmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uYWRkRmVlUGF5ZXJBZGRyZXNzKGFkZHJlc3MpO1xuICB9XG5cbiAgZ2V0RmVlUGF5ZXJQdWJLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi5nZXRGZWVQYXllclB1YktleSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -8,5 +8,6 @@ export declare class TransferBuilder extends TransactionBuilder {
|
|
|
8
8
|
validatePartsOfAssetId(assetId: string): void;
|
|
9
9
|
assetId(assetId: string): TransactionBuilder;
|
|
10
10
|
protected isValidTransactionPayload(payload: TransactionPayload): boolean;
|
|
11
|
+
private isValidPayload;
|
|
11
12
|
}
|
|
12
13
|
//# sourceMappingURL=transferBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/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,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/transactionBuilder/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,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAmC,MAAM,oBAAoB,CAAC;AAGzF,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO7C,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IAM5C,SAAS,CAAC,yBAAyB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO;IAiBzE,OAAO,CAAC,cAAc;CAQvB"}
|
|
@@ -7,9 +7,9 @@ exports.TransferBuilder = void 0;
|
|
|
7
7
|
const transactionBuilder_1 = require("./transactionBuilder");
|
|
8
8
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
9
9
|
const transferTransaction_1 = require("../transaction/transferTransaction");
|
|
10
|
-
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
11
10
|
const utils_1 = __importDefault(require("../utils"));
|
|
12
11
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
12
|
+
const logger_1 = require("@bitgo-beta/logger");
|
|
13
13
|
class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
14
14
|
constructor(_coinConfig) {
|
|
15
15
|
super(_coinConfig);
|
|
@@ -31,25 +31,27 @@ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
|
|
|
31
31
|
}
|
|
32
32
|
isValidTransactionPayload(payload) {
|
|
33
33
|
try {
|
|
34
|
-
if (!(payload
|
|
35
|
-
payload.entryFunction.args.length !== 2 ||
|
|
36
|
-
payload.entryFunction.type_args.length !== 1 ||
|
|
37
|
-
payload.entryFunction.type_args[0].toString().length === 0) {
|
|
34
|
+
if (!this.isValidPayload(payload)) {
|
|
38
35
|
console.error('invalid transaction payload');
|
|
39
36
|
return false;
|
|
40
37
|
}
|
|
41
38
|
const entryFunction = payload.entryFunction;
|
|
42
39
|
this.validatePartsOfAssetId(entryFunction.type_args[0].toString());
|
|
43
|
-
const
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
return utils_1.default.isValidAddress(recipientAddress) && !recipientAmount.isLessThan(0);
|
|
40
|
+
const addressArg = entryFunction.args[0];
|
|
41
|
+
const amountArg = entryFunction.args[1];
|
|
42
|
+
return utils_1.default.fetchAndValidateRecipients(addressArg, amountArg).isValid;
|
|
47
43
|
}
|
|
48
44
|
catch (e) {
|
|
49
|
-
|
|
45
|
+
logger_1.logger.error('invalid transaction payload', e);
|
|
50
46
|
return false;
|
|
51
47
|
}
|
|
52
48
|
}
|
|
49
|
+
isValidPayload(payload) {
|
|
50
|
+
return (payload instanceof ts_sdk_1.TransactionPayloadEntryFunction &&
|
|
51
|
+
payload.entryFunction.args.length === 2 &&
|
|
52
|
+
payload.entryFunction.type_args.length === 1 &&
|
|
53
|
+
payload.entryFunction.type_args[0].toString().length > 0);
|
|
54
|
+
}
|
|
53
55
|
}
|
|
54
56
|
exports.TransferBuilder = TransferBuilder;
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNmZXJCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDZEQUEwRDtBQUUxRCxtREFBdUQ7QUFDdkQsNEVBQXlFO0FBQ3pFLHFEQUE2QjtBQUM3QiwrQ0FBeUY7QUFDekYsK0NBQTRDO0FBRTVDLE1BQWEsZUFBZ0IsU0FBUSx1Q0FBa0I7SUFDckQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLHlDQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0lBRUQsc0JBQXNCLENBQUMsT0FBZTtRQUNwQyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBSyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbEYsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWU7UUFDckIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFUyx5QkFBeUIsQ0FBQyxPQUEyQjtRQUM3RCxJQUFJLENBQUM7WUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7Z0JBQzdDLE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQztZQUNELE1BQU0sYUFBYSxHQUFJLE9BQTJDLENBQUMsYUFBYSxDQUFDO1lBQ2pGLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDbkUsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QyxNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sZUFBSyxDQUFDLDBCQUEwQixDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDekUsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxlQUFNLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQy9DLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFTyxjQUFjLENBQUMsT0FBMkI7UUFDaEQsT0FBTyxDQUNMLE9BQU8sWUFBWSx3Q0FBK0I7WUFDbEQsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDdkMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUM7WUFDNUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhERCwwQ0FnREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25QYXlsb2FkLCBUcmFuc2FjdGlvblBheWxvYWRFbnRyeUZ1bmN0aW9uIH0gZnJvbSAnQGFwdG9zLWxhYnMvdHMtc2RrJztcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gJ0BiaXRnby1iZXRhL2xvZ2dlcic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy50cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2ZlclRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG5cbiAgdmFsaWRhdGVQYXJ0c09mQXNzZXRJZChhc3NldElkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwYXJ0cyA9IGFzc2V0SWQuc3BsaXQoJzo6Jyk7XG4gICAgaWYgKHBhcnRzLmxlbmd0aCAhPT0gMyB8fCAoJzB4MScgIT09IHBhcnRzWzBdICYmICF1dGlscy5pc1ZhbGlkQWRkcmVzcyhwYXJ0c1swXSkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgYXNzZXQgSUQnKTtcbiAgICB9XG4gIH1cblxuICBhc3NldElkKGFzc2V0SWQ6IHN0cmluZyk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgdGhpcy52YWxpZGF0ZVBhcnRzT2ZBc3NldElkKGFzc2V0SWQpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uYXNzZXRJZCA9IGFzc2V0SWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNWYWxpZFRyYW5zYWN0aW9uUGF5bG9hZChwYXlsb2FkOiBUcmFuc2FjdGlvblBheWxvYWQpOiBib29sZWFuIHtcbiAgICB0cnkge1xuICAgICAgaWYgKCF0aGlzLmlzVmFsaWRQYXlsb2FkKHBheWxvYWQpKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2ludmFsaWQgdHJhbnNhY3Rpb24gcGF5bG9hZCcpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICBjb25zdCBlbnRyeUZ1bmN0aW9uID0gKHBheWxvYWQgYXMgVHJhbnNhY3Rpb25QYXlsb2FkRW50cnlGdW5jdGlvbikuZW50cnlGdW5jdGlvbjtcbiAgICAgIHRoaXMudmFsaWRhdGVQYXJ0c09mQXNzZXRJZChlbnRyeUZ1bmN0aW9uLnR5cGVfYXJnc1swXS50b1N0cmluZygpKTtcbiAgICAgIGNvbnN0IGFkZHJlc3NBcmcgPSBlbnRyeUZ1bmN0aW9uLmFyZ3NbMF07XG4gICAgICBjb25zdCBhbW91bnRBcmcgPSBlbnRyeUZ1bmN0aW9uLmFyZ3NbMV07XG4gICAgICByZXR1cm4gdXRpbHMuZmV0Y2hBbmRWYWxpZGF0ZVJlY2lwaWVudHMoYWRkcmVzc0FyZywgYW1vdW50QXJnKS5pc1ZhbGlkO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGxvZ2dlci5lcnJvcignaW52YWxpZCB0cmFuc2FjdGlvbiBwYXlsb2FkJywgZSk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1ZhbGlkUGF5bG9hZChwYXlsb2FkOiBUcmFuc2FjdGlvblBheWxvYWQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgcGF5bG9hZCBpbnN0YW5jZW9mIFRyYW5zYWN0aW9uUGF5bG9hZEVudHJ5RnVuY3Rpb24gJiZcbiAgICAgIHBheWxvYWQuZW50cnlGdW5jdGlvbi5hcmdzLmxlbmd0aCA9PT0gMiAmJlxuICAgICAgcGF5bG9hZC5lbnRyeUZ1bmN0aW9uLnR5cGVfYXJncy5sZW5ndGggPT09IDEgJiZcbiAgICAgIHBheWxvYWQuZW50cnlGdW5jdGlvbi50eXBlX2FyZ3NbMF0udG9TdHJpbmcoKS5sZW5ndGggPiAwXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -6,10 +6,14 @@ import { SignedTransaction } from '@aptos-labs/ts-sdk';
|
|
|
6
6
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
7
7
|
import { FungibleAssetTransferBuilder } from './transactionBuilder/fungibleAssetTransferBuilder';
|
|
8
8
|
import { DigitalAssetTransferBuilder } from './transactionBuilder/digitalAssetTransferBuilder';
|
|
9
|
+
import { CustomTransactionBuilder } from './transactionBuilder/customTransactionBuilder';
|
|
10
|
+
import { DelegationPoolAddStakeTransactionBuilder } from './transactionBuilder/delegationPoolAddStakeTransactionBuilder';
|
|
11
|
+
import { DelegationPoolWithdrawTransactionBuilder } from './transactionBuilder/delegationPoolWithdrawTransactionBuilder';
|
|
12
|
+
import { DelegationPoolUnlockTransactionBuilder } from './transactionBuilder/delegationPoolUnlockTransactionBuilder';
|
|
9
13
|
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
10
14
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
11
15
|
/** @inheritdoc */
|
|
12
|
-
from(signedRawTxn: string): TransactionBuilder;
|
|
16
|
+
from(signedRawTxn: string, abi?: any): TransactionBuilder;
|
|
13
17
|
getTransactionTypeFromSignedTxn(signedTxn: SignedTransaction): TransactionType;
|
|
14
18
|
/** @inheritdoc */
|
|
15
19
|
getTransferBuilder(tx?: Transaction): TransferBuilder;
|
|
@@ -17,6 +21,16 @@ export declare class TransactionBuilderFactory extends BaseTransactionBuilderFac
|
|
|
17
21
|
getFungibleAssetTransactionBuilder(tx?: Transaction): FungibleAssetTransferBuilder;
|
|
18
22
|
/** @inheritdoc */
|
|
19
23
|
getDigitalAssetTransactionBuilder(tx?: Transaction): DigitalAssetTransferBuilder;
|
|
24
|
+
getDelegationPoolAddStakeTransactionBuilder(tx?: Transaction): DelegationPoolAddStakeTransactionBuilder;
|
|
25
|
+
getDelegationPoolUnlockTransactionBuilder(tx?: Transaction): DelegationPoolUnlockTransactionBuilder;
|
|
26
|
+
getDelegationPoolWithdrawTransactionBuilder(tx?: Transaction): DelegationPoolWithdrawTransactionBuilder;
|
|
27
|
+
/**
|
|
28
|
+
* Get a custom transaction builder
|
|
29
|
+
*
|
|
30
|
+
* @param tx - Optional transaction to initialize the builder with
|
|
31
|
+
* @returns A custom transaction builder
|
|
32
|
+
*/
|
|
33
|
+
getCustomTransactionBuilder(tx?: Transaction): CustomTransactionBuilder;
|
|
20
34
|
/** @inheritdoc */
|
|
21
35
|
getWalletInitializationBuilder(): void;
|
|
22
36
|
/**
|
|
@@ -27,11 +41,5 @@ export declare class TransactionBuilderFactory extends BaseTransactionBuilderFac
|
|
|
27
41
|
* @returns {TransactionBuilder} the builder initialized
|
|
28
42
|
*/
|
|
29
43
|
private initializeBuilder;
|
|
30
|
-
/** Parse the transaction from a signed txn hex string
|
|
31
|
-
*
|
|
32
|
-
* @param {string} signedRawTransaction - the signed txn hex
|
|
33
|
-
* @returns {SignedTransaction} parsedtransaction
|
|
34
|
-
*/
|
|
35
|
-
private parseTransaction;
|
|
36
44
|
}
|
|
37
45
|
//# sourceMappingURL=transactionBuilderFactory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AAEjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAE/F,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,kBAAkB;
|
|
1
|
+
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mDAAmD,CAAC;AAEjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAE/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AAEzH,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AACzH,OAAO,EAAE,sCAAsC,EAAE,MAAM,6DAA6D,CAAC;AAGrH,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,kBAAkB;IA6CzD,+BAA+B,CAAC,SAAS,EAAE,iBAAiB,GAAG,eAAe;IAK9E,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,eAAe;IAIrD,kBAAkB;IAClB,kCAAkC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,4BAA4B;IAIlF,kBAAkB;IAClB,iCAAiC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,2BAA2B;IAIhF,2CAA2C,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,wCAAwC;IAIvG,yCAAyC,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,sCAAsC;IAInG,2CAA2C,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,wCAAwC;IAIvG;;;;;OAKG;IACH,2BAA2B,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,wBAAwB;IAIvE,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;CAM1B"}
|
|
@@ -13,14 +13,22 @@ const fungibleAssetTransfer_1 = require("./transaction/fungibleAssetTransfer");
|
|
|
13
13
|
const fungibleAssetTransferBuilder_1 = require("./transactionBuilder/fungibleAssetTransferBuilder");
|
|
14
14
|
const digitalAssetTransfer_1 = require("./transaction/digitalAssetTransfer");
|
|
15
15
|
const digitalAssetTransferBuilder_1 = require("./transactionBuilder/digitalAssetTransferBuilder");
|
|
16
|
+
const customTransaction_1 = require("./transaction/customTransaction");
|
|
17
|
+
const customTransactionBuilder_1 = require("./transactionBuilder/customTransactionBuilder");
|
|
18
|
+
const delegationPoolAddStakeTransaction_1 = require("./transaction/delegationPoolAddStakeTransaction");
|
|
19
|
+
const delegationPoolAddStakeTransactionBuilder_1 = require("./transactionBuilder/delegationPoolAddStakeTransactionBuilder");
|
|
20
|
+
const delegationPoolUnlockTransaction_1 = require("./transaction/delegationPoolUnlockTransaction");
|
|
21
|
+
const delegationPoolWithdrawTransactionBuilder_1 = require("./transactionBuilder/delegationPoolWithdrawTransactionBuilder");
|
|
22
|
+
const delegationPoolUnlockTransactionBuilder_1 = require("./transactionBuilder/delegationPoolUnlockTransactionBuilder");
|
|
23
|
+
const delegationPoolWithdrawTransaction_1 = require("./transaction/delegationPoolWithdrawTransaction");
|
|
16
24
|
class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
|
|
17
25
|
constructor(_coinConfig) {
|
|
18
26
|
super(_coinConfig);
|
|
19
27
|
}
|
|
20
28
|
/** @inheritdoc */
|
|
21
|
-
from(signedRawTxn) {
|
|
29
|
+
from(signedRawTxn, abi) {
|
|
22
30
|
try {
|
|
23
|
-
const signedTxn =
|
|
31
|
+
const signedTxn = transaction_1.Transaction.deserializeSignedTransaction(signedRawTxn);
|
|
24
32
|
const txnType = this.getTransactionTypeFromSignedTxn(signedTxn);
|
|
25
33
|
switch (txnType) {
|
|
26
34
|
case sdk_core_1.TransactionType.Send:
|
|
@@ -35,6 +43,25 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
35
43
|
const digitalAssetTransferTx = new digitalAssetTransfer_1.DigitalAssetTransfer(this._coinConfig);
|
|
36
44
|
digitalAssetTransferTx.fromDeserializedSignedTransaction(signedTxn);
|
|
37
45
|
return this.getDigitalAssetTransactionBuilder(digitalAssetTransferTx);
|
|
46
|
+
case sdk_core_1.TransactionType.StakingDelegate:
|
|
47
|
+
const delegateTx = new delegationPoolAddStakeTransaction_1.DelegationPoolAddStakeTransaction(this._coinConfig);
|
|
48
|
+
delegateTx.fromDeserializedSignedTransaction(signedTxn);
|
|
49
|
+
return this.getDelegationPoolAddStakeTransactionBuilder(delegateTx);
|
|
50
|
+
case sdk_core_1.TransactionType.StakingUnlock:
|
|
51
|
+
const unlockTx = new delegationPoolUnlockTransaction_1.DelegationPoolUnlockTransaction(this._coinConfig);
|
|
52
|
+
unlockTx.fromDeserializedSignedTransaction(signedTxn);
|
|
53
|
+
return this.getDelegationPoolUnlockTransactionBuilder(unlockTx);
|
|
54
|
+
case sdk_core_1.TransactionType.StakingWithdraw:
|
|
55
|
+
const withdrawTx = new delegationPoolWithdrawTransaction_1.DelegationPoolWithdrawTransaction(this._coinConfig);
|
|
56
|
+
withdrawTx.fromDeserializedSignedTransaction(signedTxn);
|
|
57
|
+
return this.getDelegationPoolWithdrawTransactionBuilder(withdrawTx);
|
|
58
|
+
case sdk_core_1.TransactionType.CustomTx:
|
|
59
|
+
const customTx = new customTransaction_1.CustomTransaction(this._coinConfig);
|
|
60
|
+
if (abi) {
|
|
61
|
+
customTx.setEntryFunctionAbi(abi);
|
|
62
|
+
}
|
|
63
|
+
customTx.fromDeserializedSignedTransaction(signedTxn);
|
|
64
|
+
return this.getCustomTransactionBuilder(customTx);
|
|
38
65
|
default:
|
|
39
66
|
throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
|
|
40
67
|
}
|
|
@@ -59,6 +86,24 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
59
86
|
getDigitalAssetTransactionBuilder(tx) {
|
|
60
87
|
return this.initializeBuilder(tx, new digitalAssetTransferBuilder_1.DigitalAssetTransferBuilder(this._coinConfig));
|
|
61
88
|
}
|
|
89
|
+
getDelegationPoolAddStakeTransactionBuilder(tx) {
|
|
90
|
+
return this.initializeBuilder(tx, new delegationPoolAddStakeTransactionBuilder_1.DelegationPoolAddStakeTransactionBuilder(this._coinConfig));
|
|
91
|
+
}
|
|
92
|
+
getDelegationPoolUnlockTransactionBuilder(tx) {
|
|
93
|
+
return this.initializeBuilder(tx, new delegationPoolUnlockTransactionBuilder_1.DelegationPoolUnlockTransactionBuilder(this._coinConfig));
|
|
94
|
+
}
|
|
95
|
+
getDelegationPoolWithdrawTransactionBuilder(tx) {
|
|
96
|
+
return this.initializeBuilder(tx, new delegationPoolWithdrawTransactionBuilder_1.DelegationPoolWithdrawTransactionBuilder(this._coinConfig));
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get a custom transaction builder
|
|
100
|
+
*
|
|
101
|
+
* @param tx - Optional transaction to initialize the builder with
|
|
102
|
+
* @returns A custom transaction builder
|
|
103
|
+
*/
|
|
104
|
+
getCustomTransactionBuilder(tx) {
|
|
105
|
+
return this.initializeBuilder(tx, new customTransactionBuilder_1.CustomTransactionBuilder(this._coinConfig));
|
|
106
|
+
}
|
|
62
107
|
/** @inheritdoc */
|
|
63
108
|
getWalletInitializationBuilder() {
|
|
64
109
|
throw new Error('Method not implemented.');
|
|
@@ -76,14 +121,6 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
76
121
|
}
|
|
77
122
|
return builder;
|
|
78
123
|
}
|
|
79
|
-
/** Parse the transaction from a signed txn hex string
|
|
80
|
-
*
|
|
81
|
-
* @param {string} signedRawTransaction - the signed txn hex
|
|
82
|
-
* @returns {SignedTransaction} parsedtransaction
|
|
83
|
-
*/
|
|
84
|
-
parseTransaction(signedRawTransaction) {
|
|
85
|
-
return transaction_1.Transaction.deserializeSignedTransaction(signedRawTransaction);
|
|
86
|
-
}
|
|
87
124
|
}
|
|
88
125
|
exports.TransactionBuilderFactory = TransactionBuilderFactory;
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBK0c7QUFFL0csMEVBQXVFO0FBQ3ZFLG9EQUE0QjtBQUM1QiwyREFBd0Q7QUFFeEQsMkVBQXdFO0FBRXhFLCtFQUE0RTtBQUM1RSxvR0FBaUc7QUFDakcsNkVBQTBFO0FBQzFFLGtHQUErRjtBQUUvRixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxZQUFvQjtRQUN2QixJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDdEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLCtCQUErQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2hFLFFBQVEsT0FBTyxFQUFFLENBQUM7Z0JBQ2hCLEtBQUssMEJBQWUsQ0FBQyxJQUFJO29CQUN2QixNQUFNLFVBQVUsR0FBRyxJQUFJLHlDQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDN0QsVUFBVSxDQUFDLGlDQUFpQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUN4RCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDN0MsS0FBSywwQkFBZSxDQUFDLFNBQVM7b0JBQzVCLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzVFLHVCQUF1QixDQUFDLGlDQUFpQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUNyRSxPQUFPLElBQUksQ0FBQyxrQ0FBa0MsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO2dCQUMxRSxLQUFLLDBCQUFlLENBQUMsT0FBTztvQkFDMUIsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLDJDQUFvQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDMUUsc0JBQXNCLENBQUMsaUNBQWlDLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ3BFLE9BQU8sSUFBSSxDQUFDLGlDQUFpQyxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQ3hFO29CQUNFLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzdELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE1BQU0sQ0FBQyxDQUFDO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFFRCwrQkFBK0IsQ0FBQyxTQUE0QjtRQUMxRCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQ2pDLE9BQU8sZUFBSyxDQUFDLHdDQUF3QyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGtCQUFrQixDQUFDLEVBQWdCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLGlDQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixrQ0FBa0MsQ0FBQyxFQUFnQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSwyREFBNEIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGlDQUFpQyxDQUFDLEVBQWdCO1FBQ2hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLHlEQUEyQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQThCO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssaUJBQWlCLENBQStCLEVBQTJCLEVBQUUsT0FBVTtRQUM3RixJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1AsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxnQkFBZ0IsQ0FBQyxvQkFBNEI7UUFDbkQsT0FBTyx5QkFBVyxDQUFDLDRCQUE0QixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDeEUsQ0FBQztDQUNGO0FBOUVELDhEQThFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAYXB0b3MtbGFicy90cy1zZGsnO1xuaW1wb3J0IHsgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBGdW5naWJsZUFzc2V0VHJhbnNmZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uL2Z1bmdpYmxlQXNzZXRUcmFuc2Zlcic7XG5pbXBvcnQgeyBGdW5naWJsZUFzc2V0VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBEaWdpdGFsQXNzZXRUcmFuc2ZlciB9IGZyb20gJy4vdHJhbnNhY3Rpb24vZGlnaXRhbEFzc2V0VHJhbnNmZXInO1xuaW1wb3J0IHsgRGlnaXRhbEFzc2V0VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZGlnaXRhbEFzc2V0VHJhbnNmZXJCdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tKHNpZ25lZFJhd1R4bjogc3RyaW5nKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc2lnbmVkVHhuID0gdGhpcy5wYXJzZVRyYW5zYWN0aW9uKHNpZ25lZFJhd1R4bik7XG4gICAgICBjb25zdCB0eG5UeXBlID0gdGhpcy5nZXRUcmFuc2FjdGlvblR5cGVGcm9tU2lnbmVkVHhuKHNpZ25lZFR4bik7XG4gICAgICBzd2l0Y2ggKHR4blR5cGUpIHtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZDpcbiAgICAgICAgICBjb25zdCB0cmFuc2ZlclR4ID0gbmV3IFRyYW5zZmVyVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgdHJhbnNmZXJUeC5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIodHJhbnNmZXJUeCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmRUb2tlbjpcbiAgICAgICAgICBjb25zdCBmdW5naWJsZVRyYW5zZmVyVG9rZW5UeCA9IG5ldyBGdW5naWJsZUFzc2V0VHJhbnNmZXIodGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgZnVuZ2libGVUcmFuc2ZlclRva2VuVHguZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4bik7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RnVuZ2libGVBc3NldFRyYW5zYWN0aW9uQnVpbGRlcihmdW5naWJsZVRyYW5zZmVyVG9rZW5UeCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlNlbmRORlQ6XG4gICAgICAgICAgY29uc3QgZGlnaXRhbEFzc2V0VHJhbnNmZXJUeCA9IG5ldyBEaWdpdGFsQXNzZXRUcmFuc2Zlcih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgICAgICBkaWdpdGFsQXNzZXRUcmFuc2ZlclR4LmZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeG4pO1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldERpZ2l0YWxBc3NldFRyYW5zYWN0aW9uQnVpbGRlcihkaWdpdGFsQXNzZXRUcmFuc2ZlclR4KTtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb24nKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIGdldFRyYW5zYWN0aW9uVHlwZUZyb21TaWduZWRUeG4oc2lnbmVkVHhuOiBTaWduZWRUcmFuc2FjdGlvbik6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgY29uc3QgcmF3VHhuID0gc2lnbmVkVHhuLnJhd190eG47XG4gICAgcmV0dXJuIHV0aWxzLmdldFRyYW5zYWN0aW9uVHlwZUZyb21UcmFuc2FjdGlvblBheWxvYWQocmF3VHhuLnBheWxvYWQpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFRyYW5zZmVyQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0RnVuZ2libGVBc3NldFRyYW5zYWN0aW9uQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogRnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBGdW5naWJsZUFzc2V0VHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXREaWdpdGFsQXNzZXRUcmFuc2FjdGlvbkJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IERpZ2l0YWxBc3NldFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBEaWdpdGFsQXNzZXRUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQnVpbGRlcjxUIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPih0eDogVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIC8qKiBQYXJzZSB0aGUgdHJhbnNhY3Rpb24gZnJvbSBhIHNpZ25lZCB0eG4gaGV4IHN0cmluZ1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2lnbmVkUmF3VHJhbnNhY3Rpb24gLSB0aGUgc2lnbmVkIHR4biBoZXhcbiAgICogQHJldHVybnMge1NpZ25lZFRyYW5zYWN0aW9ufSBwYXJzZWR0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJpdmF0ZSBwYXJzZVRyYW5zYWN0aW9uKHNpZ25lZFJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBTaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uLmRlc2VyaWFsaXplU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkUmF3VHJhbnNhY3Rpb24pO1xuICB9XG59XG4iXX0=
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBK0c7QUFFL0csMEVBQXVFO0FBQ3ZFLG9EQUE0QjtBQUM1QiwyREFBd0Q7QUFFeEQsMkVBQXdFO0FBRXhFLCtFQUE0RTtBQUM1RSxvR0FBaUc7QUFDakcsNkVBQTBFO0FBQzFFLGtHQUErRjtBQUMvRix1RUFBb0U7QUFDcEUsNEZBQXlGO0FBQ3pGLHVHQUFvRztBQUNwRyw0SEFBeUg7QUFDekgsbUdBQWdHO0FBQ2hHLDRIQUF5SDtBQUN6SCx3SEFBcUg7QUFDckgsdUdBQW9HO0FBRXBHLE1BQWEseUJBQTBCLFNBQVEsd0NBQTZCO0lBQzFFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBSSxDQUFDLFlBQW9CLEVBQUUsR0FBUztRQUNsQyxJQUFJLENBQUM7WUFDSCxNQUFNLFNBQVMsR0FBRyx5QkFBVyxDQUFDLDRCQUE0QixDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3pFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVoRSxRQUFRLE9BQU8sRUFBRSxDQUFDO2dCQUNoQixLQUFLLDBCQUFlLENBQUMsSUFBSTtvQkFDdkIsTUFBTSxVQUFVLEdBQUcsSUFBSSx5Q0FBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7b0JBQzdELFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDeEQsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQzdDLEtBQUssMEJBQWUsQ0FBQyxTQUFTO29CQUM1QixNQUFNLHVCQUF1QixH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Q0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCwyQ0FBMkMsQ0FBQyxFQUFnQjtRQUMxRCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxtRkFBd0MsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQseUNBQXlDLENBQUMsRUFBZ0I7UUFDeEQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksK0VBQXNDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELDJDQUEyQyxDQUFDLEVBQWdCO1FBQzFELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLG1GQUF3QyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILDJCQUEyQixDQUFDLEVBQWdCO1FBQzFDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLG1EQUF3QixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQThCO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssaUJBQWlCLENBQStCLEVBQTJCLEVBQUUsT0FBVTtRQUM3RixJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1AsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBL0dELDhEQStHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAYXB0b3MtbGFicy90cy1zZGsnO1xuaW1wb3J0IHsgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBGdW5naWJsZUFzc2V0VHJhbnNmZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uL2Z1bmdpYmxlQXNzZXRUcmFuc2Zlcic7XG5pbXBvcnQgeyBGdW5naWJsZUFzc2V0VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBEaWdpdGFsQXNzZXRUcmFuc2ZlciB9IGZyb20gJy4vdHJhbnNhY3Rpb24vZGlnaXRhbEFzc2V0VHJhbnNmZXInO1xuaW1wb3J0IHsgRGlnaXRhbEFzc2V0VHJhbnNmZXJCdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZGlnaXRhbEFzc2V0VHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IEN1c3RvbVRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi9jdXN0b21UcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlci9jdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgRGVsZWdhdGlvblBvb2xBZGRTdGFrZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi9kZWxlZ2F0aW9uUG9vbEFkZFN0YWtlVHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgRGVsZWdhdGlvblBvb2xBZGRTdGFrZVRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyL2RlbGVnYXRpb25Qb29sQWRkU3Rha2VUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgRGVsZWdhdGlvblBvb2xVbmxvY2tUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vZGVsZWdhdGlvblBvb2xVbmxvY2tUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBEZWxlZ2F0aW9uUG9vbFdpdGhkcmF3VHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXIvZGVsZWdhdGlvblBvb2xXaXRoZHJhd1RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBEZWxlZ2F0aW9uUG9vbFVubG9ja1RyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyL2RlbGVnYXRpb25Qb29sVW5sb2NrVHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IERlbGVnYXRpb25Qb29sV2l0aGRyYXdUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vZGVsZWdhdGlvblBvb2xXaXRoZHJhd1RyYW5zYWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tKHNpZ25lZFJhd1R4bjogc3RyaW5nLCBhYmk/OiBhbnkpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBzaWduZWRUeG4gPSBUcmFuc2FjdGlvbi5kZXNlcmlhbGl6ZVNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFJhd1R4bik7XG4gICAgICBjb25zdCB0eG5UeXBlID0gdGhpcy5nZXRUcmFuc2FjdGlvblR5cGVGcm9tU2lnbmVkVHhuKHNpZ25lZFR4bik7XG5cbiAgICAgIHN3aXRjaCAodHhuVHlwZSkge1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TZW5kOlxuICAgICAgICAgIGNvbnN0IHRyYW5zZmVyVHggPSBuZXcgVHJhbnNmZXJUcmFuc2FjdGlvbih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgICAgICB0cmFuc2ZlclR4LmZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeG4pO1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldFRyYW5zZmVyQnVpbGRlcih0cmFuc2ZlclR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZFRva2VuOlxuICAgICAgICAgIGNvbnN0IGZ1bmdpYmxlVHJhbnNmZXJUb2tlblR4ID0gbmV3IEZ1bmdpYmxlQXNzZXRUcmFuc2Zlcih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgICAgICBmdW5naWJsZVRyYW5zZmVyVG9rZW5UeC5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRGdW5naWJsZUFzc2V0VHJhbnNhY3Rpb25CdWlsZGVyKGZ1bmdpYmxlVHJhbnNmZXJUb2tlblR4KTtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZE5GVDpcbiAgICAgICAgICBjb25zdCBkaWdpdGFsQXNzZXRUcmFuc2ZlclR4ID0gbmV3IERpZ2l0YWxBc3NldFRyYW5zZmVyKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIGRpZ2l0YWxBc3NldFRyYW5zZmVyVHguZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4bik7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RGlnaXRhbEFzc2V0VHJhbnNhY3Rpb25CdWlsZGVyKGRpZ2l0YWxBc3NldFRyYW5zZmVyVHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVsZWdhdGU6XG4gICAgICAgICAgY29uc3QgZGVsZWdhdGVUeCA9IG5ldyBEZWxlZ2F0aW9uUG9vbEFkZFN0YWtlVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgZGVsZWdhdGVUeC5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXREZWxlZ2F0aW9uUG9vbEFkZFN0YWtlVHJhbnNhY3Rpb25CdWlsZGVyKGRlbGVnYXRlVHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nVW5sb2NrOlxuICAgICAgICAgIGNvbnN0IHVubG9ja1R4ID0gbmV3IERlbGVnYXRpb25Qb29sVW5sb2NrVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgdW5sb2NrVHguZnJvbURlc2VyaWFsaXplZFNpZ25lZFRyYW5zYWN0aW9uKHNpZ25lZFR4bik7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RGVsZWdhdGlvblBvb2xVbmxvY2tUcmFuc2FjdGlvbkJ1aWxkZXIodW5sb2NrVHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nV2l0aGRyYXc6XG4gICAgICAgICAgY29uc3Qgd2l0aGRyYXdUeCA9IG5ldyBEZWxlZ2F0aW9uUG9vbFdpdGhkcmF3VHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgd2l0aGRyYXdUeC5mcm9tRGVzZXJpYWxpemVkU2lnbmVkVHJhbnNhY3Rpb24oc2lnbmVkVHhuKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXREZWxlZ2F0aW9uUG9vbFdpdGhkcmF3VHJhbnNhY3Rpb25CdWlsZGVyKHdpdGhkcmF3VHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5DdXN0b21UeDpcbiAgICAgICAgICBjb25zdCBjdXN0b21UeCA9IG5ldyBDdXN0b21UcmFuc2FjdGlvbih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgICAgICBpZiAoYWJpKSB7XG4gICAgICAgICAgICBjdXN0b21UeC5zZXRFbnRyeUZ1bmN0aW9uQWJpKGFiaSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGN1c3RvbVR4LmZyb21EZXNlcmlhbGl6ZWRTaWduZWRUcmFuc2FjdGlvbihzaWduZWRUeG4pO1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldEN1c3RvbVRyYW5zYWN0aW9uQnVpbGRlcihjdXN0b21UeCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICBnZXRUcmFuc2FjdGlvblR5cGVGcm9tU2lnbmVkVHhuKHNpZ25lZFR4bjogU2lnbmVkVHJhbnNhY3Rpb24pOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIGNvbnN0IHJhd1R4biA9IHNpZ25lZFR4bi5yYXdfdHhuO1xuICAgIHJldHVybiB1dGlscy5nZXRUcmFuc2FjdGlvblR5cGVGcm9tVHJhbnNhY3Rpb25QYXlsb2FkKHJhd1R4bi5wYXlsb2FkKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRUcmFuc2ZlckJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IFRyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBUcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldEZ1bmdpYmxlQXNzZXRUcmFuc2FjdGlvbkJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IEZ1bmdpYmxlQXNzZXRUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgRnVuZ2libGVBc3NldFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0RGlnaXRhbEFzc2V0VHJhbnNhY3Rpb25CdWlsZGVyKHR4PzogVHJhbnNhY3Rpb24pOiBEaWdpdGFsQXNzZXRUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgRGlnaXRhbEFzc2V0VHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIGdldERlbGVnYXRpb25Qb29sQWRkU3Rha2VUcmFuc2FjdGlvbkJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbik6IERlbGVnYXRpb25Qb29sQWRkU3Rha2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgRGVsZWdhdGlvblBvb2xBZGRTdGFrZVRyYW5zYWN0aW9uQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICBnZXREZWxlZ2F0aW9uUG9vbFVubG9ja1RyYW5zYWN0aW9uQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogRGVsZWdhdGlvblBvb2xVbmxvY2tUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgRGVsZWdhdGlvblBvb2xVbmxvY2tUcmFuc2FjdGlvbkJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgZ2V0RGVsZWdhdGlvblBvb2xXaXRoZHJhd1RyYW5zYWN0aW9uQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uKTogRGVsZWdhdGlvblBvb2xXaXRoZHJhd1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBEZWxlZ2F0aW9uUG9vbFdpdGhkcmF3VHJhbnNhY3Rpb25CdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBjdXN0b20gdHJhbnNhY3Rpb24gYnVpbGRlclxuICAgKlxuICAgKiBAcGFyYW0gdHggLSBPcHRpb25hbCB0cmFuc2FjdGlvbiB0byBpbml0aWFsaXplIHRoZSBidWlsZGVyIHdpdGhcbiAgICogQHJldHVybnMgQSBjdXN0b20gdHJhbnNhY3Rpb24gYnVpbGRlclxuICAgKi9cbiAgZ2V0Q3VzdG9tVHJhbnNhY3Rpb25CdWlsZGVyKHR4PzogVHJhbnNhY3Rpb24pOiBDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgQ3VzdG9tVHJhbnNhY3Rpb25CdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIGJ1aWxkZXIgd2l0aCB0aGUgZ2l2ZW4gdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbiB8IHVuZGVmaW5lZH0gdHggLSB0aGUgdHJhbnNhY3Rpb24gdXNlZCB0byBpbml0aWFsaXplIHRoZSBidWlsZGVyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25CdWlsZGVyfSBidWlsZGVyIC0gdGhlIGJ1aWxkZXIgdG8gYmUgaW5pdGlhbGl6ZWRcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gdGhlIGJ1aWxkZXIgaW5pdGlhbGl6ZWRcbiAgICovXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlcj4odHg6IFRyYW5zYWN0aW9uIHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation utilities for Aptos transactions
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Validate module name format (throwing version)
|
|
6
|
+
*
|
|
7
|
+
* @param {string} moduleName - Module name to validate
|
|
8
|
+
* @throws {Error} If module name format is invalid
|
|
9
|
+
*/
|
|
10
|
+
export declare function validateModuleName(moduleName: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* Validate function name format (throwing version)
|
|
13
|
+
*
|
|
14
|
+
* @param {string} functionName - Function name to validate
|
|
15
|
+
* @throws {Error} If function name format is invalid
|
|
16
|
+
*/
|
|
17
|
+
export declare function validateFunctionName(functionName: string): void;
|
|
18
|
+
/**
|
|
19
|
+
* Check if a module name matches the expected pattern (non-throwing version)
|
|
20
|
+
*
|
|
21
|
+
* @param {string} moduleName - Module name to check
|
|
22
|
+
* @returns {boolean} True if valid, false otherwise
|
|
23
|
+
*/
|
|
24
|
+
export declare function isValidModuleName(moduleName: string): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Check if a function name matches the expected pattern (non-throwing version)
|
|
27
|
+
*
|
|
28
|
+
* @param {string} functionName - Function name to check
|
|
29
|
+
* @returns {boolean} True if valid, false otherwise
|
|
30
|
+
*/
|
|
31
|
+
export declare function isValidFunctionName(functionName: string): boolean;
|
|
32
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/lib/utils/validation.ts"],"names":[],"mappings":"AAAA;;GAEG;AA4DH;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAK3D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAK/D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAEjE"}
|