@firmachain/firma-js 0.2.20 → 0.2.24

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.
Files changed (157) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +136 -136
  3. package/dist/index.d.ts +4 -4
  4. package/dist/index.js +16 -16
  5. package/dist/sdk/FirmaBankService.d.ts +15 -15
  6. package/dist/sdk/FirmaBankService.js +211 -211
  7. package/dist/sdk/FirmaChainService.d.ts +8 -8
  8. package/dist/sdk/FirmaChainService.js +86 -86
  9. package/dist/sdk/FirmaConfig.d.ts +18 -16
  10. package/dist/sdk/FirmaConfig.js +63 -55
  11. package/dist/sdk/FirmaContractService.d.ts +31 -30
  12. package/dist/sdk/FirmaContractService.js +413 -394
  13. package/dist/sdk/FirmaDistributionService.d.ts +31 -31
  14. package/dist/sdk/FirmaDistributionService.js +524 -524
  15. package/dist/sdk/FirmaFeeGrantService.d.ts +21 -21
  16. package/dist/sdk/FirmaFeeGrantService.js +341 -341
  17. package/dist/sdk/FirmaGovService.d.ts +35 -35
  18. package/dist/sdk/FirmaGovService.js +775 -775
  19. package/dist/sdk/FirmaIpfsService.d.ts +12 -12
  20. package/dist/sdk/FirmaIpfsService.js +185 -185
  21. package/dist/sdk/FirmaMobileSDK.d.ts +27 -27
  22. package/dist/sdk/FirmaMobileSDK.js +45 -45
  23. package/dist/sdk/FirmaNftService.d.ts +31 -28
  24. package/dist/sdk/FirmaNftService.js +372 -390
  25. package/dist/sdk/FirmaSDK.d.ts +29 -29
  26. package/dist/sdk/FirmaSDK.js +48 -48
  27. package/dist/sdk/FirmaSlashingService.d.ts +9 -9
  28. package/dist/sdk/FirmaSlashingService.js +105 -105
  29. package/dist/sdk/FirmaStakingService.d.ts +34 -34
  30. package/dist/sdk/FirmaStakingService.js +604 -604
  31. package/dist/sdk/FirmaTokenService.d.ts +26 -26
  32. package/dist/sdk/FirmaTokenService.js +416 -416
  33. package/dist/sdk/FirmaUtil.d.ts +37 -26
  34. package/dist/sdk/FirmaUtil.js +230 -210
  35. package/dist/sdk/FirmaWalletService.d.ts +36 -36
  36. package/dist/sdk/FirmaWalletService.js +309 -309
  37. package/dist/sdk/firmachain/amino/addresses.d.ts +5 -5
  38. package/dist/sdk/firmachain/amino/addresses.js +46 -46
  39. package/dist/sdk/firmachain/amino/aminomsgs.d.ts +281 -281
  40. package/dist/sdk/firmachain/amino/aminomsgs.js +77 -77
  41. package/dist/sdk/firmachain/amino/aminotypes.d.ts +22 -22
  42. package/dist/sdk/firmachain/amino/aminotypes.js +521 -521
  43. package/dist/sdk/firmachain/amino/coins.d.ts +30 -30
  44. package/dist/sdk/firmachain/amino/coins.js +69 -69
  45. package/dist/sdk/firmachain/amino/encoding.d.ts +24 -24
  46. package/dist/sdk/firmachain/amino/encoding.js +234 -234
  47. package/dist/sdk/firmachain/amino/multisig.d.ts +10 -10
  48. package/dist/sdk/firmachain/amino/multisig.js +42 -42
  49. package/dist/sdk/firmachain/amino/paths.d.ts +6 -6
  50. package/dist/sdk/firmachain/amino/paths.js +18 -18
  51. package/dist/sdk/firmachain/amino/pubkeys.d.ts +47 -47
  52. package/dist/sdk/firmachain/amino/pubkeys.js +29 -29
  53. package/dist/sdk/firmachain/amino/secp256k1hdwallet.d.ts +94 -94
  54. package/dist/sdk/firmachain/amino/secp256k1hdwallet.js +437 -437
  55. package/dist/sdk/firmachain/amino/secp256k1wallet.d.ts +23 -23
  56. package/dist/sdk/firmachain/amino/secp256k1wallet.js +141 -141
  57. package/dist/sdk/firmachain/amino/signature.d.ts +16 -16
  58. package/dist/sdk/firmachain/amino/signature.js +36 -36
  59. package/dist/sdk/firmachain/amino/signdoc.d.ts +26 -26
  60. package/dist/sdk/firmachain/amino/signdoc.js +42 -42
  61. package/dist/sdk/firmachain/amino/signer.d.ts +33 -33
  62. package/dist/sdk/firmachain/amino/signer.js +2 -2
  63. package/dist/sdk/firmachain/amino/stdtx.d.ts +15 -15
  64. package/dist/sdk/firmachain/amino/stdtx.js +17 -17
  65. package/dist/sdk/firmachain/amino/wallet.d.ts +32 -32
  66. package/dist/sdk/firmachain/amino/wallet.js +132 -132
  67. package/dist/sdk/firmachain/bank/BankQueryClient.d.ts +12 -12
  68. package/dist/sdk/firmachain/bank/BankQueryClient.js +116 -116
  69. package/dist/sdk/firmachain/bank/BankTxClient.d.ts +17 -17
  70. package/dist/sdk/firmachain/bank/BankTxClient.js +40 -40
  71. package/dist/sdk/firmachain/bank/index.d.ts +3 -3
  72. package/dist/sdk/firmachain/bank/index.js +15 -15
  73. package/dist/sdk/firmachain/common/ITxClient.d.ts +15 -15
  74. package/dist/sdk/firmachain/common/ITxClient.js +102 -102
  75. package/dist/sdk/firmachain/common/LedgerSigningStargateClient.d.ts +27 -27
  76. package/dist/sdk/firmachain/common/LedgerSigningStargateClient.js +165 -165
  77. package/dist/sdk/firmachain/common/LedgerWallet.d.ts +14 -14
  78. package/dist/sdk/firmachain/common/LedgerWallet.js +147 -147
  79. package/dist/sdk/firmachain/common/QueryCommon.d.ts +4 -4
  80. package/dist/sdk/firmachain/common/QueryCommon.js +2 -2
  81. package/dist/sdk/firmachain/common/TendermintQueryClient.d.ts +42 -42
  82. package/dist/sdk/firmachain/common/TendermintQueryClient.js +108 -108
  83. package/dist/sdk/firmachain/common/TxCommon.d.ts +87 -94
  84. package/dist/sdk/firmachain/common/TxCommon.js +18 -34
  85. package/dist/sdk/firmachain/common/accounts.d.ts +16 -16
  86. package/dist/sdk/firmachain/common/accounts.js +64 -64
  87. package/dist/sdk/firmachain/common/index.d.ts +2 -2
  88. package/dist/sdk/firmachain/common/index.js +14 -14
  89. package/dist/sdk/firmachain/common/signing.d.ts +10 -10
  90. package/dist/sdk/firmachain/common/signing.js +75 -75
  91. package/dist/sdk/firmachain/common/signingstargateclient.d.ts +37 -37
  92. package/dist/sdk/firmachain/common/signingstargateclient.js +298 -298
  93. package/dist/sdk/firmachain/common/stargateclient.d.ts +46 -46
  94. package/dist/sdk/firmachain/common/stargateclient.js +211 -211
  95. package/dist/sdk/firmachain/contract/ContractQueryClient.d.ts +32 -31
  96. package/dist/sdk/firmachain/contract/ContractQueryClient.js +156 -141
  97. package/dist/sdk/firmachain/contract/ContractTxClient.d.ts +17 -17
  98. package/dist/sdk/firmachain/contract/ContractTxClient.js +40 -40
  99. package/dist/sdk/firmachain/contract/ContractTxTypes.d.ts +69 -69
  100. package/dist/sdk/firmachain/contract/ContractTxTypes.js +483 -483
  101. package/dist/sdk/firmachain/contract/index.d.ts +3 -3
  102. package/dist/sdk/firmachain/contract/index.js +15 -15
  103. package/dist/sdk/firmachain/distribution/DistributionQueryClient.d.ts +18 -18
  104. package/dist/sdk/firmachain/distribution/DistributionQueryClient.js +167 -167
  105. package/dist/sdk/firmachain/distribution/DistributionTxClient.d.ts +27 -27
  106. package/dist/sdk/firmachain/distribution/DistributionTxClient.js +48 -48
  107. package/dist/sdk/firmachain/distribution/index.d.ts +3 -3
  108. package/dist/sdk/firmachain/distribution/index.js +15 -15
  109. package/dist/sdk/firmachain/feegrant/FeeGrantQueryClient.d.ts +17 -17
  110. package/dist/sdk/firmachain/feegrant/FeeGrantQueryClient.js +86 -86
  111. package/dist/sdk/firmachain/feegrant/FeeGrantTxClient.d.ts +17 -17
  112. package/dist/sdk/firmachain/feegrant/FeeGrantTxClient.js +40 -40
  113. package/dist/sdk/firmachain/feegrant/FeeGrantTxTypes.d.ts +76 -76
  114. package/dist/sdk/firmachain/feegrant/FeeGrantTxTypes.js +194 -194
  115. package/dist/sdk/firmachain/feegrant/index.d.ts +2 -2
  116. package/dist/sdk/firmachain/feegrant/index.js +15 -15
  117. package/dist/sdk/firmachain/google/protobuf/any.d.ts +128 -128
  118. package/dist/sdk/firmachain/google/protobuf/any.js +106 -106
  119. package/dist/sdk/firmachain/google/protobuf/descriptor.d.ts +996 -996
  120. package/dist/sdk/firmachain/google/protobuf/descriptor.js +5329 -5329
  121. package/dist/sdk/firmachain/google/protobuf/duration.d.ts +91 -91
  122. package/dist/sdk/firmachain/google/protobuf/duration.js +107 -107
  123. package/dist/sdk/firmachain/google/protobuf/timestamp.d.ts +109 -109
  124. package/dist/sdk/firmachain/google/protobuf/timestamp.js +107 -107
  125. package/dist/sdk/firmachain/gov/GovQueryClient.d.ts +61 -61
  126. package/dist/sdk/firmachain/gov/GovQueryClient.js +152 -152
  127. package/dist/sdk/firmachain/gov/GovTxClient.d.ts +22 -22
  128. package/dist/sdk/firmachain/gov/GovTxClient.js +44 -44
  129. package/dist/sdk/firmachain/gov/index.d.ts +3 -3
  130. package/dist/sdk/firmachain/gov/index.js +15 -15
  131. package/dist/sdk/firmachain/nft/NftQueryClient.d.ts +20 -17
  132. package/dist/sdk/firmachain/nft/NftQueryClient.js +125 -121
  133. package/dist/sdk/firmachain/nft/NftTxClient.d.ts +22 -22
  134. package/dist/sdk/firmachain/nft/NftTxClient.js +44 -44
  135. package/dist/sdk/firmachain/nft/NftTxTypes.d.ts +86 -86
  136. package/dist/sdk/firmachain/nft/NftTxTypes.js +424 -424
  137. package/dist/sdk/firmachain/nft/index.d.ts +3 -3
  138. package/dist/sdk/firmachain/nft/index.js +15 -15
  139. package/dist/sdk/firmachain/slashing/SlashingQueryClient.d.ts +22 -22
  140. package/dist/sdk/firmachain/slashing/SlashingQueryClient.js +101 -101
  141. package/dist/sdk/firmachain/slashing/index.d.ts +2 -2
  142. package/dist/sdk/firmachain/slashing/index.js +14 -14
  143. package/dist/sdk/firmachain/staking/StakingQueryClient.d.ts +93 -93
  144. package/dist/sdk/firmachain/staking/StakingQueryClient.js +223 -223
  145. package/dist/sdk/firmachain/staking/StakingTxClient.d.ts +32 -32
  146. package/dist/sdk/firmachain/staking/StakingTxClient.js +52 -52
  147. package/dist/sdk/firmachain/staking/index.d.ts +3 -3
  148. package/dist/sdk/firmachain/staking/index.js +15 -15
  149. package/dist/sdk/firmachain/token/TokenQueryClient.d.ts +24 -24
  150. package/dist/sdk/firmachain/token/TokenQueryClient.js +106 -106
  151. package/dist/sdk/firmachain/token/TokenTxClient.d.ts +27 -27
  152. package/dist/sdk/firmachain/token/TokenTxClient.js +48 -48
  153. package/dist/sdk/firmachain/token/TokenTxTypes.d.ts +116 -116
  154. package/dist/sdk/firmachain/token/TokenTxTypes.js +685 -685
  155. package/dist/sdk/firmachain/token/index.d.ts +3 -3
  156. package/dist/sdk/firmachain/token/index.js +15 -15
  157. package/package.json +56 -55
