@bitgo-beta/sdk-coin-polyx 1.0.1-beta.75 → 1.0.1-beta.750
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
|
@@ -0,0 +1,127 @@
|
|
|
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.BatchUnstakingBuilder = void 0;
|
|
7
|
+
const txwrapper_polkadot_1 = require("@substrate/txwrapper-polkadot");
|
|
8
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
9
|
+
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
|
+
const baseBuilder_1 = require("./baseBuilder");
|
|
11
|
+
const txnSchema_1 = require("./txnSchema");
|
|
12
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
13
|
+
class BatchUnstakingBuilder extends baseBuilder_1.PolyxBaseBuilder {
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Unbond tokens and chill (stop nominating validators)
|
|
19
|
+
*
|
|
20
|
+
* @returns {UnsignedTransaction} an unsigned Polyx transaction
|
|
21
|
+
*/
|
|
22
|
+
buildTransaction() {
|
|
23
|
+
const baseTxInfo = this.createBaseTxInfo();
|
|
24
|
+
const chillCall = txwrapper_polkadot_1.methods.staking.chill({}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
25
|
+
const unbondCall = txwrapper_polkadot_1.methods.staking.unbond({
|
|
26
|
+
value: this._amount,
|
|
27
|
+
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
28
|
+
// Create batch all transaction (atomic execution)
|
|
29
|
+
return txwrapper_polkadot_1.methods.utility.batchAll({
|
|
30
|
+
calls: [chillCall.method, unbondCall.method],
|
|
31
|
+
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
32
|
+
}
|
|
33
|
+
get transactionType() {
|
|
34
|
+
return sdk_core_1.TransactionType.Batch;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The amount to unstake.
|
|
38
|
+
*
|
|
39
|
+
* @param {string} amount
|
|
40
|
+
* @returns {BatchUnstakingBuilder} This unstake builder.
|
|
41
|
+
*/
|
|
42
|
+
amount(amount) {
|
|
43
|
+
this.validateValue(new bignumber_js_1.default(amount));
|
|
44
|
+
this._amount = amount;
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Get the amount to unstake
|
|
49
|
+
*/
|
|
50
|
+
getAmount() {
|
|
51
|
+
return this._amount;
|
|
52
|
+
}
|
|
53
|
+
/** @inheritdoc */
|
|
54
|
+
validateDecodedTransaction(decodedTxn) {
|
|
55
|
+
const methodName = decodedTxn.method?.name;
|
|
56
|
+
if (methodName === 'batchAll') {
|
|
57
|
+
const txMethod = decodedTxn.method.args;
|
|
58
|
+
const calls = txMethod.calls;
|
|
59
|
+
if (calls.length !== 2) {
|
|
60
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid batch unstaking transaction: expected 2 calls but got ${calls.length}`);
|
|
61
|
+
}
|
|
62
|
+
// Check that first call is chill
|
|
63
|
+
const firstCallMethod = utils_1.default.decodeMethodName(calls[0], this._registry);
|
|
64
|
+
if (firstCallMethod !== 'chill') {
|
|
65
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid batch unstaking transaction: first call should be chill but got ${firstCallMethod}`);
|
|
66
|
+
}
|
|
67
|
+
// Check that second call is unbond
|
|
68
|
+
const secondCallMethod = utils_1.default.decodeMethodName(calls[1], this._registry);
|
|
69
|
+
if (secondCallMethod !== 'unbond') {
|
|
70
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid batch unstaking transaction: second call should be unbond but got ${secondCallMethod}`);
|
|
71
|
+
}
|
|
72
|
+
// Validate unbond amount - handle both string and number formats
|
|
73
|
+
const unbondArgs = calls[1].args;
|
|
74
|
+
const valueString = typeof unbondArgs.value === 'string' ? unbondArgs.value : unbondArgs.value.toString();
|
|
75
|
+
const validationResult = txnSchema_1.BatchUnstakingTransactionSchema.validate({
|
|
76
|
+
value: valueString,
|
|
77
|
+
});
|
|
78
|
+
if (validationResult.error) {
|
|
79
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid batch unstaking transaction: ${validationResult.error.message}`);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction type: ${methodName}. Expected batchAll`);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/** @inheritdoc */
|
|
87
|
+
fromImplementation(rawTransaction) {
|
|
88
|
+
const tx = super.fromImplementation(rawTransaction);
|
|
89
|
+
if (this._method && this._method.name === 'batchAll') {
|
|
90
|
+
const txMethod = this._method.args;
|
|
91
|
+
const calls = txMethod.calls;
|
|
92
|
+
if (calls && calls.length === 2) {
|
|
93
|
+
const secondCallMethod = utils_1.default.decodeMethodName(calls[1], this._registry);
|
|
94
|
+
if (secondCallMethod === 'unbond') {
|
|
95
|
+
const unbondArgs = calls[1].args;
|
|
96
|
+
const valueString = typeof unbondArgs.value === 'string' ? unbondArgs.value : unbondArgs.value.toString();
|
|
97
|
+
this.amount(valueString);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${this._method?.name}. Expected batchAll`);
|
|
103
|
+
}
|
|
104
|
+
return tx;
|
|
105
|
+
}
|
|
106
|
+
/** @inheritdoc */
|
|
107
|
+
validateTransaction(_) {
|
|
108
|
+
super.validateTransaction(_);
|
|
109
|
+
this.validateFields(this._amount);
|
|
110
|
+
}
|
|
111
|
+
validateFields(value) {
|
|
112
|
+
const validationResult = txnSchema_1.BatchUnstakingTransactionSchema.validate({
|
|
113
|
+
value,
|
|
114
|
+
});
|
|
115
|
+
if (validationResult.error) {
|
|
116
|
+
throw new sdk_core_1.InvalidTransactionError(`Batch Unstaking Builder Transaction validation failed: ${validationResult.error.message}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Validates fields for testing
|
|
121
|
+
*/
|
|
122
|
+
testValidateFields() {
|
|
123
|
+
this.validateFields(this._amount);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
exports.BatchUnstakingBuilder = BatchUnstakingBuilder;
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmF0Y2hVbnN0YWtpbmdCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9iYXRjaFVuc3Rha2luZ0J1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0Esc0VBQXdEO0FBRXhELG1EQUFnRjtBQUNoRixnRUFBcUM7QUFFckMsK0NBQWlEO0FBRWpELDJDQUE4RDtBQUM5RCxvREFBNEI7QUFFNUIsTUFBYSxxQkFBc0IsU0FBUSw4QkFBZ0I7SUFHekQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFM0MsTUFBTSxTQUFTLEdBQUcsNEJBQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV2RixNQUFNLFVBQVUsR0FBRyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ3ZDO1lBQ0UsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3BCLEVBQ0QsVUFBVSxDQUFDLFVBQVUsRUFDckIsVUFBVSxDQUFDLE9BQU8sQ0FDbkIsQ0FBQztRQUVGLGtEQUFrRDtRQUNsRCxPQUFPLDRCQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FDN0I7WUFDRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUM7U0FDN0MsRUFDRCxVQUFVLENBQUMsVUFBVSxFQUNyQixVQUFVLENBQUMsT0FBTyxDQUNuQixDQUFDO0lBQ0osQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsS0FBSyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0s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QUFrQjtRQUNoQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUF0SkQsc0RBc0pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgbWV0aG9kcyB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLXBvbGthZG90JztcbmltcG9ydCB7IFVuc2lnbmVkVHJhbnNhY3Rpb24sIERlY29kZWRTaWduaW5nUGF5bG9hZCwgRGVjb2RlZFNpZ25lZFR4IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZSc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFBvbHl4QmFzZUJ1aWxkZXIgfSBmcm9tICcuL2Jhc2VCdWlsZGVyJztcbmltcG9ydCB7IEJhdGNoQXJncyB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgQmF0Y2hVbnN0YWtpbmdUcmFuc2FjdGlvblNjaGVtYSB9IGZyb20gJy4vdHhuU2NoZW1hJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIEJhdGNoVW5zdGFraW5nQnVpbGRlciBleHRlbmRzIFBvbHl4QmFzZUJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX2Ftb3VudDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVbmJvbmQgdG9rZW5zIGFuZCBjaGlsbCAoc3RvcCBub21pbmF0aW5nIHZhbGlkYXRvcnMpXG4gICAqXG4gICAqIEByZXR1cm5zIHtVbnNpZ25lZFRyYW5zYWN0aW9ufSBhbiB1bnNpZ25lZCBQb2x5eCB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVHJhbnNhY3Rpb24oKTogVW5zaWduZWRUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgYmFzZVR4SW5mbyA9IHRoaXMuY3JlYXRlQmFzZVR4SW5mbygpO1xuXG4gICAgY29uc3QgY2hpbGxDYWxsID0gbWV0aG9kcy5zdGFraW5nLmNoaWxsKHt9LCBiYXNlVHhJbmZvLmJhc2VUeEluZm8sIGJhc2VUeEluZm8ub3B0aW9ucyk7XG5cbiAgICBjb25zdCB1bmJvbmRDYWxsID0gbWV0aG9kcy5zdGFraW5nLnVuYm9uZChcbiAgICAgIHtcbiAgICAgICAgdmFsdWU6IHRoaXMuX2Ftb3VudCxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICApO1xuXG4gICAgLy8gQ3JlYXRlIGJhdGNoIGFsbCB0cmFuc2FjdGlvbiAoYXRvbWljIGV4ZWN1dGlvbilcbiAgICByZXR1cm4gbWV0aG9kcy51dGlsaXR5LmJhdGNoQWxsKFxuICAgICAge1xuICAgICAgICBjYWxsczogW2NoaWxsQ2FsbC5tZXRob2QsIHVuYm9uZENhbGwubWV0aG9kXSxcbiAgICAgIH0sXG4gICAgICBiYXNlVHhJbmZvLmJhc2VUeEluZm8sXG4gICAgICBiYXNlVHhJbmZvLm9wdGlvbnNcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkJhdGNoO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgdG8gdW5zdGFrZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFtb3VudFxuICAgKiBAcmV0dXJucyB7QmF0Y2hVbnN0YWtpbmdCdWlsZGVyfSBUaGlzIHVuc3Rha2UgYnVpbGRlci5cbiAgICovXG4gIGFtb3VudChhbW91bnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKGFtb3VudCkpO1xuICAgIHRoaXMuX2Ftb3VudCA9IGFtb3VudDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGFtb3VudCB0byB1bnN0YWtlXG4gICAqL1xuICBnZXRBbW91bnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fYW1vdW50O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlRGVjb2RlZFRyYW5zYWN0aW9uKGRlY29kZWRUeG46IERlY29kZWRTaWduaW5nUGF5bG9hZCB8IERlY29kZWRTaWduZWRUeCk6IHZvaWQge1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSBkZWNvZGVkVHhuLm1ldGhvZD8ubmFtZSBhcyBzdHJpbmc7XG5cbiAgICBpZiAobWV0aG9kTmFtZSA9PT0gJ2JhdGNoQWxsJykge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSBkZWNvZGVkVHhuLm1ldGhvZC5hcmdzIGFzIHVua25vd24gYXMgQmF0Y2hBcmdzO1xuICAgICAgY29uc3QgY2FsbHMgPSB0eE1ldGhvZC5jYWxscztcblxuICAgICAgaWYgKGNhbGxzLmxlbmd0aCAhPT0gMikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoXG4gICAgICAgICAgYEludmFsaWQgYmF0Y2ggdW5zdGFraW5nIHRyYW5zYWN0aW9uOiBleHBlY3RlZCAyIGNhbGxzIGJ1dCBnb3QgJHtjYWxscy5sZW5ndGh9YFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGVjayB0aGF0IGZpcnN0IGNhbGwgaXMgY2hpbGxcbiAgICAgIGNvbnN0IGZpcnN0Q2FsbE1ldGhvZCA9IHV0aWxzLmRlY29kZU1ldGhvZE5hbWUoY2FsbHNbMF0sIHRoaXMuX3JlZ2lzdHJ5KTtcbiAgICAgIGlmIChmaXJzdENhbGxNZXRob2QgIT09ICdjaGlsbCcpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIGJhdGNoIHVuc3Rha2luZyB0cmFuc2FjdGlvbjogZmlyc3QgY2FsbCBzaG91bGQgYmUgY2hpbGwgYnV0IGdvdCAke2ZpcnN0Q2FsbE1ldGhvZH1gXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIENoZWNrIHRoYXQgc2Vjb25kIGNhbGwgaXMgdW5ib25kXG4gICAgICBjb25zdCBzZWNvbmRDYWxsTWV0aG9kID0gdXRpbHMuZGVjb2RlTWV0aG9kTmFtZShjYWxsc1sxXSwgdGhpcy5fcmVnaXN0cnkpO1xuICAgICAgaWYgKHNlY29uZENhbGxNZXRob2QgIT09ICd1bmJvbmQnKSB7XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgICBgSW52YWxpZCBiYXRjaCB1bnN0YWtpbmcgdHJhbnNhY3Rpb246IHNlY29uZCBjYWxsIHNob3VsZCBiZSB1bmJvbmQgYnV0IGdvdCAke3NlY29uZENhbGxNZXRob2R9YFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBWYWxpZGF0ZSB1bmJvbmQgYW1vdW50IC0gaGFuZGxlIGJvdGggc3RyaW5nIGFuZCBudW1iZXIgZm9ybWF0c1xuICAgICAgY29uc3QgdW5ib25kQXJncyA9IGNhbGxzWzFdLmFyZ3MgYXMgeyB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIH07XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHR5cGVvZiB1bmJvbmRBcmdzLnZhbHVlID09PSAnc3RyaW5nJyA/IHVuYm9uZEFyZ3MudmFsdWUgOiB1bmJvbmRBcmdzLnZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gQmF0Y2hVbnN0YWtpbmdUcmFuc2FjdGlvblNjaGVtYS52YWxpZGF0ZSh7XG4gICAgICAgIHZhbHVlOiB2YWx1ZVN0cmluZyxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgYmF0Y2ggdW5zdGFraW5nIHRyYW5zYWN0aW9uOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIHRyYW5zYWN0aW9uIHR5cGU6ICR7bWV0aG9kTmFtZX0uIEV4cGVjdGVkIGJhdGNoQWxsYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBmcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IFRyYW5zYWN0aW9uIHtcbiAgICBjb25zdCB0eCA9IHN1cGVyLmZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbik7XG5cbiAgICBpZiAodGhpcy5fbWV0aG9kICYmICh0aGlzLl9tZXRob2QubmFtZSBhcyBzdHJpbmcpID09PSAnYmF0Y2hBbGwnKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IHRoaXMuX21ldGhvZC5hcmdzIGFzIHVua25vd24gYXMgQmF0Y2hBcmdzO1xuICAgICAgY29uc3QgY2FsbHMgPSB0eE1ldGhvZC5jYWxscztcblxuICAgICAgaWYgKGNhbGxzICYmIGNhbGxzLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBjb25zdCBzZWNvbmRDYWxsTWV0aG9kID0gdXRpbHMuZGVjb2RlTWV0aG9kTmFtZShjYWxsc1sxXSwgdGhpcy5fcmVnaXN0cnkpO1xuICAgICAgICBpZiAoc2Vjb25kQ2FsbE1ldGhvZCA9PT0gJ3VuYm9uZCcpIHtcbiAgICAgICAgICBjb25zdCB1bmJvbmRBcmdzID0gY2FsbHNbMV0uYXJncyBhcyB7IHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfTtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHR5cGVvZiB1bmJvbmRBcmdzLnZhbHVlID09PSAnc3RyaW5nJyA/IHVuYm9uZEFyZ3MudmFsdWUgOiB1bmJvbmRBcmdzLnZhbHVlLnRvU3RyaW5nKCk7XG4gICAgICAgICAgdGhpcy5hbW91bnQodmFsdWVTdHJpbmcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihgSW52YWxpZCBUcmFuc2FjdGlvbiBUeXBlOiAke3RoaXMuX21ldGhvZD8ubmFtZX0uIEV4cGVjdGVkIGJhdGNoQWxsYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR4O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24oXzogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci52YWxpZGF0ZVRyYW5zYWN0aW9uKF8pO1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHModGhpcy5fYW1vdW50KTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVGaWVsZHModmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBCYXRjaFVuc3Rha2luZ1RyYW5zYWN0aW9uU2NoZW1hLnZhbGlkYXRlKHtcbiAgICAgIHZhbHVlLFxuICAgIH0pO1xuXG4gICAgaWYgKHZhbGlkYXRpb25SZXN1bHQuZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICAgYEJhdGNoIFVuc3Rha2luZyBCdWlsZGVyIFRyYW5zYWN0aW9uIHZhbGlkYXRpb24gZmFpbGVkOiAke3ZhbGlkYXRpb25SZXN1bHQuZXJyb3IubWVzc2FnZX1gXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgZmllbGRzIGZvciB0ZXN0aW5nXG4gICAqL1xuICB0ZXN0VmFsaWRhdGVGaWVsZHMoKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZGF0ZUZpZWxkcyh0aGlzLl9hbW91bnQpO1xuICB9XG59XG4iXX0=
|
|
@@ -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 BondExtraBuilder extends PolyxBaseBuilder {
|
|
7
|
+
protected _amount: string;
|
|
8
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
9
|
+
protected get transactionType(): TransactionType;
|
|
10
|
+
/**
|
|
11
|
+
* Build the bondExtra transaction
|
|
12
|
+
*/
|
|
13
|
+
protected buildTransaction(): UnsignedTransaction;
|
|
14
|
+
/**
|
|
15
|
+
* Set additional amount to stake
|
|
16
|
+
*/
|
|
17
|
+
amount(amount: string): this;
|
|
18
|
+
/**
|
|
19
|
+
* Get the amount to stake
|
|
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 bondExtra fields
|
|
30
|
+
*/
|
|
31
|
+
private validateFields;
|
|
32
|
+
/**
|
|
33
|
+
* Validate amount
|
|
34
|
+
*/
|
|
35
|
+
validateAmount(amount: string): void;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=bondExtraBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bondExtraBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/bondExtraBuilder.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,gBAAiB,SAAQ,gBAAgB;IACpD,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,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAMrC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
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.BondExtraBuilder = 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 BondExtraBuilder 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.StakingActivate;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Build the bondExtra transaction
|
|
23
|
+
*/
|
|
24
|
+
buildTransaction() {
|
|
25
|
+
const baseTxInfo = this.createBaseTxInfo();
|
|
26
|
+
return txwrapper_polkadot_1.methods.staking.bondExtra({
|
|
27
|
+
maxAdditional: this._amount,
|
|
28
|
+
}, baseTxInfo.baseTxInfo, baseTxInfo.options);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Set additional amount to stake
|
|
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 stake
|
|
40
|
+
*/
|
|
41
|
+
getAmount() {
|
|
42
|
+
return this._amount;
|
|
43
|
+
}
|
|
44
|
+
/** @inheritdoc */
|
|
45
|
+
validateDecodedTransaction(decodedTxn) {
|
|
46
|
+
const methodName = decodedTxn.method?.name;
|
|
47
|
+
if (methodName === 'bondExtra') {
|
|
48
|
+
const txMethod = decodedTxn.method.args;
|
|
49
|
+
const value = txMethod.maxAdditional;
|
|
50
|
+
const validationResult = txnSchema_1.BondExtraTransactionSchema.validate({
|
|
51
|
+
value,
|
|
52
|
+
});
|
|
53
|
+
if (validationResult.error) {
|
|
54
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction: ${validationResult.error.message}`);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction type: ${methodName}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** @inheritdoc */
|
|
62
|
+
fromImplementation(rawTransaction) {
|
|
63
|
+
const tx = super.fromImplementation(rawTransaction);
|
|
64
|
+
const methodName = this._method?.name;
|
|
65
|
+
if (methodName === 'bondExtra' && this._method) {
|
|
66
|
+
const txMethod = this._method.args;
|
|
67
|
+
this.amount(txMethod.maxAdditional);
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid Transaction Type: ${methodName}. Expected bondExtra`);
|
|
71
|
+
}
|
|
72
|
+
return tx;
|
|
73
|
+
}
|
|
74
|
+
/** @inheritdoc */
|
|
75
|
+
validateTransaction(tx) {
|
|
76
|
+
super.validateTransaction(tx);
|
|
77
|
+
this.validateFields();
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Validate the bondExtra fields
|
|
81
|
+
*/
|
|
82
|
+
validateFields() {
|
|
83
|
+
const validationResult = txnSchema_1.BondExtraTransactionSchema.validate({
|
|
84
|
+
value: this._amount,
|
|
85
|
+
});
|
|
86
|
+
if (validationResult.error) {
|
|
87
|
+
throw new sdk_core_1.InvalidTransactionError(`Invalid transaction: ${validationResult.error.message}`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Validate amount
|
|
92
|
+
*/
|
|
93
|
+
validateAmount(amount) {
|
|
94
|
+
const amountBN = new bignumber_js_1.default(amount);
|
|
95
|
+
if (amountBN.isNaN() || amountBN.isLessThanOrEqualTo(0)) {
|
|
96
|
+
throw new Error(`Bond amount ${amount} must be a positive number`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
exports.BondExtraBuilder = BondExtraBuilder;
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9uZEV4dHJhQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYm9uZEV4dHJhQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSwrQ0FBaUQ7QUFFakQsc0VBQXdEO0FBRXhELG1EQUFnRjtBQUNoRiwyQ0FBeUQ7QUFDekQsb0RBQTRCO0FBRTVCLGdFQUFxQztBQUVyQyxNQUFhLGdCQUFpQixTQUFRLDhCQUFnQjtJQUdwRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLGVBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLGVBQWUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7O09BRUc7SUFDTyxnQkFBZ0I7UUFDeEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFM0MsT0FBTyw0QkFBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQzlCO1lBQ0UsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQzVCLEVBQ0QsVUFBVSxDQUFDLFVBQVUsRUFDckIsVUFBVSxDQUFDLE9BQU8sQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxNQUFjO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsMEJBQTBCLENBQUMsVUFBbUQ7UUFDNUUsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFjLENBQUM7UUFFckQsSUFBSSxVQUFVLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDL0IsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFnQyxDQUFDO1lBQ3BFLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFFckMsTUFBTSxnQkFBZ0IsR0FBRyxzQ0FBMEIsQ0FBQyxRQUFRLENBQUM7Z0JBQzNELEtBQUs7YUFDTixDQUFDLENBQUM7WUFFSCxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUMzQixNQUFNLElBQUksa0NBQXVCLENBQUMsd0JBQXdCLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQzlGLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyw2QkFBNkIsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUMvRSxDQUFDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQWMsQ0FBQztRQUVoRCxJQUFJLFVBQVUsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQy9DLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBZ0MsQ0FBQztZQUMvRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyw2QkFBNkIsVUFBVSxzQkFBc0IsQ0FBQyxDQUFDO1FBQ25HLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsbUJBQW1CLENBQUMsRUFBZTtRQUNqQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7T0FFRztJQUNLLGNBQWM7UUFDcEIsTUFBTSxnQkFBZ0IsR0FBRyxzQ0FBMEIsQ0FBQyxRQUFRLENBQUM7WUFDM0QsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHdCQUF3QixnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUM5RixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUFDLE1BQWM7UUFDM0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3hELE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxNQUFNLDRCQUE0QixDQUFDLENBQUM7UUFDckUsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTFHRCw0Q0EwR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgUG9seXhCYXNlQnVpbGRlciB9IGZyb20gJy4vYmFzZUJ1aWxkZXInO1xuaW1wb3J0IHsgRGVjb2RlZFNpZ25lZFR4LCBEZWNvZGVkU2lnbmluZ1BheWxvYWQsIFVuc2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1jb3JlJztcbmltcG9ydCB7IG1ldGhvZHMgfSBmcm9tICdAc3Vic3RyYXRlL3R4d3JhcHBlci1wb2xrYWRvdCc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQm9uZEV4dHJhVHJhbnNhY3Rpb25TY2hlbWEgfSBmcm9tICcuL3R4blNjaGVtYSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBCb25kRXh0cmFBcmdzIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5cbmV4cG9ydCBjbGFzcyBCb25kRXh0cmFCdWlsZGVyIGV4dGVuZHMgUG9seXhCYXNlQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfYW1vdW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMubWF0ZXJpYWwodXRpbHMuZ2V0TWF0ZXJpYWwoX2NvaW5Db25maWcubmV0d29yay50eXBlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIHRoZSBib25kRXh0cmEgdHJhbnNhY3Rpb25cbiAgICovXG4gIHByb3RlY3RlZCBidWlsZFRyYW5zYWN0aW9uKCk6IFVuc2lnbmVkVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IGJhc2VUeEluZm8gPSB0aGlzLmNyZWF0ZUJhc2VUeEluZm8oKTtcblxuICAgIHJldHVybiBtZXRob2RzLnN0YWtpbmcuYm9uZEV4dHJhKFxuICAgICAge1xuICAgICAgICBtYXhBZGRpdGlvbmFsOiB0aGlzLl9hbW91bnQsXG4gICAgICB9LFxuICAgICAgYmFzZVR4SW5mby5iYXNlVHhJbmZvLFxuICAgICAgYmFzZVR4SW5mby5vcHRpb25zXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYWRkaXRpb25hbCBhbW91bnQgdG8gc3Rha2VcbiAgICovXG4gIGFtb3VudChhbW91bnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVWYWx1ZShuZXcgQmlnTnVtYmVyKGFtb3VudCkpO1xuICAgIHRoaXMuX2Ftb3VudCA9IGFtb3VudDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGFtb3VudCB0byBzdGFrZVxuICAgKi9cbiAgZ2V0QW1vdW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2Ftb3VudDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZURlY29kZWRUcmFuc2FjdGlvbihkZWNvZGVkVHhuOiBEZWNvZGVkU2lnbmluZ1BheWxvYWQgfCBEZWNvZGVkU2lnbmVkVHgpOiB2b2lkIHtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gZGVjb2RlZFR4bi5tZXRob2Q/Lm5hbWUgYXMgc3RyaW5nO1xuXG4gICAgaWYgKG1ldGhvZE5hbWUgPT09ICdib25kRXh0cmEnKSB7XG4gICAgICBjb25zdCB0eE1ldGhvZCA9IGRlY29kZWRUeG4ubWV0aG9kLmFyZ3MgYXMgdW5rbm93biBhcyBCb25kRXh0cmFBcmdzO1xuICAgICAgY29uc3QgdmFsdWUgPSB0eE1ldGhvZC5tYXhBZGRpdGlvbmFsO1xuXG4gICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gQm9uZEV4dHJhVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgICB2YWx1ZSxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcikge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdHJhbnNhY3Rpb246ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdHJhbnNhY3Rpb24gdHlwZTogJHttZXRob2ROYW1lfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc3QgdHggPSBzdXBlci5mcm9tSW1wbGVtZW50YXRpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSB0aGlzLl9tZXRob2Q/Lm5hbWUgYXMgc3RyaW5nO1xuXG4gICAgaWYgKG1ldGhvZE5hbWUgPT09ICdib25kRXh0cmEnICYmIHRoaXMuX21ldGhvZCkge1xuICAgICAgY29uc3QgdHhNZXRob2QgPSB0aGlzLl9tZXRob2QuYXJncyBhcyB1bmtub3duIGFzIEJvbmRFeHRyYUFyZ3M7XG4gICAgICB0aGlzLmFtb3VudCh0eE1ldGhvZC5tYXhBZGRpdGlvbmFsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkIFRyYW5zYWN0aW9uIFR5cGU6ICR7bWV0aG9kTmFtZX0uIEV4cGVjdGVkIGJvbmRFeHRyYWApO1xuICAgIH1cblxuICAgIHJldHVybiB0eDtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLnZhbGlkYXRlVHJhbnNhY3Rpb24odHgpO1xuICAgIHRoaXMudmFsaWRhdGVGaWVsZHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSB0aGUgYm9uZEV4dHJhIGZpZWxkc1xuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZUZpZWxkcygpOiB2b2lkIHtcbiAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0ID0gQm9uZEV4dHJhVHJhbnNhY3Rpb25TY2hlbWEudmFsaWRhdGUoe1xuICAgICAgdmFsdWU6IHRoaXMuX2Ftb3VudCxcbiAgICB9KTtcblxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0LmVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgdHJhbnNhY3Rpb246ICR7dmFsaWRhdGlvblJlc3VsdC5lcnJvci5tZXNzYWdlfWApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZSBhbW91bnRcbiAgICovXG4gIHZhbGlkYXRlQW1vdW50KGFtb3VudDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgYW1vdW50Qk4gPSBuZXcgQmlnTnVtYmVyKGFtb3VudCk7XG4gICAgaWYgKGFtb3VudEJOLmlzTmFOKCkgfHwgYW1vdW50Qk4uaXNMZXNzVGhhbk9yRXF1YWxUbygwKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBCb25kIGFtb3VudCAke2Ftb3VudH0gbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcmApO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Address format constants for Polyx networks
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Polyx mainnet address format
|
|
6
|
+
*/
|
|
7
|
+
export declare const POLYX_ADDRESS_FORMAT = 12;
|
|
8
|
+
/**
|
|
9
|
+
* Tpolyx testnet address format
|
|
10
|
+
*/
|
|
11
|
+
export declare const TPOLYX_ADDRESS_FORMAT = 42;
|
|
12
|
+
/**
|
|
13
|
+
* Regex pattern for validating Polymesh DID (Decentralized Identifier)
|
|
14
|
+
* DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
|
|
15
|
+
*/
|
|
16
|
+
export declare const POLYX_DID_REGEX: RegExp;
|
|
17
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAwB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Address format constants for Polyx networks
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.POLYX_DID_REGEX = exports.TPOLYX_ADDRESS_FORMAT = exports.POLYX_ADDRESS_FORMAT = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* Polyx mainnet address format
|
|
9
|
+
*/
|
|
10
|
+
exports.POLYX_ADDRESS_FORMAT = 12;
|
|
11
|
+
/**
|
|
12
|
+
* Tpolyx testnet address format
|
|
13
|
+
*/
|
|
14
|
+
exports.TPOLYX_ADDRESS_FORMAT = 42;
|
|
15
|
+
/**
|
|
16
|
+
* Regex pattern for validating Polymesh DID (Decentralized Identifier)
|
|
17
|
+
* DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
|
|
18
|
+
*/
|
|
19
|
+
exports.POLYX_DID_REGEX = /^0x[a-fA-F0-9]{64}$/;
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7QUFFSDs7R0FFRztBQUNVLFFBQUEsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0FBRXZDOztHQUVHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxFQUFFLENBQUM7QUFFeEM7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEFkZHJlc3MgZm9ybWF0IGNvbnN0YW50cyBmb3IgUG9seXggbmV0d29ya3NcbiAqL1xuXG4vKipcbiAqIFBvbHl4IG1haW5uZXQgYWRkcmVzcyBmb3JtYXRcbiAqL1xuZXhwb3J0IGNvbnN0IFBPTFlYX0FERFJFU1NfRk9STUFUID0gMTI7XG5cbi8qKlxuICogVHBvbHl4IHRlc3RuZXQgYWRkcmVzcyBmb3JtYXRcbiAqL1xuZXhwb3J0IGNvbnN0IFRQT0xZWF9BRERSRVNTX0ZPUk1BVCA9IDQyO1xuXG4vKipcbiAqIFJlZ2V4IHBhdHRlcm4gZm9yIHZhbGlkYXRpbmcgUG9seW1lc2ggRElEIChEZWNlbnRyYWxpemVkIElkZW50aWZpZXIpXG4gKiBESURzIGFyZSAzMi1ieXRlIGhleCBzdHJpbmdzICgweCBwcmVmaXggKyA2NCBoZXggY2hhcmFjdGVycylcbiAqL1xuZXhwb3J0IGNvbnN0IFBPTFlYX0RJRF9SRUdFWCA9IC9eMHhbYS1mQS1GMC05XXs2NH0kLztcbiJdfQ==
|
package/dist/src/lib/iface.d.ts
CHANGED
|
@@ -1,7 +1,145 @@
|
|
|
1
1
|
import { Args } from '@substrate/txwrapper-core';
|
|
2
|
+
import { Interface } from '@bitgo-beta/abstract-substrate';
|
|
3
|
+
import { DecodedUnsignedTx } from '@substrate/txwrapper-core/lib/types';
|
|
4
|
+
export type AnyJson = string | number | boolean | null | {
|
|
5
|
+
[key: string]: AnyJson;
|
|
6
|
+
} | Array<AnyJson>;
|
|
7
|
+
/**
|
|
8
|
+
* Extended TxData interface for Polyx transactions
|
|
9
|
+
* Adds assetId field to the base TxData interface from abstract-substrate
|
|
10
|
+
*/
|
|
11
|
+
export interface TxData extends Interface.TxData {
|
|
12
|
+
assetId?: string;
|
|
13
|
+
fromDID?: string;
|
|
14
|
+
toDID?: string;
|
|
15
|
+
instructionId?: string;
|
|
16
|
+
portfolioDID?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Settlement type for Polyx transactions
|
|
20
|
+
*/
|
|
21
|
+
export declare enum SettlementType {
|
|
22
|
+
SettleOnAffirmation = "SettleOnAffirmation"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Portfolio kind for Polyx transactions
|
|
26
|
+
*/
|
|
27
|
+
export declare enum PortfolioKind {
|
|
28
|
+
Default = "Default"
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Method names for Polyx transactions.
|
|
32
|
+
* Extends the base MethodNames from Interface with additional Polyx-specific methods.
|
|
33
|
+
*/
|
|
34
|
+
export declare const MethodNames: {
|
|
35
|
+
/**
|
|
36
|
+
* Registers a Decentralized Identifier (DID) along with Customer Due Diligence (CDD) information.
|
|
37
|
+
*
|
|
38
|
+
* @see https://developers.polymesh.network/sdk-docs/enums/Generated/Types/IdentityTx/#cddregisterdidwithcdd
|
|
39
|
+
*/
|
|
40
|
+
readonly RegisterDidWithCDD: "cddRegisterDidWithCdd";
|
|
41
|
+
/**
|
|
42
|
+
* Pre-approves an asset.
|
|
43
|
+
*/
|
|
44
|
+
readonly PreApproveAsset: "preApproveAsset";
|
|
45
|
+
readonly AddAndAffirmWithMediators: "addAndAffirmWithMediators";
|
|
46
|
+
readonly RejectInstruction: "rejectInstruction";
|
|
47
|
+
readonly TransferAll: "transferAll";
|
|
48
|
+
readonly TransferKeepAlive: "transferKeepAlive";
|
|
49
|
+
readonly TransferWithMemo: "transferWithMemo";
|
|
50
|
+
readonly AddStake: "addStake";
|
|
51
|
+
readonly RemoveStake: "removeStake";
|
|
52
|
+
readonly Bond: "bond";
|
|
53
|
+
readonly BondExtra: "bondExtra";
|
|
54
|
+
readonly Nominate: "nominate";
|
|
55
|
+
readonly Chill: "chill";
|
|
56
|
+
readonly Unbond: "unbond";
|
|
57
|
+
readonly WithdrawUnbonded: "withdrawUnbonded";
|
|
58
|
+
readonly Batch: "batch";
|
|
59
|
+
readonly BatchAll: "batchAll";
|
|
60
|
+
readonly TransferStake: "transferStake";
|
|
61
|
+
readonly MoveStake: "moveStake";
|
|
62
|
+
};
|
|
63
|
+
export type MethodNamesType = keyof typeof MethodNames;
|
|
64
|
+
export type MethodNamesValues = (typeof MethodNames)[MethodNamesType];
|
|
2
65
|
export interface RegisterDidWithCDDArgs extends Args {
|
|
3
66
|
targetAccount: string;
|
|
4
67
|
secondaryKeys: [];
|
|
5
68
|
expiry: null;
|
|
6
69
|
}
|
|
70
|
+
export interface PreApproveAssetArgs extends Args {
|
|
71
|
+
assetId: string;
|
|
72
|
+
}
|
|
73
|
+
export interface AddAndAffirmWithMediatorsArgs extends Args {
|
|
74
|
+
venueId: null;
|
|
75
|
+
settlementType: SettlementType.SettleOnAffirmation;
|
|
76
|
+
tradeDate: null;
|
|
77
|
+
valueDate: null;
|
|
78
|
+
legs: Array<{
|
|
79
|
+
fungible: {
|
|
80
|
+
sender: {
|
|
81
|
+
did: string;
|
|
82
|
+
kind: PortfolioKind.Default;
|
|
83
|
+
};
|
|
84
|
+
receiver: {
|
|
85
|
+
did: string;
|
|
86
|
+
kind: PortfolioKind.Default;
|
|
87
|
+
};
|
|
88
|
+
assetId: string;
|
|
89
|
+
amount: string;
|
|
90
|
+
};
|
|
91
|
+
}>;
|
|
92
|
+
portfolios: Array<{
|
|
93
|
+
did: string;
|
|
94
|
+
kind: PortfolioKind.Default;
|
|
95
|
+
}>;
|
|
96
|
+
instructionMemo: string;
|
|
97
|
+
mediators: [];
|
|
98
|
+
}
|
|
99
|
+
export interface RejectInstructionBuilderArgs extends Args {
|
|
100
|
+
id: string;
|
|
101
|
+
portfolio: {
|
|
102
|
+
did: string;
|
|
103
|
+
kind: PortfolioKind.Default;
|
|
104
|
+
};
|
|
105
|
+
numberOfAssets: {
|
|
106
|
+
fungible: number;
|
|
107
|
+
nonFungible: number;
|
|
108
|
+
offChain: number;
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
export interface TxMethod extends Omit<Interface.TxMethod, 'args' | 'name'> {
|
|
112
|
+
args: Interface.TransferArgs | Interface.TransferAllArgs | Interface.AddStakeArgs | Interface.RemoveStakeArgs | Interface.BondArgs | Interface.BondExtraArgs | Interface.NominateArgs | Interface.ChillArgs | Interface.UnbondArgs | Interface.WithdrawUnbondedArgs | Interface.BatchArgs | RegisterDidWithCDDArgs | PreApproveAssetArgs | AddAndAffirmWithMediatorsArgs | RejectInstructionBuilderArgs;
|
|
113
|
+
name: MethodNamesValues;
|
|
114
|
+
}
|
|
115
|
+
export interface DecodedTx extends Omit<DecodedUnsignedTx, 'method'> {
|
|
116
|
+
method: TxMethod;
|
|
117
|
+
}
|
|
118
|
+
export interface BondArgs extends Args {
|
|
119
|
+
value: string;
|
|
120
|
+
controller: string;
|
|
121
|
+
payee: string | {
|
|
122
|
+
Account: string;
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
export interface BondExtraArgs extends Args {
|
|
126
|
+
maxAdditional: string;
|
|
127
|
+
}
|
|
128
|
+
export interface NominateArgs extends Args {
|
|
129
|
+
targets: string[];
|
|
130
|
+
}
|
|
131
|
+
export interface BatchCallObject {
|
|
132
|
+
method?: string;
|
|
133
|
+
callIndex?: string;
|
|
134
|
+
args: Record<string, unknown>;
|
|
135
|
+
}
|
|
136
|
+
export interface BatchArgs {
|
|
137
|
+
calls: BatchCallObject[];
|
|
138
|
+
}
|
|
139
|
+
export interface UnbondArgs extends Args {
|
|
140
|
+
value: string;
|
|
141
|
+
}
|
|
142
|
+
export interface WithdrawUnbondedArgs extends Args {
|
|
143
|
+
numSlashingSpans: number;
|
|
144
|
+
}
|
|
7
145
|
//# sourceMappingURL=iface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
|
package/dist/src/lib/iface.js
CHANGED
|
@@ -1,3 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
exports.MethodNames = exports.PortfolioKind = exports.SettlementType = void 0;
|
|
4
|
+
const abstract_substrate_1 = require("@bitgo-beta/abstract-substrate");
|
|
5
|
+
/**
|
|
6
|
+
* Settlement type for Polyx transactions
|
|
7
|
+
*/
|
|
8
|
+
var SettlementType;
|
|
9
|
+
(function (SettlementType) {
|
|
10
|
+
SettlementType["SettleOnAffirmation"] = "SettleOnAffirmation";
|
|
11
|
+
})(SettlementType || (exports.SettlementType = SettlementType = {}));
|
|
12
|
+
/**
|
|
13
|
+
* Portfolio kind for Polyx transactions
|
|
14
|
+
*/
|
|
15
|
+
var PortfolioKind;
|
|
16
|
+
(function (PortfolioKind) {
|
|
17
|
+
PortfolioKind["Default"] = "Default";
|
|
18
|
+
})(PortfolioKind || (exports.PortfolioKind = PortfolioKind = {}));
|
|
19
|
+
/**
|
|
20
|
+
* Method names for Polyx transactions.
|
|
21
|
+
* Extends the base MethodNames from Interface with additional Polyx-specific methods.
|
|
22
|
+
*/
|
|
23
|
+
exports.MethodNames = {
|
|
24
|
+
// Include all values from the base object
|
|
25
|
+
...abstract_substrate_1.Interface.MethodNames,
|
|
26
|
+
/**
|
|
27
|
+
* Registers a Decentralized Identifier (DID) along with Customer Due Diligence (CDD) information.
|
|
28
|
+
*
|
|
29
|
+
* @see https://developers.polymesh.network/sdk-docs/enums/Generated/Types/IdentityTx/#cddregisterdidwithcdd
|
|
30
|
+
*/
|
|
31
|
+
RegisterDidWithCDD: 'cddRegisterDidWithCdd',
|
|
32
|
+
/**
|
|
33
|
+
* Pre-approves an asset.
|
|
34
|
+
*/
|
|
35
|
+
PreApproveAsset: 'preApproveAsset',
|
|
36
|
+
AddAndAffirmWithMediators: 'addAndAffirmWithMediators',
|
|
37
|
+
RejectInstruction: 'rejectInstruction',
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHVFQUEyRDtBQWlCM0Q7O0dBRUc7QUFDSCxJQUFZLGNBRVg7QUFGRCxXQUFZLGNBQWM7SUFDeEIsNkRBQTJDLENBQUE7QUFDN0MsQ0FBQyxFQUZXLGNBQWMsOEJBQWQsY0FBYyxRQUV6QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxhQUVYO0FBRkQsV0FBWSxhQUFhO0lBQ3ZCLG9DQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFGVyxhQUFhLDZCQUFiLGFBQWEsUUFFeEI7QUFFRDs7O0dBR0c7QUFDVSxRQUFBLFdBQVcsR0FBRztJQUN6QiwwQ0FBMEM7SUFDMUMsR0FBRyw4QkFBUyxDQUFDLFdBQVc7SUFFeEI7Ozs7T0FJRztJQUNILGtCQUFrQixFQUFFLHVCQUFnQztJQUVwRDs7T0FFRztJQUNILGVBQWUsRUFBRSxpQkFBMEI7SUFFM0MseUJBQXlCLEVBQUUsMkJBQW9DO0lBRS9ELGlCQUFpQixFQUFFLG1CQUE0QjtDQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXJncyB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUnO1xuaW1wb3J0IHsgSW50ZXJmYWNlIH0gZnJvbSAnQGJpdGdvLWJldGEvYWJzdHJhY3Qtc3Vic3RyYXRlJztcbmltcG9ydCB7IERlY29kZWRVbnNpZ25lZFR4IH0gZnJvbSAnQHN1YnN0cmF0ZS90eHdyYXBwZXItY29yZS9saWIvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBBbnlKc29uID0gc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IG51bGwgfCB7IFtrZXk6IHN0cmluZ106IEFueUpzb24gfSB8IEFycmF5PEFueUpzb24+O1xuXG4vKipcbiAqIEV4dGVuZGVkIFR4RGF0YSBpbnRlcmZhY2UgZm9yIFBvbHl4IHRyYW5zYWN0aW9uc1xuICogQWRkcyBhc3NldElkIGZpZWxkIHRvIHRoZSBiYXNlIFR4RGF0YSBpbnRlcmZhY2UgZnJvbSBhYnN0cmFjdC1zdWJzdHJhdGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeERhdGEgZXh0ZW5kcyBJbnRlcmZhY2UuVHhEYXRhIHtcbiAgYXNzZXRJZD86IHN0cmluZztcbiAgZnJvbURJRD86IHN0cmluZztcbiAgdG9ESUQ/OiBzdHJpbmc7XG4gIGluc3RydWN0aW9uSWQ/OiBzdHJpbmc7XG4gIHBvcnRmb2xpb0RJRD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBTZXR0bGVtZW50IHR5cGUgZm9yIFBvbHl4IHRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgZW51bSBTZXR0bGVtZW50VHlwZSB7XG4gIFNldHRsZU9uQWZmaXJtYXRpb24gPSAnU2V0dGxlT25BZmZpcm1hdGlvbicsXG59XG5cbi8qKlxuICogUG9ydGZvbGlvIGtpbmQgZm9yIFBvbHl4IHRyYW5zYWN0aW9uc1xuICovXG5leHBvcnQgZW51bSBQb3J0Zm9saW9LaW5kIHtcbiAgRGVmYXVsdCA9ICdEZWZhdWx0Jyxcbn1cblxuLyoqXG4gKiBNZXRob2QgbmFtZXMgZm9yIFBvbHl4IHRyYW5zYWN0aW9ucy5cbiAqIEV4dGVuZHMgdGhlIGJhc2UgTWV0aG9kTmFtZXMgZnJvbSBJbnRlcmZhY2Ugd2l0aCBhZGRpdGlvbmFsIFBvbHl4LXNwZWNpZmljIG1ldGhvZHMuXG4gKi9cbmV4cG9ydCBjb25zdCBNZXRob2ROYW1lcyA9IHtcbiAgLy8gSW5jbHVkZSBhbGwgdmFsdWVzIGZyb20gdGhlIGJhc2Ugb2JqZWN0XG4gIC4uLkludGVyZmFjZS5NZXRob2ROYW1lcyxcblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgRGVjZW50cmFsaXplZCBJZGVudGlmaWVyIChESUQpIGFsb25nIHdpdGggQ3VzdG9tZXIgRHVlIERpbGlnZW5jZSAoQ0REKSBpbmZvcm1hdGlvbi5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RldmVsb3BlcnMucG9seW1lc2gubmV0d29yay9zZGstZG9jcy9lbnVtcy9HZW5lcmF0ZWQvVHlwZXMvSWRlbnRpdHlUeC8jY2RkcmVnaXN0ZXJkaWR3aXRoY2RkXG4gICAqL1xuICBSZWdpc3RlckRpZFdpdGhDREQ6ICdjZGRSZWdpc3RlckRpZFdpdGhDZGQnIGFzIGNvbnN0LFxuXG4gIC8qKlxuICAgKiBQcmUtYXBwcm92ZXMgYW4gYXNzZXQuXG4gICAqL1xuICBQcmVBcHByb3ZlQXNzZXQ6ICdwcmVBcHByb3ZlQXNzZXQnIGFzIGNvbnN0LFxuXG4gIEFkZEFuZEFmZmlybVdpdGhNZWRpYXRvcnM6ICdhZGRBbmRBZmZpcm1XaXRoTWVkaWF0b3JzJyBhcyBjb25zdCxcblxuICBSZWplY3RJbnN0cnVjdGlvbjogJ3JlamVjdEluc3RydWN0aW9uJyBhcyBjb25zdCxcbn0gYXMgY29uc3Q7XG5cbi8vIENyZWF0ZSBhIHR5cGUgdGhhdCByZXByZXNlbnRzIHRoZSBrZXlzIG9mIHRoaXMgb2JqZWN0XG5leHBvcnQgdHlwZSBNZXRob2ROYW1lc1R5cGUgPSBrZXlvZiB0eXBlb2YgTWV0aG9kTmFtZXM7XG5cbi8vIENyZWF0ZSBhIHR5cGUgdGhhdCByZXByZXNlbnRzIHRoZSB2YWx1ZXMgb2YgdGhpcyBvYmplY3RcbmV4cG9ydCB0eXBlIE1ldGhvZE5hbWVzVmFsdWVzID0gKHR5cGVvZiBNZXRob2ROYW1lcylbTWV0aG9kTmFtZXNUeXBlXTtcblxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlckRpZFdpdGhDRERBcmdzIGV4dGVuZHMgQXJncyB7XG4gIHRhcmdldEFjY291bnQ6IHN0cmluZztcbiAgc2Vjb25kYXJ5S2V5czogW107XG4gIGV4cGlyeTogbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmVBcHByb3ZlQXNzZXRBcmdzIGV4dGVuZHMgQXJncyB7XG4gIGFzc2V0SWQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRBbmRBZmZpcm1XaXRoTWVkaWF0b3JzQXJncyBleHRlbmRzIEFyZ3Mge1xuICB2ZW51ZUlkOiBudWxsO1xuICBzZXR0bGVtZW50VHlwZTogU2V0dGxlbWVudFR5cGUuU2V0dGxlT25BZmZpcm1hdGlvbjtcbiAgdHJhZGVEYXRlOiBudWxsO1xuICB2YWx1ZURhdGU6IG51bGw7XG4gIGxlZ3M6IEFycmF5PHtcbiAgICBmdW5naWJsZToge1xuICAgICAgc2VuZGVyOiB7IGRpZDogc3RyaW5nOyBraW5kOiBQb3J0Zm9saW9LaW5kLkRlZmF1bHQgfTtcbiAgICAgIHJlY2VpdmVyOiB7IGRpZDogc3RyaW5nOyBraW5kOiBQb3J0Zm9saW9LaW5kLkRlZmF1bHQgfTtcbiAgICAgIGFzc2V0SWQ6IHN0cmluZztcbiAgICAgIGFtb3VudDogc3RyaW5nO1xuICAgIH07XG4gIH0+O1xuICBwb3J0Zm9saW9zOiBBcnJheTx7IGRpZDogc3RyaW5nOyBraW5kOiBQb3J0Zm9saW9LaW5kLkRlZmF1bHQgfT47XG4gIGluc3RydWN0aW9uTWVtbzogc3RyaW5nO1xuICBtZWRpYXRvcnM6IFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlamVjdEluc3RydWN0aW9uQnVpbGRlckFyZ3MgZXh0ZW5kcyBBcmdzIHtcbiAgaWQ6IHN0cmluZztcbiAgcG9ydGZvbGlvOiB7IGRpZDogc3RyaW5nOyBraW5kOiBQb3J0Zm9saW9LaW5kLkRlZmF1bHQgfTtcbiAgbnVtYmVyT2ZBc3NldHM6IHsgZnVuZ2libGU6IG51bWJlcjsgbm9uRnVuZ2libGU6IG51bWJlcjsgb2ZmQ2hhaW46IG51bWJlciB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR4TWV0aG9kIGV4dGVuZHMgT21pdDxJbnRlcmZhY2UuVHhNZXRob2QsICdhcmdzJyB8ICduYW1lJz4ge1xuICBhcmdzOlxuICAgIHwgSW50ZXJmYWNlLlRyYW5zZmVyQXJnc1xuICAgIHwgSW50ZXJmYWNlLlRyYW5zZmVyQWxsQXJnc1xuICAgIHwgSW50ZXJmYWNlLkFkZFN0YWtlQXJnc1xuICAgIHwgSW50ZXJmYWNlLlJlbW92ZVN0YWtlQXJnc1xuICAgIHwgSW50ZXJmYWNlLkJvbmRBcmdzXG4gICAgfCBJbnRlcmZhY2UuQm9uZEV4dHJhQXJnc1xuICAgIHwgSW50ZXJmYWNlLk5vbWluYXRlQXJnc1xuICAgIHwgSW50ZXJmYWNlLkNoaWxsQXJnc1xuICAgIHwgSW50ZXJmYWNlLlVuYm9uZEFyZ3NcbiAgICB8IEludGVyZmFjZS5XaXRoZHJhd1VuYm9uZGVkQXJnc1xuICAgIHwgSW50ZXJmYWNlLkJhdGNoQXJnc1xuICAgIHwgUmVnaXN0ZXJEaWRXaXRoQ0REQXJnc1xuICAgIHwgUHJlQXBwcm92ZUFzc2V0QXJnc1xuICAgIHwgQWRkQW5kQWZmaXJtV2l0aE1lZGlhdG9yc0FyZ3NcbiAgICB8IFJlamVjdEluc3RydWN0aW9uQnVpbGRlckFyZ3M7XG4gIG5hbWU6IE1ldGhvZE5hbWVzVmFsdWVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlY29kZWRUeCBleHRlbmRzIE9taXQ8RGVjb2RlZFVuc2lnbmVkVHgsICdtZXRob2QnPiB7XG4gIG1ldGhvZDogVHhNZXRob2Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9uZEFyZ3MgZXh0ZW5kcyBBcmdzIHtcbiAgdmFsdWU6IHN0cmluZztcbiAgY29udHJvbGxlcjogc3RyaW5nO1xuICBwYXllZTogc3RyaW5nIHwgeyBBY2NvdW50OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCb25kRXh0cmFBcmdzIGV4dGVuZHMgQXJncyB7XG4gIG1heEFkZGl0aW9uYWw6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOb21pbmF0ZUFyZ3MgZXh0ZW5kcyBBcmdzIHtcbiAgdGFyZ2V0czogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmF0Y2hDYWxsT2JqZWN0IHtcbiAgbWV0aG9kPzogc3RyaW5nO1xuICBjYWxsSW5kZXg/OiBzdHJpbmc7XG4gIGFyZ3M6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhdGNoQXJncyB7XG4gIGNhbGxzOiBCYXRjaENhbGxPYmplY3RbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbmJvbmRBcmdzIGV4dGVuZHMgQXJncyB7XG4gIHZhbHVlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV2l0aGRyYXdVbmJvbmRlZEFyZ3MgZXh0ZW5kcyBBcmdzIHtcbiAgbnVtU2xhc2hpbmdTcGFuczogbnVtYmVyO1xufVxuIl19
|
package/dist/src/lib/index.d.ts
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
export { Constants, Errors, Interface, KeyPair, SingletonRegistry, Transaction, TransactionBuilder, } from '@bitgo-beta/abstract-substrate';
|
|
2
2
|
export { TransactionBuilderFactory } from './transactionBuilderFactory';
|
|
3
|
+
export { PolyxBaseBuilder } from './baseBuilder';
|
|
3
4
|
export { TransferBuilder } from './transferBuilder';
|
|
4
5
|
export { RegisterDidWithCDDBuilder } from './registerDidWithCDDBuilder';
|
|
6
|
+
export { PreApproveAssetBuilder } from './preApproveAssetBuilder';
|
|
7
|
+
export { TokenTransferBuilder } from './tokenTransferBuilder';
|
|
8
|
+
export { RejectInstructionBuilder } from './rejectInstructionBuilder';
|
|
9
|
+
export { Transaction as PolyxTransaction } from './transaction';
|
|
10
|
+
export { BondExtraBuilder } from './bondExtraBuilder';
|
|
11
|
+
export { BatchStakingBuilder as BatchBuilder } from './batchStakingBuilder';
|
|
12
|
+
export { BatchUnstakingBuilder } from './batchUnstakingBuilder';
|
|
13
|
+
export { UnbondBuilder } from './unbondBuilder';
|
|
14
|
+
export { WithdrawUnbondedBuilder } from './withdrawUnbondedBuilder';
|
|
5
15
|
export { Utils, default as utils } from './utils';
|
|
16
|
+
export * from './iface';
|
|
17
|
+
export { BondArgs, NominateArgs, BatchCallObject, BatchArgs } from './iface';
|
|
18
|
+
/**
|
|
19
|
+
* Checks if a string is a valid Polymesh DID (Decentralized Identifier)
|
|
20
|
+
* DIDs are 32-byte hex strings (0x prefix + 64 hex characters)
|
|
21
|
+
*
|
|
22
|
+
* @param {string} did - The string to validate
|
|
23
|
+
* @returns {boolean} true if valid DID format, false otherwise
|
|
24
|
+
*/
|
|
25
|
+
export declare const isValidDid: (did: string) => boolean;
|
|
6
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,WAAW,EACX,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAClD,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,QAAS,MAAM,KAAG,OAAqC,CAAC"}
|