mirror of
https://github.com/cosmos/cosmjs.git
synced 2025-03-10 21:49:15 +00:00
Merge pull request #1443 from cosmos/sdk47-types
Add group and gov v1 message types
This commit is contained in:
commit
9ecee56a04
@ -28,6 +28,7 @@ and this project adheres to
|
|||||||
waiting for block inclusion. ([#1396])
|
waiting for block inclusion. ([#1396])
|
||||||
- @cosmjs/cosmwasm-stargate: Add Amino JSON support for
|
- @cosmjs/cosmwasm-stargate: Add Amino JSON support for
|
||||||
`MsgStoreCode.instantiate_permission`. ([#334])
|
`MsgStoreCode.instantiate_permission`. ([#334])
|
||||||
|
- @cosmjs/stargate: Add group and gov v1 message types
|
||||||
|
|
||||||
[#334]: https://github.com/cosmos/cosmjs/issues/334
|
[#334]: https://github.com/cosmos/cosmjs/issues/334
|
||||||
[#1266]: https://github.com/cosmos/cosmjs/issues/1266
|
[#1266]: https://github.com/cosmos/cosmjs/issues/1266
|
||||||
|
@ -33,6 +33,7 @@ export {
|
|||||||
createEvidenceAminoConverters,
|
createEvidenceAminoConverters,
|
||||||
createFeegrantAminoConverters,
|
createFeegrantAminoConverters,
|
||||||
createGovAminoConverters,
|
createGovAminoConverters,
|
||||||
|
createGroupAminoConverters,
|
||||||
createIbcAminoConverters,
|
createIbcAminoConverters,
|
||||||
createSlashingAminoConverters,
|
createSlashingAminoConverters,
|
||||||
createStakingAminoConverters,
|
createStakingAminoConverters,
|
||||||
|
@ -103,6 +103,9 @@ export function isAminoMsgDeposit(msg: AminoMsg): msg is AminoMsgDeposit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function createGovAminoConverters(): AminoConverters {
|
export function createGovAminoConverters(): AminoConverters {
|
||||||
|
// Gov v1 types missing, see
|
||||||
|
// https://github.com/cosmos/cosmjs/issues/1442
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"/cosmos.gov.v1beta1.MsgDeposit": {
|
"/cosmos.gov.v1beta1.MsgDeposit": {
|
||||||
aminoType: "cosmos-sdk/MsgDeposit",
|
aminoType: "cosmos-sdk/MsgDeposit",
|
||||||
|
@ -1,13 +1,35 @@
|
|||||||
import { EncodeObject, GeneratedType } from "@cosmjs/proto-signing";
|
import { EncodeObject, GeneratedType } from "@cosmjs/proto-signing";
|
||||||
|
import {
|
||||||
|
MsgDeposit as V1MsgDeposit,
|
||||||
|
MsgSubmitProposal as V1MsgSubmitProposal,
|
||||||
|
MsgUpdateParams as V1MsgUpdateParams,
|
||||||
|
MsgVote as V1MsgVote,
|
||||||
|
MsgVoteWeighted as V1MsgVoteWeighted,
|
||||||
|
} from "cosmjs-types/cosmos/gov/v1/tx";
|
||||||
import { MsgDeposit, MsgSubmitProposal, MsgVote, MsgVoteWeighted } from "cosmjs-types/cosmos/gov/v1beta1/tx";
|
import { MsgDeposit, MsgSubmitProposal, MsgVote, MsgVoteWeighted } from "cosmjs-types/cosmos/gov/v1beta1/tx";
|
||||||
|
|
||||||
export const govTypes: ReadonlyArray<[string, GeneratedType]> = [
|
export const govTypes: ReadonlyArray<[string, GeneratedType]> = [
|
||||||
|
["/cosmos.gov.v1.MsgDeposit", V1MsgDeposit],
|
||||||
|
["/cosmos.gov.v1.MsgSubmitProposal", V1MsgSubmitProposal],
|
||||||
|
["/cosmos.gov.v1.MsgUpdateParams", V1MsgUpdateParams],
|
||||||
|
["/cosmos.gov.v1.MsgVote", V1MsgVote],
|
||||||
|
["/cosmos.gov.v1.MsgVoteWeighted", V1MsgVoteWeighted],
|
||||||
|
|
||||||
["/cosmos.gov.v1beta1.MsgDeposit", MsgDeposit],
|
["/cosmos.gov.v1beta1.MsgDeposit", MsgDeposit],
|
||||||
["/cosmos.gov.v1beta1.MsgSubmitProposal", MsgSubmitProposal],
|
["/cosmos.gov.v1beta1.MsgSubmitProposal", MsgSubmitProposal],
|
||||||
["/cosmos.gov.v1beta1.MsgVote", MsgVote],
|
["/cosmos.gov.v1beta1.MsgVote", MsgVote],
|
||||||
["/cosmos.gov.v1beta1.MsgVoteWeighted", MsgVoteWeighted],
|
["/cosmos.gov.v1beta1.MsgVoteWeighted", MsgVoteWeighted],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
// There are no EncodeObject implementations for the new v1 message types because
|
||||||
|
// those things don't scale (https://github.com/cosmos/cosmjs/issues/1440). We need to
|
||||||
|
// address this more fundamentally. Users can use
|
||||||
|
// const msg = {
|
||||||
|
// typeUrl: "/cosmos.gov.v1.MsgDeposit",
|
||||||
|
// value: MsgDeposit.fromPartial({ ... })
|
||||||
|
// }
|
||||||
|
// in their app.
|
||||||
|
|
||||||
export interface MsgDepositEncodeObject extends EncodeObject {
|
export interface MsgDepositEncodeObject extends EncodeObject {
|
||||||
readonly typeUrl: "/cosmos.gov.v1beta1.MsgDeposit";
|
readonly typeUrl: "/cosmos.gov.v1beta1.MsgDeposit";
|
||||||
readonly value: Partial<MsgDeposit>;
|
readonly value: Partial<MsgDeposit>;
|
||||||
|
6
packages/stargate/src/modules/group/aminomessages.ts
Normal file
6
packages/stargate/src/modules/group/aminomessages.ts
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
import { AminoConverters } from "../../aminotypes";
|
||||||
|
|
||||||
|
export function createGroupAminoConverters(): AminoConverters {
|
||||||
|
// Missing, see https://github.com/cosmos/cosmjs/issues/1441
|
||||||
|
return {};
|
||||||
|
}
|
43
packages/stargate/src/modules/group/messages.ts
Normal file
43
packages/stargate/src/modules/group/messages.ts
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
import { GeneratedType } from "@cosmjs/proto-signing";
|
||||||
|
import {
|
||||||
|
MsgCreateGroup,
|
||||||
|
MsgCreateGroupPolicy,
|
||||||
|
MsgCreateGroupWithPolicy,
|
||||||
|
MsgExec,
|
||||||
|
MsgLeaveGroup,
|
||||||
|
MsgSubmitProposal,
|
||||||
|
MsgUpdateGroupAdmin,
|
||||||
|
MsgUpdateGroupMembers,
|
||||||
|
MsgUpdateGroupMetadata,
|
||||||
|
MsgUpdateGroupPolicyAdmin,
|
||||||
|
MsgUpdateGroupPolicyDecisionPolicy,
|
||||||
|
MsgUpdateGroupPolicyMetadata,
|
||||||
|
MsgVote,
|
||||||
|
MsgWithdrawProposal,
|
||||||
|
} from "cosmjs-types/cosmos/group/v1/tx";
|
||||||
|
|
||||||
|
export const groupTypes: ReadonlyArray<[string, GeneratedType]> = [
|
||||||
|
["/cosmos.group.v1.MsgCreateGroup", MsgCreateGroup],
|
||||||
|
["/cosmos.group.v1.MsgCreateGroupPolicy", MsgCreateGroupPolicy],
|
||||||
|
["/cosmos.group.v1.MsgCreateGroupWithPolicy", MsgCreateGroupWithPolicy],
|
||||||
|
["/cosmos.group.v1.MsgExec", MsgExec],
|
||||||
|
["/cosmos.group.v1.MsgLeaveGroup", MsgLeaveGroup],
|
||||||
|
["/cosmos.group.v1.MsgSubmitProposal", MsgSubmitProposal],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupAdmin", MsgUpdateGroupAdmin],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupMembers", MsgUpdateGroupMembers],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupMetadata", MsgUpdateGroupMetadata],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupPolicyAdmin", MsgUpdateGroupPolicyAdmin],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupPolicyDecisionPolicy", MsgUpdateGroupPolicyDecisionPolicy],
|
||||||
|
["/cosmos.group.v1.MsgUpdateGroupPolicyMetadata", MsgUpdateGroupPolicyMetadata],
|
||||||
|
["/cosmos.group.v1.MsgVote", MsgVote],
|
||||||
|
["/cosmos.group.v1.MsgWithdrawProposal", MsgWithdrawProposal],
|
||||||
|
];
|
||||||
|
|
||||||
|
// There are no EncodeObject implementations for the new v1 message types because
|
||||||
|
// those things don't scale (https://github.com/cosmos/cosmjs/issues/1440). We need to
|
||||||
|
// address this more fundamentally. Users can use
|
||||||
|
// const msg = {
|
||||||
|
// typeUrl: "/cosmos.group.v1.MsgCreateGroup",
|
||||||
|
// value: MsgCreateGroup.fromPartial({ ... })
|
||||||
|
// }
|
||||||
|
// in their app.
|
@ -64,6 +64,8 @@ export {
|
|||||||
MsgVoteWeightedEncodeObject,
|
MsgVoteWeightedEncodeObject,
|
||||||
} from "./gov/messages";
|
} from "./gov/messages";
|
||||||
export { GovExtension, GovParamsType, GovProposalId, setupGovExtension } from "./gov/queries";
|
export { GovExtension, GovParamsType, GovProposalId, setupGovExtension } from "./gov/queries";
|
||||||
|
export { createGroupAminoConverters } from "./group/aminomessages";
|
||||||
|
export { groupTypes } from "./group/messages";
|
||||||
export { AminoMsgTransfer, createIbcAminoConverters, isAminoMsgTransfer } from "./ibc/aminomessages";
|
export { AminoMsgTransfer, createIbcAminoConverters, isAminoMsgTransfer } from "./ibc/aminomessages";
|
||||||
export { ibcTypes, isMsgTransferEncodeObject, MsgTransferEncodeObject } from "./ibc/messages";
|
export { ibcTypes, isMsgTransferEncodeObject, MsgTransferEncodeObject } from "./ibc/messages";
|
||||||
export { IbcExtension, setupIbcExtension } from "./ibc/queries";
|
export { IbcExtension, setupIbcExtension } from "./ibc/queries";
|
||||||
|
@ -36,6 +36,7 @@ import {
|
|||||||
distributionTypes,
|
distributionTypes,
|
||||||
feegrantTypes,
|
feegrantTypes,
|
||||||
govTypes,
|
govTypes,
|
||||||
|
groupTypes,
|
||||||
ibcTypes,
|
ibcTypes,
|
||||||
MsgDelegateEncodeObject,
|
MsgDelegateEncodeObject,
|
||||||
MsgSendEncodeObject,
|
MsgSendEncodeObject,
|
||||||
@ -64,6 +65,7 @@ export const defaultRegistryTypes: ReadonlyArray<[string, GeneratedType]> = [
|
|||||||
...distributionTypes,
|
...distributionTypes,
|
||||||
...feegrantTypes,
|
...feegrantTypes,
|
||||||
...govTypes,
|
...govTypes,
|
||||||
|
...groupTypes,
|
||||||
...stakingTypes,
|
...stakingTypes,
|
||||||
...ibcTypes,
|
...ibcTypes,
|
||||||
...vestingTypes,
|
...vestingTypes,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user