@@ -1,26 +1,37 @@
1
- import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
2
- import { FirmaConfig } from "./FirmaConfig";
3
- import { SignerData } from "./firmachain/common/LedgerSigningStargateClient";
4
- export declare class FirmaUtil {
5
- static config: FirmaConfig;
6
- static readonly FctDecimal: number;
7
- constructor(firmaConfig: FirmaConfig);
8
- static getUTokenStringFromTokenStr(tokenAmount: string, decimal: number): string;
9
- static getTokenStringFromUTokenStr(uTokenAmount: string, decimal: number): string;
10
- static getUTokenStringFromToken(tokenAmount: number, decimal: number): string;
11
- static getUTokenFromToken(tokenAmount: number, decimal: number): number;
12
- static getTokenStringFromUToken(uTokenAmount: number, decimal: number): string;
13
- static getUFCTStringFromFCTStr(fctAmount: string): string;
14
- static getFCTStringFromUFCTStr(uFctAmount: string): string;
15
- static getUFCTStringFromFCT(fctAmount: number): string;
16
- static getFCTStringFromUFCT(uFctAmount: number): string;
17
- static getFileHash(filePath: string): Promise<string>;
18
- static getFileHashFromBuffer(buffer: Uint8Array): Promise<string>;
19
- static isValidAddress(address: string): boolean;
20
- static getValOperAddressFromAccAddress(address: string): string;
21
- static getAccAddressFromValOperAddress(address: string): string;
22
- static getSignerDataForLedger(address: string): Promise<SignerData>;
23
- static estimateGas(txRaw: TxRaw): Promise<number>;
24
- static estimateGasRaw(txRaw: Uint8Array): Promise<number>;
25
- static printLog(log: any): void;
26
- }
1
+ import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
2
+ import { FirmaConfig } from "./FirmaConfig";
3
+ import { SignerData } from "./firmachain/common/LedgerSigningStargateClient";
4
+ import { SignAndBroadcastOptions, TxMisc } from "./firmachain/common";
5
+ export declare class FirmaUtil {
6
+ static config: FirmaConfig;
7
+ static readonly FctDecimal: number;
8
+ constructor(firmaConfig: FirmaConfig);
9
+ static getSignAndBroadcastOption(denom: string, txMisc: TxMisc): SignAndBroadcastOptions;
10
+ static getUTokenStringFromTokenStr(tokenAmount: string, decimal: number): string;
11
+ static getTokenStringFromUTokenStr(uTokenAmount: string, decimal: number): string;
12
+ static getUTokenStringFromToken(tokenAmount: number, decimal: number): string;
13
+ static getUTokenFromToken(tokenAmount: number, decimal: number): number;
14
+ static getTokenStringFromUToken(uTokenAmount: number, decimal: number): string;
15
+ static getUFCTStringFromFCTStr(fctAmount: string): string;
16
+ static getFCTStringFromUFCTStr(uFctAmount: string): string;
17
+ static getUFCTStringFromFCT(fctAmount: number): string;
18
+ static getFCTStringFromUFCT(uFctAmount: number): string;
19
+ static getFileHash(filePath: string): Promise<string>;
20
+ static getFileHashFromBuffer(buffer: Uint8Array): string;
21
+ static getSha1HashFromString(text: string): string;
22
+ static getHashFromString(text: string): string;
23
+ static isValidAddress(address: string): boolean;
24
+ static getValOperAddressFromAccAddress(address: string): string;
25
+ static getAccAddressFromValOperAddress(address: string): string;
26
+ static getSignerDataForLedger(address: string): Promise<SignerData>;
27
+ static estimateGas(txRaw: TxRaw): Promise<number>;
28
+ static estimateGasRaw(txRaw: Uint8Array): Promise<number>;
29
+ static printLog(log: any): void;
30
+ }
31
+ export declare const DefaultTxMisc: {
32
+ memo: string;
33
+ fee: number;
34
+ gas: number;
35
+ feeGranter: string;
36
+ };
37
+ export declare const getSignAndBroadcastOption: typeof FirmaUtil.getSignAndBroadcastOption;
@@ -1,210 +1,230 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- 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;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.FirmaUtil = void 0;
40
- var fs_1 = require("fs");
41
- var tx_1 = require("cosmjs-types/cosmos/tx/v1beta1/tx");
42
- var TendermintQueryClient_1 = require("./firmachain/common/TendermintQueryClient");
43
- var encoding_1 = require("@cosmjs/encoding");
44
- var LedgerSigningStargateClient_1 = require("./firmachain/common/LedgerSigningStargateClient");
45
- var CryptoJS = require("crypto-js");
46
- var sha256 = require("crypto-js/sha256");
47
- var encHex = require("crypto-js/enc-hex");
48
- var FirmaUtil = /** @class */ (function () {
49
- function FirmaUtil(firmaConfig) {
50
- FirmaUtil.config = firmaConfig;
51
- }
52
- FirmaUtil.getUTokenStringFromTokenStr = function (tokenAmount, decimal) {
53
- var fct = Number.parseFloat(tokenAmount);
54
- var decimalMutiplyer = Math.pow(10, decimal);
55
- var big = fct * decimalMutiplyer;
56
- return big.toString();
57
- };
58
- FirmaUtil.getTokenStringFromUTokenStr = function (uTokenAmount, decimal) {
59
- var ufct = Number.parseInt(uTokenAmount);
60
- var decimalMutiplyer = Math.pow(10, decimal);
61
- return (ufct / decimalMutiplyer).toString();
62
- };
63
- FirmaUtil.getUTokenStringFromToken = function (tokenAmount, decimal) {
64
- var decimalMutiplyer = Math.pow(10, decimal);
65
- var big = tokenAmount * decimalMutiplyer;
66
- return big.toString();
67
- };
68
- FirmaUtil.getUTokenFromToken = function (tokenAmount, decimal) {
69
- var decimalMutiplyer = Math.pow(10, decimal);
70
- var big = tokenAmount * decimalMutiplyer;
71
- return big;
72
- };
73
- FirmaUtil.getTokenStringFromUToken = function (uTokenAmount, decimal) {
74
- var decimalMutiplyer = Math.pow(10, decimal);
75
- return (uTokenAmount / decimalMutiplyer).toString();
76
- };
77
- FirmaUtil.getUFCTStringFromFCTStr = function (fctAmount) {
78
- return this.getUTokenStringFromTokenStr(fctAmount, this.FctDecimal);
79
- };
80
- FirmaUtil.getFCTStringFromUFCTStr = function (uFctAmount) {
81
- return this.getTokenStringFromUTokenStr(uFctAmount, this.FctDecimal);
82
- };
83
- FirmaUtil.getUFCTStringFromFCT = function (fctAmount) {
84
- return this.getUTokenStringFromToken(fctAmount, this.FctDecimal);
85
- };
86
- FirmaUtil.getFCTStringFromUFCT = function (uFctAmount) {
87
- return this.getTokenStringFromUToken(uFctAmount, this.FctDecimal);
88
- };
89
- FirmaUtil.getFileHash = function (filePath) {
90
- return __awaiter(this, void 0, void 0, function () {
91
- var fileData, data;
92
- return __generator(this, function (_a) {
93
- switch (_a.label) {
94
- case 0: return [4 /*yield*/, fs_1.promises.readFile(filePath)];
95
- case 1:
96
- fileData = _a.sent();
97
- data = CryptoJS.lib.WordArray.create(fileData.buffer);
98
- return [2 /*return*/, sha256(data).toString(encHex)];
99
- }
100
- });
101
- });
102
- };
103
- FirmaUtil.getFileHashFromBuffer = function (buffer) {
104
- return __awaiter(this, void 0, void 0, function () {
105
- var data;
106
- return __generator(this, function (_a) {
107
- data = CryptoJS.lib.WordArray.create(buffer);
108
- return [2 /*return*/, sha256(data).toString(encHex)];
109
- });
110
- });
111
- };
112
- FirmaUtil.isValidAddress = function (address) {
113
- try {
114
- // eslint-disable-next-line @typescript-eslint/no-unused-expressions
115
- encoding_1.Bech32.decode(address).data;
116
- return true;
117
- }
118
- catch (e) {
119
- }
120
- return false;
121
- };
122
- FirmaUtil.getValOperAddressFromAccAddress = function (address) {
123
- var data = encoding_1.Bech32.decode(address).data;
124
- return encoding_1.Bech32.encode(FirmaUtil.config.prefix + "valoper", data);
125
- };
126
- FirmaUtil.getAccAddressFromValOperAddress = function (address) {
127
- var data = encoding_1.Bech32.decode(address).data;
128
- return encoding_1.Bech32.encode(FirmaUtil.config.prefix, data);
129
- };
130
- FirmaUtil.getSignerDataForLedger = function (address) {
131
- return __awaiter(this, void 0, void 0, function () {
132
- var signingClient, sequence, error_1;
133
- return __generator(this, function (_a) {
134
- switch (_a.label) {
135
- case 0:
136
- _a.trys.push([0, 3, , 4]);
137
- return [4 /*yield*/, LedgerSigningStargateClient_1.LedgerSigningStargateClient.connectWithSigner(FirmaUtil.config.rpcAddress)];
138
- case 1:
139
- signingClient = _a.sent();
140
- return [4 /*yield*/, signingClient.getSignerData(address)];
141
- case 2:
142
- sequence = _a.sent();
143
- return [2 /*return*/, sequence];
144
- case 3:
145
- error_1 = _a.sent();
146
- FirmaUtil.printLog(error_1);
147
- throw error_1;
148
- case 4: return [2 /*return*/];
149
- }
150
- });
151
- });
152
- };
153
- FirmaUtil.estimateGas = function (txRaw) {
154
- return __awaiter(this, void 0, void 0, function () {
155
- var encodedTx, hexTx, queryClient, gas, multiplier, error_2;
156
- return __generator(this, function (_a) {
157
- switch (_a.label) {
158
- case 0:
159
- _a.trys.push([0, 2, , 3]);
160
- encodedTx = Uint8Array.from(tx_1.TxRaw.encode(txRaw).finish());
161
- hexTx = "0x" + Buffer.from(encodedTx).toString("hex");
162
- queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
163
- return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
164
- case 1:
165
- gas = _a.sent();
166
- multiplier = 1.25;
167
- return [2 /*return*/, Math.ceil(gas * multiplier)];
168
- case 2:
169
- error_2 = _a.sent();
170
- FirmaUtil.printLog(error_2);
171
- throw error_2;
172
- case 3: return [2 /*return*/];
173
- }
174
- });
175
- });
176
- };
177
- FirmaUtil.estimateGasRaw = function (txRaw) {
178
- return __awaiter(this, void 0, void 0, function () {
179
- var encodedTx, hexTx, queryClient, gas, multiplier, error_3;
180
- return __generator(this, function (_a) {
181
- switch (_a.label) {
182
- case 0:
183
- _a.trys.push([0, 2, , 3]);
184
- encodedTx = Uint8Array.from(txRaw);
185
- hexTx = "0x" + Buffer.from(encodedTx).toString("hex");
186
- console.log("hexTx:" + hexTx);
187
- queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
188
- return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
189
- case 1:
190
- gas = _a.sent();
191
- multiplier = 1.25;
192
- return [2 /*return*/, Math.ceil(gas * multiplier)];
193
- case 2:
194
- error_3 = _a.sent();
195
- FirmaUtil.printLog(error_3);
196
- throw error_3;
197
- case 3: return [2 /*return*/];
198
- }
199
- });
200
- });
201
- };
202
- FirmaUtil.printLog = function (log) {
203
- if (FirmaUtil.config.isShowLog === false)
204
- return;
205
- console.log("[FirmaSDK] " + log);
206
- };
207
- FirmaUtil.FctDecimal = 6;
208
- return FirmaUtil;
209
- }());
210
- exports.FirmaUtil = FirmaUtil;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ 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;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.getSignAndBroadcastOption = exports.DefaultTxMisc = exports.FirmaUtil = void 0;
40
+ var fs_1 = require("fs");
41
+ var tx_1 = require("cosmjs-types/cosmos/tx/v1beta1/tx");
42
+ var TendermintQueryClient_1 = require("./firmachain/common/TendermintQueryClient");
43
+ var encoding_1 = require("@cosmjs/encoding");
44
+ var LedgerSigningStargateClient_1 = require("./firmachain/common/LedgerSigningStargateClient");
45
+ var CryptoJS = require("crypto-js");
46
+ var sha1 = require("crypto-js/sha1");
47
+ var sha256 = require("crypto-js/sha256");
48
+ var encHex = require("crypto-js/enc-hex");
49
+ var FirmaUtil = /** @class */ (function () {
50
+ function FirmaUtil(firmaConfig) {
51
+ FirmaUtil.config = firmaConfig;
52
+ }
53
+ FirmaUtil.getSignAndBroadcastOption = function (denom, txMisc) {
54
+ if (txMisc.memo == null)
55
+ txMisc.memo = "";
56
+ // INFO: if fee or gas data is not set default, those value will be null. So we have to double check it.
57
+ if (txMisc.fee == 0 || txMisc.fee == null)
58
+ txMisc.fee = FirmaUtil.config.defaultFee;
59
+ if (txMisc.gas == 0 || txMisc.gas == null)
60
+ txMisc.gas = FirmaUtil.config.defaultGas;
61
+ if (txMisc.feeGranter == null)
62
+ txMisc.feeGranter = "";
63
+ var gasFeeAmount = { denom: denom, amount: txMisc.fee.toString() };
64
+ var defaultFee = { amount: [gasFeeAmount], gas: txMisc.gas.toString(), granter: txMisc.feeGranter };
65
+ return { fee: defaultFee, memo: txMisc.memo };
66
+ };
67
+ FirmaUtil.getUTokenStringFromTokenStr = function (tokenAmount, decimal) {
68
+ var fct = Number.parseFloat(tokenAmount);
69
+ var decimalMutiplyer = Math.pow(10, decimal);
70
+ var big = fct * decimalMutiplyer;
71
+ return big.toString();
72
+ };
73
+ FirmaUtil.getTokenStringFromUTokenStr = function (uTokenAmount, decimal) {
74
+ var ufct = Number.parseInt(uTokenAmount);
75
+ var decimalMutiplyer = Math.pow(10, decimal);
76
+ return (ufct / decimalMutiplyer).toString();
77
+ };
78
+ FirmaUtil.getUTokenStringFromToken = function (tokenAmount, decimal) {
79
+ var decimalMutiplyer = Math.pow(10, decimal);
80
+ var big = tokenAmount * decimalMutiplyer;
81
+ return big.toString();
82
+ };
83
+ FirmaUtil.getUTokenFromToken = function (tokenAmount, decimal) {
84
+ var decimalMutiplyer = Math.pow(10, decimal);
85
+ var big = tokenAmount * decimalMutiplyer;
86
+ return big;
87
+ };
88
+ FirmaUtil.getTokenStringFromUToken = function (uTokenAmount, decimal) {
89
+ var decimalMutiplyer = Math.pow(10, decimal);
90
+ return (uTokenAmount / decimalMutiplyer).toString();
91
+ };
92
+ FirmaUtil.getUFCTStringFromFCTStr = function (fctAmount) {
93
+ return this.getUTokenStringFromTokenStr(fctAmount, this.FctDecimal);
94
+ };
95
+ FirmaUtil.getFCTStringFromUFCTStr = function (uFctAmount) {
96
+ return this.getTokenStringFromUTokenStr(uFctAmount, this.FctDecimal);
97
+ };
98
+ FirmaUtil.getUFCTStringFromFCT = function (fctAmount) {
99
+ return this.getUTokenStringFromToken(fctAmount, this.FctDecimal);
100
+ };
101
+ FirmaUtil.getFCTStringFromUFCT = function (uFctAmount) {
102
+ return this.getTokenStringFromUToken(uFctAmount, this.FctDecimal);
103
+ };
104
+ FirmaUtil.getFileHash = function (filePath) {
105
+ return __awaiter(this, void 0, void 0, function () {
106
+ var fileData, data;
107
+ return __generator(this, function (_a) {
108
+ switch (_a.label) {
109
+ case 0: return [4 /*yield*/, fs_1.promises.readFile(filePath)];
110
+ case 1:
111
+ fileData = _a.sent();
112
+ data = CryptoJS.lib.WordArray.create(fileData.buffer);
113
+ return [2 /*return*/, sha256(data).toString(encHex)];
114
+ }
115
+ });
116
+ });
117
+ };
118
+ FirmaUtil.getFileHashFromBuffer = function (buffer) {
119
+ var data = CryptoJS.lib.WordArray.create(buffer);
120
+ return sha256(data).toString(encHex);
121
+ };
122
+ FirmaUtil.getSha1HashFromString = function (text) {
123
+ var data = CryptoJS.lib.WordArray.create(text);
124
+ return sha1(data).toString(encHex);
125
+ };
126
+ FirmaUtil.getHashFromString = function (text) {
127
+ var data = CryptoJS.lib.WordArray.create(text);
128
+ return sha256(data).toString(encHex);
129
+ };
130
+ FirmaUtil.isValidAddress = function (address) {
131
+ try {
132
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
133
+ encoding_1.Bech32.decode(address).data;
134
+ return true;
135
+ }
136
+ catch (e) {
137
+ }
138
+ return false;
139
+ };
140
+ FirmaUtil.getValOperAddressFromAccAddress = function (address) {
141
+ var data = encoding_1.Bech32.decode(address).data;
142
+ return encoding_1.Bech32.encode(FirmaUtil.config.prefix + "valoper", data);
143
+ };
144
+ FirmaUtil.getAccAddressFromValOperAddress = function (address) {
145
+ var data = encoding_1.Bech32.decode(address).data;
146
+ return encoding_1.Bech32.encode(FirmaUtil.config.prefix, data);
147
+ };
148
+ FirmaUtil.getSignerDataForLedger = function (address) {
149
+ return __awaiter(this, void 0, void 0, function () {
150
+ var signingClient, sequence, error_1;
151
+ return __generator(this, function (_a) {
152
+ switch (_a.label) {
153
+ case 0:
154
+ _a.trys.push([0, 3, , 4]);
155
+ return [4 /*yield*/, LedgerSigningStargateClient_1.LedgerSigningStargateClient.connectWithSigner(FirmaUtil.config.rpcAddress)];
156
+ case 1:
157
+ signingClient = _a.sent();
158
+ return [4 /*yield*/, signingClient.getSignerData(address)];
159
+ case 2:
160
+ sequence = _a.sent();
161
+ return [2 /*return*/, sequence];
162
+ case 3:
163
+ error_1 = _a.sent();
164
+ FirmaUtil.printLog(error_1);
165
+ throw error_1;
166
+ case 4: return [2 /*return*/];
167
+ }
168
+ });
169
+ });
170
+ };
171
+ FirmaUtil.estimateGas = function (txRaw) {
172
+ return __awaiter(this, void 0, void 0, function () {
173
+ var encodedTx, hexTx, queryClient, gas, multiplier, error_2;
174
+ return __generator(this, function (_a) {
175
+ switch (_a.label) {
176
+ case 0:
177
+ _a.trys.push([0, 2, , 3]);
178
+ encodedTx = Uint8Array.from(tx_1.TxRaw.encode(txRaw).finish());
179
+ hexTx = "0x" + Buffer.from(encodedTx).toString("hex");
180
+ queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
181
+ return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
182
+ case 1:
183
+ gas = _a.sent();
184
+ multiplier = 1.25;
185
+ return [2 /*return*/, Math.ceil(gas * multiplier)];
186
+ case 2:
187
+ error_2 = _a.sent();
188
+ FirmaUtil.printLog(error_2);
189
+ throw error_2;
190
+ case 3: return [2 /*return*/];
191
+ }
192
+ });
193
+ });
194
+ };
195
+ FirmaUtil.estimateGasRaw = function (txRaw) {
196
+ return __awaiter(this, void 0, void 0, function () {
197
+ var encodedTx, hexTx, queryClient, gas, multiplier, error_3;
198
+ return __generator(this, function (_a) {
199
+ switch (_a.label) {
200
+ case 0:
201
+ _a.trys.push([0, 2, , 3]);
202
+ encodedTx = Uint8Array.from(txRaw);
203
+ hexTx = "0x" + Buffer.from(encodedTx).toString("hex");
204
+ console.log("hexTx:" + hexTx);
205
+ queryClient = new TendermintQueryClient_1.TendermintQueryClient(FirmaUtil.config.rpcAddress);
206
+ return [4 /*yield*/, queryClient.queryEstimateGas(hexTx)];
207
+ case 1:
208
+ gas = _a.sent();
209
+ multiplier = 1.25;
210
+ return [2 /*return*/, Math.ceil(gas * multiplier)];
211
+ case 2:
212
+ error_3 = _a.sent();
213
+ FirmaUtil.printLog(error_3);
214
+ throw error_3;
215
+ case 3: return [2 /*return*/];
216
+ }
217
+ });
218
+ });
219
+ };
220
+ FirmaUtil.printLog = function (log) {
221
+ if (FirmaUtil.config.isShowLog === false)
222
+ return;
223
+ console.log("[FirmaSDK] " + log);
224
+ };
225
+ FirmaUtil.FctDecimal = 6;
226
+ return FirmaUtil;
227
+ }());
228
+ exports.FirmaUtil = FirmaUtil;
229
+ exports.DefaultTxMisc = { memo: "", fee: 0, gas: 0, feeGranter: "" };
230
+ exports.getSignAndBroadcastOption = FirmaUtil.getSignAndBroadcastOption;
@@ -1,36 +1,36 @@
1
- import { DirectSecp256k1Wallet, Registry } from "@cosmjs/proto-signing";
2
- import { EncodeObject } from "@cosmjs/proto-signing";
3
- import { FirmaConfig } from "./FirmaConfig";
4
- import { SignAndBroadcastOptions } from "./firmachain/common";
5
- import { LedgerWalletInterface } from "./firmachain/common/LedgerWallet";
6
- import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
7
- export declare class FirmaWalletService {
8
- private readonly config;
9
- private mnemonic;
10
- private privateKey;
11
- private accountIndex;
12
- private wallet;
13
- private ledger;
14
- getHdPath(): string;
15
- getPrefix(): string;
16
- getRawWallet(): DirectSecp256k1Wallet;
17
- getPrivateKey(): string;
18
- getMnemonic(): string;
19
- isLedger(): boolean;
20
- initFromLedger(ledger: LedgerWalletInterface): Promise<FirmaWalletService>;
21
- signLedger(messages: EncodeObject[], option: SignAndBroadcastOptions, registry: Registry): Promise<TxRaw>;
22
- getAddress(): Promise<string>;
23
- constructor(config: FirmaConfig);
24
- private static getHdPath;
25
- initFromMnemonic(mnemonic: string, accountIndex?: number): Promise<{
26
- success: boolean;
27
- }>;
28
- private getPrivateKeyInternal;
29
- initFromPrivateKey(privateKey: string): Promise<void>;
30
- decryptData(data: string): string;
31
- encryptData(data: string): string;
32
- newWallet(): Promise<FirmaWalletService>;
33
- fromMnemonic(mnemonic: string, accountIndex?: number): Promise<FirmaWalletService>;
34
- fromPrivateKey(privateKey: string): Promise<FirmaWalletService>;
35
- generateMnemonic(): Promise<string>;
36
- }
1
+ import { DirectSecp256k1Wallet, Registry } from "@cosmjs/proto-signing";
2
+ import { EncodeObject } from "@cosmjs/proto-signing";
3
+ import { FirmaConfig } from "./FirmaConfig";
4
+ import { SignAndBroadcastOptions } from "./firmachain/common";
5
+ import { LedgerWalletInterface } from "./firmachain/common/LedgerWallet";
6
+ import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
7
+ export declare class FirmaWalletService {
8
+ private readonly config;
9
+ private mnemonic;
10
+ private privateKey;
11
+ private accountIndex;
12
+ private wallet;
13
+ private ledger;
14
+ getHdPath(): string;
15
+ getPrefix(): string;
16
+ getRawWallet(): DirectSecp256k1Wallet;
17
+ getPrivateKey(): string;
18
+ getMnemonic(): string;
19
+ isLedger(): boolean;
20
+ initFromLedger(ledger: LedgerWalletInterface): Promise<FirmaWalletService>;
21
+ signLedger(messages: EncodeObject[], option: SignAndBroadcastOptions, registry: Registry): Promise<TxRaw>;
22
+ getAddress(): Promise<string>;
23
+ constructor(config: FirmaConfig);
24
+ private static getHdPath;
25
+ initFromMnemonic(mnemonic: string, accountIndex?: number): Promise<{
26
+ success: boolean;
27
+ }>;
28
+ private getPrivateKeyInternal;
29
+ initFromPrivateKey(privateKey: string): Promise<void>;
30
+ decryptData(data: string): string;
31
+ encryptData(data: string): string;
32
+ newWallet(): Promise<FirmaWalletService>;
33
+ fromMnemonic(mnemonic: string, accountIndex?: number): Promise<FirmaWalletService>;
34
+ fromPrivateKey(privateKey: string): Promise<FirmaWalletService>;
35
+ generateMnemonic(): Promise<string>;
36
+ }