Skip to content

Commit 0fe791c

Browse files
committed
use interchainjs math, handle decimal in to amino
1 parent c6c692d commit 0fe791c

File tree

24 files changed

+792
-759
lines changed

24 files changed

+792
-759
lines changed

__fixtures__/misc/output-proto-amino/amino-legacy/misc/all_fields.ts

+9-9
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { Any, AnySDKType } from "../google/protobuf/any";
33
import { Duration, DurationSDKType } from "../google/protobuf/duration";
44
import { Timestamp, TimestampSDKType } from "../google/protobuf/timestamp";
55
import { BinaryReader, BinaryWriter } from "../binary";
6-
import { toTimestamp, fromTimestamp, isSet, bytesFromBase64, base64FromBytes, DeepPartial, padDecimal } from "../helpers";
6+
import { toTimestamp, fromTimestamp, isSet, bytesFromBase64, base64FromBytes, DeepPartial } from "../helpers";
77
import { Decimal } from "@cosmjs/math";
88
import { JsonSafe } from "../json-safe";
99
import { toUtf8, fromBase64, fromUtf8, toBase64 } from "@cosmjs/encoding";
@@ -1392,15 +1392,15 @@ export const EncodingTestForDontOmit = {
13921392
} else {
13931393
obj.d_o_auths = message.dOAuths;
13941394
}
1395-
obj.dec = padDecimal(message.dec) === "" ? undefined : padDecimal(message.dec);
1396-
obj.d_o_dec = padDecimal(message.dODec) ?? "";
1395+
obj.dec = message.dec === "" ? undefined : Decimal.fromUserInput(message.dec, 18).atomics;
1396+
obj.d_o_dec = Decimal.fromUserInput(message.dODec, 18).atomics ?? "";
13971397
if (message.decs) {
1398-
obj.decs = message.decs.map(e => padDecimal(e));
1398+
obj.decs = message.decs.map(e => Decimal.fromUserInput(e, 18).atomics);
13991399
} else {
14001400
obj.decs = message.decs;
14011401
}
14021402
if (message.dODecs) {
1403-
obj.d_o_decs = message.dODecs.map(e => padDecimal(e));
1403+
obj.d_o_decs = message.dODecs.map(e => Decimal.fromUserInput(e, 18).atomics);
14041404
} else {
14051405
obj.d_o_decs = message.dODecs;
14061406
}
@@ -2553,15 +2553,15 @@ export const EncodingTestForOmit = {
25532553
} else {
25542554
obj.o_auths = message.oAuths;
25552555
}
2556-
obj.dec = padDecimal(message.dec) ?? "";
2557-
obj.o_dec = padDecimal(message.oDec) === "" ? undefined : padDecimal(message.oDec);
2556+
obj.dec = Decimal.fromUserInput(message.dec, 18).atomics ?? "";
2557+
obj.o_dec = message.oDec === "" ? undefined : Decimal.fromUserInput(message.oDec, 18).atomics;
25582558
if (message.decs) {
2559-
obj.decs = message.decs.map(e => padDecimal(e));
2559+
obj.decs = message.decs.map(e => Decimal.fromUserInput(e, 18).atomics);
25602560
} else {
25612561
obj.decs = message.decs;
25622562
}
25632563
if (message.oDecs) {
2564-
obj.o_decs = message.oDecs.map(e => padDecimal(e));
2564+
obj.o_decs = message.oDecs.map(e => Decimal.fromUserInput(e, 18).atomics);
25652565
} else {
25662566
obj.o_decs = message.oDecs;
25672567
}

__fixtures__/v-next/outputicjs/akash/inflation/v1beta2/params.ts

