UNPKG

interchainjs

Version:

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

320 lines (319 loc) 14.4 kB
import { IdentifiedChannel, PacketState, Params } from "./channel"; import { BinaryReader, BinaryWriter } from "../../../../binary"; import { GlobalDecoderRegistry } from "../../../../registry"; function createBaseGenesisState() { return { channels: [], acknowledgements: [], commitments: [], receipts: [], sendSequences: [], recvSequences: [], ackSequences: [], nextChannelSequence: BigInt(0), params: Params.fromPartial({}) }; } /** * GenesisState defines the ibc channel submodule's genesis state. * @name GenesisState * @package ibc.core.channel.v1 * @see proto type: ibc.core.channel.v1.GenesisState */ export const GenesisState = { typeUrl: "/ibc.core.channel.v1.GenesisState", aminoType: "cosmos-sdk/GenesisState", is(o) { return o && (o.$typeUrl === GenesisState.typeUrl || Array.isArray(o.channels) && (!o.channels.length || IdentifiedChannel.is(o.channels[0])) && Array.isArray(o.acknowledgements) && (!o.acknowledgements.length || PacketState.is(o.acknowledgements[0])) && Array.isArray(o.commitments) && (!o.commitments.length || PacketState.is(o.commitments[0])) && Array.isArray(o.receipts) && (!o.receipts.length || PacketState.is(o.receipts[0])) && Array.isArray(o.sendSequences) && (!o.sendSequences.length || PacketSequence.is(o.sendSequences[0])) && Array.isArray(o.recvSequences) && (!o.recvSequences.length || PacketSequence.is(o.recvSequences[0])) && Array.isArray(o.ackSequences) && (!o.ackSequences.length || PacketSequence.is(o.ackSequences[0])) && typeof o.nextChannelSequence === "bigint" && Params.is(o.params)); }, isAmino(o) { return o && (o.$typeUrl === GenesisState.typeUrl || Array.isArray(o.channels) && (!o.channels.length || IdentifiedChannel.isAmino(o.channels[0])) && Array.isArray(o.acknowledgements) && (!o.acknowledgements.length || PacketState.isAmino(o.acknowledgements[0])) && Array.isArray(o.commitments) && (!o.commitments.length || PacketState.isAmino(o.commitments[0])) && Array.isArray(o.receipts) && (!o.receipts.length || PacketState.isAmino(o.receipts[0])) && Array.isArray(o.send_sequences) && (!o.send_sequences.length || PacketSequence.isAmino(o.send_sequences[0])) && Array.isArray(o.recv_sequences) && (!o.recv_sequences.length || PacketSequence.isAmino(o.recv_sequences[0])) && Array.isArray(o.ack_sequences) && (!o.ack_sequences.length || PacketSequence.isAmino(o.ack_sequences[0])) && typeof o.next_channel_sequence === "bigint" && Params.isAmino(o.params)); }, encode(message, writer = BinaryWriter.create()) { for (const v of message.channels) { IdentifiedChannel.encode(v, writer.uint32(10).fork()).ldelim(); } for (const v of message.acknowledgements) { PacketState.encode(v, writer.uint32(18).fork()).ldelim(); } for (const v of message.commitments) { PacketState.encode(v, writer.uint32(26).fork()).ldelim(); } for (const v of message.receipts) { PacketState.encode(v, writer.uint32(34).fork()).ldelim(); } for (const v of message.sendSequences) { PacketSequence.encode(v, writer.uint32(42).fork()).ldelim(); } for (const v of message.recvSequences) { PacketSequence.encode(v, writer.uint32(50).fork()).ldelim(); } for (const v of message.ackSequences) { PacketSequence.encode(v, writer.uint32(58).fork()).ldelim(); } if (message.nextChannelSequence !== BigInt(0)) { writer.uint32(64).uint64(message.nextChannelSequence); } if (message.params !== undefined) { Params.encode(message.params, writer.uint32(74).fork()).ldelim(); } return writer; }, decode(input, length) { const reader = input instanceof BinaryReader ? input : new 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.channels.push(IdentifiedChannel.decode(reader, reader.uint32())); break; case 2: message.acknowledgements.push(PacketState.decode(reader, reader.uint32())); break; case 3: message.commitments.push(PacketState.decode(reader, reader.uint32())); break; case 4: message.receipts.push(PacketState.decode(reader, reader.uint32())); break; case 5: message.sendSequences.push(PacketSequence.decode(reader, reader.uint32())); break; case 6: message.recvSequences.push(PacketSequence.decode(reader, reader.uint32())); break; case 7: message.ackSequences.push(PacketSequence.decode(reader, reader.uint32())); break; case 8: message.nextChannelSequence = reader.uint64(); break; case 9: message.params = Params.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBaseGenesisState(); message.channels = object.channels?.map(e => IdentifiedChannel.fromPartial(e)) || []; message.acknowledgements = object.acknowledgements?.map(e => PacketState.fromPartial(e)) || []; message.commitments = object.commitments?.map(e => PacketState.fromPartial(e)) || []; message.receipts = object.receipts?.map(e => PacketState.fromPartial(e)) || []; message.sendSequences = object.sendSequences?.map(e => PacketSequence.fromPartial(e)) || []; message.recvSequences = object.recvSequences?.map(e => PacketSequence.fromPartial(e)) || []; message.ackSequences = object.ackSequences?.map(e => PacketSequence.fromPartial(e)) || []; message.nextChannelSequence = object.nextChannelSequence !== undefined && object.nextChannelSequence !== null ? BigInt(object.nextChannelSequence.toString()) : BigInt(0); message.params = object.params !== undefined && object.params !== null ? Params.fromPartial(object.params) : undefined; return message; }, fromAmino(object) { const message = createBaseGenesisState(); message.channels = object.channels?.map(e => IdentifiedChannel.fromAmino(e)) || []; message.acknowledgements = object.acknowledgements?.map(e => PacketState.fromAmino(e)) || []; message.commitments = object.commitments?.map(e => PacketState.fromAmino(e)) || []; message.receipts = object.receipts?.map(e => PacketState.fromAmino(e)) || []; message.sendSequences = object.send_sequences?.map(e => PacketSequence.fromAmino(e)) || []; message.recvSequences = object.recv_sequences?.map(e => PacketSequence.fromAmino(e)) || []; message.ackSequences = object.ack_sequences?.map(e => PacketSequence.fromAmino(e)) || []; if (object.next_channel_sequence !== undefined && object.next_channel_sequence !== null) { message.nextChannelSequence = BigInt(object.next_channel_sequence); } if (object.params !== undefined && object.params !== null) { message.params = Params.fromAmino(object.params); } return message; }, toAmino(message) { const obj = {}; if (message.channels) { obj.channels = message.channels.map(e => e ? IdentifiedChannel.toAmino(e) : undefined); } else { obj.channels = message.channels; } if (message.acknowledgements) { obj.acknowledgements = message.acknowledgements.map(e => e ? PacketState.toAmino(e) : undefined); } else { obj.acknowledgements = message.acknowledgements; } if (message.commitments) { obj.commitments = message.commitments.map(e => e ? PacketState.toAmino(e) : undefined); } else { obj.commitments = message.commitments; } if (message.receipts) { obj.receipts = message.receipts.map(e => e ? PacketState.toAmino(e) : undefined); } else { obj.receipts = message.receipts; } if (message.sendSequences) { obj.send_sequences = message.sendSequences.map(e => e ? PacketSequence.toAmino(e) : undefined); } else { obj.send_sequences = message.sendSequences; } if (message.recvSequences) { obj.recv_sequences = message.recvSequences.map(e => e ? PacketSequence.toAmino(e) : undefined); } else { obj.recv_sequences = message.recvSequences; } if (message.ackSequences) { obj.ack_sequences = message.ackSequences.map(e => e ? PacketSequence.toAmino(e) : undefined); } else { obj.ack_sequences = message.ackSequences; } obj.next_channel_sequence = message.nextChannelSequence !== BigInt(0) ? message.nextChannelSequence?.toString() : undefined; obj.params = message.params ? Params.toAmino(message.params) : undefined; return obj; }, fromAminoMsg(object) { return GenesisState.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/GenesisState", value: GenesisState.toAmino(message) }; }, fromProtoMsg(message) { return GenesisState.decode(message.value); }, toProto(message) { return GenesisState.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/ibc.core.channel.v1.GenesisState", value: GenesisState.encode(message).finish() }; }, registerTypeUrl() { if (!GlobalDecoderRegistry.registerExistingTypeUrl(GenesisState.typeUrl)) { return; } IdentifiedChannel.registerTypeUrl(); PacketState.registerTypeUrl(); PacketSequence.registerTypeUrl(); Params.registerTypeUrl(); } }; function createBasePacketSequence() { return { portId: "", channelId: "", sequence: BigInt(0) }; } /** * PacketSequence defines the genesis type necessary to retrieve and store * next send and receive sequences. * @name PacketSequence * @package ibc.core.channel.v1 * @see proto type: ibc.core.channel.v1.PacketSequence */ export const PacketSequence = { typeUrl: "/ibc.core.channel.v1.PacketSequence", aminoType: "cosmos-sdk/PacketSequence", is(o) { return o && (o.$typeUrl === PacketSequence.typeUrl || typeof o.portId === "string" && typeof o.channelId === "string" && typeof o.sequence === "bigint"); }, isAmino(o) { return o && (o.$typeUrl === PacketSequence.typeUrl || typeof o.port_id === "string" && typeof o.channel_id === "string" && typeof o.sequence === "bigint"); }, encode(message, writer = BinaryWriter.create()) { if (message.portId !== "") { writer.uint32(10).string(message.portId); } if (message.channelId !== "") { writer.uint32(18).string(message.channelId); } if (message.sequence !== BigInt(0)) { writer.uint32(24).uint64(message.sequence); } return writer; }, decode(input, length) { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBasePacketSequence(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.portId = reader.string(); break; case 2: message.channelId = reader.string(); break; case 3: message.sequence = reader.uint64(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBasePacketSequence(); message.portId = object.portId ?? ""; message.channelId = object.channelId ?? ""; message.sequence = object.sequence !== undefined && object.sequence !== null ? BigInt(object.sequence.toString()) : BigInt(0); return message; }, fromAmino(object) { const message = createBasePacketSequence(); if (object.port_id !== undefined && object.port_id !== null) { message.portId = object.port_id; } if (object.channel_id !== undefined && object.channel_id !== null) { message.channelId = object.channel_id; } if (object.sequence !== undefined && object.sequence !== null) { message.sequence = BigInt(object.sequence); } return message; }, toAmino(message) { const obj = {}; obj.port_id = message.portId === "" ? undefined : message.portId; obj.channel_id = message.channelId === "" ? undefined : message.channelId; obj.sequence = message.sequence !== BigInt(0) ? message.sequence?.toString() : undefined; return obj; }, fromAminoMsg(object) { return PacketSequence.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/PacketSequence", value: PacketSequence.toAmino(message) }; }, fromProtoMsg(message) { return PacketSequence.decode(message.value); }, toProto(message) { return PacketSequence.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/ibc.core.channel.v1.PacketSequence", value: PacketSequence.encode(message).finish() }; }, registerTypeUrl() { } };