@bitgo-beta/sdk-coin-polyx 1.0.1-beta.75 → 1.0.1-beta.751
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/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/baseBuilder.d.ts +24 -0
- package/dist/src/lib/baseBuilder.d.ts.map +1 -0
- package/dist/src/lib/baseBuilder.js +31 -0
- package/dist/src/lib/batchStakingBuilder.d.ts +79 -0
- package/dist/src/lib/batchStakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/batchStakingBuilder.js +299 -0
- package/dist/src/lib/batchUnstakingBuilder.d.ts +39 -0
- package/dist/src/lib/batchUnstakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/batchUnstakingBuilder.js +127 -0
- package/dist/src/lib/bondExtraBuilder.d.ts +37 -0
- package/dist/src/lib/bondExtraBuilder.d.ts.map +1 -0
- package/dist/src/lib/bondExtraBuilder.js +101 -0
- package/dist/src/lib/constants.d.ts +17 -0
- package/dist/src/lib/constants.d.ts.map +1 -0
- package/dist/src/lib/constants.js +20 -0
- package/dist/src/lib/iface.d.ts +138 -0
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +37 -1
- package/dist/src/lib/index.d.ts +20 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +50 -5
- package/dist/src/lib/preApproveAssetBuilder.d.ts +33 -0
- package/dist/src/lib/preApproveAssetBuilder.d.ts.map +1 -0
- package/dist/src/lib/preApproveAssetBuilder.js +77 -0
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts +7 -2
- package/dist/src/lib/registerDidWithCDDBuilder.d.ts.map +1 -1
- package/dist/src/lib/registerDidWithCDDBuilder.js +19 -3
- package/dist/src/lib/rejectInstructionBuilder.d.ts +29 -0
- package/dist/src/lib/rejectInstructionBuilder.d.ts.map +1 -0
- package/dist/src/lib/rejectInstructionBuilder.js +89 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts +58 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferBuilder.js +158 -0
- package/dist/src/lib/transaction.d.ts +30 -0
- package/dist/src/lib/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction.js +193 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +21 -1
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +80 -4
- package/dist/src/lib/transferBuilder.d.ts +4 -2
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +10 -5
- package/dist/src/lib/txnSchema.d.ts +47 -0
- package/dist/src/lib/txnSchema.d.ts.map +1 -1
- package/dist/src/lib/txnSchema.js +152 -2
- package/dist/src/lib/unbondBuilder.d.ts +37 -0
- package/dist/src/lib/unbondBuilder.d.ts.map +1 -0
- package/dist/src/lib/unbondBuilder.js +98 -0
- package/dist/src/lib/utils.d.ts +19 -0
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +47 -1
- package/dist/src/lib/withdrawUnbondedBuilder.d.ts +35 -0
- package/dist/src/lib/withdrawUnbondedBuilder.d.ts.map +1 -0
- package/dist/src/lib/withdrawUnbondedBuilder.js +89 -0
- package/dist/src/polyx.d.ts +50 -9
- package/dist/src/polyx.d.ts.map +1 -1
- package/dist/src/polyx.js +269 -15
- package/dist/src/polyxToken.d.ts +20 -0
- package/dist/src/polyxToken.d.ts.map +1 -0
- package/dist/src/polyxToken.js +55 -0
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/tpolyx.d.ts +7 -0
- package/dist/src/tpolyx.d.ts.map +1 -1
- package/dist/src/tpolyx.js +11 -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/index.d.ts +106 -0
- package/dist/test/resources/index.d.ts.map +1 -0
- package/dist/test/resources/index.js +112 -0
- package/dist/test/resources/mainnet.d.ts +2 -0
- package/dist/test/resources/mainnet.d.ts.map +1 -0
- package/dist/test/resources/mainnet.js +5 -0
- package/dist/test/resources/materialData.json +8 -0
- package/dist/test/resources/materialDataModified.json +8 -0
- package/dist/test/resources/testnet.d.ts +2 -0
- package/dist/test/resources/testnet.d.ts.map +1 -0
- package/dist/test/resources/testnet.js +5 -0
- package/dist/test/resources/wrwUsers.d.ts +19 -0
- package/dist/test/resources/wrwUsers.d.ts.map +1 -0
- package/dist/test/resources/wrwUsers.js +60 -0
- package/dist/test/unit/polyx.d.ts +2 -0
- package/dist/test/unit/polyx.d.ts.map +1 -0
- package/dist/test/unit/polyx.js +209 -0
- package/dist/test/unit/transactionBuilder/base.d.ts +4 -0
- package/dist/test/unit/transactionBuilder/base.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/base.js +245 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/batchStakingBuilder.js +263 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/batchUnstakingBuilder.js +159 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/bondExtraBuilder.js +158 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/preApproveAssetBuilder.js +115 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/registerDidWithCDDBuilder.js +302 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/rejectInstructionBuilder.js +128 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/singletonRegistry.js +59 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +140 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/transactionBuilderFactory.js +74 -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 +326 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/unbondBuilder.js +144 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/withdrawUnbondedBuilder.js +138 -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 +143 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +15 -9
- package/.eslintignore +0 -4
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAgB,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACtH,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI7F,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC1E,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;gBAEZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAYjD;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,GAAG,IAAI;IAMlC;;;;;;OAMG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMxB,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAc9G,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAmBjE;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;CAgBzB"}
|
|
@@ -6,10 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.TransferBuilder = void 0;
|
|
7
7
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
8
8
|
const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
9
|
+
const baseBuilder_1 = require("./baseBuilder");
|
|
9
10
|
const txwrapper_core_1 = require("@substrate/txwrapper-core");
|
|
10
11
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
11
12
|
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
-
class TransferBuilder extends
|
|
13
|
+
class TransferBuilder extends baseBuilder_1.PolyxBaseBuilder {
|
|
13
14
|
constructor(_coinConfig) {
|
|
14
15
|
super(_coinConfig);
|
|
15
16
|
this.material(utils_1.default.getMaterial(_coinConfig.network.type));
|
|
@@ -73,7 +74,6 @@ class TransferBuilder extends abstract_substrate_1.TransactionBuilder {
|
|
|
73
74
|
const amount = `${txMethod.value}`;
|
|
74
75
|
const to = txMethod.dest.id;
|
|
75
76
|
const memo = txMethod.memo;
|
|
76
|
-
console.log(`Validating TransferWithMemo transaction: amount=${amount}, to=${to}, memo=${memo}`);
|
|
77
77
|
const validationResult = abstract_substrate_1.Schema.TransferWithMemoTransactionSchema.validate({ amount, to, memo });
|
|
78
78
|
if (validationResult.error) {
|
|
79
79
|
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction: ${validationResult.error.message}`);
|
|
@@ -83,14 +83,19 @@ class TransferBuilder extends abstract_substrate_1.TransactionBuilder {
|
|
|
83
83
|
/** @inheritdoc */
|
|
84
84
|
fromImplementation(rawTransaction) {
|
|
85
85
|
const tx = super.fromImplementation(rawTransaction);
|
|
86
|
+
if (!this._method || !this._method.args) {
|
|
87
|
+
throw new sdk_core_1.InvalidTransactionError('Transaction method or args are undefined');
|
|
88
|
+
}
|
|
86
89
|
if (this._method?.name === abstract_substrate_1.Interface.MethodNames.TransferWithMemo) {
|
|
87
90
|
const txMethod = this._method.args;
|
|
88
91
|
this.amount(txMethod.value);
|
|
89
|
-
this.to({
|
|
92
|
+
this.to({
|
|
93
|
+
address: utils_1.default.decodeSubstrateAddress(txMethod.dest.id, utils_1.default.getAddressFormat(this._coinConfig.name)),
|
|
94
|
+
});
|
|
90
95
|
this.memo(txMethod.memo);
|
|
91
96
|
}
|
|
92
97
|
else {
|
|
93
|
-
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${this._method
|
|
98
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${this._method.name}. Expected transferWithMemo`);
|
|
94
99
|
}
|
|
95
100
|
return tx;
|
|
96
101
|
}
|
|
@@ -113,4 +118,4 @@ class TransferBuilder extends abstract_substrate_1.TransactionBuilder {
|
|
|
113
118
|
}
|
|
114
119
|
}
|
|
115
120
|
exports.TransferBuilder = TransferBuilder;
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0VBQXFDO0FBRXJDLHVFQUFvRztBQUNwRyw4REFBc0g7QUFFdEgsbURBQTZGO0FBRTdGLG9EQUE0QjtBQUU1QixNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBS3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBSyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sZ0JBQWdCO1FBQ3hCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUMxQjtZQUNFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3RCLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTztZQUNuQixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDakIsRUFDRCxVQUFVLENBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsTUFBYztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksc0JBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBZTtRQUN6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YmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciwgVHJhbnNhY3Rpb24sIEludGVyZmFjZSwgU2NoZW1hIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB7IERlY29kZWRTaWduZWRUeCwgRGVjb2RlZFNpZ25pbmdQYXlsb2FkLCBkZWZpbmVNZXRob2QsIFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJhc2VBZGRyZXNzLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3RvOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfbWVtbzogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLm1hdGVyaWFsKHV0aWxzLmdldE1hdGVyaWFsKF9jb2luQ29uZmlnLm5ldHdvcmsudHlwZSkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gIH1cblxuICAvKipcbiAgICogQ29uc3RydWN0IGFuIHVuc2lnbmVkIGB0cmFuc2ZlcldpdGhNZW1vYCB0cmFuc2FjdGlvbiB1c2luZyB0aGUgcHJvdmlkZWQgZGV0YWlscy5cbiAgICpcbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IFRoZSBjb25zdHJ1Y3RlZCB1bnNpZ25lZCB0cmFuc2ZlcldpdGhNZW1vIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuICAgIHJldHVybiB0aGlzLlRyYW5zZmVyV2l0aE1lbW8oXG4gICAgICB7XG4gICAgICAgIGRlc3Q6IHsgaWQ6IHRoaXMuX3RvIH0sXG4gICAgICAgIHZhbHVlOiB0aGlzLl9hbW91bnQsXG4gICAgICAgIG1lbW86IHRoaXMuX21lbW8sXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mb1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIGFtb3VudCBmb3IgdHJhbnNmZXIgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhbW91bnRcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKi9cbiAgYW1vdW50KGFtb3VudDogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZVZhbHVlKG5ldyBCaWdOdW1iZXIoYW1vdW50KSk7XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIFRoZSBkZXN0aW5hdGlvbiBhZGRyZXNzIGZvciB0cmFuc2ZlciB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRlc3RcbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKi9cbiAgdG8oeyBhZGRyZXNzIH06IEJhc2VBZGRyZXNzKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUFkZHJlc3MoeyBhZGRyZXNzIH0pO1xuICAgIHRoaXMuX3RvID0gYWRkcmVzcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbWVtbyB0byBhdHRhY2ggdG8gdGhlIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKiBQYWRzIHRoZSBtZW1vIG9uIHRoZSBsZWZ0IHdpdGggemVyb3MgdG8gZW5zdXJlIGl0IGlzIDMyIGNoYXJhY3RlcnMgbG9uZy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lbW8gVGhlIG1lbW8gc3RyaW5nIHRvIGluY2x1ZGUuXG4gICAqIEByZXR1cm5zIHtUcmFuc2ZlckJ1aWxkZXJ9IFRoaXMgdHJhbnNmZXIgYnVpbGRlci5cbiAgICovXG4gIG1lbW8obWVtbzogc3RyaW5nKTogdGhpcyB7XG4gICAgY29uc3QgcGFkZGVkTWVtbyA9IG1lbW8ucGFkU3RhcnQoMzIsICcwJyk7XG4gICAgdGhpcy5fbWVtbyA9IHBhZGRlZE1lbW87XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4LCByYXdUcmFuc2FjdGlvbj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSA9PT0gSW50ZXJmYWNlLk1ldGhvZE5hbWVzLlRyYW5zZmVyV2l0aE1lbW8pIHtcbiAgICAgIGNvbnN0IHR4TWV0aG9kID0gZGVjb2RlZFR4bi5tZXRob2QuYXJncyBhcyBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3M7XG4gICAgICBjb25zdCBhbW91bnQgPSBgJHt0eE1ldGhvZC52YWx1ZX1gO1xuICAgICAgY29uc3QgdG8gPSB0eE1ldGhvZC5kZXN0LmlkO1xuICAgICAgY29uc3QgbWVtbyA9IHR4TWV0aG9kLm1lbW87XG5cbiAgICAgIGNvbnNvbGUubG9nKGBWYWxpZGF0aW5nIFRyYW5zZmVyV2l0aE1lbW8gdHJhbnNhY3Rpb246IGFtb3VudD0ke2Ftb3VudH0sIHRvPSR7dG99LCBtZW1vPSR7bWVtb31gKTtcblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFNjaGVtYS5UcmFuc2ZlcldpdGhNZW1vVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoeyBhbW91bnQsIHRvLCBtZW1vIH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAodGhpcy5fbWV0aG9kPy5uYW1lID09PSBJbnRlcmZhY2UuTWV0aG9kTmFtZXMuVHJhbnNmZXJXaXRoTWVtbykge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3M7XG4gICAgICB0aGlzLmFtb3VudCh0eE1ldGhvZC52YWx1ZSk7XG4gICAgICB0aGlzLnRvKHsgYWRkcmVzczogdXRpbHMuZGVjb2RlU3Vic3RyYXRlQWRkcmVzcyh0eE1ldGhvZC5kZXN0LmlkLCB0aGlzLmdldEFkZHJlc3NGb3JtYXQoKSkgfSk7XG4gICAgICB0aGlzLm1lbW8odHhNZXRob2QubWVtbyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBUcmFuc2FjdGlvbiBUeXBlOiAke3RoaXMuX21ldGhvZD8ubmFtZX0uIEV4cGVjdGVkIHRyYW5zZmVyV2l0aE1lbW9gKTtcbiAgICB9XG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdCBhIHRyYW5zYWN0aW9uIHRvIHRyYW5zZmVyIGZ1bmRzIHdpdGggYW4gYXR0YWNoZWQgbWVtby5cbiAgICpcbiAgICogQHBhcmFtIHtJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3N9IGFyZ3MgQXJndW1lbnRzIHRvIGJlIHBhc3NlZCB0byB0aGUgdHJhbnNmZXJXaXRoTWVtbyBtZXRob2RcbiAgICogQHBhcmFtIHtJbnRlcmZhY2UuQ3JlYXRlQmFzZVR4SW5mb30gaW5mbyBCYXNlIHR4biBpbmZvIHJlcXVpcmVkIHRvIGNvbnN0cnVjdCB0aGUgdHJhbnNmZXIgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1Vuc2lnbmVkVHJhbnNhY3Rpb259IEFuIHVuc2lnbmVkIHRyYW5zZmVyV2l0aE1lbW8gdHJhbnNhY3Rpb25cbiAgICovXG4gIHByaXZhdGUgVHJhbnNmZXJXaXRoTWVtbyhcbiAgICBhcmdzOiBJbnRlcmZhY2UuVHJhbnNmZXJXaXRoTWVtb0FyZ3MsXG4gICAgaW5mbzogSW50ZXJmYWNlLkNyZWF0ZUJhc2VUeEluZm9cbiAgKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgcmV0dXJuIGRlZmluZU1ldGhvZChcbiAgICAgIHtcbiAgICAgICAgbWV0aG9kOiB7XG4gICAgICAgICAgYXJncyxcbiAgICAgICAgICBuYW1lOiAndHJhbnNmZXJXaXRoTWVtbycsXG4gICAgICAgICAgcGFsbGV0OiAnYmFsYW5jZXMnLFxuICAgICAgICB9LFxuICAgICAgICAuLi5pbmZvLmJhc2VUeEluZm8sXG4gICAgICB9LFxuICAgICAgaW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsZ0VBQXFDO0FBRXJDLHVFQUFtRTtBQUduRSwrQ0FBaUQ7QUFDakQsOERBQXNIO0FBRXRILG1EQUE2RjtBQUU3RixvREFBNEI7QUFFNUIsTUFBYSxlQUFnQixTQUFRLDhCQUF1QztJQUsxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLGVBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLGdCQUFnQjtRQUN4QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FDMUI7WUFDRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUN0QixLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ2pCLEVBQ0QsVUFBVSxDQUNYLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLE1BQWM7UUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLHNCQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxFQUFFLENBQUMsRUFBRSxP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VUFBVTtTQUNuQixFQUNELElBQUksQ0FBQyxPQUFPLENBQ2IsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQWhJRCwwQ0FnSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmltcG9ydCB7IEludGVyZmFjZSwgU2NoZW1hIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUeE1ldGhvZCB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgUG9seXhCYXNlQnVpbGRlciB9IGZyb20gJy4vYmFzZUJ1aWxkZXInO1xuaW1wb3J0IHsgRGVjb2RlZFNpZ25lZFR4LCBEZWNvZGVkU2lnbmluZ1BheWxvYWQsIGRlZmluZU1ldGhvZCwgVW5zaWduZWRUcmFuc2FjdGlvbiB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZUFkZHJlc3MsIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFBvbHl4QmFzZUJ1aWxkZXI8VHhNZXRob2QsIFRyYW5zYWN0aW9uPiB7XG4gIHByb3RlY3RlZCBfYW1vdW50OiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfdG86IHN0cmluZztcbiAgcHJvdGVjdGVkIF9tZW1vOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMubWF0ZXJpYWwodXRpbHMuZ2V0TWF0ZXJpYWwoX2NvaW5Db25maWcubmV0d29yay50eXBlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYW4gdW5zaWduZWQgYHRyYW5zZmVyV2l0aE1lbW9gIHRyYW5zYWN0aW9uIHVzaW5nIHRoZSBwcm92aWRlZCBkZXRhaWxzLlxuICAgKlxuICAgKiBAcmV0dXJucyB7VW5zaWduZWRUcmFuc2FjdGlvbn0gVGhlIGNvbnN0cnVjdGVkIHVuc2lnbmVkIHRyYW5zZmVyV2l0aE1lbW8gdHJhbnNhY3Rpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgYnVpbGRUcmFuc2FjdGlvbigpOiBVbnNpZ25lZFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCBiYXNlVHhJbmZvID0gdGhpcy5jcmVhdGVCYXNlVHhJbmZvKCk7XG4gICAgcmV0dXJuIHRoaXMuVHJhbnNmZXJXaXRoTWVtbyhcbiAgICAgIHtcbiAgICAgICAgZGVzdDogeyBpZDogdGhpcy5fdG8gfSxcbiAgICAgICAgdmFsdWU6IHRoaXMuX2Ftb3VudCxcbiAgICAgICAgbWVtbzogdGhpcy5fbWVtbyxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBUaGUgYW1vdW50IGZvciB0cmFuc2ZlciB0cmFuc2FjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudFxuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSBUaGlzIHRyYW5zZmVyIGJ1aWxkZXIuXG4gICAqL1xuICBhbW91bnQoYW1vdW50OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVmFsdWUobmV3IEJpZ051bWJlcihhbW91bnQpKTtcbiAgICB0aGlzLl9hbW91bnQgPSBhbW91bnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogVGhlIGRlc3RpbmF0aW9uIGFkZHJlc3MgZm9yIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGVzdFxuICAgKiBAcmV0dXJucyB7VHJhbnNmZXJCdWlsZGVyfSBUaGlzIHRyYW5zZmVyIGJ1aWxkZXIuXG4gICAqL1xuICB0byh7IGFkZHJlc3MgfTogQmFzZUFkZHJlc3MpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlQWRkcmVzcyh7IGFkZHJlc3MgfSk7XG4gICAgdGhpcy5fdG8gPSBhZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBtZW1vIHRvIGF0dGFjaCB0byB0aGUgdHJhbnNmZXIgdHJhbnNhY3Rpb24uXG4gICAqIFBhZHMgdGhlIG1lbW8gb24gdGhlIGxlZnQgd2l0aCB6ZXJvcyB0byBlbnN1cmUgaXQgaXMgMzIgY2hhcmFjdGVycyBsb25nLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVtbyBUaGUgbWVtbyBzdHJpbmcgdG8gaW5jbHVkZS5cbiAgICogQHJldHVybnMge1RyYW5zZmVyQnVpbGRlcn0gVGhpcyB0cmFuc2ZlciBidWlsZGVyLlxuICAgKi9cbiAgbWVtbyhtZW1vOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCBwYWRkZWRNZW1vID0gbWVtby5wYWRTdGFydCgzMiwgJzAnKTtcbiAgICB0aGlzLl9tZW1vID0gcGFkZGVkTWVtbztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZURlY29kZWRUcmFuc2FjdGlvbihkZWNvZGVkVHhuOiBEZWNvZGVkU2lnbmluZ1BheWxvYWQgfCBEZWNvZGVkU2lnbmVkVHgsIHJhd1RyYW5zYWN0aW9uPzogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lID09PSBJbnRlcmZhY2UuTWV0aG9kTmFtZXMuVHJhbnNmZXJXaXRoTWVtbykge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIEludGVyZmFjZS5UcmFuc2ZlcldpdGhNZW1vQXJncztcbiAgICAgIGNvbnN0IGFtb3VudCA9IGAke3R4TWV0aG9kLnZhbHVlfWA7XG4gICAgICBjb25zdCB0byA9IHR4TWV0aG9kLmRlc3QuaWQ7XG4gICAgICBjb25zdCBtZW1vID0gdHhNZXRob2QubWVtbztcblxuICAgICAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IFNjaGVtYS5UcmFuc2ZlcldpdGhNZW1vVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoeyBhbW91bnQsIHRvLCBtZW1vIH0pO1xuICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gc3VwZXIuZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICBpZiAoIXRoaXMuX21ldGhvZCB8fCAhdGhpcy5fbWV0aG9kLmFyZ3MpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gbWV0aG9kIG9yIGFyZ3MgYXJlIHVuZGVmaW5lZCcpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9tZXRob2Q/Lm5hbWUgPT09IEludGVyZmFjZS5NZXRob2ROYW1lcy5UcmFuc2ZlcldpdGhNZW1vKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIEludGVyZmFjZS5UcmFuc2ZlcldpdGhNZW1vQXJncztcbiAgICAgIHRoaXMuYW1vdW50KHR4TWV0aG9kLnZhbHVlKTtcbiAgICAgIHRoaXMudG8oe1xuICAgICAgICBhZGRyZXNzOiB1dGlscy5kZWNvZGVTdWJzdHJhdGVBZGRyZXNzKHR4TWV0aG9kLmRlc3QuaWQsIHV0aWxzLmdldEFkZHJlc3NGb3JtYXQodGhpcy5fY29pbkNvbmZpZy5uYW1lKSksXG4gICAgICB9KTtcbiAgICAgIHRoaXMubWVtbyh0eE1ldGhvZC5tZW1vKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7dGhpcy5fbWV0aG9kLm5hbWV9LiBFeHBlY3RlZCB0cmFuc2ZlcldpdGhNZW1vYCk7XG4gICAgfVxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3QgYSB0cmFuc2FjdGlvbiB0byB0cmFuc2ZlciBmdW5kcyB3aXRoIGFuIGF0dGFjaGVkIG1lbW8uXG4gICAqXG4gICAqIEBwYXJhbSB7SW50ZXJmYWNlLlRyYW5zZmVyV2l0aE1lbW9BcmdzfSBhcmdzIEFyZ3VtZW50cyB0byBiZSBwYXNzZWQgdG8gdGhlIHRyYW5zZmVyV2l0aE1lbW8gbWV0aG9kXG4gICAqIEBwYXJhbSB7SW50ZXJmYWNlLkNyZWF0ZUJhc2VUeEluZm99IGluZm8gQmFzZSB0eG4gaW5mbyByZXF1aXJlZCB0byBjb25zdHJ1Y3QgdGhlIHRyYW5zZmVyIHRyYW5zYWN0aW9uXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBBbiB1bnNpZ25lZCB0cmFuc2ZlcldpdGhNZW1vIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIFRyYW5zZmVyV2l0aE1lbW8oXG4gICAgYXJnczogSW50ZXJmYWNlLlRyYW5zZmVyV2l0aE1lbW9BcmdzLFxuICAgIGluZm86IEludGVyZmFjZS5DcmVhdGVCYXNlVHhJbmZvXG4gICk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBkZWZpbmVNZXRob2QoXG4gICAgICB7XG4gICAgICAgIG1ldGhvZDoge1xuICAgICAgICAgIGFyZ3MsXG4gICAgICAgICAgbmFtZTogJ3RyYW5zZmVyV2l0aE1lbW8nLFxuICAgICAgICAgIHBhbGxldDogJ2JhbGFuY2VzJyxcbiAgICAgICAgfSxcbiAgICAgICAgLi4uaW5mby5iYXNlVHhJbmZvLFxuICAgICAgfSxcbiAgICAgIGluZm8ub3B0aW9uc1xuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,50 @@
|
|
|
1
1
|
import joi from 'joi';
|
|
2
|
+
export type BatchValidationObject = {
|
|
3
|
+
amount: string;
|
|
4
|
+
controller: string;
|
|
5
|
+
payee: string | {
|
|
6
|
+
Account: string;
|
|
7
|
+
};
|
|
8
|
+
validators: string[];
|
|
9
|
+
};
|
|
10
|
+
export type BondValidationObject = {
|
|
11
|
+
value: string;
|
|
12
|
+
controller: string;
|
|
13
|
+
payee: string | {
|
|
14
|
+
Account: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
export type NominateValidationObject = {
|
|
18
|
+
validators: string[];
|
|
19
|
+
};
|
|
20
|
+
export type BondExtraValidationObject = {
|
|
21
|
+
value: string;
|
|
22
|
+
};
|
|
2
23
|
export declare const RegisterDidWithCDDTransactionSchema: joi.ObjectSchema<any>;
|
|
24
|
+
export declare const PreApproveAssetTransactionSchema: joi.ObjectSchema<any>;
|
|
25
|
+
export declare const AddAndAffirmWithMediatorsTransactionSchema: joi.ObjectSchema<any>;
|
|
26
|
+
export declare const RejectInstructionTransactionSchema: joi.ObjectSchema<any>;
|
|
27
|
+
export declare const BondExtraTransactionSchema: joi.ObjectSchema<any>;
|
|
28
|
+
export declare const NominateTransactionSchema: joi.ObjectSchema<any>;
|
|
29
|
+
export declare const BatchTransactionSchema: {
|
|
30
|
+
validate: (value: BatchValidationObject) => joi.ValidationResult;
|
|
31
|
+
validateBond: (value: BondValidationObject) => joi.ValidationResult;
|
|
32
|
+
validateNominate: (value: NominateValidationObject) => joi.ValidationResult;
|
|
33
|
+
};
|
|
34
|
+
export declare const bondSchema: joi.ObjectSchema<any>;
|
|
35
|
+
export declare const BatchUnstakingTransactionSchema: {
|
|
36
|
+
validate: (value: {
|
|
37
|
+
value: string;
|
|
38
|
+
}) => joi.ValidationResult;
|
|
39
|
+
};
|
|
40
|
+
export declare const UnbondTransactionSchema: {
|
|
41
|
+
validate: (value: {
|
|
42
|
+
value: string;
|
|
43
|
+
}) => joi.ValidationResult;
|
|
44
|
+
};
|
|
45
|
+
export declare const WithdrawUnbondedTransactionSchema: {
|
|
46
|
+
validate: (value: {
|
|
47
|
+
slashingSpans: number;
|
|
48
|
+
}) => joi.ValidationResult;
|
|
49
|
+
};
|
|
3
50
|
//# sourceMappingURL=txnSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"txnSchema.d.ts","sourceRoot":"","sources":["../../../src/lib/txnSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"txnSchema.d.ts","sourceRoot":"","sources":["../../../src/lib/txnSchema.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAGtB,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAIF,eAAO,MAAM,mCAAmC,uBAI9C,CAAC;AAEH,eAAO,MAAM,gCAAgC,uBAE3C,CAAC;AAEH,eAAO,MAAM,0CAA0C,uBAyDrD,CAAC;AAEH,eAAO,MAAM,kCAAkC,uBAmB7C,CAAC;AAGH,eAAO,MAAM,0BAA0B,uBAErC,CAAC;AAGH,eAAO,MAAM,yBAAyB,uBAEpC,CAAC;AAGH,eAAO,MAAM,sBAAsB;sBACf,qBAAqB,KAAG,GAAG,CAAC,gBAAgB;0BAmBxC,oBAAoB,KAAG,GAAG,CAAC,gBAAgB;8BAiBvC,wBAAwB,KAAG,GAAG,CAAC,gBAAgB;CAM1E,CAAC;AAEF,eAAO,MAAM,UAAU,uBAYrB,CAAC;AAEH,eAAO,MAAM,+BAA+B;sBACxB;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,GAAG,CAAC,gBAAgB;CAM3D,CAAC;AAEF,eAAO,MAAM,uBAAuB;sBAChB;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAG,GAAG,CAAC,gBAAgB;CAM3D,CAAC;AAEF,eAAO,MAAM,iCAAiC;sBAC1B;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,KAAG,GAAG,CAAC,gBAAgB;CAMnE,CAAC"}
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.RegisterDidWithCDDTransactionSchema = void 0;
|
|
6
|
+
exports.WithdrawUnbondedTransactionSchema = exports.UnbondTransactionSchema = exports.BatchUnstakingTransactionSchema = exports.bondSchema = exports.BatchTransactionSchema = exports.NominateTransactionSchema = exports.BondExtraTransactionSchema = exports.RejectInstructionTransactionSchema = exports.AddAndAffirmWithMediatorsTransactionSchema = exports.PreApproveAssetTransactionSchema = exports.RegisterDidWithCDDTransactionSchema = void 0;
|
|
7
7
|
const joi_1 = __importDefault(require("joi"));
|
|
8
8
|
const utils_1 = __importDefault(require("./utils"));
|
|
9
9
|
const addressSchema = joi_1.default.string().custom((addr) => utils_1.default.isValidAddress(addr));
|
|
@@ -12,4 +12,154 @@ exports.RegisterDidWithCDDTransactionSchema = joi_1.default.object({
|
|
|
12
12
|
secondaryKeys: joi_1.default.array().length(0).required(),
|
|
13
13
|
expiry: joi_1.default.valid(null).required(),
|
|
14
14
|
});
|
|
15
|
-
|
|
15
|
+
exports.PreApproveAssetTransactionSchema = joi_1.default.object({
|
|
16
|
+
assetId: joi_1.default.string().required(),
|
|
17
|
+
});
|
|
18
|
+
exports.AddAndAffirmWithMediatorsTransactionSchema = joi_1.default.object({
|
|
19
|
+
venueId: joi_1.default.valid(null).required(),
|
|
20
|
+
settlementType: joi_1.default
|
|
21
|
+
.object({
|
|
22
|
+
settleOnAffirmation: joi_1.default.valid(null),
|
|
23
|
+
})
|
|
24
|
+
.required(),
|
|
25
|
+
tradeDate: joi_1.default.valid(null).required(),
|
|
26
|
+
valueDate: joi_1.default.valid(null).required(),
|
|
27
|
+
legs: joi_1.default
|
|
28
|
+
.array()
|
|
29
|
+
.items(joi_1.default.object({
|
|
30
|
+
fungible: joi_1.default
|
|
31
|
+
.object({
|
|
32
|
+
sender: joi_1.default
|
|
33
|
+
.object({
|
|
34
|
+
did: addressSchema.required(),
|
|
35
|
+
kind: joi_1.default
|
|
36
|
+
.object({
|
|
37
|
+
default: joi_1.default.valid(null),
|
|
38
|
+
})
|
|
39
|
+
.required(),
|
|
40
|
+
})
|
|
41
|
+
.required(),
|
|
42
|
+
receiver: joi_1.default
|
|
43
|
+
.object({
|
|
44
|
+
did: addressSchema.required(),
|
|
45
|
+
kind: joi_1.default
|
|
46
|
+
.object({
|
|
47
|
+
default: joi_1.default.valid(null),
|
|
48
|
+
})
|
|
49
|
+
.required(),
|
|
50
|
+
})
|
|
51
|
+
.required(),
|
|
52
|
+
assetId: joi_1.default.string().required(),
|
|
53
|
+
amount: joi_1.default.number().required(),
|
|
54
|
+
})
|
|
55
|
+
.required(),
|
|
56
|
+
}))
|
|
57
|
+
.required(),
|
|
58
|
+
portfolios: joi_1.default
|
|
59
|
+
.array()
|
|
60
|
+
.items(joi_1.default.object({
|
|
61
|
+
did: addressSchema.required(),
|
|
62
|
+
kind: joi_1.default
|
|
63
|
+
.object({
|
|
64
|
+
default: joi_1.default.valid(null),
|
|
65
|
+
})
|
|
66
|
+
.required(),
|
|
67
|
+
}))
|
|
68
|
+
.required(),
|
|
69
|
+
instructionMemo: joi_1.default.string().required(),
|
|
70
|
+
mediators: joi_1.default.array().length(0).required(),
|
|
71
|
+
});
|
|
72
|
+
exports.RejectInstructionTransactionSchema = joi_1.default.object({
|
|
73
|
+
id: joi_1.default.string().required(),
|
|
74
|
+
portfolio: joi_1.default
|
|
75
|
+
.object({
|
|
76
|
+
did: addressSchema.required(),
|
|
77
|
+
kind: joi_1.default
|
|
78
|
+
.object({
|
|
79
|
+
default: joi_1.default.valid(null),
|
|
80
|
+
})
|
|
81
|
+
.required(),
|
|
82
|
+
})
|
|
83
|
+
.required(),
|
|
84
|
+
numberOfAssets: joi_1.default
|
|
85
|
+
.object({
|
|
86
|
+
fungible: joi_1.default.number().required(),
|
|
87
|
+
nonFungible: joi_1.default.number().required(),
|
|
88
|
+
offChain: joi_1.default.number().required(),
|
|
89
|
+
})
|
|
90
|
+
.optional(),
|
|
91
|
+
});
|
|
92
|
+
// For standalone bondExtra transactions
|
|
93
|
+
exports.BondExtraTransactionSchema = joi_1.default.object({
|
|
94
|
+
value: joi_1.default.string().required(),
|
|
95
|
+
});
|
|
96
|
+
// For nominate transactions in batch
|
|
97
|
+
exports.NominateTransactionSchema = joi_1.default.object({
|
|
98
|
+
validators: joi_1.default.array().items(addressSchema).min(1).required(),
|
|
99
|
+
});
|
|
100
|
+
// For batch validation
|
|
101
|
+
exports.BatchTransactionSchema = {
|
|
102
|
+
validate: (value) => joi_1.default
|
|
103
|
+
.object({
|
|
104
|
+
amount: joi_1.default.string().required(),
|
|
105
|
+
controller: addressSchema.required(),
|
|
106
|
+
// Payee can be a string or an object with Account property
|
|
107
|
+
payee: joi_1.default
|
|
108
|
+
.alternatives()
|
|
109
|
+
.try(joi_1.default.string(), joi_1.default.object({
|
|
110
|
+
Account: addressSchema,
|
|
111
|
+
}))
|
|
112
|
+
.required(),
|
|
113
|
+
validators: joi_1.default.array().items(addressSchema).min(1).required(),
|
|
114
|
+
})
|
|
115
|
+
.validate(value),
|
|
116
|
+
validateBond: (value) => joi_1.default
|
|
117
|
+
.object({
|
|
118
|
+
value: joi_1.default.string().required(),
|
|
119
|
+
controller: addressSchema.required(),
|
|
120
|
+
payee: joi_1.default
|
|
121
|
+
.alternatives()
|
|
122
|
+
.try(joi_1.default.string(), joi_1.default.object({
|
|
123
|
+
Account: addressSchema,
|
|
124
|
+
}))
|
|
125
|
+
.required(),
|
|
126
|
+
})
|
|
127
|
+
.validate(value),
|
|
128
|
+
validateNominate: (value) => joi_1.default
|
|
129
|
+
.object({
|
|
130
|
+
validators: joi_1.default.array().items(addressSchema).min(1).required(),
|
|
131
|
+
})
|
|
132
|
+
.validate(value),
|
|
133
|
+
};
|
|
134
|
+
exports.bondSchema = joi_1.default.object({
|
|
135
|
+
value: joi_1.default.string().required(),
|
|
136
|
+
controller: addressSchema.required(),
|
|
137
|
+
payee: joi_1.default
|
|
138
|
+
.alternatives()
|
|
139
|
+
.try(joi_1.default.string().valid('Staked', 'Stash', 'Controller'), joi_1.default.object({
|
|
140
|
+
Account: addressSchema.required(),
|
|
141
|
+
}))
|
|
142
|
+
.required(),
|
|
143
|
+
});
|
|
144
|
+
exports.BatchUnstakingTransactionSchema = {
|
|
145
|
+
validate: (value) => joi_1.default
|
|
146
|
+
.object({
|
|
147
|
+
value: joi_1.default.string().required(),
|
|
148
|
+
})
|
|
149
|
+
.validate(value),
|
|
150
|
+
};
|
|
151
|
+
exports.UnbondTransactionSchema = {
|
|
152
|
+
validate: (value) => joi_1.default
|
|
153
|
+
.object({
|
|
154
|
+
value: joi_1.default.string().required(),
|
|
155
|
+
})
|
|
156
|
+
.validate(value),
|
|
157
|
+
};
|
|
158
|
+
exports.WithdrawUnbondedTransactionSchema = {
|
|
159
|
+
validate: (value) => joi_1.default
|
|
160
|
+
.object({
|
|
161
|
+
slashingSpans: joi_1.default.number().min(0).required(),
|
|
162
|
+
})
|
|
163
|
+
.validate(value),
|
|
164
|
+
};
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhuU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90eG5TY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQXNCO0FBQ3RCLG9EQUE0QjtBQXVCNUIsTUFBTSxhQUFhLEdBQUcsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsZUFBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBRW5FLFFBQUEsbUNBQW1DLEdBQUcsYUFBRyxDQUFDLE1BQU0sQ0FBQztJQUM1RCxhQUFhLEVBQUUsYUFBYSxDQUFDLFFBQVEsRUFBRTtJQUN2QyxhQUFhLEVBQUUsYUFBRyxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDL0MsTUFBTSxFQUFFLGFBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ25DLENBQUMsQ0FBQztBQUVVLFFBQUEsZ0NBQWdDLEdBQUcsYUFBRyxDQUFDLE1BQU0sQ0FBQztJQUN6RCxPQUFPLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUNqQyxDQUFDLENBQUM7QUFFVSxRQUFBLDBDQUEwQyxHQUFHLGFBQUcsQ0FBQyxNQUFNLENBQUM7SUFDbkUsT0FBTyxFQUFFLGFBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ25DLGNBQWMsRUFBRSxhQUFHO1NBQ2hCLE1BQU0sQ0FBQztRQUNOLG1CQUFtQixFQUFFLGFBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO0tBQ3JDLENBQUM7U0FDRCxRQUFRLEVBQUU7SUFDYixTQUFTLEVBQUUsYUFBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDckMsU0FBUyxFQUFF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LE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtLQUMvQixDQUFDO1NBQ0QsUUFBUSxDQUFDLEtBQUssQ0FBQztDQUNyQixDQUFDO0FBRVcsUUFBQSxpQ0FBaUMsR0FBRztJQUMvQyxRQUFRLEVBQUUsQ0FBQyxLQUFnQyxFQUF3QixFQUFFLENBQ25FLGFBQUc7U0FDQSxNQUFNLENBQUM7UUFDTixhQUFhLEVBQUUsYUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7S0FDOUMsQ0FBQztTQUNELFFBQVEsQ0FBQyxLQUFLLENBQUM7Q0FDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBqb2kgZnJvbSAnam9pJztcbmltcG9ydCBVdGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IHR5cGUgQmF0Y2hWYWxpZGF0aW9uT2JqZWN0ID0ge1xuICBhbW91bnQ6IHN0cmluZztcbiAgY29udHJvbGxlcjogc3RyaW5nO1xuICBwYXllZTogc3RyaW5nIHwgeyBBY2NvdW50OiBzdHJpbmcgfTtcbiAgdmFsaWRhdG9yczogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBCb25kVmFsaWRhdGlvbk9iamVjdCA9IHtcbiAgdmFsdWU6IHN0cmluZztcbiAgY29udHJvbGxlcjogc3RyaW5nO1xuICBwYXllZTogc3RyaW5nIHwgeyBBY2NvdW50OiBzdHJpbmcgfTtcbn07XG5cbmV4cG9ydCB0eXBlIE5vbWluYXRlVmFsaWRhdGlvbk9iamVjdCA9IHtcbiAgdmFsaWRhdG9yczogc3RyaW5nW107XG59O1xuXG5leHBvcnQgdHlwZSBCb25kRXh0cmFWYWxpZGF0aW9uT2JqZWN0ID0ge1xuICB2YWx1ZTogc3RyaW5nO1xufTtcblxuY29uc3QgYWRkcmVzc1NjaGVtYSA9IGpvaS5zdHJpbmcoKS5jdXN0b20oKGFkZHIpID0+IFV0aWxzLmlzVmFsaWRBZGRyZXNzKGFkZHIpKTtcblxuZXhwb3J0IGNvbnN0IFJlZ2lzdGVyRGlkV2l0aENERFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIHRhcmdldEFjY291bnQ6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgc2Vjb25kYXJ5S2V5czogam9pLmFycmF5KCkubGVuZ3RoKDApLnJlcXVpcmVkKCksXG4gIGV4cGlyeTogam9pLnZhbGlkKG51bGwpLnJlcXVpcmVkKCksXG59KTtcblxuZXhwb3J0IGNvbnN0IFByZUFwcHJvdmVBc3NldFRyYW5zYWN0aW9uU2NoZW1hID0gam9pLm9iamVjdCh7XG4gIGFzc2V0SWQ6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBBZGRBbmRBZmZpcm1XaXRoTWVkaWF0b3JzVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmVudWVJZDogam9pLnZhbGlkKG51bGwpLnJlcXVpcmVkKCksXG4gIHNldHRsZW1lbnRUeXBlOiBqb2lcbiAgICAub2JqZWN0KHtcbiAgICAgIHNldHRsZU9uQWZmaXJtYXRpb246IGpvaS52YWxpZChudWxsKSxcbiAgICB9KVxuICAgIC5yZXF1aXJlZCgpLFxuICB0cmFkZURhdGU6IGpvaS52YWxpZChudWxsKS5yZXF1aXJlZCgpLFxuICB2YWx1ZURhdGU6IGpvaS52YWxpZChudWxsKS5yZXF1aXJlZCgpLFxuICBsZWdzOiBqb2lcbiAgICAuYXJyYXkoKVxuICAgIC5pdGVtcyhcbiAgICAgIGpvaS5vYmplY3Qoe1xuICAgICAgICBmdW5naWJsZTogam9pXG4gICAgICAgICAgLm9iamVjdCh7XG4gICAgICAgICAgICBzZW5kZXI6IGpvaVxuICAgICAgICAgICAgICAub2JqZWN0KHtcbiAgICAgICAgICAgICAgICBkaWQ6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgICAgICAgICAgICAgICBraW5kOiBqb2lcbiAgICAgICAgICAgICAgICAgIC5vYmplY3Qoe1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBqb2kudmFsaWQobnVsbCksXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgLnJlcXVpcmVkKCksXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5yZXF1aXJlZCgpLFxuICAgICAgICAgICAgcmVjZWl2ZXI6IGpvaVxuICAgICAgICAgICAgICAub2JqZWN0KHtcbiAgICAgICAgICAgICAgICBkaWQ6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgICAgICAgICAgICAgICBraW5kOiBqb2lcbiAgICAgICAgICAgICAgICAgIC5vYmplY3Qoe1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBqb2kudmFsaWQobnVsbCksXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgLnJlcXVpcmVkKCksXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5yZXF1aXJlZCgpLFxuICAgICAgICAgICAgYXNzZXRJZDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gICAgICAgICAgICBhbW91bnQ6IGpvaS5udW1iZXIoKS5yZXF1aXJlZCgpLFxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnJlcXVpcmVkKCksXG4gICAgICB9KVxuICAgIClcbiAgICAucmVxdWlyZWQoKSxcbiAgcG9ydGZvbGlvczogam9pXG4gICAgLmFycmF5KClcbiAgICAuaXRlbXMoXG4gICAgICBqb2kub2JqZWN0KHtcbiAgICAgICAgZGlkOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gICAgICAgIGtpbmQ6IGpvaVxuICAgICAgICAgIC5vYmplY3Qoe1xuICAgICAgICAgICAgZGVmYXVsdDogam9pLnZhbGlkKG51bGwpLFxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnJlcXVpcmVkKCksXG4gICAgICB9KVxuICAgIClcbiAgICAucmVxdWlyZWQoKSxcbiAgaW5zdHJ1Y3Rpb25NZW1vOiBqb2kuc3RyaW5nKCkucmVxdWlyZWQoKSxcbiAgbWVkaWF0b3JzOiBqb2kuYXJyYXkoKS5sZW5ndGgoMCkucmVxdWlyZWQoKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUmVqZWN0SW5zdHJ1Y3Rpb25UcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICBpZDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gIHBvcnRmb2xpbzogam9pXG4gICAgLm9iamVjdCh7XG4gICAgICBkaWQ6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgICAgIGtpbmQ6IGpvaVxuICAgICAgICAub2JqZWN0KHtcbiAgICAgICAgICBkZWZhdWx0OiBqb2kudmFsaWQobnVsbCksXG4gICAgICAgIH0pXG4gICAgICAgIC5yZXF1aXJlZCgpLFxuICAgIH0pXG4gICAgLnJlcXVpcmVkKCksXG4gIG51bWJlck9mQXNzZXRzOiBqb2lcbiAgICAub2JqZWN0KHtcbiAgICAgIGZ1bmdpYmxlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgICAgIG5vbkZ1bmdpYmxlOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgICAgIG9mZkNoYWluOiBqb2kubnVtYmVyKCkucmVxdWlyZWQoKSxcbiAgICB9KVxuICAgIC5vcHRpb25hbCgpLFxufSk7XG5cbi8vIEZvciBzdGFuZGFsb25lIGJvbmRFeHRyYSB0cmFuc2FjdGlvbnNcbmV4cG9ydCBjb25zdCBCb25kRXh0cmFUcmFuc2FjdGlvblNjaGVtYSA9IGpvaS5vYmplY3Qoe1xuICB2YWx1ZTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG59KTtcblxuLy8gRm9yIG5vbWluYXRlIHRyYW5zYWN0aW9ucyBpbiBiYXRjaFxuZXhwb3J0IGNvbnN0IE5vbWluYXRlVHJhbnNhY3Rpb25TY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmFsaWRhdG9yczogam9pLmFycmF5KCkuaXRlbXMoYWRkcmVzc1NjaGVtYSkubWluKDEpLnJlcXVpcmVkKCksXG59KTtcblxuLy8gRm9yIGJhdGNoIHZhbGlkYXRpb25cbmV4cG9ydCBjb25zdCBCYXRjaFRyYW5zYWN0aW9uU2NoZW1hID0ge1xuICB2YWxpZGF0ZTogKHZhbHVlOiBCYXRjaFZhbGlkYXRpb25PYmplY3QpOiBqb2kuVmFsaWRhdGlvblJlc3VsdCA9PlxuICAgIGpvaVxuICAgICAgLm9iamVjdCh7XG4gICAgICAgIGFtb3VudDogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gICAgICAgIGNvbnRyb2xsZXI6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgICAgICAgLy8gUGF5ZWUgY2FuIGJlIGEgc3RyaW5nIG9yIGFuIG9iamVjdCB3aXRoIEFjY291bnQgcHJvcGVydHlcbiAgICAgICAgcGF5ZWU6IGpvaVxuICAgICAgICAgIC5hbHRlcm5hdGl2ZXMoKVxuICAgICAgICAgIC50cnkoXG4gICAgICAgICAgICBqb2kuc3RyaW5nKCksXG4gICAgICAgICAgICBqb2kub2JqZWN0KHtcbiAgICAgICAgICAgICAgQWNjb3VudDogYWRkcmVzc1NjaGVtYSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICAgIC5yZXF1aXJlZCgpLFxuICAgICAgICB2YWxpZGF0b3JzOiBqb2kuYXJyYXkoKS5pdGVtcyhhZGRyZXNzU2NoZW1hKS5taW4oMSkucmVxdWlyZWQoKSxcbiAgICAgIH0pXG4gICAgICAudmFsaWRhdGUodmFsdWUpLFxuXG4gIHZhbGlkYXRlQm9uZDogKHZhbHVlOiBCb25kVmFsaWRhdGlvbk9iamVjdCk6IGpvaS5WYWxpZGF0aW9uUmVzdWx0ID0+XG4gICAgam9pXG4gICAgICAub2JqZWN0KHtcbiAgICAgICAgdmFsdWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICAgICAgICBjb250cm9sbGVyOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gICAgICAgIHBheWVlOiBqb2lcbiAgICAgICAgICAuYWx0ZXJuYXRpdmVzKClcbiAgICAgICAgICAudHJ5KFxuICAgICAgICAgICAgam9pLnN0cmluZygpLFxuICAgICAgICAgICAgam9pLm9iamVjdCh7XG4gICAgICAgICAgICAgIEFjY291bnQ6IGFkZHJlc3NTY2hlbWEsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIClcbiAgICAgICAgICAucmVxdWlyZWQoKSxcbiAgICAgIH0pXG4gICAgICAudmFsaWRhdGUodmFsdWUpLFxuXG4gIHZhbGlkYXRlTm9taW5hdGU6ICh2YWx1ZTogTm9taW5hdGVWYWxpZGF0aW9uT2JqZWN0KTogam9pLlZhbGlkYXRpb25SZXN1bHQgPT5cbiAgICBqb2lcbiAgICAgIC5vYmplY3Qoe1xuICAgICAgICB2YWxpZGF0b3JzOiBqb2kuYXJyYXkoKS5pdGVtcyhhZGRyZXNzU2NoZW1hKS5taW4oMSkucmVxdWlyZWQoKSxcbiAgICAgIH0pXG4gICAgICAudmFsaWRhdGUodmFsdWUpLFxufTtcblxuZXhwb3J0IGNvbnN0IGJvbmRTY2hlbWEgPSBqb2kub2JqZWN0KHtcbiAgdmFsdWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICBjb250cm9sbGVyOiBhZGRyZXNzU2NoZW1hLnJlcXVpcmVkKCksXG4gIHBheWVlOiBqb2lcbiAgICAuYWx0ZXJuYXRpdmVzKClcbiAgICAudHJ5KFxuICAgICAgam9pLnN0cmluZygpLnZhbGlkKCdTdGFrZWQnLCAnU3Rhc2gnLCAnQ29udHJvbGxlcicpLFxuICAgICAgam9pLm9iamVjdCh7XG4gICAgICAgIEFjY291bnQ6IGFkZHJlc3NTY2hlbWEucmVxdWlyZWQoKSxcbiAgICAgIH0pXG4gICAgKVxuICAgIC5yZXF1aXJlZCgpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBCYXRjaFVuc3Rha2luZ1RyYW5zYWN0aW9uU2NoZW1hID0ge1xuICB2YWxpZGF0ZTogKHZhbHVlOiB7IHZhbHVlOiBzdHJpbmcgfSk6IGpvaS5WYWxpZGF0aW9uUmVzdWx0ID0+XG4gICAgam9pXG4gICAgICAub2JqZWN0KHtcbiAgICAgICAgdmFsdWU6IGpvaS5zdHJpbmcoKS5yZXF1aXJlZCgpLFxuICAgICAgfSlcbiAgICAgIC52YWxpZGF0ZSh2YWx1ZSksXG59O1xuXG5leHBvcnQgY29uc3QgVW5ib25kVHJhbnNhY3Rpb25TY2hlbWEgPSB7XG4gIHZhbGlkYXRlOiAodmFsdWU6IHsgdmFsdWU6IHN0cmluZyB9KTogam9pLlZhbGlkYXRpb25SZXN1bHQgPT5cbiAgICBqb2lcbiAgICAgIC5vYmplY3Qoe1xuICAgICAgICB2YWx1ZTogam9pLnN0cmluZygpLnJlcXVpcmVkKCksXG4gICAgICB9KVxuICAgICAgLnZhbGlkYXRlKHZhbHVlKSxcbn07XG5cbmV4cG9ydCBjb25zdCBXaXRoZHJhd1VuYm9uZGVkVHJhbnNhY3Rpb25TY2hlbWEgPSB7XG4gIHZhbGlkYXRlOiAodmFsdWU6IHsgc2xhc2hpbmdTcGFuczogbnVtYmVyIH0pOiBqb2kuVmFsaWRhdGlvblJlc3VsdCA9PlxuICAgIGpvaVxuICAgICAgLm9iamVjdCh7XG4gICAgICAgIHNsYXNoaW5nU3BhbnM6IGpvaS5udW1iZXIoKS5taW4oMCkucmVxdWlyZWQoKSxcbiAgICAgIH0pXG4gICAgICAudmFsaWRhdGUodmFsdWUpLFxufTtcbiJdfQ==
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Transaction } from './transaction';
|
|
2
|
+
import { PolyxBaseBuilder } from './baseBuilder';
|
|
3
|
+
import { DecodedSignedTx, DecodedSigningPayload, UnsignedTransaction } from '@substrate/txwrapper-core';
|
|
4
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
5
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
6
|
+
export declare class UnbondBuilder extends PolyxBaseBuilder {
|
|
7
|
+
protected _amount: string;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
protected get transactionType(): TransactionType;
|
|
10
|
+
/**
|
|
11
|
+
* Build the unbond transaction
|
|
12
|
+
*/
|
|
13
|
+
protected buildTransaction(): UnsignedTransaction;
|
|
14
|
+
/**
|
|
15
|
+
* Set the amount to unbond
|
|
16
|
+
*/
|
|
17
|
+
amount(amount: string): this;
|
|
18
|
+
/**
|
|
19
|
+
* Get the amount to unbond
|
|
20
|
+
*/
|
|
21
|
+
getAmount(): string;
|
|
22
|
+
/** @inheritdoc */
|
|
23
|
+
validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void;
|
|
24
|
+
/** @inheritdoc */
|
|
25
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
26
|
+
/** @inheritdoc */
|
|
27
|
+
validateTransaction(tx: Transaction): void;
|
|
28
|
+
/**
|
|
29
|
+
* Validate the unbond fields
|
|
30
|
+
*/
|
|
31
|
+
private validateFields;
|
|
32
|
+
/**
|
|
33
|
+
* Validates fields for testing
|
|
34
|
+
*/
|
|
35
|
+
testValidateFields(): void;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=unbondBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unbondBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unbondBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAExG,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMhF,qBAAa,aAAc,SAAQ,gBAAgB;IACjD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,mBAAmB;IAYjD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM5B;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB,kBAAkB;IAClB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,eAAe,GAAG,IAAI;IAmBrF,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAcjE,kBAAkB;IAClB,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAK1C;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,kBAAkB,IAAI,IAAI;CAG3B"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UnbondBuilder = void 0;
|
|
7
|
+
const baseBuilder_1 = require("./baseBuilder");
|
|
8
|
+
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
9
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
10
|
+
const txnSchema_1 = require("./txnSchema");
|
|
11
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
12
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
13
|
+
class UnbondBuilder extends baseBuilder_1.PolyxBaseBuilder {
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
this.material(utils_1.default.getMaterial(_coinConfig.network.type));
|
|
17
|
+
}
|
|
18
|
+
get transactionType() {
|
|
19
|
+
return sdk_core_1.TransactionType.StakingDeactivate;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Build the unbond transaction
|
|
23
|
+
*/
|
|
24
|
+
buildTransaction() {
|
|
25
|
+
const baseTxInfo = this.createBaseTxInfo();
|
|
26
|
+
return txwrapper_polkadot_1.methods.staking.unbond({
|
|
27
|
+
value: this._amount,
|
|
28
|
+
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Set the amount to unbond
|
|
32
|
+
*/
|
|
33
|
+
amount(amount) {
|
|
34
|
+
this.validateValue(new bignumber_js_1.default(amount));
|
|
35
|
+
this._amount = amount;
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get the amount to unbond
|
|
40
|
+
*/
|
|
41
|
+
getAmount() {
|
|
42
|
+
return this._amount;
|
|
43
|
+
}
|
|
44
|
+
/** @inheritdoc */
|
|
45
|
+
validateDecodedTransaction(decodedTxn) {
|
|
46
|
+
const methodName = decodedTxn.method?.name;
|
|
47
|
+
if (methodName === 'unbond') {
|
|
48
|
+
const txMethod = decodedTxn.method.args;
|
|
49
|
+
const value = txMethod.value;
|
|
50
|
+
const validationResult = txnSchema_1.UnbondTransactionSchema.validate({
|
|
51
|
+
value,
|
|
52
|
+
});
|
|
53
|
+
if (validationResult.error) {
|
|
54
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid unbond transaction: ${validationResult.error.message}`);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction type: ${methodName}. Expected unbond`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** @inheritdoc */
|
|
62
|
+
fromImplementation(rawTransaction) {
|
|
63
|
+
const tx = super.fromImplementation(rawTransaction);
|
|
64
|
+
const methodName = this._method?.name;
|
|
65
|
+
if (methodName === 'unbond' && this._method) {
|
|
66
|
+
const txMethod = this._method.args;
|
|
67
|
+
this.amount(txMethod.value);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${methodName}. Expected unbond`);
|
|
71
|
+
}
|
|
72
|
+
return tx;
|
|
73
|
+
}
|
|
74
|
+
/** @inheritdoc */
|
|
75
|
+
validateTransaction(tx) {
|
|
76
|
+
super.validateTransaction(tx);
|
|
77
|
+
this.validateFields();
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Validate the unbond fields
|
|
81
|
+
*/
|
|
82
|
+
validateFields() {
|
|
83
|
+
const validationResult = txnSchema_1.UnbondTransactionSchema.validate({
|
|
84
|
+
value: this._amount,
|
|
85
|
+
});
|
|
86
|
+
if (validationResult.error) {
|
|
87
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid unbond transaction: ${validationResult.error.message}`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Validates fields for testing
|
|
92
|
+
*/
|
|
93
|
+
testValidateFields() {
|
|
94
|
+
this.validateFields();
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.UnbondBuilder = UnbondBuilder;
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5ib25kQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdW5ib25kQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSwrQ0FBaUQ7QUFFakQsc0VBQXdEO0FBRXhELG1EQUFnRjtBQUNoRiwyQ0FBc0Q7QUFDdEQsb0RBQTRCO0FBRTVCLGdFQUFxQztBQUVyQyxNQUFhLGFBQWMsU0FBUSw4QkFBZ0I7SUFHakQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFLLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxpQkFBaUIsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7O09BRUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFM0MsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQzNCO1lBQ0UsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3BCLEVBQ0QsVUFBVSxDQUFDLFVBQVUsRUFDckIsVUFBVSxDQUFDLE9BQU8sQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxNQUFjO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsMEJBQTBCLENBQUMsVUFBbUQ7UUFDNUUsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFjLENBQUM7UUFFckQsSUFBSSxVQUFVLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDNUIsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUE2QixDQUFDO1lBQ2pFLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFFN0IsTUFBTSxnQkFBZ0IsR0FBRyxtQ0FBdUIsQ0FBQyxRQUFRLENBQUM7Z0JBQ3hELEtBQUs7YUFDTixDQUFDLENBQUM7WUFFSCxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMzQixNQUFNLElBQUksa0NBQXVCLENBQUMsK0JBQStCLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3JHLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyw2QkFBNkIsVUFBVSxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2hHLENBQUM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1Isa0JBQWtCLENBQUMsY0FBc0I7UUFDakQsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBYyxDQUFDO1FBRWhELElBQUksVUFBVSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDNUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUE2QixDQUFDO1lBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLGtDQUF1QixDQUFDLDZCQUE2QixVQUFVLG1CQUFtQixDQUFDLENBQUM7UUFDaEcsQ0FBQztRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxFQUFlO1FBQ2pDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ssY0FBYztRQUNwQixNQUFNLGdCQUFnQixHQUFHLG1DQUF1QixDQUFDLFFBQVEsQ0FBQztZQUN4RCxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU87U0FDcEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksa0NBQXVCLENBQUMsK0JBQStCLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3JHLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Q0FDRjtBQXZHRCxzQ0F1R0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgUG9seXhCYXNlQnVpbGRlciB9IGZyb20gJy4vYmFzZUJ1aWxkZXInO1xuaW1wb3J0IHsgRGVjb2RlZFNpZ25lZFR4LCBEZWNvZGVkU2lnbmluZ1BheWxvYWQsIFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IG1ldGhvZHMgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVW5ib25kVHJhbnNhY3Rpb25TY2hlbWEgfSBmcm9tICcuL3R4blNjaGVtYSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBVbmJvbmRBcmdzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmV4cG9ydCBjbGFzcyBVbmJvbmRCdWlsZGVyIGV4dGVuZHMgUG9seXhCYXNlQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfYW1vdW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMubWF0ZXJpYWwodXRpbHMuZ2V0TWF0ZXJpYWwoX2NvaW5Db25maWcubmV0d29yay50eXBlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0RlYWN0aXZhdGU7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgdGhlIHVuYm9uZCB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuXG4gICAgcmV0dXJuIG1ldGhvZHMuc3Rha2luZy51bmJvbmQoXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiB0aGlzLl9hbW91bnQsXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGFtb3VudCB0byB1bmJvbmRcbiAgICovXG4gIGFtb3VudChhbW91bnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKGFtb3VudCkpO1xuICAgIHRoaXMuX2Ftb3VudCA9IGFtb3VudDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGFtb3VudCB0byB1bmJvbmRcbiAgICovXG4gIGdldEFtb3VudCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9hbW91bnQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVEZWNvZGVkVHJhbnNhY3Rpb24oZGVjb2RlZFR4bjogRGVjb2RlZFNpZ25pbmdQYXlsb2FkIHwgRGVjb2RlZFNpZ25lZFR4KTogdm9pZCB7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IGRlY29kZWRUeG4ubWV0aG9kPy5uYW1lIGFzIHN0cmluZztcblxuICAgIGlmIChtZXRob2ROYW1lID09PSAndW5ib25kJykge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIHVua25vd24gYXMgVW5ib25kQXJncztcbiAgICAgIGNvbnN0IHZhbHVlID0gdHhNZXRob2QudmFsdWU7XG5cbiAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBVbmJvbmRUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7XG4gICAgICAgIHZhbHVlLFxuICAgICAgfSk7XG5cbiAgICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCB1bmJvbmQgdHJhbnNhY3Rpb246ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdHJhbnNhY3Rpb24gdHlwZTogJHttZXRob2ROYW1lfS4gRXhwZWN0ZWQgdW5ib25kYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0eCA9IHN1cGVyLmZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IHRoaXMuX21ldGhvZD8ubmFtZSBhcyBzdHJpbmc7XG5cbiAgICBpZiAobWV0aG9kTmFtZSA9PT0gJ3VuYm9uZCcgJiYgdGhpcy5fbWV0aG9kKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIHVua25vd24gYXMgVW5ib25kQXJncztcbiAgICAgIHRoaXMuYW1vdW50KHR4TWV0aG9kLnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7bWV0aG9kTmFtZX0uIEV4cGVjdGVkIHVuYm9uZGApO1xuICAgIH1cblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLnZhbGlkYXRlVHJhbnNhY3Rpb24odHgpO1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGUgdW5ib25kIGZpZWxkc1xuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gVW5ib25kVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgdmFsdWU6IHRoaXMuX2Ftb3VudCxcbiAgICB9KTtcblxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdW5ib25kIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIGZpZWxkcyBmb3IgdGVzdGluZ1xuICAgKi9cbiAgdGVzdFZhbGlkYXRlRmllbGRzKCk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoKTtcbiAgfVxufVxuIl19
|
package/dist/src/lib/utils.d.ts
CHANGED
|
@@ -1,7 +1,26 @@
|
|
|
1
1
|
import { Utils as SubstrateUtils, Interface } from '@bitgo-beta/abstract-substrate';
|
|
2
2
|
import { NetworkType } from '@bitgo-beta/statics';
|
|
3
|
+
import { TypeRegistry } from '@substrate/txwrapper-core/lib/types';
|
|
4
|
+
import { BatchCallObject } from './iface';
|
|
3
5
|
export declare class Utils extends SubstrateUtils {
|
|
6
|
+
/**
|
|
7
|
+
* Get the appropriate address format based on network type
|
|
8
|
+
* Returns 12 for mainnet and 42 for testnet
|
|
9
|
+
*
|
|
10
|
+
* @param coinName The name of the coin
|
|
11
|
+
* @returns The address format to use
|
|
12
|
+
*/
|
|
13
|
+
getAddressFormat(coinName: string): number;
|
|
14
|
+
/**
|
|
15
|
+
* Checks if a string is a valid Polymesh DID (Decentralized Identifier)
|
|
16
|
+
* DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
|
|
17
|
+
*
|
|
18
|
+
* @param {string} did - The string to validate
|
|
19
|
+
* @returns {boolean} true if valid DID format, false otherwise
|
|
20
|
+
*/
|
|
21
|
+
isValidDid(did: string): boolean;
|
|
4
22
|
getMaterial(networkType: NetworkType): Interface.Material;
|
|
23
|
+
decodeMethodName(call: BatchCallObject, registry: TypeRegistry): string;
|
|
5
24
|
}
|
|
6
25
|
declare const utils: Utils;
|
|
7
26
|
export default utils;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG1C,qBAAa,KAAM,SAAQ,cAAc;IACvC;;;;;;OAMG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAK1C;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC,QAAQ;IAIzD,gBAAgB,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,GAAG,MAAM;CA0BxE;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAC1B,eAAe,KAAK,CAAC"}
|
package/dist/src/lib/utils.js
CHANGED
|
@@ -4,12 +4,58 @@ exports.Utils = void 0;
|
|
|
4
4
|
const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
5
5
|
const statics_1 = require("@bitgo-beta/statics");
|
|
6
6
|
const resources_1 = require("../resources");
|
|
7
|
+
const constants_1 = require("./constants");
|
|
7
8
|
class Utils extends abstract_substrate_1.Utils {
|
|
9
|
+
/**
|
|
10
|
+
* Get the appropriate address format based on network type
|
|
11
|
+
* Returns 12 for mainnet and 42 for testnet
|
|
12
|
+
*
|
|
13
|
+
* @param coinName The name of the coin
|
|
14
|
+
* @returns The address format to use
|
|
15
|
+
*/
|
|
16
|
+
getAddressFormat(coinName) {
|
|
17
|
+
const isMainnet = coinName.toLowerCase() === 'polyx';
|
|
18
|
+
return isMainnet ? 12 : 42;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Checks if a string is a valid Polymesh DID (Decentralized Identifier)
|
|
22
|
+
* DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
|
|
23
|
+
*
|
|
24
|
+
* @param {string} did - The string to validate
|
|
25
|
+
* @returns {boolean} true if valid DID format, false otherwise
|
|
26
|
+
*/
|
|
27
|
+
isValidDid(did) {
|
|
28
|
+
return constants_1.POLYX_DID_REGEX.test(did);
|
|
29
|
+
}
|
|
8
30
|
getMaterial(networkType) {
|
|
9
31
|
return (networkType === statics_1.NetworkType.MAINNET ? resources_1.mainnetMaterial : resources_1.testnetMaterial);
|
|
10
32
|
}
|
|
33
|
+
decodeMethodName(call, registry) {
|
|
34
|
+
// Handle both callIndex and method formats
|
|
35
|
+
const callWithIndex = call;
|
|
36
|
+
const methodIdentifier = callWithIndex.callIndex || call.method;
|
|
37
|
+
if (typeof methodIdentifier === 'string') {
|
|
38
|
+
// Check if it looks like a hex callIndex
|
|
39
|
+
if (methodIdentifier.startsWith('0x') && methodIdentifier.length > 2) {
|
|
40
|
+
try {
|
|
41
|
+
const decodedCall = registry.findMetaCall(new Uint8Array(Buffer.from(methodIdentifier.replace('0x', ''), 'hex')));
|
|
42
|
+
return decodedCall.method;
|
|
43
|
+
}
|
|
44
|
+
catch (e) {
|
|
45
|
+
// Fallback: assume it's already the method name
|
|
46
|
+
return methodIdentifier;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
// Already a simple method name
|
|
51
|
+
return methodIdentifier;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Fallback
|
|
55
|
+
return String(methodIdentifier);
|
|
56
|
+
}
|
|
11
57
|
}
|
|
12
58
|
exports.Utils = Utils;
|
|
13
59
|
const utils = new Utils();
|
|
14
60
|
exports.default = utils;
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHVFQUFvRjtBQUNwRixpREFBa0Q7QUFFbEQsNENBQWdFO0FBRWhFLDJDQUE4QztBQUU5QyxNQUFhLEtBQU0sU0FBUSwwQkFBYztJQUN2Qzs7Ozs7O09BTUc7SUFDSCxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUMvQixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsV0FBVyxFQUFFLEtBQUssT0FBTyxDQUFDO1FBQ3JELE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsVUFBVSxDQUFDLEdBQVc7UUFDcEIsT0FBTywyQkFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFdBQXdCO1FBQ2xDLE9BQU8sQ0FBQyxXQUFXLEtBQUsscUJBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLDJCQUFlLENBQUMsQ0FBQyxDQUFDLDJCQUFlLENBQWtDLENBQUM7SUFDcEgsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQXFCLEVBQUUsUUFBc0I7UUFDNUQsMkNBQTJDO1FBQzNDLE1BQU0sYUFBYSxHQUFHLElBQWdELENBQUM7UUFDdkUsTUFBTSxnQkFBZ0IsR0FBRyxhQUFhLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUM7UUFFaEUsSUFBSSxPQUFPLGdCQUFnQixLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLHlDQUF5QztZQUN6QyxJQUFJLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3JFLElBQUksQ0FBQztvQkFDSCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsWUFBWSxDQUN2QyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDdkUsQ0FBQztvQkFDRixPQUFPLFdBQVcsQ0FBQyxNQUFNLENBQUM7Z0JBQzVCLENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDWCxnREFBZ0Q7b0JBQ2hELE9BQU8sZ0JBQWdCLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sK0JBQStCO2dCQUMvQixPQUFPLGdCQUFnQixDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsV0FBVztRQUNYLE9BQU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNGO0FBdERELHNCQXNEQztBQUVELE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7QUFDMUIsa0JBQWUsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXRpbHMgYXMgU3Vic3RyYXRlVXRpbHMsIEludGVyZmFjZSB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5pbXBvcnQgeyBOZXR3b3JrVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVHlwZVJlZ2lzdHJ5IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuaW1wb3J0IHsgbWFpbm5ldE1hdGVyaWFsLCB0ZXN0bmV0TWF0ZXJpYWwgfSBmcm9tICcuLi9yZXNvdXJjZXMnO1xuaW1wb3J0IHsgQmF0Y2hDYWxsT2JqZWN0IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBQT0xZWF9ESURfUkVHRVggfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyBleHRlbmRzIFN1YnN0cmF0ZVV0aWxzIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgYXBwcm9wcmlhdGUgYWRkcmVzcyBmb3JtYXQgYmFzZWQgb24gbmV0d29yayB0eXBlXG4gICAqIFJldHVybnMgMTIgZm9yIG1haW5uZXQgYW5kIDQyIGZvciB0ZXN0bmV0XG4gICAqXG4gICAqIEBwYXJhbSBjb2luTmFtZSBUaGUgbmFtZSBvZiB0aGUgY29pblxuICAgKiBAcmV0dXJucyBUaGUgYWRkcmVzcyBmb3JtYXQgdG8gdXNlXG4gICAqL1xuICBnZXRBZGRyZXNzRm9ybWF0KGNvaW5OYW1lOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IGlzTWFpbm5ldCA9IGNvaW5OYW1lLnRvTG93ZXJDYXNlKCkgPT09ICdwb2x5eCc7XG4gICAgcmV0dXJuIGlzTWFpbm5ldCA/IDEyIDogNDI7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgc3RyaW5nIGlzIGEgdmFsaWQgUG9seW1lc2ggRElEIChEZWNlbnRyYWxpemVkIElkZW50aWZpZXIpXG4gICAqIERJRHMgYXJlIDMyLWJ5dGUgaGV4IHN0cmluZ3MgKDB4IHByZWZpeCArIDY0IGhleCBjaGFyYWN0ZXJzKVxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlkIC0gVGhlIHN0cmluZyB0byB2YWxpZGF0ZVxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiB2YWxpZCBESUQgZm9ybWF0LCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGlzVmFsaWREaWQoZGlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gUE9MWVhfRElEX1JFR0VYLnRlc3QoZGlkKTtcbiAgfVxuXG4gIGdldE1hdGVyaWFsKG5ldHdvcmtUeXBlOiBOZXR3b3JrVHlwZSk6IEludGVyZmFjZS5NYXRlcmlhbCB7XG4gICAgcmV0dXJuIChuZXR3b3JrVHlwZSA9PT0gTmV0d29ya1R5cGUuTUFJTk5FVCA/IG1haW5uZXRNYXRlcmlhbCA6IHRlc3RuZXRNYXRlcmlhbCkgYXMgdW5rbm93biBhcyBJbnRlcmZhY2UuTWF0ZXJpYWw7XG4gIH1cblxuICBkZWNvZGVNZXRob2ROYW1lKGNhbGw6IEJhdGNoQ2FsbE9iamVjdCwgcmVnaXN0cnk6IFR5cGVSZWdpc3RyeSk6IHN0cmluZyB7XG4gICAgLy8gSGFuZGxlIGJvdGggY2FsbEluZGV4IGFuZCBtZXRob2QgZm9ybWF0c1xuICAgIGNvbnN0IGNhbGxXaXRoSW5kZXggPSBjYWxsIGFzIEJhdGNoQ2FsbE9iamVjdCAmIHsgY2FsbEluZGV4Pzogc3RyaW5nIH07XG4gICAgY29uc3QgbWV0aG9kSWRlbnRpZmllciA9IGNhbGxXaXRoSW5kZXguY2FsbEluZGV4IHx8IGNhbGwubWV0aG9kO1xuXG4gICAgaWYgKHR5cGVvZiBtZXRob2RJZGVudGlmaWVyID09PSAnc3RyaW5nJykge1xuICAgICAgLy8gQ2hlY2sgaWYgaXQgbG9va3MgbGlrZSBhIGhleCBjYWxsSW5kZXhcbiAgICAgIGlmIChtZXRob2RJZGVudGlmaWVyLnN0YXJ0c1dpdGgoJzB4JykgJiYgbWV0aG9kSWRlbnRpZmllci5sZW5ndGggPiAyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgZGVjb2RlZENhbGwgPSByZWdpc3RyeS5maW5kTWV0YUNhbGwoXG4gICAgICAgICAgICBuZXcgVWludDhBcnJheShCdWZmZXIuZnJvbShtZXRob2RJZGVudGlmaWVyLnJlcGxhY2UoJzB4JywgJycpLCAnaGV4JykpXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gZGVjb2RlZENhbGwubWV0aG9kO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gRmFsbGJhY2s6IGFzc3VtZSBpdCdzIGFscmVhZHkgdGhlIG1ldGhvZCBuYW1lXG4gICAgICAgICAgcmV0dXJuIG1ldGhvZElkZW50aWZpZXI7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEFscmVhZHkgYSBzaW1wbGUgbWV0aG9kIG5hbWVcbiAgICAgICAgcmV0dXJuIG1ldGhvZElkZW50aWZpZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmFsbGJhY2tcbiAgICByZXR1cm4gU3RyaW5nKG1ldGhvZElkZW50aWZpZXIpO1xuICB9XG59XG5cbmNvbnN0IHV0aWxzID0gbmV3IFV0aWxzKCk7XG5leHBvcnQgZGVmYXVsdCB1dGlscztcbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { UnsignedTransaction, DecodedSigningPayload, DecodedSignedTx } from '@substrate/txwrapper-core';
|
|
3
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
|
+
import { Transaction } from './transaction';
|
|
5
|
+
import { PolyxBaseBuilder } from './baseBuilder';
|
|
6
|
+
export declare class WithdrawUnbondedBuilder extends PolyxBaseBuilder {
|
|
7
|
+
protected _slashingSpans: number;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
/**
|
|
10
|
+
* Withdraw unbonded tokens after the unbonding period has passed
|
|
11
|
+
*
|
|
12
|
+
* @returns {UnsignedTransaction} an unsigned Polyx transaction
|
|
13
|
+
*/
|
|
14
|
+
protected buildTransaction(): UnsignedTransaction;
|
|
15
|
+
protected get transactionType(): TransactionType;
|
|
16
|
+
/**
|
|
17
|
+
* The number of slashing spans, typically 0 for most users
|
|
18
|
+
*
|
|
19
|
+
* @param {number} slashingSpans
|
|
20
|
+
* @returns {WithdrawUnbondedBuilder} This withdrawUnbonded builder.
|
|
21
|
+
*/
|
|
22
|
+
slashingSpans(slashingSpans: number): this;
|
|
23
|
+
/**
|
|
24
|
+
* Get the slashing spans
|
|
25
|
+
*/
|
|
26
|
+
getSlashingSpans(): number;
|
|
27
|
+
/** @inheritdoc */
|
|
28
|
+
validateDecodedTransaction(decodedTxn: DecodedSigningPayload | DecodedSignedTx): void;
|
|
29
|
+
/** @inheritdoc */
|
|
30
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
31
|
+
/** @inheritdoc */
|
|
32
|
+
validateTransaction(_: Transaction): void;
|
|
33
|
+
private validateFields;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=withdrawUnbondedBuilder.d.ts.map
|