UNPKG

interchainjs

Version:

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

321 lines (320 loc) 12.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CommitID = exports.StoreInfo = exports.CommitInfo = void 0; const timestamp_1 = require("../../../google/protobuf/timestamp"); const binary_1 = require("../../../binary"); const helpers_1 = require("../../../helpers"); const registry_1 = require("../../../registry"); function createBaseCommitInfo() { return { version: BigInt(0), storeInfos: [], timestamp: new Date() }; } /** * CommitInfo defines commit information used by the multi-store when committing * a version/height. * @name CommitInfo * @package cosmos.store.v1beta1 * @see proto type: cosmos.store.v1beta1.CommitInfo */ exports.CommitInfo = { typeUrl: "/cosmos.store.v1beta1.CommitInfo", aminoType: "cosmos-sdk/CommitInfo", is(o) { return o && (o.$typeUrl === exports.CommitInfo.typeUrl || typeof o.version === "bigint" && Array.isArray(o.storeInfos) && (!o.storeInfos.length || exports.StoreInfo.is(o.storeInfos[0])) && timestamp_1.Timestamp.is(o.timestamp)); }, isAmino(o) { return o && (o.$typeUrl === exports.CommitInfo.typeUrl || typeof o.version === "bigint" && Array.isArray(o.store_infos) && (!o.store_infos.length || exports.StoreInfo.isAmino(o.store_infos[0])) && timestamp_1.Timestamp.isAmino(o.timestamp)); }, encode(message, writer = binary_1.BinaryWriter.create()) { if (message.version !== BigInt(0)) { writer.uint32(8).int64(message.version); } for (const v of message.storeInfos) { exports.StoreInfo.encode(v, writer.uint32(18).fork()).ldelim(); } if (message.timestamp !== undefined) { timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.timestamp), writer.uint32(26).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 = createBaseCommitInfo(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.version = reader.int64(); break; case 2: message.storeInfos.push(exports.StoreInfo.decode(reader, reader.uint32())); break; case 3: message.timestamp = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBaseCommitInfo(); message.version = object.version !== undefined && object.version !== null ? BigInt(object.version.toString()) : BigInt(0); message.storeInfos = object.storeInfos?.map(e => exports.StoreInfo.fromPartial(e)) || []; message.timestamp = object.timestamp ?? undefined; return message; }, fromAmino(object) { const message = createBaseCommitInfo(); if (object.version !== undefined && object.version !== null) { message.version = BigInt(object.version); } message.storeInfos = object.store_infos?.map(e => exports.StoreInfo.fromAmino(e)) || []; if (object.timestamp !== undefined && object.timestamp !== null) { message.timestamp = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.fromAmino(object.timestamp)); } return message; }, toAmino(message) { const obj = {}; obj.version = message.version !== BigInt(0) ? message.version?.toString() : undefined; if (message.storeInfos) { obj.store_infos = message.storeInfos.map(e => e ? exports.StoreInfo.toAmino(e) : undefined); } else { obj.store_infos = message.storeInfos; } obj.timestamp = message.timestamp ? timestamp_1.Timestamp.toAmino((0, helpers_1.toTimestamp)(message.timestamp)) : undefined; return obj; }, fromAminoMsg(object) { return exports.CommitInfo.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/CommitInfo", value: exports.CommitInfo.toAmino(message) }; }, fromProtoMsg(message) { return exports.CommitInfo.decode(message.value); }, toProto(message) { return exports.CommitInfo.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/cosmos.store.v1beta1.CommitInfo", value: exports.CommitInfo.encode(message).finish() }; }, registerTypeUrl() { if (!registry_1.GlobalDecoderRegistry.registerExistingTypeUrl(exports.CommitInfo.typeUrl)) { return; } exports.StoreInfo.registerTypeUrl(); } }; function createBaseStoreInfo() { return { name: "", commitId: exports.CommitID.fromPartial({}) }; } /** * StoreInfo defines store-specific commit information. It contains a reference * between a store name and the commit ID. * @name StoreInfo * @package cosmos.store.v1beta1 * @see proto type: cosmos.store.v1beta1.StoreInfo */ exports.StoreInfo = { typeUrl: "/cosmos.store.v1beta1.StoreInfo", aminoType: "cosmos-sdk/StoreInfo", is(o) { return o && (o.$typeUrl === exports.StoreInfo.typeUrl || typeof o.name === "string" && exports.CommitID.is(o.commitId)); }, isAmino(o) { return o && (o.$typeUrl === exports.StoreInfo.typeUrl || typeof o.name === "string" && exports.CommitID.isAmino(o.commit_id)); }, encode(message, writer = binary_1.BinaryWriter.create()) { if (message.name !== "") { writer.uint32(10).string(message.name); } if (message.commitId !== undefined) { exports.CommitID.encode(message.commitId, writer.uint32(18).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 = createBaseStoreInfo(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.name = reader.string(); break; case 2: message.commitId = exports.CommitID.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBaseStoreInfo(); message.name = object.name ?? ""; message.commitId = object.commitId !== undefined && object.commitId !== null ? exports.CommitID.fromPartial(object.commitId) : undefined; return message; }, fromAmino(object) { const message = createBaseStoreInfo(); if (object.name !== undefined && object.name !== null) { message.name = object.name; } if (object.commit_id !== undefined && object.commit_id !== null) { message.commitId = exports.CommitID.fromAmino(object.commit_id); } return message; }, toAmino(message) { const obj = {}; obj.name = message.name === "" ? undefined : message.name; obj.commit_id = message.commitId ? exports.CommitID.toAmino(message.commitId) : undefined; return obj; }, fromAminoMsg(object) { return exports.StoreInfo.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/StoreInfo", value: exports.StoreInfo.toAmino(message) }; }, fromProtoMsg(message) { return exports.StoreInfo.decode(message.value); }, toProto(message) { return exports.StoreInfo.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/cosmos.store.v1beta1.StoreInfo", value: exports.StoreInfo.encode(message).finish() }; }, registerTypeUrl() { if (!registry_1.GlobalDecoderRegistry.registerExistingTypeUrl(exports.StoreInfo.typeUrl)) { return; } exports.CommitID.registerTypeUrl(); } }; function createBaseCommitID() { return { version: BigInt(0), hash: new Uint8Array() }; } /** * CommitID defines the commitment information when a specific store is * committed. * @name CommitID * @package cosmos.store.v1beta1 * @see proto type: cosmos.store.v1beta1.CommitID */ exports.CommitID = { typeUrl: "/cosmos.store.v1beta1.CommitID", aminoType: "cosmos-sdk/CommitID", is(o) { return o && (o.$typeUrl === exports.CommitID.typeUrl || typeof o.version === "bigint" && (o.hash instanceof Uint8Array || typeof o.hash === "string")); }, isAmino(o) { return o && (o.$typeUrl === exports.CommitID.typeUrl || typeof o.version === "bigint" && (o.hash instanceof Uint8Array || typeof o.hash === "string")); }, encode(message, writer = binary_1.BinaryWriter.create()) { if (message.version !== BigInt(0)) { writer.uint32(8).int64(message.version); } if (message.hash.length !== 0) { writer.uint32(18).bytes(message.hash); } 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 = createBaseCommitID(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.version = reader.int64(); break; case 2: message.hash = reader.bytes(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object) { const message = createBaseCommitID(); message.version = object.version !== undefined && object.version !== null ? BigInt(object.version.toString()) : BigInt(0); message.hash = object.hash ?? new Uint8Array(); return message; }, fromAmino(object) { const message = createBaseCommitID(); if (object.version !== undefined && object.version !== null) { message.version = BigInt(object.version); } if (object.hash !== undefined && object.hash !== null) { message.hash = (0, helpers_1.bytesFromBase64)(object.hash); } return message; }, toAmino(message) { const obj = {}; obj.version = message.version !== BigInt(0) ? message.version?.toString() : undefined; obj.hash = message.hash ? (0, helpers_1.base64FromBytes)(message.hash) : undefined; return obj; }, fromAminoMsg(object) { return exports.CommitID.fromAmino(object.value); }, toAminoMsg(message) { return { type: "cosmos-sdk/CommitID", value: exports.CommitID.toAmino(message) }; }, fromProtoMsg(message) { return exports.CommitID.decode(message.value); }, toProto(message) { return exports.CommitID.encode(message).finish(); }, toProtoMsg(message) { return { typeUrl: "/cosmos.store.v1beta1.CommitID", value: exports.CommitID.encode(message).finish() }; }, registerTypeUrl() { } };