UNPKG

interchainjs

Version:

InterchainJS is a JavaScript library for interacting with Cosmos SDK based blockchains.

141 lines (140 loc) 5.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GenesisState = void 0; const token_1 = require("./token"); const transfer_1 = require("./transfer"); const coin_1 = require("../../../../cosmos/base/v1beta1/coin"); const binary_1 = require("../../../../binary"); const registry_1 = require("../../../../registry"); function createBaseGenesisState() { return { portId: "", denoms: [], params: transfer_1.Params.fromPartial({}), totalEscrowed: [] }; } /** * GenesisState defines the ibc-transfer genesis state * @name GenesisState * @package ibc.applications.transfer.v1 * @see proto type: ibc.applications.transfer.v1.GenesisState */ exports.GenesisState = { typeUrl: "/ibc.applications.transfer.v1.GenesisState", aminoType: "cosmos-sdk/GenesisState", is(o) { return o && (o.$typeUrl === exports.GenesisState.typeUrl || typeof o.portId === "string" && Array.isArray(o.denoms) && (!o.denoms.length || token_1.Denom.is(o.denoms[0])) && transfer_1.Params.is(o.params) && Array.isArray(o.totalEscrowed) && (!o.totalEscrowed.length || coin_1.Coin.is(o.totalEscrowed[0]))); }, isAmino(o) { return o && (o.$typeUrl === exports.GenesisState.typeUrl || typeof o.port_id === "string" && Array.isArray(o.denoms) && (!o.denoms.length || token_1.Denom.isAmino(o.denoms[0])) && transfer_1.Params.isAmino(o.params) && Array.isArray(o.total_escrowed) && (!o.total_escrowed.length || coin_1.Coin.isAmino(o.total_escrowed[0]))); }, encode(message, writer = binary_1.BinaryWriter.create()) { if (message.portId !== "") { writer.uint32(10).string(message.portId); } for (const v of message.denoms) { token_1.Denom.encode(v, writer.uint32(18).fork()).ldelim(); } if (message.params !== undefined) { transfer_1.Params.encode(message.params, writer.uint32(26).fork()).ldelim(); } for (const v of message.totalEscrowed) { coin_1.Coin.encode(v, writer.uint32(34).fork()).ldelim(); } return writer; }, decode(input, length) { const reader = input instanceof binary_1.BinaryReader ? input : new binary_1.BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseGenesisState(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.portId = reader.string(); break; case 2: message.denoms.push(token_1.Denom.decode(reader, reader.uint32())); break; case 3: message.params = transfer_1.Params.decode(reader, reader.uint32()); break; case 4: message.totalEscrowed.push(coin_1.Coin.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBaseGenesisState(); message.portId = object.portId ?? ""; message.denoms = object.denoms?.map(e => token_1.Denom.fromPartial(e)) || []; message.params = object.params !== undefined && object.params !== null ? transfer_1.Params.fromPartial(object.params) : undefined; message.totalEscrowed = object.totalEscrowed?.map(e => coin_1.Coin.fromPartial(e)) || []; return message; }, fromAmino(object) { const message = createBaseGenesisState(); if (object.port_id !== undefined && object.port_id !== null) { message.portId = object.port_id; } message.denoms = object.denoms?.map(e => token_1.Denom.fromAmino(e)) || []; if (object.params !== undefined && object.params !== null) { message.params = transfer_1.Params.fromAmino(object.params); } message.totalEscrowed = object.total_escrowed?.map(e => coin_1.Coin.fromAmino(e)) || []; return message; }, toAmino(message) { const obj = {}; obj.port_id = message.portId === "" ? undefined : message.portId; if (message.denoms) { obj.denoms = message.denoms.map(e => e ? token_1.Denom.toAmino(e) : undefined); } else { obj.denoms = message.denoms; } obj.params = message.params ? transfer_1.Params.toAmino(message.params) : undefined; if (message.totalEscrowed) { obj.total_escrowed = message.totalEscrowed.map(e => e ? coin_1.Coin.toAmino(e) : undefined); } else { obj.total_escrowed = message.totalEscrowed; } return obj; }, fromAminoMsg(object) { return exports.GenesisState.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/GenesisState", value: exports.GenesisState.toAmino(message) }; }, fromProtoMsg(message) { return exports.GenesisState.decode(message.value); }, toProto(message) { return exports.GenesisState.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/ibc.applications.transfer.v1.GenesisState", value: exports.GenesisState.encode(message).finish() }; }, registerTypeUrl() { if (!registry_1.GlobalDecoderRegistry.registerExistingTypeUrl(exports.GenesisState.typeUrl)) { return; } token_1.Denom.registerTypeUrl(); transfer_1.Params.registerTypeUrl(); coin_1.Coin.registerTypeUrl(); } };