+7-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { BinaryReader, BinaryWriter } from "../../../binary";
2+
import { Decimal } from "@interchainjs/math";
23
import { DeepPartial } from "../../../helpers";
34
/** Params defines the parameters for the x/deployment package */
45
export interface Params {
@@ -49,13 +50,13 @@ export const Params = {
4950
typeUrl: "/akash.inflation.v1beta2.Params",
5051
encode(message: Params, writer: BinaryWriter = BinaryWriter.create()): BinaryWriter {
5152
if (message.inflationDecayFactor !== "") {
52-
writer.uint32(10).string(message.inflationDecayFactor);
53+
writer.uint32(10).string(Decimal.fromUserInput(message.inflationDecayFactor, 18).atomics);
5354
}
5455
if (message.initialInflation !== "") {
55-
writer.uint32(18).string(message.initialInflation);
56+
writer.uint32(18).string(Decimal.fromUserInput(message.initialInflation, 18).atomics);
5657
}
5758
if (message.variance !== "") {
58-
writer.uint32(26).string(message.variance);
59+
writer.uint32(26).string(Decimal.fromUserInput(message.variance, 18).atomics);
5960
}
6061
return writer;
6162
},
@@ -67,13 +68,13 @@ export const Params = {
6768
const tag = reader.uint32();
6869
switch (tag >>> 3) {
6970
case 1:
70-
message.inflationDecayFactor = reader.string();
71+
message.inflationDecayFactor = Decimal.fromAtomics(reader.string(), 18).toString();
7172
break;
7273
case 2:
73-
message.initialInflation = reader.string();
74+
message.initialInflation = Decimal.fromAtomics(reader.string(), 18).toString();
7475
break;
7576
case 3:
76-
message.variance = reader.string();
77+
message.variance = Decimal.fromAtomics(reader.string(), 18).toString();
7778
break;
7879
default:
7980
reader.skipType(tag & 7);

__fixtures__/v-next/outputicjs/cosmos/distribution/v1beta1/distribution.ts

+11-10
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { DecCoin, DecCoinAmino, Coin, CoinAmino } from "../../base/v1beta1/coin";
22
import { BinaryReader, BinaryWriter } from "../../../binary";
3+
import { Decimal } from "@interchainjs/math";
34
import { DeepPartial } from "../../../helpers";
45
/** Params defines the set of params for the distribution module. */
56
export interface Params {
@@ -328,13 +329,13 @@ export const Params = {
328329
aminoType: "cosmos-sdk/Params",
329330
encode(message: Params, writer: BinaryWriter = BinaryWriter.create()): BinaryWriter {
330331
if (message.communityTax !== "") {
331-
writer.uint32(10).string(message.communityTax);
332+
writer.uint32(10).string(Decimal.fromUserInput(message.communityTax, 18).atomics);
332333
}
333334
if (message.baseProposerReward !== "") {
334-
writer.uint32(18).string(message.baseProposerReward);
335+
writer.uint32(18).string(Decimal.fromUserInput(message.baseProposerReward, 18).atomics);
335336
}
336337
if (message.bonusProposerReward !== "") {
337-
writer.uint32(26).string(message.bonusProposerReward);
338+
writer.uint32(26).string(Decimal.fromUserInput(message.bonusProposerReward, 18).atomics);
338339
}
339340
if (message.withdrawAddrEnabled === true) {
340341
writer.uint32(32).bool(message.withdrawAddrEnabled);
@@ -349,13 +350,13 @@ export const Params = {
349350
const tag = reader.uint32();
350351
switch (tag >>> 3) {
351352
case 1:
352-
message.communityTax = reader.string();
353+
message.communityTax = Decimal.fromAtomics(reader.string(), 18).toString();
353354
break;
354355
case 2:
355-
message.baseProposerReward = reader.string();
356+
message.baseProposerReward = Decimal.fromAtomics(reader.string(), 18).toString();
356357
break;
357358
case 3:
358-
message.bonusProposerReward = reader.string();
359+
message.bonusProposerReward = Decimal.fromAtomics(reader.string(), 18).toString();
359360
break;
360361
case 4:
361362
message.withdrawAddrEnabled = reader.bool();
@@ -747,7 +748,7 @@ export const ValidatorSlashEvent = {
747748
writer.uint32(8).uint64(message.validatorPeriod);
748749
}
749750
if (message.fraction !== "") {
750-
writer.uint32(18).string(message.fraction);
751+
writer.uint32(18).string(Decimal.fromUserInput(message.fraction, 18).atomics);
751752
}
752753
return writer;
753754
},
@@ -762,7 +763,7 @@ export const ValidatorSlashEvent = {
762763
message.validatorPeriod = reader.uint64();
763764
break;
764765
case 2:
765-
message.fraction = reader.string();
766+
message.fraction = Decimal.fromAtomics(reader.string(), 18).toString();
766767
break;
767768
default:
768769
reader.skipType(tag & 7);
@@ -1082,7 +1083,7 @@ export const DelegatorStartingInfo = {
10821083
writer.uint32(8).uint64(message.previousPeriod);
10831084
}
10841085
if (message.stake !== "") {
1085-
writer.uint32(18).string(message.stake);
1086+
writer.uint32(18).string(Decimal.fromUserInput(message.stake, 18).atomics);
10861087
}
10871088
if (message.height !== BigInt(0)) {
10881089
writer.uint32(24).uint64(message.height);
@@ -1100,7 +1101,7 @@ export const DelegatorStartingInfo = {
11001101
message.previousPeriod = reader.uint64();
11011102
break;
11021103
case 2:
1103-
message.stake = reader.string();
1104+
message.stake = Decimal.fromAtomics(reader.string(), 18).toString();
11041105
break;
11051106
case 3:
11061107
message.height = reader.uint64();

__fixtures__/v-next/outputicjs/cosmos/gov/v1beta1/gov.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { ReplacePoolIncentivesProposal, ReplacePoolIncentivesProposalProtoMsg, U
88
import { SetSuperfluidAssetsProposal, SetSuperfluidAssetsProposalProtoMsg, RemoveSuperfluidAssetsProposal, RemoveSuperfluidAssetsProposalProtoMsg, UpdateUnpoolWhiteListProposal, UpdateUnpoolWhiteListProposalProtoMsg } from "../../../osmosis/superfluid/v1beta1/gov";
99
import { UpdateFeeTokenProposal, UpdateFeeTokenProposalProtoMsg } from "../../../osmosis/txfees/v1beta1/gov";
1010
import { BinaryReader, BinaryWriter } from "../../../binary";
11+
import { Decimal } from "@interchainjs/math";
1112
import { DeepPartial, toTimestamp, fromTimestamp, bytesFromBase64, base64FromBytes } from "../../../helpers";
1213
/** VoteOption enumerates the valid vote options for a given governance proposal. */
1314
export enum VoteOption {
@@ -424,7 +425,7 @@ export const WeightedVoteOption = {
424425
writer.uint32(8).int32(message.option);
425426
}
426427
if (message.weight !== "") {
427-
writer.uint32(18).string(message.weight);
428+
writer.uint32(18).string(Decimal.fromUserInput(message.weight, 18).atomics);
428429
}
429430
return writer;
430431
},
@@ -439,7 +440,7 @@ export const WeightedVoteOption = {
439440
message.option = (reader.int32() as any);
440441
break;
441442
case 2:
442-
message.weight = reader.string();
443+
message.weight = Decimal.fromAtomics(reader.string(), 18).toString();
443444
break;
444445
default:
445446
reader.skipType(tag & 7);

__fixtures__/v-next/outputicjs/cosmos/mint/v1beta1/mint.ts

+13-12
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { BinaryReader, BinaryWriter } from "../../../binary";
2+
import { Decimal } from "@interchainjs/math";
23
import { DeepPartial } from "../../../helpers";
34
/** Minter represents the minting state. */
45
export interface Minter {
@@ -71,10 +72,10 @@ export const Minter = {
7172
aminoType: "cosmos-sdk/Minter",
7273
encode(message: Minter, writer: BinaryWriter = BinaryWriter.create()): BinaryWriter {
7374
if (message.inflation !== "") {
74-
writer.uint32(10).string(message.inflation);
75+
writer.uint32(10).string(Decimal.fromUserInput(message.inflation, 18).atomics);
7576
}
7677
if (message.annualProvisions !== "") {
77-
writer.uint32(18).string(message.annualProvisions);
78+
writer.uint32(18).string(Decimal.fromUserInput(message.annualProvisions, 18).atomics);
7879
}
7980
return writer;
8081
},
@@ -86,10 +87,10 @@ export const Minter = {
8687
const tag = reader.uint32();
8788
switch (tag >>> 3) {
8889
case 1:
89-
message.inflation = reader.string();
90+
message.inflation = Decimal.fromAtomics(reader.string(), 18).toString();
9091
break;
9192
case 2:
92-
message.annualProvisions = reader.string();
93+
message.annualProvisions = Decimal.fromAtomics(reader.string(), 18).toString();
9394
break;
9495
default:
9596
reader.skipType(tag & 7);
@@ -160,16 +161,16 @@ export const Params = {
160161
writer.uint32(10).string(message.mintDenom);
161162
}
162163
if (message.inflationRateChange !== "") {
163-
writer.uint32(18).string(message.inflationRateChange);
164+
writer.uint32(18).string(Decimal.fromUserInput(message.inflationRateChange, 18).atomics);
164165
}
165166
if (message.inflationMax !== "") {
166-
writer.uint32(26).string(message.inflationMax);
167+
writer.uint32(26).string(Decimal.fromUserInput(message.inflationMax, 18).atomics);
167168
}
168169
if (message.inflationMin !== "") {
169-
writer.uint32(34).string(message.inflationMin);
170+
writer.uint32(34).string(Decimal.fromUserInput(message.inflationMin, 18).atomics);
170171
}
171172
if (message.goalBonded !== "") {
172-
writer.uint32(42).string(message.goalBonded);
173+
writer.uint32(42).string(Decimal.fromUserInput(message.goalBonded, 18).atomics);
173174
}
174175
if (message.blocksPerYear !== BigInt(0)) {
175176
writer.uint32(48).uint64(message.blocksPerYear);
@@ -187,16 +188,16 @@ export const Params = {
187188
message.mintDenom = reader.string();
188189
break;
189190
case 2:
190-
message.inflationRateChange = reader.string();
191+
message.inflationRateChange = Decimal.fromAtomics(reader.string(), 18).toString();
191192
break;
192193
case 3:
193-
message.inflationMax = reader.string();
194+
message.inflationMax = Decimal.fromAtomics(reader.string(), 18).toString();
194195
break;
195196
case 4:
196-
message.inflationMin = reader.string();
197+
message.inflationMin = Decimal.fromAtomics(reader.string(), 18).toString();
197198
break;
198199
case 5:
199-
message.goalBonded = reader.string();
200+
message.goalBonded = Decimal.fromAtomics(reader.string(), 18).toString();
200201
break;
201202
case 6:
202203
message.blocksPerYear = reader.uint64();

__fixtures__/v-next/outputicjs/cosmos/staking/v1beta1/staking.ts

+15-14
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { Duration, DurationAmino } from "../../../google/protobuf/duration";
55
import { Coin, CoinAmino } from "../../base/v1beta1/coin";
66
import { BinaryReader, BinaryWriter } from "../../../binary";
77
import { DeepPartial, toTimestamp, fromTimestamp } from "../../../helpers";
8+
import { Decimal } from "@interchainjs/math";
89
import { encodePubkey, decodePubkey } from "@interchainjs/pubkey";
910
import { Pubkey } from "@cosmjs/amino";
1011
/** BondStatus is the status of a validator. */
@@ -750,13 +751,13 @@ export const CommissionRates = {
750751
aminoType: "cosmos-sdk/CommissionRates",
751752
encode(message: CommissionRates, writer: BinaryWriter = BinaryWriter.create()): BinaryWriter {
752753
if (message.rate !== "") {
753-
writer.uint32(10).string(message.rate);
754+
writer.uint32(10).string(Decimal.fromUserInput(message.rate, 18).atomics);
754755
}
755756
if (message.maxRate !== "") {
756-
writer.uint32(18).string(message.maxRate);
757+
writer.uint32(18).string(Decimal.fromUserInput(message.maxRate, 18).atomics);
757758
}
758759
if (message.maxChangeRate !== "") {
759-
writer.uint32(26).string(message.maxChangeRate);
760+
writer.uint32(26).string(Decimal.fromUserInput(message.maxChangeRate, 18).atomics);
760761
}
761762
return writer;
762763
},
@@ -768,13 +769,13 @@ export const CommissionRates = {
768769
const tag = reader.uint32();
769770
switch (tag >>> 3) {
770771
case 1:
771-
message.rate = reader.string();
772+
message.rate = Decimal.fromAtomics(reader.string(), 18).toString();
772773
break;
773774
case 2:
774-
message.maxRate = reader.string();
775+
message.maxRate = Decimal.fromAtomics(reader.string(), 18).toString();
775776
break;
776777
case 3:
777-
message.maxChangeRate = reader.string();
778+
message.maxChangeRate = Decimal.fromAtomics(reader.string(), 18).toString();
778779
break;
779780
default:
780781
reader.skipType(tag & 7);
@@ -1067,7 +1068,7 @@ export const Validator = {
10671068
writer.uint32(42).string(message.tokens);
10681069
}
10691070
if (message.delegatorShares !== "") {
1070-
writer.uint32(50).string(message.delegatorShares);
1071+
writer.uint32(50).string(Decimal.fromUserInput(message.delegatorShares, 18).atomics);
10711072
}
10721073
if (message.description !== undefined) {
10731074
Description.encode(message.description, writer.uint32(58).fork()).ldelim();
@@ -1109,7 +1110,7 @@ export const Validator = {
11091110
message.tokens = reader.string();
11101111
break;
11111112
case 6:
1112-
message.delegatorShares = reader.string();
1113+
message.delegatorShares = Decimal.fromAtomics(reader.string(), 18).toString();
11131114
break;
11141115
case 7:
11151116
message.description = Description.decode(reader, reader.uint32());
@@ -1632,7 +1633,7 @@ export const Delegation = {
16321633
writer.uint32(18).string(message.validatorAddress);
16331634
}
16341635
if (message.shares !== "") {
1635-
writer.uint32(26).string(message.shares);
1636+
writer.uint32(26).string(Decimal.fromUserInput(message.shares, 18).atomics);
16361637
}
16371638
return writer;
16381639
},
@@ -1650,7 +1651,7 @@ export const Delegation = {
16501651
message.validatorAddress = reader.string();
16511652
break;
16521653
case 3:
1653-
message.shares = reader.string();
1654+
message.shares = Decimal.fromAtomics(reader.string(), 18).toString();
16541655
break;
16551656
default:
16561657
reader.skipType(tag & 7);
@@ -1932,7 +1933,7 @@ export const RedelegationEntry = {
19321933
writer.uint32(26).string(message.initialBalance);
19331934
}
19341935
if (message.sharesDst !== "") {
1935-
writer.uint32(34).string(message.sharesDst);
1936+
writer.uint32(34).string(Decimal.fromUserInput(message.sharesDst, 18).atomics);
19361937
}
19371938
return writer;
19381939
},
@@ -1953,7 +1954,7 @@ export const RedelegationEntry = {
19531954
message.initialBalance = reader.string();
19541955
break;
19551956
case 4:
1956-
message.sharesDst = reader.string();
1957+
message.sharesDst = Decimal.fromAtomics(reader.string(), 18).toString();
19571958
break;
19581959
default:
19591960
reader.skipType(tag & 7);
@@ -2154,7 +2155,7 @@ export const Params = {
21542155
writer.uint32(42).string(message.bondDenom);
21552156
}
21562157
if (message.minCommissionRate !== "") {
2157-
writer.uint32(50).string(message.minCommissionRate);
2158+
writer.uint32(50).string(Decimal.fromUserInput(message.minCommissionRate, 18).atomics);
21582159
}
21592160
return writer;
21602161
},
@@ -2181,7 +2182,7 @@ export const Params = {
21812182
message.bondDenom = reader.string();
21822183
break;
21832184
case 6:
2184-
message.minCommissionRate = reader.string();
2185+
message.minCommissionRate = Decimal.fromAtomics(reader.string(), 18).toString();
21852186
break;
21862187
default:
21872188
reader.skipType(tag & 7);

0 commit comments

Comments
 (0)