@firmachain/firma-js 0.3.4 → 0.3.6-beta1
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/index.js +5 -1
- package/dist/sdk/FirmaAuthzService.d.ts +8 -7
- package/dist/sdk/FirmaAuthzService.js +12 -22
- package/dist/sdk/FirmaBankService.js +2 -2
- package/dist/sdk/FirmaChainService.js +1 -1
- package/dist/sdk/FirmaContractService.d.ts +1 -1
- package/dist/sdk/FirmaContractService.js +6 -6
- package/dist/sdk/FirmaCosmWasmCw20.d.ts +2 -2
- package/dist/sdk/FirmaCosmWasmCw20.js +8 -8
- package/dist/sdk/FirmaCosmWasmCw721.d.ts +2 -2
- package/dist/sdk/FirmaCosmWasmCw721.js +12 -12
- package/dist/sdk/FirmaCosmWasmCwBridge.d.ts +1 -1
- package/dist/sdk/FirmaCosmWasmCwBridge.js +8 -8
- package/dist/sdk/FirmaCosmWasmCwMarketplace.d.ts +1 -1
- package/dist/sdk/FirmaCosmWasmCwMarketplace.js +5 -5
- package/dist/sdk/FirmaCosmWasmService.d.ts +1 -1
- package/dist/sdk/FirmaCosmWasmService.js +13 -13
- package/dist/sdk/FirmaDistributionService.d.ts +1 -1
- package/dist/sdk/FirmaDistributionService.js +6 -6
- package/dist/sdk/FirmaFeeGrantService.d.ts +7 -6
- package/dist/sdk/FirmaFeeGrantService.js +9 -26
- package/dist/sdk/FirmaGovService.d.ts +1 -1
- package/dist/sdk/FirmaGovService.js +14 -14
- package/dist/sdk/FirmaIbcService.d.ts +3 -3
- package/dist/sdk/FirmaIbcService.js +11 -8
- package/dist/sdk/FirmaIpfsService.js +1 -1
- package/dist/sdk/FirmaMintService.js +1 -1
- package/dist/sdk/FirmaNftService.d.ts +1 -1
- package/dist/sdk/FirmaNftService.js +6 -6
- package/dist/sdk/FirmaSlashingService.js +1 -1
- package/dist/sdk/FirmaStakingService.d.ts +3 -3
- package/dist/sdk/FirmaStakingService.js +6 -6
- package/dist/sdk/FirmaTokenService.d.ts +1 -1
- package/dist/sdk/FirmaTokenService.js +5 -5
- package/dist/sdk/FirmaUtil.d.ts +26 -23
- package/dist/sdk/FirmaUtil.js +157 -137
- package/dist/sdk/FirmaWalletService.d.ts +5 -9
- package/dist/sdk/FirmaWalletService.js +86 -52
- package/dist/sdk/firmachain/authz/AuthzQueryClient.js +4 -4
- package/dist/sdk/firmachain/authz/AuthzTxTypes.d.ts +8 -11
- package/dist/sdk/firmachain/authz/AuthzTxTypes.js +6 -10
- package/dist/sdk/firmachain/authz/index.js +5 -1
- package/dist/sdk/firmachain/bank/BankQueryClient.js +5 -5
- package/dist/sdk/firmachain/bank/index.js +5 -1
- package/dist/sdk/firmachain/common/ITxClient.d.ts +3 -3
- package/dist/sdk/firmachain/common/ITxClient.js +25 -83
- package/dist/sdk/firmachain/common/LedgerWallet.d.ts +19 -3
- package/dist/sdk/firmachain/common/LedgerWallet.js +138 -68
- package/dist/sdk/firmachain/common/TendermintQueryClient.js +1 -1
- package/dist/sdk/firmachain/common/TxCommon.d.ts +14 -30
- package/dist/sdk/firmachain/common/accounts.d.ts +1 -1
- package/dist/sdk/firmachain/common/accounts.js +7 -7
- package/dist/sdk/firmachain/common/events.js +2 -2
- package/dist/sdk/firmachain/common/fee.d.ts +2 -2
- package/dist/sdk/firmachain/common/fee.js +4 -2
- package/dist/sdk/firmachain/common/index.d.ts +0 -1
- package/dist/sdk/firmachain/common/index.js +5 -4
- package/dist/sdk/firmachain/common/signing.d.ts +13 -9
- package/dist/sdk/firmachain/common/signing.js +81 -36
- package/dist/sdk/firmachain/common/signingprotobufstargateclient.d.ts +34 -0
- package/dist/sdk/firmachain/common/signingprotobufstargateclient.js +319 -0
- package/dist/sdk/firmachain/common/signingstargateclient.d.ts +21 -105
- package/dist/sdk/firmachain/common/signingstargateclient.js +120 -472
- package/dist/sdk/firmachain/common/{stargateclient.d.ts → stargateClient.d.ts} +11 -60
- package/dist/sdk/firmachain/common/{stargateclient.js → stargateClient.js} +109 -203
- package/dist/sdk/firmachain/{amino → common}/wallet.js +15 -11
- package/dist/sdk/firmachain/contract/ContractQueryClient.js +3 -3
- package/dist/sdk/firmachain/contract/ContractTxTypes.d.ts +6 -6
- package/dist/sdk/firmachain/contract/index.js +5 -1
- package/dist/sdk/firmachain/cosmwasm/CosmWasmQueryClient.js +9 -9
- package/dist/sdk/firmachain/cosmwasm/index.js +5 -1
- package/dist/sdk/firmachain/distribution/DistributionQueryClient.js +6 -6
- package/dist/sdk/firmachain/distribution/index.js +5 -1
- package/dist/sdk/firmachain/feegrant/FeeGrantQueryClient.js +3 -3
- package/dist/sdk/firmachain/feegrant/FeeGrantTxTypes.d.ts +4 -45
- package/dist/sdk/firmachain/feegrant/FeeGrantTxTypes.js +3 -82
- package/dist/sdk/firmachain/feegrant/index.js +5 -1
- package/dist/sdk/firmachain/google/protobuf/any.d.ts +3 -3
- package/dist/sdk/firmachain/google/protobuf/descriptor.d.ts +29 -29
- package/dist/sdk/firmachain/google/protobuf/duration.d.ts +3 -3
- package/dist/sdk/firmachain/gov/GovQueryClient.js +3 -3
- package/dist/sdk/firmachain/gov/index.js +5 -1
- package/dist/sdk/firmachain/ibc/IbcQueryClient.js +2 -2
- package/dist/sdk/firmachain/ibc/index.js +5 -1
- package/dist/sdk/firmachain/mint/MintQueryClient.js +1 -1
- package/dist/sdk/firmachain/mint/index.js +5 -1
- package/dist/sdk/firmachain/nft/NftQueryClient.js +1 -1
- package/dist/sdk/firmachain/nft/NftTxTypes.d.ts +8 -8
- package/dist/sdk/firmachain/nft/index.js +5 -1
- package/dist/sdk/firmachain/slashing/SlashingQueryClient.js +1 -1
- package/dist/sdk/firmachain/slashing/index.js +5 -1
- package/dist/sdk/firmachain/staking/StakingQueryClient.d.ts +2 -2
- package/dist/sdk/firmachain/staking/StakingQueryClient.js +10 -9
- package/dist/sdk/firmachain/staking/index.js +5 -1
- package/dist/sdk/firmachain/token/TokenQueryClient.js +1 -1
- package/dist/sdk/firmachain/token/TokenTxTypes.d.ts +11 -11
- package/dist/sdk/firmachain/token/TokenTxTypes.js +1 -1
- package/dist/sdk/firmachain/token/index.js +5 -1
- package/dist/test/00.wallet.test.js +4 -4
- package/dist/test/01.contract_tx.test.js +5 -5
- package/dist/test/02.contract_query.test.js +15 -15
- package/dist/test/03.contract_scenario.test.js +28 -28
- package/dist/test/04.bank_tx.test.js +4 -4
- package/dist/test/05.bank_query.test.js +9 -9
- package/dist/test/06.feegrant_tx.test.js +59 -35
- package/dist/test/07.feegrant_query.test.js +18 -15
- package/dist/test/08.gas_estimate.test.js +110 -70
- package/dist/test/09.ipfs.test.js +4 -4
- package/dist/test/10.nft_tx.test.js +7 -7
- package/dist/test/11.nft_query.test.js +9 -9
- package/dist/test/12.staking_tx.test.js +27 -15
- package/dist/test/13.staking_query.test.js +20 -20
- package/dist/test/14.distribution_tx.test.js +8 -8
- package/dist/test/15.distribution_query.test.js +15 -15
- package/dist/test/16.gov_tx.test.js +17 -17
- package/dist/test/17.gov_query.test.js +19 -19
- package/dist/test/18.util.test.js +105 -63
- package/dist/test/19.chain.test.js +38 -38
- package/dist/test/20.slashing_query.test.js +25 -25
- package/dist/test/21.token_tx.test.js +6 -6
- package/dist/test/22.token_query.test.js +4 -4
- package/dist/test/23.authz_tx.test.js +77 -47
- package/dist/test/24.authz_query.test.js +66 -67
- package/dist/test/25.cosmwasm_tx.test.js +7 -7
- package/dist/test/26.cosmwasm_query.test.js +127 -59
- package/dist/test/{27.arbitary_sign.test.js → 27.arbitrary_sign.test.js} +41 -40
- package/dist/test/28.ibc_tx.test.js +8 -8
- package/dist/test/29.mint_query.test.js +2 -2
- package/dist/test/30.cw20_tx.test.js +20 -20
- package/dist/test/31.cw20_query.test.js +24 -24
- package/dist/test/32.cw721_tx.test.js +19 -19
- package/dist/test/33.cw721_query.test.js +32 -32
- package/dist/test/34.cw_bridge_tx.test.js +19 -19
- package/dist/test/35.cw_bridge_tx_low.test.js +13 -13
- package/dist/test/36.cw_bridge_query.test.js +20 -20
- package/dist/test/37.cw_marketplace_tx.test.js +32 -32
- package/dist/test/38.cw_marketplace_query.test.js +2 -2
- package/dist/test/config_test.d.ts +2 -2
- package/dist/test/config_test.js +22 -5
- package/package.json +9 -10
- package/dist/sdk/firmachain/amino/addresses.d.ts +0 -5
- package/dist/sdk/firmachain/amino/addresses.js +0 -46
- package/dist/sdk/firmachain/amino/aminomsgs.d.ts +0 -291
- package/dist/sdk/firmachain/amino/aminomsgs.js +0 -81
- package/dist/sdk/firmachain/amino/aminotypes.d.ts +0 -22
- package/dist/sdk/firmachain/amino/aminotypes.js +0 -538
- package/dist/sdk/firmachain/amino/coins.d.ts +0 -42
- package/dist/sdk/firmachain/amino/coins.js +0 -90
- package/dist/sdk/firmachain/amino/encoding.d.ts +0 -33
- package/dist/sdk/firmachain/amino/encoding.js +0 -252
- package/dist/sdk/firmachain/amino/multisig.d.ts +0 -10
- package/dist/sdk/firmachain/amino/multisig.js +0 -42
- package/dist/sdk/firmachain/amino/pubkeys.d.ts +0 -47
- package/dist/sdk/firmachain/amino/pubkeys.js +0 -29
- package/dist/sdk/firmachain/amino/signature.d.ts +0 -16
- package/dist/sdk/firmachain/amino/signature.js +0 -36
- package/dist/sdk/firmachain/amino/signdoc.d.ts +0 -44
- package/dist/sdk/firmachain/amino/signdoc.js +0 -68
- package/dist/sdk/firmachain/amino/signer.d.ts +0 -33
- package/dist/sdk/firmachain/amino/signer.js +0 -2
- package/dist/sdk/firmachain/amino/stdtx.d.ts +0 -15
- package/dist/sdk/firmachain/amino/stdtx.js +0 -17
- package/dist/sdk/firmachain/common/LedgerSigningStargateClient.d.ts +0 -22
- package/dist/sdk/firmachain/common/LedgerSigningStargateClient.js +0 -170
- package/dist/sdk/firmachain/common/aminotypes.d.ts +0 -19
- package/dist/sdk/firmachain/common/aminotypes.js +0 -74
- package/dist/sdk/firmachain/common/modules/auth/queries.d.ts +0 -15
- package/dist/sdk/firmachain/common/modules/auth/queries.js +0 -64
- package/dist/sdk/firmachain/common/modules/authz/aminomessages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/authz/aminomessages.js +0 -15
- package/dist/sdk/firmachain/common/modules/authz/messages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/authz/messages.js +0 -9
- package/dist/sdk/firmachain/common/modules/authz/queries.d.ts +0 -10
- package/dist/sdk/firmachain/common/modules/authz/queries.js +0 -88
- package/dist/sdk/firmachain/common/modules/bank/aminomessages.d.ts +0 -35
- package/dist/sdk/firmachain/common/modules/bank/aminomessages.js +0 -85
- package/dist/sdk/firmachain/common/modules/bank/messages.d.ts +0 -8
- package/dist/sdk/firmachain/common/modules/bank/messages.js +0 -12
- package/dist/sdk/firmachain/common/modules/bank/queries.d.ts +0 -15
- package/dist/sdk/firmachain/common/modules/bank/queries.js +0 -128
- package/dist/sdk/firmachain/common/modules/crisis/aminomessages.d.ts +0 -14
- package/dist/sdk/firmachain/common/modules/crisis/aminomessages.js +0 -11
- package/dist/sdk/firmachain/common/modules/distribution/aminomessages.d.ts +0 -44
- package/dist/sdk/firmachain/common/modules/distribution/aminomessages.js +0 -113
- package/dist/sdk/firmachain/common/modules/distribution/messages.d.ts +0 -8
- package/dist/sdk/firmachain/common/modules/distribution/messages.js +0 -15
- package/dist/sdk/firmachain/common/modules/distribution/queries.d.ts +0 -16
- package/dist/sdk/firmachain/common/modules/distribution/queries.js +0 -171
- package/dist/sdk/firmachain/common/modules/evidence/aminomessages.d.ts +0 -18
- package/dist/sdk/firmachain/common/modules/evidence/aminomessages.js +0 -11
- package/dist/sdk/firmachain/common/modules/feegrant/aminomessages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/feegrant/aminomessages.js +0 -14
- package/dist/sdk/firmachain/common/modules/feegrant/messages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/feegrant/messages.js +0 -8
- package/dist/sdk/firmachain/common/modules/feegrant/queries.d.ts +0 -9
- package/dist/sdk/firmachain/common/modules/feegrant/queries.js +0 -81
- package/dist/sdk/firmachain/common/modules/gov/aminomessages.d.ts +0 -79
- package/dist/sdk/firmachain/common/modules/gov/aminomessages.js +0 -152
- package/dist/sdk/firmachain/common/modules/gov/messages.d.ts +0 -29
- package/dist/sdk/firmachain/common/modules/gov/messages.js +0 -39
- package/dist/sdk/firmachain/common/modules/gov/queries.d.ts +0 -19
- package/dist/sdk/firmachain/common/modules/gov/queries.js +0 -160
- package/dist/sdk/firmachain/common/modules/group/aminomessages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/group/aminomessages.js +0 -8
- package/dist/sdk/firmachain/common/modules/group/messages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/group/messages.js +0 -28
- package/dist/sdk/firmachain/common/modules/ibc/aminomessages.d.ts +0 -38
- package/dist/sdk/firmachain/common/modules/ibc/aminomessages.js +0 -55
- package/dist/sdk/firmachain/common/modules/ibc/messages.d.ts +0 -8
- package/dist/sdk/firmachain/common/modules/ibc/messages.js +0 -32
- package/dist/sdk/firmachain/common/modules/ibc/queries.d.ts +0 -58
- package/dist/sdk/firmachain/common/modules/ibc/queries.js +0 -576
- package/dist/sdk/firmachain/common/modules/index.d.ts +0 -32
- package/dist/sdk/firmachain/common/modules/index.js +0 -101
- package/dist/sdk/firmachain/common/modules/mint/queries.d.ts +0 -21
- package/dist/sdk/firmachain/common/modules/mint/queries.js +0 -95
- package/dist/sdk/firmachain/common/modules/slashing/aminomessages.d.ts +0 -12
- package/dist/sdk/firmachain/common/modules/slashing/aminomessages.js +0 -11
- package/dist/sdk/firmachain/common/modules/slashing/queries.d.ts +0 -10
- package/dist/sdk/firmachain/common/modules/slashing/queries.js +0 -88
- package/dist/sdk/firmachain/common/modules/staking/aminomessages.d.ts +0 -112
- package/dist/sdk/firmachain/common/modules/staking/aminomessages.js +0 -234
- package/dist/sdk/firmachain/common/modules/staking/messages.d.ts +0 -33
- package/dist/sdk/firmachain/common/modules/staking/messages.js +0 -37
- package/dist/sdk/firmachain/common/modules/staking/queries.d.ts +0 -23
- package/dist/sdk/firmachain/common/modules/staking/queries.js +0 -242
- package/dist/sdk/firmachain/common/modules/tx/queries.d.ts +0 -11
- package/dist/sdk/firmachain/common/modules/tx/queries.js +0 -103
- package/dist/sdk/firmachain/common/modules/vesting/aminomessages.d.ts +0 -16
- package/dist/sdk/firmachain/common/modules/vesting/aminomessages.js +0 -56
- package/dist/sdk/firmachain/common/modules/vesting/messages.d.ts +0 -2
- package/dist/sdk/firmachain/common/modules/vesting/messages.js +0 -7
- package/dist/sdk/firmachain/common/queryclient/index.d.ts +0 -2
- package/dist/sdk/firmachain/common/queryclient/index.js +0 -10
- package/dist/sdk/firmachain/common/queryclient/queryclient.d.ts +0 -75
- package/dist/sdk/firmachain/common/queryclient/queryclient.js +0 -157
- package/dist/sdk/firmachain/common/queryclient/utils.d.ts +0 -33
- package/dist/sdk/firmachain/common/queryclient/utils.js +0 -101
- package/dist/sdk/firmachain/common/search.d.ts +0 -10
- package/dist/sdk/firmachain/common/search.js +0 -7
- package/dist/sdk/firmachain/google/protobuf/timestamp.d.ts +0 -110
- package/dist/sdk/firmachain/google/protobuf/timestamp.js +0 -108
- /package/dist/sdk/firmachain/{amino → common}/paths.d.ts +0 -0
- /package/dist/sdk/firmachain/{amino → common}/paths.js +0 -0
- /package/dist/sdk/firmachain/{amino → common}/wallet.d.ts +0 -0
- /package/dist/test/{27.arbitary_sign.test.d.ts → 27.arbitrary_sign.test.d.ts} +0 -0
package/dist/sdk/FirmaUtil.js
CHANGED
|
@@ -25,7 +25,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
25
25
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
26
|
function step(op) {
|
|
27
27
|
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (_) try {
|
|
28
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
29
29
|
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
30
|
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
31
|
switch (op[0]) {
|
|
@@ -62,10 +62,14 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
62
62
|
}
|
|
63
63
|
return ar;
|
|
64
64
|
};
|
|
65
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
66
|
-
for (var i = 0,
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
66
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
67
|
+
if (ar || !(i in from)) {
|
|
68
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
69
|
+
ar[i] = from[i];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
69
73
|
};
|
|
70
74
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
71
75
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -74,18 +78,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
74
78
|
exports.getSignAndBroadcastOption = exports.DefaultTxMisc = exports.FirmaUtil = void 0;
|
|
75
79
|
var fs_1 = require("fs");
|
|
76
80
|
var tx_1 = require("cosmjs-types/cosmos/tx/v1beta1/tx");
|
|
77
|
-
var
|
|
81
|
+
var axios_1 = __importDefault(require("axios"));
|
|
82
|
+
var duration_1 = require("cosmjs-types/google/protobuf/duration");
|
|
78
83
|
var encoding_1 = require("@cosmjs/encoding");
|
|
79
|
-
var LedgerSigningStargateClient_1 = require("./firmachain/common/LedgerSigningStargateClient");
|
|
80
|
-
var encoding_2 = require("@cosmjs/encoding");
|
|
81
|
-
var crypto_1 = require("@cosmjs/crypto");
|
|
82
|
-
var amino_1 = require("@cosmjs/amino");
|
|
83
84
|
var proto_signing_1 = require("@cosmjs/proto-signing");
|
|
84
|
-
var
|
|
85
|
-
var any_1 = require("
|
|
86
|
-
var long_1 = __importDefault(require("long"));
|
|
87
|
-
var bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
85
|
+
var crypto_1 = require("@cosmjs/crypto");
|
|
86
|
+
var any_1 = require("cosmjs-types/google/protobuf/any");
|
|
88
87
|
var CommonTxClient_1 = require("./firmachain/common/CommonTxClient");
|
|
88
|
+
var TendermintQueryClient_1 = require("./firmachain/common/TendermintQueryClient");
|
|
89
|
+
var bignumber_js_1 = require("bignumber.js");
|
|
90
|
+
var tendermint_rpc_1 = require("@cosmjs/tendermint-rpc");
|
|
91
|
+
var signingprotobufstargateclient_1 = require("./firmachain/common/signingprotobufstargateclient");
|
|
92
|
+
var signingstargateclient_1 = require("./firmachain/common/signingstargateclient");
|
|
93
|
+
var coin_1 = require("cosmjs-types/cosmos/base/v1beta1/coin");
|
|
89
94
|
var CryptoJS = require("crypto-js");
|
|
90
95
|
var sha1 = require("crypto-js/sha1");
|
|
91
96
|
var sha256 = require("crypto-js/sha256");
|
|
@@ -104,9 +109,17 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
104
109
|
txMisc.gas = FirmaUtil.config.defaultGas;
|
|
105
110
|
if (txMisc.feeGranter == null)
|
|
106
111
|
txMisc.feeGranter = "";
|
|
107
|
-
var gasFeeAmount =
|
|
108
|
-
|
|
109
|
-
|
|
112
|
+
var gasFeeAmount = coin_1.Coin.fromPartial({
|
|
113
|
+
denom: denom,
|
|
114
|
+
amount: txMisc.fee.toString(),
|
|
115
|
+
});
|
|
116
|
+
var fee = tx_1.Fee.fromPartial({
|
|
117
|
+
amount: [gasFeeAmount],
|
|
118
|
+
gasLimit: BigInt(txMisc.gas),
|
|
119
|
+
granter: txMisc.feeGranter,
|
|
120
|
+
payer: "",
|
|
121
|
+
});
|
|
122
|
+
return { fee: fee, memo: txMisc.memo };
|
|
110
123
|
};
|
|
111
124
|
FirmaUtil.getUTokenStringFromTokenStr = function (tokenAmount, decimal) {
|
|
112
125
|
var fct = Number.parseFloat(tokenAmount);
|
|
@@ -132,24 +145,10 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
132
145
|
};
|
|
133
146
|
FirmaUtil.arrayBufferToBase64 = function (buffer) {
|
|
134
147
|
return Buffer.from(buffer).toString("base64");
|
|
135
|
-
/*var binary = '';
|
|
136
|
-
var bytes = new Uint8Array(buffer);
|
|
137
|
-
var len = bytes.byteLength;
|
|
138
|
-
for (var i = 0; i < len; i++) {
|
|
139
|
-
binary += String.fromCharCode(bytes[i]);
|
|
140
|
-
}
|
|
141
|
-
return btoa(binary);*/
|
|
142
148
|
};
|
|
143
149
|
FirmaUtil.base64ToArrayBuffer = function (base64) {
|
|
144
150
|
var buffer = Buffer.from(base64, "base64");
|
|
145
151
|
return new Uint8Array(buffer);
|
|
146
|
-
/* var binary_string = atob(base64);
|
|
147
|
-
var len = binary_string.length;
|
|
148
|
-
var bytes = new Uint8Array(len);
|
|
149
|
-
for (var i = 0; i < len; i++) {
|
|
150
|
-
bytes[i] = binary_string.charCodeAt(i);
|
|
151
|
-
}
|
|
152
|
-
return bytes;*/
|
|
153
152
|
};
|
|
154
153
|
FirmaUtil.getTokenStringFromUToken = function (uTokenAmount, decimal) {
|
|
155
154
|
var fixedUTokenAmount = Math.floor(uTokenAmount);
|
|
@@ -200,7 +199,7 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
200
199
|
FirmaUtil.isValidAddress = function (address) {
|
|
201
200
|
try {
|
|
202
201
|
// eslint-disable-next-line @typescript-eslint/no-unused-expressions
|
|
203
|
-
encoding_1.fromBech32(address).data;
|
|
202
|
+
(0, encoding_1.fromBech32)(address).data;
|
|
204
203
|
return true;
|
|
205
204
|
}
|
|
206
205
|
catch (e) {
|
|
@@ -208,64 +207,65 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
208
207
|
return false;
|
|
209
208
|
};
|
|
210
209
|
FirmaUtil.buf2hex = function (buffer) {
|
|
211
|
-
return __spreadArray([], __read(new Uint8Array(buffer))).map(function (x) { return x.toString(16).padStart(2, '0'); })
|
|
210
|
+
return __spreadArray([], __read(new Uint8Array(buffer)), false).map(function (x) { return x.toString(16).padStart(2, '0'); })
|
|
212
211
|
.join('');
|
|
213
212
|
};
|
|
214
213
|
// for evm address support
|
|
215
214
|
FirmaUtil.getHexAddressFromAddress = function (address) {
|
|
216
|
-
var data = encoding_1.fromBech32(address).data;
|
|
215
|
+
var data = (0, encoding_1.fromBech32)(address).data;
|
|
217
216
|
return "0x" + FirmaUtil.buf2hex(data);
|
|
218
217
|
};
|
|
219
218
|
FirmaUtil.getValOperAddressFromAccAddress = function (address) {
|
|
220
|
-
var data = encoding_1.fromBech32(address).data;
|
|
221
|
-
return encoding_1.toBech32(FirmaUtil.config.prefix + "valoper", data);
|
|
219
|
+
var data = (0, encoding_1.fromBech32)(address).data;
|
|
220
|
+
return (0, encoding_1.toBech32)(FirmaUtil.config.prefix + "valoper", data);
|
|
222
221
|
};
|
|
223
222
|
FirmaUtil.getValConsAddressFromAccAddress = function (consensusPubkey) {
|
|
224
|
-
var ed25519PubkeyRaw =
|
|
225
|
-
var addressData = crypto_1.sha256(ed25519PubkeyRaw).slice(0, 20);
|
|
226
|
-
return encoding_1.toBech32(FirmaUtil.config.prefix + "valcons", addressData);
|
|
223
|
+
var ed25519PubkeyRaw = (0, encoding_1.fromBase64)(consensusPubkey);
|
|
224
|
+
var addressData = (0, crypto_1.sha256)(ed25519PubkeyRaw).slice(0, 20);
|
|
225
|
+
return (0, encoding_1.toBech32)(FirmaUtil.config.prefix + "valcons", addressData);
|
|
227
226
|
};
|
|
228
227
|
FirmaUtil.getAccAddressFromValOperAddress = function (address) {
|
|
229
|
-
var data = encoding_1.fromBech32(address).data;
|
|
230
|
-
return encoding_1.toBech32(FirmaUtil.config.prefix, data);
|
|
228
|
+
var data = (0, encoding_1.fromBech32)(address).data;
|
|
229
|
+
return (0, encoding_1.toBech32)(FirmaUtil.config.prefix, data);
|
|
231
230
|
};
|
|
232
|
-
FirmaUtil.
|
|
231
|
+
FirmaUtil.estimateGas = function (txRaw) {
|
|
233
232
|
return __awaiter(this, void 0, void 0, function () {
|
|
234
|
-
var
|
|
233
|
+
var encodedTx, hexTx, queryClient, gas, multiplier, error_1;
|
|
235
234
|
return __generator(this, function (_a) {
|
|
236
235
|
switch (_a.label) {
|
|
237
236
|
case 0:
|
|
238
|
-
_a.trys.push([0,
|
|
239
|
-
|
|
237
|
+
_a.trys.push([0, 2, , 3]);
|
|
238
|
+
encodedTx = Uint8Array.from(tx_1.TxRaw.encode(txRaw).finish());
|
|
239
|
+
hexTx = "0x".concat(Buffer.from(encodedTx).toString("hex"));
|
|
240
|
+
queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
|
|
241
|
+
return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
|
|
240
242
|
case 1:
|
|
241
|
-
|
|
242
|
-
|
|
243
|
+
gas = _a.sent();
|
|
244
|
+
multiplier = 1.15;
|
|
245
|
+
return [2 /*return*/, Math.ceil(gas * multiplier)];
|
|
243
246
|
case 2:
|
|
244
|
-
sequence = _a.sent();
|
|
245
|
-
return [2 /*return*/, sequence];
|
|
246
|
-
case 3:
|
|
247
247
|
error_1 = _a.sent();
|
|
248
248
|
FirmaUtil.printLog(error_1);
|
|
249
249
|
throw error_1;
|
|
250
|
-
case
|
|
250
|
+
case 3: return [2 /*return*/];
|
|
251
251
|
}
|
|
252
252
|
});
|
|
253
253
|
});
|
|
254
254
|
};
|
|
255
|
-
FirmaUtil.
|
|
255
|
+
FirmaUtil.estimateGasRaw = function (txRaw) {
|
|
256
256
|
return __awaiter(this, void 0, void 0, function () {
|
|
257
257
|
var encodedTx, hexTx, queryClient, gas, multiplier, error_2;
|
|
258
258
|
return __generator(this, function (_a) {
|
|
259
259
|
switch (_a.label) {
|
|
260
260
|
case 0:
|
|
261
261
|
_a.trys.push([0, 2, , 3]);
|
|
262
|
-
encodedTx = Uint8Array.from(
|
|
263
|
-
hexTx = "0x"
|
|
262
|
+
encodedTx = Uint8Array.from(txRaw);
|
|
263
|
+
hexTx = "0x".concat(Buffer.from(encodedTx).toString("hex"));
|
|
264
264
|
queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
|
|
265
265
|
return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
|
|
266
266
|
case 1:
|
|
267
267
|
gas = _a.sent();
|
|
268
|
-
multiplier = 1.
|
|
268
|
+
multiplier = 1.25;
|
|
269
269
|
return [2 /*return*/, Math.ceil(gas * multiplier)];
|
|
270
270
|
case 2:
|
|
271
271
|
error_2 = _a.sent();
|
|
@@ -276,51 +276,75 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
276
276
|
});
|
|
277
277
|
});
|
|
278
278
|
};
|
|
279
|
-
FirmaUtil.
|
|
279
|
+
FirmaUtil.getAccountInfo = function (address) {
|
|
280
280
|
return __awaiter(this, void 0, void 0, function () {
|
|
281
|
-
var
|
|
281
|
+
var res, json, baseAccount, result, error_3;
|
|
282
282
|
return __generator(this, function (_a) {
|
|
283
283
|
switch (_a.label) {
|
|
284
284
|
case 0:
|
|
285
285
|
_a.trys.push([0, 2, , 3]);
|
|
286
|
-
|
|
287
|
-
hexTx = "0x" + Buffer.from(encodedTx).toString("hex");
|
|
288
|
-
queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
|
|
289
|
-
return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
|
|
286
|
+
return [4 /*yield*/, axios_1.default.get("".concat(FirmaUtil.config.restApiAddress, "/cosmos/auth/v1beta1/accounts/").concat(address))];
|
|
290
287
|
case 1:
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
288
|
+
res = _a.sent();
|
|
289
|
+
if (res.status !== 200) {
|
|
290
|
+
throw new Error("HTTP ".concat(res.status, ": ").concat(res.statusText));
|
|
291
|
+
}
|
|
292
|
+
json = res.data;
|
|
293
|
+
baseAccount = json.account.base_account || json.account;
|
|
294
|
+
result = {
|
|
295
|
+
account_number: baseAccount.account_number,
|
|
296
|
+
sequence: baseAccount.sequence,
|
|
297
|
+
};
|
|
298
|
+
return [2 /*return*/, result];
|
|
294
299
|
case 2:
|
|
295
300
|
error_3 = _a.sent();
|
|
296
|
-
FirmaUtil.printLog(error_3);
|
|
297
301
|
throw error_3;
|
|
298
302
|
case 3: return [2 /*return*/];
|
|
299
303
|
}
|
|
300
304
|
});
|
|
301
305
|
});
|
|
302
306
|
};
|
|
307
|
+
FirmaUtil.getChainId = function () {
|
|
308
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
309
|
+
var res, json;
|
|
310
|
+
return __generator(this, function (_a) {
|
|
311
|
+
switch (_a.label) {
|
|
312
|
+
case 0: return [4 /*yield*/, axios_1.default.get("".concat(FirmaUtil.config.restApiAddress, "/cosmos/base/tendermint/v1beta1/node_info"))];
|
|
313
|
+
case 1:
|
|
314
|
+
res = _a.sent();
|
|
315
|
+
json = res.data;
|
|
316
|
+
return [2 /*return*/, json.default_node_info.network];
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
});
|
|
320
|
+
};
|
|
303
321
|
FirmaUtil.printLog = function (log) {
|
|
304
322
|
if (FirmaUtil.config.isShowLog === false)
|
|
305
323
|
return;
|
|
306
|
-
console.log("[FirmaSDK] "
|
|
324
|
+
console.log("[FirmaSDK] ".concat(log));
|
|
307
325
|
};
|
|
326
|
+
/**
|
|
327
|
+
* ADR-036 protobuf arbitrary signing (wrapper for protobufArbitrarySign)
|
|
328
|
+
*
|
|
329
|
+
* @param wallet - FirmaWalletService instance
|
|
330
|
+
* @param data - Arbitrary data string to sign
|
|
331
|
+
* @returns ArbitraryVerifyData for verification
|
|
332
|
+
*/
|
|
308
333
|
FirmaUtil.experimentalAdr36Sign = function (wallet, data) {
|
|
309
334
|
return __awaiter(this, void 0, void 0, function () {
|
|
310
|
-
var
|
|
335
|
+
var client, address, dataBytes, error_4;
|
|
311
336
|
return __generator(this, function (_a) {
|
|
312
337
|
switch (_a.label) {
|
|
313
338
|
case 0:
|
|
314
339
|
_a.trys.push([0, 4, , 5]);
|
|
315
|
-
|
|
316
|
-
return [4 /*yield*/, signingstargateclient_1.SigningStargateClient.connectWithSigner(FirmaUtil.config.rpcAddress, wallet.getRawAminoWallet(), { registry: registry })];
|
|
340
|
+
return [4 /*yield*/, signingprotobufstargateclient_1.SigningProtobufStargateClient.connectWithSigner(FirmaUtil.config.rpcAddress, wallet.getRawWallet(), {})];
|
|
317
341
|
case 1:
|
|
318
342
|
client = _a.sent();
|
|
319
343
|
return [4 /*yield*/, wallet.getAddress()];
|
|
320
344
|
case 2:
|
|
321
345
|
address = _a.sent();
|
|
322
|
-
|
|
323
|
-
return [4 /*yield*/, client.experimentalAdr36Sign(address,
|
|
346
|
+
dataBytes = Buffer.from(data, 'utf8');
|
|
347
|
+
return [4 /*yield*/, client.experimentalAdr36Sign(address, dataBytes)];
|
|
324
348
|
case 3: return [2 /*return*/, _a.sent()];
|
|
325
349
|
case 4:
|
|
326
350
|
error_4 = _a.sent();
|
|
@@ -331,6 +355,13 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
331
355
|
});
|
|
332
356
|
});
|
|
333
357
|
};
|
|
358
|
+
/**
|
|
359
|
+
* ADR-036 protobuf arbitrary signature verification (wrapper for protobufArbitraryVerify)
|
|
360
|
+
*
|
|
361
|
+
* @param data - ArbitraryVerifyData to verify
|
|
362
|
+
* @param checkMsg - Original message that was signed
|
|
363
|
+
* @returns boolean indicating if the signature is valid
|
|
364
|
+
*/
|
|
334
365
|
FirmaUtil.experimentalAdr36Verify = function (data, checkMsg) {
|
|
335
366
|
return __awaiter(this, void 0, void 0, function () {
|
|
336
367
|
var error_5;
|
|
@@ -338,27 +369,65 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
338
369
|
switch (_a.label) {
|
|
339
370
|
case 0:
|
|
340
371
|
_a.trys.push([0, 2, , 3]);
|
|
341
|
-
return [4 /*yield*/,
|
|
372
|
+
return [4 /*yield*/, signingprotobufstargateclient_1.SigningProtobufStargateClient.experimentalAdr36Verify(data, checkMsg)];
|
|
342
373
|
case 1: return [2 /*return*/, _a.sent()];
|
|
343
374
|
case 2:
|
|
344
375
|
error_5 = _a.sent();
|
|
345
376
|
FirmaUtil.printLog(error_5);
|
|
346
|
-
|
|
377
|
+
return [2 /*return*/, false];
|
|
347
378
|
case 3: return [2 /*return*/];
|
|
348
379
|
}
|
|
349
380
|
});
|
|
350
381
|
});
|
|
351
382
|
};
|
|
383
|
+
FirmaUtil.makeSignDoc = function (signerAddress, pubkey, messages, txMisc) {
|
|
384
|
+
if (txMisc === void 0) { txMisc = exports.DefaultTxMisc; }
|
|
385
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
386
|
+
var result, chainID, serverUrl, registry, fee;
|
|
387
|
+
return __generator(this, function (_a) {
|
|
388
|
+
switch (_a.label) {
|
|
389
|
+
case 0:
|
|
390
|
+
result = FirmaUtil.getSignAndBroadcastOption(FirmaUtil.config.denom, txMisc);
|
|
391
|
+
chainID = FirmaUtil.config.chainID;
|
|
392
|
+
serverUrl = FirmaUtil.config.rpcAddress;
|
|
393
|
+
registry = CommonTxClient_1.CommonTxClient.getRegistry();
|
|
394
|
+
fee = {
|
|
395
|
+
amount: __spreadArray([], __read(result.fee.amount), false),
|
|
396
|
+
gasLimit: result.fee.gasLimit,
|
|
397
|
+
granter: result.fee.granter || "",
|
|
398
|
+
payer: ""
|
|
399
|
+
};
|
|
400
|
+
return [4 /*yield*/, signingstargateclient_1.SigningStargateClient.makeSignDocForSend(signerAddress, pubkey, messages, fee, result.memo, serverUrl, chainID, registry)];
|
|
401
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
402
|
+
}
|
|
403
|
+
});
|
|
404
|
+
});
|
|
405
|
+
};
|
|
406
|
+
FirmaUtil.makeSignDocWithStringify = function (signerAddress, pubkey, messages, txMisc) {
|
|
407
|
+
if (txMisc === void 0) { txMisc = exports.DefaultTxMisc; }
|
|
408
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
409
|
+
var signDoc, stringSignDoc;
|
|
410
|
+
return __generator(this, function (_a) {
|
|
411
|
+
switch (_a.label) {
|
|
412
|
+
case 0: return [4 /*yield*/, this.makeSignDoc(signerAddress, pubkey, messages, txMisc)];
|
|
413
|
+
case 1:
|
|
414
|
+
signDoc = _a.sent();
|
|
415
|
+
stringSignDoc = this.stringifySignDocValues(signDoc);
|
|
416
|
+
return [2 /*return*/, stringSignDoc];
|
|
417
|
+
}
|
|
418
|
+
});
|
|
419
|
+
});
|
|
420
|
+
};
|
|
352
421
|
FirmaUtil.recoverSigningAddress = function (signature, hash, recoveryIndex) {
|
|
353
422
|
return __awaiter(this, void 0, void 0, function () {
|
|
354
|
-
var sig, extendedSig, recoveredPubKey, _a;
|
|
423
|
+
var sig, extendedSig, recoveredPubKey, compressedPubkey, rawAddress, _a;
|
|
355
424
|
return __generator(this, function (_b) {
|
|
356
425
|
switch (_b.label) {
|
|
357
426
|
case 0:
|
|
358
427
|
if (recoveryIndex > 3) {
|
|
359
428
|
throw new Error('Invalid recovery index');
|
|
360
429
|
}
|
|
361
|
-
sig = crypto_1.Secp256k1Signature.fromFixedLength(
|
|
430
|
+
sig = crypto_1.Secp256k1Signature.fromFixedLength((0, encoding_1.fromBase64)(signature));
|
|
362
431
|
extendedSig = new crypto_1.ExtendedSecp256k1Signature(sig.r(), sig.s(), recoveryIndex);
|
|
363
432
|
_b.label = 1;
|
|
364
433
|
case 1:
|
|
@@ -366,10 +435,9 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
366
435
|
return [4 /*yield*/, crypto_1.Secp256k1.recoverPubkey(extendedSig, hash)];
|
|
367
436
|
case 2:
|
|
368
437
|
recoveredPubKey = _b.sent();
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
}, 'firma')];
|
|
438
|
+
compressedPubkey = crypto_1.Secp256k1.compressPubkey(recoveredPubKey);
|
|
439
|
+
rawAddress = (0, tendermint_rpc_1.rawSecp256k1PubkeyToRawAddress)(compressedPubkey);
|
|
440
|
+
return [2 /*return*/, (0, encoding_1.toBech32)('firma', rawAddress)];
|
|
373
441
|
case 3:
|
|
374
442
|
_a = _b.sent();
|
|
375
443
|
return [2 /*return*/, null];
|
|
@@ -404,48 +472,16 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
404
472
|
});
|
|
405
473
|
};
|
|
406
474
|
FirmaUtil.verifyDirectSignature = function (address, signature, signDoc) {
|
|
407
|
-
var messageHash = crypto_1.sha256(proto_signing_1.makeSignBytes(signDoc));
|
|
475
|
+
var messageHash = (0, crypto_1.sha256)((0, proto_signing_1.makeSignBytes)(signDoc));
|
|
408
476
|
return this.verifySignature(address, signature, messageHash);
|
|
409
477
|
};
|
|
410
478
|
;
|
|
411
479
|
FirmaUtil.parseSignDocValues = function (signDocString) {
|
|
412
480
|
var signDoc = JSON.parse(signDocString);
|
|
413
|
-
return __assign(__assign({}, signDoc), { bodyBytes:
|
|
481
|
+
return __assign(__assign({}, signDoc), { bodyBytes: (0, encoding_1.fromHex)(signDoc.bodyBytes), authInfoBytes: (0, encoding_1.fromHex)(signDoc.authInfoBytes), accountNumber: BigInt(signDoc.accountNumber) });
|
|
414
482
|
};
|
|
415
483
|
FirmaUtil.stringifySignDocValues = function (signDoc) {
|
|
416
|
-
return JSON.stringify(__assign(__assign({}, signDoc), { bodyBytes:
|
|
417
|
-
};
|
|
418
|
-
FirmaUtil.makeSignDoc = function (signerAddress, pubkey, messages, txMisc) {
|
|
419
|
-
if (txMisc === void 0) { txMisc = exports.DefaultTxMisc; }
|
|
420
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
421
|
-
var result, chainID, serverUrl, registry;
|
|
422
|
-
return __generator(this, function (_a) {
|
|
423
|
-
switch (_a.label) {
|
|
424
|
-
case 0:
|
|
425
|
-
result = FirmaUtil.getSignAndBroadcastOption(FirmaUtil.config.denom, txMisc);
|
|
426
|
-
chainID = FirmaUtil.config.chainID;
|
|
427
|
-
serverUrl = FirmaUtil.config.rpcAddress;
|
|
428
|
-
registry = CommonTxClient_1.CommonTxClient.getRegistry();
|
|
429
|
-
return [4 /*yield*/, signingstargateclient_1.SigningStargateClient.makeSignDocForSend(signerAddress, pubkey, messages, result.fee, result.memo, serverUrl, chainID, registry)];
|
|
430
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
431
|
-
}
|
|
432
|
-
});
|
|
433
|
-
});
|
|
434
|
-
};
|
|
435
|
-
FirmaUtil.makeSignDocWithStringify = function (signerAddress, pubkey, messages, txMisc) {
|
|
436
|
-
if (txMisc === void 0) { txMisc = exports.DefaultTxMisc; }
|
|
437
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
438
|
-
var signDoc, stringSignDoc;
|
|
439
|
-
return __generator(this, function (_a) {
|
|
440
|
-
switch (_a.label) {
|
|
441
|
-
case 0: return [4 /*yield*/, this.makeSignDoc(signerAddress, pubkey, messages, txMisc)];
|
|
442
|
-
case 1:
|
|
443
|
-
signDoc = _a.sent();
|
|
444
|
-
stringSignDoc = this.stringifySignDocValues(signDoc);
|
|
445
|
-
return [2 /*return*/, stringSignDoc];
|
|
446
|
-
}
|
|
447
|
-
});
|
|
448
|
-
});
|
|
484
|
+
return JSON.stringify(__assign(__assign({}, signDoc), { bodyBytes: (0, encoding_1.toHex)(signDoc.bodyBytes), authInfoBytes: (0, encoding_1.toHex)(signDoc.authInfoBytes), accountNumber: signDoc.accountNumber.toString() }));
|
|
449
485
|
};
|
|
450
486
|
FirmaUtil.getAnyData = function (registry, message) {
|
|
451
487
|
var anyData = any_1.Any.fromPartial({
|
|
@@ -457,13 +493,6 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
457
493
|
FirmaUtil.getCommonTxClient = function (aliceWallet) {
|
|
458
494
|
return new CommonTxClient_1.CommonTxClient(aliceWallet, FirmaUtil.config.rpcAddress);
|
|
459
495
|
};
|
|
460
|
-
/**
|
|
461
|
-
* Parses a duration string to a Duration object.
|
|
462
|
-
* Supports formats like "336h0m0s", "21d", "1000ms", "1s", "1m", "1h", "1ns", "1µs"/"1us"
|
|
463
|
-
*
|
|
464
|
-
* @param durationStr - Duration string to parse (e.g., "336h0m0s", "21d")
|
|
465
|
-
* @returns Duration object with seconds and nanos fields
|
|
466
|
-
*/
|
|
467
496
|
FirmaUtil.parseDurationString = function (durationStr) {
|
|
468
497
|
if (!durationStr || durationStr.trim() === "") {
|
|
469
498
|
return { seconds: BigInt(0), nanos: 0 };
|
|
@@ -508,7 +537,7 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
508
537
|
}
|
|
509
538
|
}
|
|
510
539
|
if (!hasMatches) {
|
|
511
|
-
throw new Error("Invalid duration format: "
|
|
540
|
+
throw new Error("Invalid duration format: ".concat(durationStr));
|
|
512
541
|
}
|
|
513
542
|
// Convert excess nanos to seconds
|
|
514
543
|
var extraSeconds = Math.floor(totalNanos / 1000000000);
|
|
@@ -522,18 +551,9 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
522
551
|
nanos: Math.floor(finalNanos)
|
|
523
552
|
};
|
|
524
553
|
};
|
|
525
|
-
/**
|
|
526
|
-
* Creates a Duration object from a duration string.
|
|
527
|
-
* This is a convenience method that combines parseDurationString with Duration.fromPartial.
|
|
528
|
-
*
|
|
529
|
-
* @param durationStr - Duration string to parse (e.g., "336h0m0s", "21d")
|
|
530
|
-
* @returns Duration object ready to use with protobuf
|
|
531
|
-
*/
|
|
532
554
|
FirmaUtil.createDurationFromString = function (durationStr) {
|
|
533
555
|
var _a = FirmaUtil.parseDurationString(durationStr), seconds = _a.seconds, nanos = _a.nanos;
|
|
534
|
-
|
|
535
|
-
var Duration = require("./firmachain/google/protobuf/duration").Duration;
|
|
536
|
-
return Duration.fromPartial({
|
|
556
|
+
return duration_1.Duration.fromPartial({
|
|
537
557
|
seconds: seconds,
|
|
538
558
|
nanos: nanos
|
|
539
559
|
});
|
|
@@ -548,13 +568,13 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
548
568
|
FirmaUtil.processCommissionRateAsDecimal = function (commissionRate) {
|
|
549
569
|
var trimmed = commissionRate.trim();
|
|
550
570
|
if (!commissionRate || trimmed === "") {
|
|
551
|
-
throw new Error("Invalid commission rate format: "
|
|
571
|
+
throw new Error("Invalid commission rate format: ".concat(commissionRate));
|
|
552
572
|
}
|
|
553
573
|
if (!/^-?\d+\.?\d*$/.test(trimmed)) {
|
|
554
|
-
throw new Error("Invalid commission rate format: "
|
|
574
|
+
throw new Error("Invalid commission rate format: ".concat(commissionRate));
|
|
555
575
|
}
|
|
556
576
|
// Validates input and creates BigNumber instance
|
|
557
|
-
var commissionRateBN = new bignumber_js_1.
|
|
577
|
+
var commissionRateBN = new bignumber_js_1.BigNumber(trimmed);
|
|
558
578
|
// Checks if it's a valid finite number
|
|
559
579
|
if (!commissionRateBN.isFinite())
|
|
560
580
|
throw new Error("Invalid commission rate format: " + commissionRate);
|
|
@@ -562,9 +582,9 @@ var FirmaUtil = /** @class */ (function () {
|
|
|
562
582
|
if (commissionRateBN.isNegative() || commissionRateBN.isGreaterThan(1))
|
|
563
583
|
throw new Error("Invalid commission rate range. Must be between 0 and 1 inclusive.");
|
|
564
584
|
// Converts to atomics format (multiply by 10^18)
|
|
565
|
-
var atomics = commissionRateBN.multipliedBy(new bignumber_js_1.
|
|
585
|
+
var atomics = commissionRateBN.multipliedBy(new bignumber_js_1.BigNumber(10).pow(18));
|
|
566
586
|
// Returns integer string
|
|
567
|
-
return atomics.integerValue(bignumber_js_1.
|
|
587
|
+
return atomics.integerValue(bignumber_js_1.BigNumber.ROUND_DOWN).toString();
|
|
568
588
|
};
|
|
569
589
|
FirmaUtil.FctDecimal = 6;
|
|
570
590
|
return FirmaUtil;
|
|
@@ -1,27 +1,20 @@
|
|
|
1
|
-
import { DirectSecp256k1Wallet, Registry } from "@cosmjs/proto-signing";
|
|
2
|
-
import { EncodeObject } from "@cosmjs/proto-signing";
|
|
1
|
+
import { DirectSecp256k1Wallet, EncodeObject, Registry } from "@cosmjs/proto-signing";
|
|
3
2
|
import { FirmaConfig } from "./FirmaConfig";
|
|
4
|
-
import { SignAndBroadcastOptions } from "./firmachain/common";
|
|
5
3
|
import { LedgerWalletInterface } from "./firmachain/common/LedgerWallet";
|
|
4
|
+
import { SignAndBroadcastOptions } from "./firmachain/common";
|
|
6
5
|
import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
|
|
7
|
-
import { Secp256k1Wallet } from "@cosmjs/amino";
|
|
8
6
|
export declare class FirmaWalletService {
|
|
9
7
|
private readonly config;
|
|
10
8
|
private mnemonic;
|
|
11
9
|
private privateKey;
|
|
12
10
|
private accountIndex;
|
|
13
|
-
private aminoWallet;
|
|
14
11
|
private wallet;
|
|
15
12
|
private ledger;
|
|
16
13
|
getHdPath(): string;
|
|
17
14
|
getPrefix(): string;
|
|
18
15
|
getRawWallet(): DirectSecp256k1Wallet;
|
|
19
|
-
getRawAminoWallet(): Secp256k1Wallet;
|
|
20
16
|
getPrivateKey(): string;
|
|
21
17
|
getMnemonic(): string;
|
|
22
|
-
isLedger(): boolean;
|
|
23
|
-
initFromLedger(ledger: LedgerWalletInterface): Promise<FirmaWalletService>;
|
|
24
|
-
signLedger(messages: EncodeObject[], option: SignAndBroadcastOptions, registry: Registry): Promise<TxRaw>;
|
|
25
18
|
getPubKey(): Promise<string>;
|
|
26
19
|
getAddress(): Promise<string>;
|
|
27
20
|
constructor(config: FirmaConfig);
|
|
@@ -37,4 +30,7 @@ export declare class FirmaWalletService {
|
|
|
37
30
|
fromMnemonic(mnemonic: string, accountIndex?: number): Promise<FirmaWalletService>;
|
|
38
31
|
fromPrivateKey(privateKey: string): Promise<FirmaWalletService>;
|
|
39
32
|
generateMnemonic(): Promise<string>;
|
|
33
|
+
isLedger(): boolean;
|
|
34
|
+
initFromLedger(ledger: LedgerWalletInterface): Promise<FirmaWalletService>;
|
|
35
|
+
signLedger(messages: EncodeObject[], option: SignAndBroadcastOptions, registry: Registry): Promise<TxRaw>;
|
|
40
36
|
}
|