@bitgo/sdk-coin-osmo 1.1.0
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/.eslintignore +5 -0
- package/.mocharc.yml +8 -0
- package/CHANGELOG.md +13 -0
- package/LICENSE +191 -0
- package/README.md +30 -0
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +17 -0
- package/dist/src/lib/StakingActivateBuilder.d.ts +11 -0
- package/dist/src/lib/StakingActivateBuilder.d.ts.map +1 -0
- package/dist/src/lib/StakingActivateBuilder.js +31 -0
- package/dist/src/lib/StakingDeactivateBuilder.d.ts +11 -0
- package/dist/src/lib/StakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/src/lib/StakingDeactivateBuilder.js +31 -0
- package/dist/src/lib/StakingWithdrawRewardsBuilder.d.ts +11 -0
- package/dist/src/lib/StakingWithdrawRewardsBuilder.d.ts.map +1 -0
- package/dist/src/lib/StakingWithdrawRewardsBuilder.js +31 -0
- package/dist/src/lib/constants.d.ts +4 -0
- package/dist/src/lib/constants.d.ts.map +1 -0
- package/dist/src/lib/constants.js +7 -0
- package/dist/src/lib/index.d.ts +9 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/src/lib/index.js +37 -0
- package/dist/src/lib/keyPair.d.ts +11 -0
- package/dist/src/lib/keyPair.d.ts.map +1 -0
- package/dist/src/lib/keyPair.js +23 -0
- package/dist/src/lib/transaction.d.ts +11 -0
- package/dist/src/lib/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction.js +37 -0
- package/dist/src/lib/transactionBuilder.d.ts +44 -0
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder.js +112 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts +32 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilderFactory.js +71 -0
- package/dist/src/lib/transferBuilder.d.ts +11 -0
- package/dist/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transferBuilder.js +31 -0
- package/dist/src/lib/utils.d.ts +38 -0
- package/dist/src/lib/utils.d.ts.map +1 -0
- package/dist/src/lib/utils.js +215 -0
- package/dist/src/osmo.d.ts +59 -0
- package/dist/src/osmo.d.ts.map +1 -0
- package/dist/src/osmo.js +205 -0
- package/dist/src/register.d.ts +3 -0
- package/dist/src/register.d.ts.map +1 -0
- package/dist/src/register.js +11 -0
- package/dist/src/tosmo.d.ts +22 -0
- package/dist/src/tosmo.d.ts.map +1 -0
- package/dist/src/tosmo.js +30 -0
- package/package.json +62 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { BaseAddress, TransactionType } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { CosmosTransaction, DelegateOrUndelegeteMessage, FeeData, SendMessage, WithdrawDelegatorRewardsMessage, CosmosTransactionBuilder } from '@bitgo/abstract-cosmos';
|
|
4
|
+
import { OsmoTransaction } from './transaction';
|
|
5
|
+
export declare abstract class OsmoTransactionBuilder extends CosmosTransactionBuilder {
|
|
6
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
7
|
+
/**
|
|
8
|
+
* Sets messages to the transaction body. Message type will be different based on the transaction type
|
|
9
|
+
* - For @see TransactionType.StakingActivate required type is @see DelegateOrUndelegeteMessage
|
|
10
|
+
* - For @see TransactionType.StakingDeactivate required type is @see DelegateOrUndelegeteMessage
|
|
11
|
+
* - For @see TransactionType.Send required type is @see SendMessage
|
|
12
|
+
* - For @see TransactionType.StakingWithdraw required type is @see WithdrawDelegatorRewardsMessage
|
|
13
|
+
* @param {(SendMessage | DelegateOrUndelegeteMessage | WithdrawDelegatorRewardsMessage)[]} messages
|
|
14
|
+
* @returns {TransactionBuilder} This transaction builder
|
|
15
|
+
*/
|
|
16
|
+
abstract messages(messages: (SendMessage | DelegateOrUndelegeteMessage | WithdrawDelegatorRewardsMessage)[]): this;
|
|
17
|
+
/**
|
|
18
|
+
* The transaction type.
|
|
19
|
+
*/
|
|
20
|
+
protected abstract get transactionType(): TransactionType;
|
|
21
|
+
/**
|
|
22
|
+
* Sets gas budget of this transaction
|
|
23
|
+
* Gas budget consist of fee amount and gas limit. Division feeAmount/gasLimit represents
|
|
24
|
+
* the gas-fee and it should be more than minimum required gas-fee to process the transaction
|
|
25
|
+
* @param {FeeData} gasBudget
|
|
26
|
+
* @returns {TransactionBuilder} this transaction builder
|
|
27
|
+
*/
|
|
28
|
+
gasBudget(gasBudget: FeeData): this;
|
|
29
|
+
/**
|
|
30
|
+
* Initialize the transaction builder fields using the decoded transaction data
|
|
31
|
+
* @param {OsmoTransaction} tx the transaction data
|
|
32
|
+
*/
|
|
33
|
+
initBuilder(tx: OsmoTransaction): void;
|
|
34
|
+
/** @inheritdoc */
|
|
35
|
+
protected fromImplementation(rawTransaction: string): CosmosTransaction;
|
|
36
|
+
/** @inheritdoc */
|
|
37
|
+
protected buildImplementation(): Promise<CosmosTransaction>;
|
|
38
|
+
validateAddress(address: BaseAddress, addressFormat?: string): void;
|
|
39
|
+
/** @inheritdoc */
|
|
40
|
+
validateRawTransaction(rawTransaction: string): void;
|
|
41
|
+
/** @inheritdoc */
|
|
42
|
+
validateTransaction(transaction: OsmoTransaction): void;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=transactionBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkD,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC/G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIxD,OAAO,EACL,iBAAiB,EACjB,2BAA2B,EAC3B,OAAO,EACP,WAAW,EACX,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,8BAAsB,sBAAuB,SAAQ,wBAAwB;gBAC/D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,WAAW,GAAG,2BAA2B,GAAG,+BAA+B,CAAC,EAAE,GAAG,IAAI;IAElH;;OAEG;IACH,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,eAAe,CAAC;IAE1D;;;;;;OAMG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAMnC;;;OAGG;IACH,WAAW,CAAC,EAAE,EAAE,eAAe,GAAG,IAAI;IAmBtC,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB;IAOvE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAwCjE,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAMnE,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAYpD,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI;CAQxD"}
|
|
@@ -0,0 +1,112 @@
|
|
|
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.OsmoTransactionBuilder = void 0;
|
|
7
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
8
|
+
const crypto_1 = require("@cosmjs/crypto");
|
|
9
|
+
const proto_signing_1 = require("@cosmjs/proto-signing");
|
|
10
|
+
const abstract_cosmos_1 = require("@bitgo/abstract-cosmos");
|
|
11
|
+
const transaction_1 = require("./transaction");
|
|
12
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
13
|
+
class OsmoTransactionBuilder extends abstract_cosmos_1.CosmosTransactionBuilder {
|
|
14
|
+
constructor(_coinConfig) {
|
|
15
|
+
super(_coinConfig);
|
|
16
|
+
this._transaction = new transaction_1.OsmoTransaction(_coinConfig);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Sets gas budget of this transaction
|
|
20
|
+
* Gas budget consist of fee amount and gas limit. Division feeAmount/gasLimit represents
|
|
21
|
+
* the gas-fee and it should be more than minimum required gas-fee to process the transaction
|
|
22
|
+
* @param {FeeData} gasBudget
|
|
23
|
+
* @returns {TransactionBuilder} this transaction builder
|
|
24
|
+
*/
|
|
25
|
+
gasBudget(gasBudget) {
|
|
26
|
+
utils_1.default.validateGasBudget(gasBudget);
|
|
27
|
+
this._gasBudget = gasBudget;
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Initialize the transaction builder fields using the decoded transaction data
|
|
32
|
+
* @param {OsmoTransaction} tx the transaction data
|
|
33
|
+
*/
|
|
34
|
+
initBuilder(tx) {
|
|
35
|
+
this._transaction = tx;
|
|
36
|
+
const txData = tx.toJson();
|
|
37
|
+
this.gasBudget(txData.gasBudget);
|
|
38
|
+
this.messages(txData.sendMessages.map((message) => {
|
|
39
|
+
return message.value;
|
|
40
|
+
}));
|
|
41
|
+
this.sequence(txData.sequence);
|
|
42
|
+
this.publicKey(txData.publicKey);
|
|
43
|
+
this.accountNumber(txData.accountNumber);
|
|
44
|
+
this.chainId(txData.chainId);
|
|
45
|
+
this.memo(txData.memo);
|
|
46
|
+
if (tx.signature && tx.signature.length > 0) {
|
|
47
|
+
this.addSignature({ pub: txData.publicKey }, Buffer.from(tx.signature[0], 'hex'));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** @inheritdoc */
|
|
51
|
+
fromImplementation(rawTransaction) {
|
|
52
|
+
const tx = new transaction_1.OsmoTransaction(this._coinConfig);
|
|
53
|
+
tx.enrichTransactionDetailsFromRawTransaction(rawTransaction);
|
|
54
|
+
this.initBuilder(tx);
|
|
55
|
+
return this.transaction;
|
|
56
|
+
}
|
|
57
|
+
/** @inheritdoc */
|
|
58
|
+
async buildImplementation() {
|
|
59
|
+
var _a;
|
|
60
|
+
this.transaction.transactionType = this.transactionType;
|
|
61
|
+
if (this._accountNumber) {
|
|
62
|
+
this.transaction.accountNumber = this._accountNumber;
|
|
63
|
+
}
|
|
64
|
+
if (this._chainId) {
|
|
65
|
+
this.transaction.chainId = this._chainId;
|
|
66
|
+
}
|
|
67
|
+
this.transaction.cosmosLikeTransaction = utils_1.default.createOsmoTransaction(this._sequence, this._messages, this._gasBudget, this._publicKey, this._memo);
|
|
68
|
+
const privateKey = (_a = this._signer) === null || _a === void 0 ? void 0 : _a.getPrivateKey();
|
|
69
|
+
if (privateKey !== undefined && this.transaction.cosmosLikeTransaction.publicKey !== undefined) {
|
|
70
|
+
const signDoc = utils_1.default.createSignDoc(this.transaction.cosmosLikeTransaction, this._accountNumber, this._chainId);
|
|
71
|
+
const txnHash = crypto_1.sha256(proto_signing_1.makeSignBytes(signDoc));
|
|
72
|
+
const signature = await crypto_1.Secp256k1.createSignature(txnHash, privateKey);
|
|
73
|
+
const compressedSig = Buffer.concat([signature.r(), signature.s()]);
|
|
74
|
+
this.addSignature({ pub: this.transaction.cosmosLikeTransaction.publicKey }, compressedSig);
|
|
75
|
+
}
|
|
76
|
+
if (this._signature !== undefined) {
|
|
77
|
+
this.transaction.addSignature(this._signature.toString('hex'));
|
|
78
|
+
this.transaction.cosmosLikeTransaction = utils_1.default.createOsmoTransactionWithHash(this._sequence, this._messages, this._gasBudget, this._publicKey, this._signature, this._memo);
|
|
79
|
+
}
|
|
80
|
+
this.transaction.loadInputsAndOutputs();
|
|
81
|
+
return this.transaction;
|
|
82
|
+
}
|
|
83
|
+
validateAddress(address, addressFormat) {
|
|
84
|
+
if (!(utils_1.default.isValidAddress(address.address) || utils_1.default.isValidValidatorAddress(address.address))) {
|
|
85
|
+
throw new sdk_core_1.BuildTransactionError('transactionBuilder: address isValidAddress check failed: ' + address.address);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/** @inheritdoc */
|
|
89
|
+
validateRawTransaction(rawTransaction) {
|
|
90
|
+
if (!rawTransaction) {
|
|
91
|
+
throw new sdk_core_1.InvalidTransactionError('Invalid raw transaction: Undefined rawTransaction');
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
throw new sdk_core_1.InvalidTransactionError('Invalid raw transaction: ' + e.message);
|
|
97
|
+
}
|
|
98
|
+
const osmoTransaction = utils_1.default.deserializeOsmoTransaction(rawTransaction);
|
|
99
|
+
utils_1.default.validateOsmoTransaction(osmoTransaction);
|
|
100
|
+
}
|
|
101
|
+
/** @inheritdoc */
|
|
102
|
+
validateTransaction(transaction) {
|
|
103
|
+
utils_1.default.validateOsmoTransaction({
|
|
104
|
+
sequence: this._sequence,
|
|
105
|
+
sendMessages: this._messages,
|
|
106
|
+
gasBudget: this._gasBudget,
|
|
107
|
+
publicKey: this._publicKey,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.OsmoTransactionBuilder = OsmoTransactionBuilder;
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQStHO0FBRS9HLDJDQUFtRDtBQUNuRCx5REFBc0Q7QUFFdEQsNERBT2dDO0FBRWhDLCtDQUFnRDtBQUNoRCxvREFBNEI7QUFFNUIsTUFBc0Isc0JBQXVCLFNBQVEsMENBQXdCO0lBQzNFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSw2QkFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFrQkQ7Ozs7OztPQU1HO0lBQ0gsU0FBUyxDQUFDLFNBQWtCO1FBQzFCLGVBQUssQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSCxXQUFXLENBQUMsRUFBbUI7UUFDN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdkIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLENBQ1gsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNsQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNB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UUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3hCLFlBQVksRUFBRSxJQUFJLENBQUMsU0FBUztZQUM1QixTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXZJRCx3REF1SUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQWRkcmVzcywgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBTZWNwMjU2azEsIHNoYTI1NiB9IGZyb20gJ0Bjb3NtanMvY3J5cHRvJztcbmltcG9ydCB7IG1ha2VTaWduQnl0ZXMgfSBmcm9tICdAY29zbWpzL3Byb3RvLXNpZ25pbmcnO1xuXG5pbXBvcnQge1xuICBDb3Ntb3NUcmFuc2FjdGlvbixcbiAgRGVsZWdhdGVPclVuZGVsZWdldGVNZXNzYWdlLFxuICBGZWVEYXRhLFxuICBTZW5kTWVzc2FnZSxcbiAgV2l0aGRyYXdEZWxlZ2F0b3JSZXdhcmRzTWVzc2FnZSxcbiAgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyLFxufSBmcm9tICdAYml0Z28vYWJzdHJhY3QtY29zbW9zJztcblxuaW1wb3J0IHsgT3Ntb1RyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPc21vVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQ29zbW9zVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IE9zbW9UcmFuc2FjdGlvbihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBtZXNzYWdlcyB0byB0aGUgdHJhbnNhY3Rpb24gYm9keS4gTWVzc2FnZSB0eXBlIHdpbGwgYmUgZGlmZmVyZW50IGJhc2VkIG9uIHRoZSB0cmFuc2FjdGlvbiB0eXBlXG4gICAqIC0gRm9yIEBzZWUgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdBY3RpdmF0ZSByZXF1aXJlZCB0eXBlIGlzIEBzZWUgRGVsZWdhdGVPclVuZGVsZWdldGVNZXNzYWdlXG4gICAqIC0gRm9yIEBzZWUgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlIHJlcXVpcmVkIHR5cGUgaXMgQHNlZSBEZWxlZ2F0ZU9yVW5kZWxlZ2V0ZU1lc3NhZ2VcbiAgICogLSBGb3IgQHNlZSBUcmFuc2FjdGlvblR5cGUuU2VuZCByZXF1aXJlZCB0eXBlIGlzIEBzZWUgU2VuZE1lc3NhZ2VcbiAgICogLSBGb3IgQHNlZSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ1dpdGhkcmF3IHJlcXVpcmVkIHR5cGUgaXMgQHNlZSBXaXRoZHJhd0RlbGVnYXRvclJld2FyZHNNZXNzYWdlXG4gICAqIEBwYXJhbSB7KFNlbmRNZXNzYWdlIHwgRGVsZWdhdGVPclVuZGVsZWdldGVNZXNzYWdlIHwgV2l0aGRyYXdEZWxlZ2F0b3JSZXdhcmRzTWVzc2FnZSlbXX0gbWVzc2FnZXNcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBhYnN0cmFjdCBtZXNzYWdlcyhtZXNzYWdlczogKFNlbmRNZXNzYWdlIHwgRGVsZWdhdGVPclVuZGVsZWdldGVNZXNzYWdlIHwgV2l0aGRyYXdEZWxlZ2F0b3JSZXdhcmRzTWVzc2FnZSlbXSk6IHRoaXM7XG5cbiAgLyoqXG4gICAqIFRoZSB0cmFuc2FjdGlvbiB0eXBlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8qKlxuICAgKiBTZXRzIGdhcyBidWRnZXQgb2YgdGhpcyB0cmFuc2FjdGlvblxuICAgKiBHYXMgYnVkZ2V0IGNvbnNpc3Qgb2YgZmVlIGFtb3VudCBhbmQgZ2FzIGxpbWl0LiBEaXZpc2lvbiBmZWVBbW91bnQvZ2FzTGltaXQgcmVwcmVzZW50c1xuICAgKiB0aGUgZ2FzLWZlZSBhbmQgaXQgc2hvdWxkIGJlIG1vcmUgdGhhbiBtaW5pbXVtIHJlcXVpcmVkIGdhcy1mZWUgdG8gcHJvY2VzcyB0aGUgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHtGZWVEYXRhfSBnYXNCdWRnZXRcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gdGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBnYXNCdWRnZXQoZ2FzQnVkZ2V0OiBGZWVEYXRhKTogdGhpcyB7XG4gICAgdXRpbHMudmFsaWRhdGVHYXNCdWRnZXQoZ2FzQnVkZ2V0KTtcbiAgICB0aGlzLl9nYXNCdWRnZXQgPSBnYXNCdWRnZXQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlciBmaWVsZHMgdXNpbmcgdGhlIGRlY29kZWQgdHJhbnNhY3Rpb24gZGF0YVxuICAgKiBAcGFyYW0ge09zbW9UcmFuc2FjdGlvbn0gdHggdGhlIHRyYW5zYWN0aW9uIGRhdGFcbiAgICovXG4gIGluaXRCdWlsZGVyKHR4OiBPc21vVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IHR4O1xuICAgIGNvbnN0IHR4RGF0YSA9IHR4LnRvSnNvbigpO1xuICAgIHRoaXMuZ2FzQnVkZ2V0KHR4RGF0YS5nYXNCdWRnZXQpO1xuICAgIHRoaXMubWVzc2FnZXMoXG4gICAgICB0eERhdGEuc2VuZE1lc3NhZ2VzLm1hcCgobWVzc2FnZSkgPT4ge1xuICAgICAgICByZXR1cm4gbWVzc2FnZS52YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLnNlcXVlbmNlKHR4RGF0YS5zZXF1ZW5jZSk7XG4gICAgdGhpcy5wdWJsaWNLZXkodHhEYXRhLnB1YmxpY0tleSk7XG4gICAgdGhpcy5hY2NvdW50TnVtYmVyKHR4RGF0YS5hY2NvdW50TnVtYmVyKTtcbiAgICB0aGlzLmNoYWluSWQodHhEYXRhLmNoYWluSWQpO1xuICAgIHRoaXMubWVtbyh0eERhdGEubWVtbyk7XG4gICAgaWYgKHR4LnNpZ25hdHVyZSAmJiB0eC5zaWduYXR1cmUubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5hZGRTaWduYXR1cmUoeyBwdWI6IHR4RGF0YS5wdWJsaWNLZXkgfSBhcyBhbnksIEJ1ZmZlci5mcm9tKHR4LnNpZ25hdHVyZVswXSwgJ2hleCcpKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogQ29zbW9zVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IE9zbW9UcmFuc2FjdGlvbih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICB0eC5lbnJpY2hUcmFuc2FjdGlvbkRldGFpbHNGcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgIHRoaXMuaW5pdEJ1aWxkZXIodHgpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8Q29zbW9zVHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uVHlwZSA9IHRoaXMudHJhbnNhY3Rpb25UeXBlO1xuICAgIGlmICh0aGlzLl9hY2NvdW50TnVtYmVyKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmFjY291bnROdW1iZXIgPSB0aGlzLl9hY2NvdW50TnVtYmVyO1xuICAgIH1cbiAgICBpZiAodGhpcy5fY2hhaW5JZCkge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5jaGFpbklkID0gdGhpcy5fY2hhaW5JZDtcbiAgICB9XG4gICAgdGhpcy50cmFuc2FjdGlvbi5jb3Ntb3NMaWtlVHJhbnNhY3Rpb24gPSB1dGlscy5jcmVhdGVPc21vVHJhbnNhY3Rpb24oXG4gICAgICB0aGlzLl9zZXF1ZW5jZSxcbiAgICAgIHRoaXMuX21lc3NhZ2VzLFxuICAgICAgdGhpcy5fZ2FzQnVkZ2V0LFxuICAgICAgdGhpcy5fcHVibGljS2V5LFxuICAgICAgdGhpcy5fbWVtb1xuICAgICk7XG5cbiAgICBjb25zdCBwcml2YXRlS2V5ID0gdGhpcy5fc2lnbmVyPy5nZXRQcml2YXRlS2V5KCk7XG4gICAgaWYgKHByaXZhdGVLZXkgIT09IHVuZGVmaW5lZCAmJiB0aGlzLnRyYW5zYWN0aW9uLmNvc21vc0xpa2VUcmFuc2FjdGlvbi5wdWJsaWNLZXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3Qgc2lnbkRvYyA9IHV0aWxzLmNyZWF0ZVNpZ25Eb2ModGhpcy50cmFuc2FjdGlvbi5jb3Ntb3NMaWtlVHJhbnNhY3Rpb24sIHRoaXMuX2FjY291bnROdW1iZXIsIHRoaXMuX2NoYWluSWQpO1xuICAgICAgY29uc3QgdHhuSGFzaCA9IHNoYTI1NihtYWtlU2lnbkJ5dGVzKHNpZ25Eb2MpKTtcbiAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IGF3YWl0IFNlY3AyNTZrMS5jcmVhdGVTaWduYXR1cmUodHhuSGFzaCwgcHJpdmF0ZUtleSk7XG4gICAgICBjb25zdCBjb21wcmVzc2VkU2lnID0gQnVmZmVyLmNvbmNhdChbc2lnbmF0dXJlLnIoKSwgc2lnbmF0dXJlLnMoKV0pO1xuICAgICAgdGhpcy5hZGRTaWduYXR1cmUoeyBwdWI6IHRoaXMudHJhbnNhY3Rpb24uY29zbW9zTGlrZVRyYW5zYWN0aW9uLnB1YmxpY0tleSB9LCBjb21wcmVzc2VkU2lnKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fc2lnbmF0dXJlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uYWRkU2lnbmF0dXJlKHRoaXMuX3NpZ25hdHVyZS50b1N0cmluZygnaGV4JykpO1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5jb3Ntb3NMaWtlVHJhbnNhY3Rpb24gPSB1dGlscy5jcmVhdGVPc21vVHJhbnNhY3Rpb25XaXRoSGFzaChcbiAgICAgICAgdGhpcy5fc2VxdWVuY2UsXG4gICAgICAgIHRoaXMuX21lc3NhZ2VzLFxuICAgICAgICB0aGlzLl9nYXNCdWRnZXQsXG4gICAgICAgIHRoaXMuX3B1YmxpY0tleSxcbiAgICAgICAgdGhpcy5fc2lnbmF0dXJlLFxuICAgICAgICB0aGlzLl9tZW1vXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLnRyYW5zYWN0aW9uLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoISh1dGlscy5pc1ZhbGlkQWRkcmVzcyhhZGRyZXNzLmFkZHJlc3MpIHx8IHV0aWxzLmlzVmFsaWRWYWxpZGF0b3JBZGRyZXNzKGFkZHJlc3MuYWRkcmVzcykpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd0cmFuc2FjdGlvbkJ1aWxkZXI6IGFkZHJlc3MgaXNWYWxpZEFkZHJlc3MgY2hlY2sgZmFpbGVkOiAnICsgYWRkcmVzcy5hZGRyZXNzKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCFyYXdUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkIHJhd1RyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogJyArIGUubWVzc2FnZSk7XG4gICAgfVxuICAgIGNvbnN0IG9zbW9UcmFuc2FjdGlvbiA9IHV0aWxzLmRlc2VyaWFsaXplT3Ntb1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB1dGlscy52YWxpZGF0ZU9zbW9UcmFuc2FjdGlvbihvc21vVHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IE9zbW9UcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHV0aWxzLnZhbGlkYXRlT3Ntb1RyYW5zYWN0aW9uKHtcbiAgICAgIHNlcXVlbmNlOiB0aGlzLl9zZXF1ZW5jZSxcbiAgICAgIHNlbmRNZXNzYWdlczogdGhpcy5fbWVzc2FnZXMsXG4gICAgICBnYXNCdWRnZXQ6IHRoaXMuX2dhc0J1ZGdldCxcbiAgICAgIHB1YmxpY0tleTogdGhpcy5fcHVibGljS2V5LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { BaseTransactionBuilderFactory } from '@bitgo/sdk-core';
|
|
2
|
+
import { OsmoTransactionBuilder } from './transactionBuilder';
|
|
3
|
+
import { OsmoTransferBuilder } from './transferBuilder';
|
|
4
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
5
|
+
import { OsmoTransaction } from './transaction';
|
|
6
|
+
import { StakingActivateBuilder } from './StakingActivateBuilder';
|
|
7
|
+
import { StakingDeactivateBuilder } from './StakingDeactivateBuilder';
|
|
8
|
+
import { StakingWithdrawRewardsBuilder } from './StakingWithdrawRewardsBuilder';
|
|
9
|
+
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
10
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
11
|
+
/** @inheritdoc */
|
|
12
|
+
from(raw: string): OsmoTransactionBuilder;
|
|
13
|
+
/** @inheritdoc */
|
|
14
|
+
getTransferBuilder(tx?: OsmoTransaction): OsmoTransferBuilder;
|
|
15
|
+
/** @inheritdoc */
|
|
16
|
+
getStakingActivateBuilder(tx?: OsmoTransaction): StakingActivateBuilder;
|
|
17
|
+
/** @inheritdoc */
|
|
18
|
+
getStakingDeactivateBuilder(tx?: OsmoTransaction): StakingDeactivateBuilder;
|
|
19
|
+
/** @inheritdoc */
|
|
20
|
+
getStakingWithdrawRewardsBuilder(tx?: OsmoTransaction): StakingWithdrawRewardsBuilder;
|
|
21
|
+
/** @inheritdoc */
|
|
22
|
+
getWalletInitializationBuilder(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Initialize the builder with the given transaction
|
|
25
|
+
*
|
|
26
|
+
* @param {OsmoTransaction | undefined} tx - the transaction used to initialize the builder
|
|
27
|
+
* @param {OsmoTransactionBuilder} builder - the builder to be initialized
|
|
28
|
+
* @returns {OsmoTransactionBuilder} the builder initialized
|
|
29
|
+
*/
|
|
30
|
+
private initializeBuilder;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=transactionBuilderFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA4C,MAAM,iBAAiB,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAEhF,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAqBzC,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,mBAAmB;IAI7D,kBAAkB;IAClB,yBAAyB,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,sBAAsB;IAIvE,kBAAkB;IAClB,2BAA2B,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,wBAAwB;IAI3E,kBAAkB;IAClB,gCAAgC,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,6BAA6B;IAIrF,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;CAM1B"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TransactionBuilderFactory = void 0;
|
|
4
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
5
|
+
const transferBuilder_1 = require("./transferBuilder");
|
|
6
|
+
const transaction_1 = require("./transaction");
|
|
7
|
+
const StakingActivateBuilder_1 = require("./StakingActivateBuilder");
|
|
8
|
+
const StakingDeactivateBuilder_1 = require("./StakingDeactivateBuilder");
|
|
9
|
+
const StakingWithdrawRewardsBuilder_1 = require("./StakingWithdrawRewardsBuilder");
|
|
10
|
+
class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
|
|
11
|
+
constructor(_coinConfig) {
|
|
12
|
+
super(_coinConfig);
|
|
13
|
+
}
|
|
14
|
+
/** @inheritdoc */
|
|
15
|
+
from(raw) {
|
|
16
|
+
const tx = new transaction_1.OsmoTransaction(this._coinConfig);
|
|
17
|
+
tx.enrichTransactionDetailsFromRawTransaction(raw);
|
|
18
|
+
try {
|
|
19
|
+
switch (tx.type) {
|
|
20
|
+
case sdk_core_1.TransactionType.Send:
|
|
21
|
+
return this.getTransferBuilder(tx);
|
|
22
|
+
case sdk_core_1.TransactionType.StakingActivate:
|
|
23
|
+
return this.getStakingActivateBuilder(tx);
|
|
24
|
+
case sdk_core_1.TransactionType.StakingDeactivate:
|
|
25
|
+
return this.getStakingDeactivateBuilder(tx);
|
|
26
|
+
case sdk_core_1.TransactionType.StakingWithdraw:
|
|
27
|
+
return this.getStakingWithdrawRewardsBuilder(tx);
|
|
28
|
+
default:
|
|
29
|
+
throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
throw new sdk_core_1.InvalidTransactionError('Invalid transaction: ' + e.message);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/** @inheritdoc */
|
|
37
|
+
getTransferBuilder(tx) {
|
|
38
|
+
return this.initializeBuilder(tx, new transferBuilder_1.OsmoTransferBuilder(this._coinConfig));
|
|
39
|
+
}
|
|
40
|
+
/** @inheritdoc */
|
|
41
|
+
getStakingActivateBuilder(tx) {
|
|
42
|
+
return this.initializeBuilder(tx, new StakingActivateBuilder_1.StakingActivateBuilder(this._coinConfig));
|
|
43
|
+
}
|
|
44
|
+
/** @inheritdoc */
|
|
45
|
+
getStakingDeactivateBuilder(tx) {
|
|
46
|
+
return this.initializeBuilder(tx, new StakingDeactivateBuilder_1.StakingDeactivateBuilder(this._coinConfig));
|
|
47
|
+
}
|
|
48
|
+
/** @inheritdoc */
|
|
49
|
+
getStakingWithdrawRewardsBuilder(tx) {
|
|
50
|
+
return this.initializeBuilder(tx, new StakingWithdrawRewardsBuilder_1.StakingWithdrawRewardsBuilder(this._coinConfig));
|
|
51
|
+
}
|
|
52
|
+
/** @inheritdoc */
|
|
53
|
+
getWalletInitializationBuilder() {
|
|
54
|
+
throw new Error('Method not implemented.');
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Initialize the builder with the given transaction
|
|
58
|
+
*
|
|
59
|
+
* @param {OsmoTransaction | undefined} tx - the transaction used to initialize the builder
|
|
60
|
+
* @param {OsmoTransactionBuilder} builder - the builder to be initialized
|
|
61
|
+
* @returns {OsmoTransactionBuilder} the builder initialized
|
|
62
|
+
*/
|
|
63
|
+
initializeBuilder(tx, builder) {
|
|
64
|
+
if (tx) {
|
|
65
|
+
builder.initBuilder(tx);
|
|
66
|
+
}
|
|
67
|
+
return builder;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.TransactionBuilderFactory = TransactionBuilderFactory;
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4Q0FBMEc7QUFFMUcsdURBQXdEO0FBRXhELCtDQUFnRDtBQUNoRCxxRUFBa0U7QUFDbEUseUVBQXNFO0FBQ3RFLG1GQUFnRjtBQUVoRixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsTUFBTSxFQUFFLEdBQUcsSUFBSSw2QkFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqRCxFQUFFLENBQUMsMENBQTBDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkQsSUFBSTtZQUNGLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBRTtnQkFDZixLQUFLLDBCQUFlLENBQUMsSUFBSTtvQkFDdkIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3JDLEtBQUssMEJBQWUsQ0FBQyxlQUFlO29CQUNsQyxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDNUMsS0FBSywwQkFBZSxDQUFDLGlCQUFpQjtvQkFDcEMsT0FBTyxJQUFJLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlDLEtBQUssMEJBQWUsQ0FBQyxlQUFlO29CQUNsQyxPQUFPLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbkQ7b0JBQ0UsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHFCQUFxQixDQUFDLENBQUM7YUFDNUQ7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLGtDQUF1QixDQUFDLHVCQUF1QixHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUN4RTtJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCLENBQUMsRUFBb0I7UUFDckMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUkscUNBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix5QkFBeUIsQ0FBQyxFQUFvQjtRQUM1QyxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSwrQ0FBc0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDJCQUEyQixDQUFDLEVBQW9CO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLG1EQUF3QixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsZ0NBQWdDLENBQUMsRUFBb0I7UUFDbkQsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksNkRBQTZCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVELGtCQUFrQjtJQUNsQiw4QkFBOEI7UUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxpQkFBaUIsQ0FBbUMsRUFBK0IsRUFBRSxPQUFVO1FBQ3JHLElBQUksRUFBRSxFQUFFO1lBQ04sT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQWpFRCw4REFpRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBPc21vVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHsgT3Ntb1RyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBPc21vVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFN0YWtpbmdBY3RpdmF0ZUJ1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdBY3RpdmF0ZUJ1aWxkZXInO1xuaW1wb3J0IHsgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyIH0gZnJvbSAnLi9TdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXInO1xuaW1wb3J0IHsgU3Rha2luZ1dpdGhkcmF3UmV3YXJkc0J1aWxkZXIgfSBmcm9tICcuL1N0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBmcm9tKHJhdzogc3RyaW5nKTogT3Ntb1RyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgY29uc3QgdHggPSBuZXcgT3Ntb1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgIHR4LmVucmljaFRyYW5zYWN0aW9uRGV0YWlsc0Zyb21SYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBUcmFuc2FjdGlvblR5cGUuU2VuZDpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2ZlckJ1aWxkZXIodHgpO1xuICAgICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGU6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U3Rha2luZ0FjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlOlxuICAgICAgICAgIHJldHVybiB0aGlzLmdldFN0YWtpbmdEZWFjdGl2YXRlQnVpbGRlcih0eCk7XG4gICAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdzpcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0eCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiAnICsgZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogT3Ntb1RyYW5zYWN0aW9uKTogT3Ntb1RyYW5zZmVyQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBPc21vVHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nQWN0aXZhdGVCdWlsZGVyKHR4PzogT3Ntb1RyYW5zYWN0aW9uKTogU3Rha2luZ0FjdGl2YXRlQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBTdGFraW5nQWN0aXZhdGVCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIodHg/OiBPc21vVHJhbnNhY3Rpb24pOiBTdGFraW5nRGVhY3RpdmF0ZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgU3Rha2luZ0RlYWN0aXZhdGVCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nV2l0aGRyYXdSZXdhcmRzQnVpbGRlcih0eD86IE9zbW9UcmFuc2FjdGlvbik6IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFN0YWtpbmdXaXRoZHJhd1Jld2FyZHNCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIGJ1aWxkZXIgd2l0aCB0aGUgZ2l2ZW4gdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIHtPc21vVHJhbnNhY3Rpb24gfCB1bmRlZmluZWR9IHR4IC0gdGhlIHRyYW5zYWN0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgYnVpbGRlclxuICAgKiBAcGFyYW0ge09zbW9UcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7T3Ntb1RyYW5zYWN0aW9uQnVpbGRlcn0gdGhlIGJ1aWxkZXIgaW5pdGlhbGl6ZWRcbiAgICovXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIE9zbW9UcmFuc2FjdGlvbkJ1aWxkZXI+KHR4OiBPc21vVHJhbnNhY3Rpb24gfCB1bmRlZmluZWQsIGJ1aWxkZXI6IFQpOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TransactionType } from '@bitgo/sdk-core';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo/statics';
|
|
3
|
+
import { OsmoTransactionBuilder } from './transactionBuilder';
|
|
4
|
+
import { SendMessage } from '@bitgo/abstract-cosmos';
|
|
5
|
+
export declare class OsmoTransferBuilder extends OsmoTransactionBuilder {
|
|
6
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
7
|
+
protected get transactionType(): TransactionType;
|
|
8
|
+
/** @inheritdoc */
|
|
9
|
+
messages(sendMessages: SendMessage[]): this;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=transferBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAmB,MAAM,wBAAwB,CAAC;AAEtE,qBAAa,mBAAoB,SAAQ,sBAAsB;gBACjD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;CAU5C"}
|
|
@@ -0,0 +1,31 @@
|
|
|
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.OsmoTransferBuilder = void 0;
|
|
7
|
+
const sdk_core_1 = require("@bitgo/sdk-core");
|
|
8
|
+
const transactionBuilder_1 = require("./transactionBuilder");
|
|
9
|
+
const utils_1 = __importDefault(require("./utils"));
|
|
10
|
+
const abstract_cosmos_1 = require("@bitgo/abstract-cosmos");
|
|
11
|
+
class OsmoTransferBuilder extends transactionBuilder_1.OsmoTransactionBuilder {
|
|
12
|
+
constructor(_coinConfig) {
|
|
13
|
+
super(_coinConfig);
|
|
14
|
+
}
|
|
15
|
+
get transactionType() {
|
|
16
|
+
return sdk_core_1.TransactionType.Send;
|
|
17
|
+
}
|
|
18
|
+
/** @inheritdoc */
|
|
19
|
+
messages(sendMessages) {
|
|
20
|
+
this._messages = sendMessages.map((sendMessage) => {
|
|
21
|
+
utils_1.default.validateSendMessage(sendMessage);
|
|
22
|
+
return {
|
|
23
|
+
typeUrl: abstract_cosmos_1.CosmosConstants.sendMsgTypeUrl,
|
|
24
|
+
value: sendMessage,
|
|
25
|
+
};
|
|
26
|
+
});
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.OsmoTransferBuilder = OsmoTransferBuilder;
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOENBQWtEO0FBR2xELDZEQUE4RDtBQUM5RCxvREFBNEI7QUFDNUIsNERBQXNFO0FBRXRFLE1BQWEsbUJBQW9CLFNBQVEsMkNBQXNCO0lBQzdELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFFBQVEsQ0FBQyxZQUEyQjtRQUNsQyxJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtZQUNoRCxlQUFLLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdkMsT0FBTztnQkFDTCxPQUFPLEVBQUUsaUNBQWUsQ0FBQyxjQUFjO2dCQUN2QyxLQUFLLEVBQUUsV0FBVzthQUNuQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRjtBQXBCRCxrREFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcblxuaW1wb3J0IHsgT3Ntb1RyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFNlbmRNZXNzYWdlLCBDb3Ntb3NDb25zdGFudHMgfSBmcm9tICdAYml0Z28vYWJzdHJhY3QtY29zbW9zJztcblxuZXhwb3J0IGNsYXNzIE9zbW9UcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBPc21vVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgbWVzc2FnZXMoc2VuZE1lc3NhZ2VzOiBTZW5kTWVzc2FnZVtdKTogdGhpcyB7XG4gICAgdGhpcy5fbWVzc2FnZXMgPSBzZW5kTWVzc2FnZXMubWFwKChzZW5kTWVzc2FnZSkgPT4ge1xuICAgICAgdXRpbHMudmFsaWRhdGVTZW5kTWVzc2FnZShzZW5kTWVzc2FnZSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0eXBlVXJsOiBDb3Ntb3NDb25zdGFudHMuc2VuZE1zZ1R5cGVVcmwsXG4gICAgICAgIHZhbHVlOiBzZW5kTWVzc2FnZSxcbiAgICAgIH07XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Coin } from '@cosmjs/stargate';
|
|
3
|
+
import { CosmosLikeTransaction, DelegateOrUndelegeteMessage, FeeData, MessageData, SendMessage, WithdrawDelegatorRewardsMessage, CosmosLikeUtils } from '@bitgo/abstract-cosmos';
|
|
4
|
+
export declare class OsmoUtils extends CosmosLikeUtils {
|
|
5
|
+
/**
|
|
6
|
+
* Validates if the address matches with regex @see accountAddressRegex
|
|
7
|
+
*
|
|
8
|
+
* @param {string} address
|
|
9
|
+
* @returns {boolean} - the validation result
|
|
10
|
+
*/
|
|
11
|
+
isValidAddress(address: string): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Validates if the address matches with regex @see accountAddressRegex
|
|
14
|
+
*
|
|
15
|
+
* @param {string} address
|
|
16
|
+
* @returns {boolean} - the validation result
|
|
17
|
+
*/
|
|
18
|
+
isValidValidatorAddress(address: string): boolean;
|
|
19
|
+
validateWithdrawRewardsMessage(withdrawRewardsMessage: WithdrawDelegatorRewardsMessage): void;
|
|
20
|
+
validateAmount(amount: Coin): void;
|
|
21
|
+
validateDelegateOrUndelegateMessage(delegateMessage: DelegateOrUndelegeteMessage): void;
|
|
22
|
+
validateMessageData(messageData: MessageData): void;
|
|
23
|
+
validateOsmoTransaction(tx: CosmosLikeTransaction): void;
|
|
24
|
+
createOsmoTransaction(sequence: number, messages: MessageData[], gasBudget: FeeData, publicKey?: string, memo?: string): CosmosLikeTransaction;
|
|
25
|
+
createOsmoTransactionWithHash(sequence: number, messages: MessageData[], gasBudget: FeeData, publicKey?: string, signature?: Buffer, memo?: string): CosmosLikeTransaction;
|
|
26
|
+
/**
|
|
27
|
+
* Deserializes base64 enocded raw transaction string into @see CosmosLikeTransaction
|
|
28
|
+
* @param {string} rawTx base64 enocded raw transaction string
|
|
29
|
+
* @returns {CosmosLikeTransaction} Deserialized cosmosLikeTransaction
|
|
30
|
+
*/
|
|
31
|
+
deserializeOsmoTransaction(rawTx: string): CosmosLikeTransaction;
|
|
32
|
+
validateAmountData(amountArray: Coin[]): void;
|
|
33
|
+
validateGasBudget(gasBudget: FeeData): void;
|
|
34
|
+
validateSendMessage(sendMessage: SendMessage): void;
|
|
35
|
+
}
|
|
36
|
+
declare const osmoUtils: OsmoUtils;
|
|
37
|
+
export default osmoUtils;
|
|
38
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAQxC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,OAAO,EACP,WAAW,EACX,WAAW,EACX,+BAA+B,EAE/B,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,SAAU,SAAQ,eAAe;IAC5C;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC;;;;;OAKG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIjD,8BAA8B,CAAC,sBAAsB,EAAE,+BAA+B;IAgBtF,cAAc,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI;IAUlC,mCAAmC,CAAC,eAAe,EAAE,2BAA2B;IAchF,mBAAmB,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAwCnD,uBAAuB,CAAC,EAAE,EAAE,qBAAqB,GAAG,IAAI;IAWxD,qBAAqB,CACnB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,qBAAqB;IAYxB,6BAA6B,CAC3B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,qBAAqB;IAqBxB;;;;OAIG;IACH,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IA4BhE,kBAAkB,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI;IAM7C,iBAAiB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAO3C,mBAAmB,CAAC,WAAW,EAAE,WAAW;CAS7C;AAED,QAAA,MAAM,SAAS,WAAkB,CAAC;AAElC,eAAe,SAAS,CAAC"}
|