Skip to content

Commit

Permalink
feat: AminoMsgSend_SendCredits
Browse files Browse the repository at this point in the history
  • Loading branch information
mhagel committed Jul 26, 2022
1 parent 661eb04 commit 1c0c100
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 5 deletions.
2 changes: 1 addition & 1 deletion packages/api/e2e/amino.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const TEST_MSG_SEND = MsgSend.fromPartial({
sender: TEST_ADDRESS,
recipient: TEST_ADDRESS,
credits: [
{ batchDenom: 'C02-001-19930101-20031031-001', tradableAmount: '1' },
{ batchDenom: 'C02-001-19930101-20031031-001', tradableAmount: '0.01' },
],
});

Expand Down
30 changes: 27 additions & 3 deletions packages/api/src/tx/modules/ecocredit/v1/aminomessages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,20 @@ export interface AminoMsgCreateClass extends AminoMsg {
};
}

interface AminoMsgSend_SendCredits {
$type: 'regen.ecocredit.v1.MsgSend.SendCredits';
batch_denom: string;
tradable_amount: string;
retired_amount: string;
retirement_jurisdiction: string;
}

export interface AminoMsgSend extends AminoMsg {
readonly type: typeof msgSendAminoType;
readonly value: {
readonly sender: string;
readonly recipient: string;
readonly credits: MsgSend_SendCredits[];
readonly credits: AminoMsgSend_SendCredits[];
};
}

Expand Down Expand Up @@ -87,7 +95,15 @@ export function createEcocreditAminoConverters(): AminoConverters {
return {
sender,
recipient,
credits,
credits: credits.map(credit => {
return {
$type: credit.$type,
batch_denom: credit.batchDenom,
tradable_amount: credit.tradableAmount,
retired_amount: credit.retiredAmount,
retirement_jurisdiction: credit.retirementJurisdiction,
};
}),
};
},
fromAmino: ({
Expand All @@ -98,7 +114,15 @@ export function createEcocreditAminoConverters(): AminoConverters {
return {
sender,
recipient,
credits,
credits: credits.map(credit => {
return {
$type: credit.$type,
batchDenom: credit.batch_denom,
tradableAmount: credit.tradable_amount,
retiredAmount: credit.retired_amount,
retirementJurisdiction: credit.retirement_jurisdiction,
};
}),
};
},
},
Expand Down
5 changes: 4 additions & 1 deletion packages/api/src/tx/msg.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import { SigningConnectionOptions } from '../api';
import { messageTypeRegistry } from '../generated/typeRegistry';
import { createStargateSigningClient } from './stargate-signing';
import { createEcocreditAminoConverters } from './modules';
import { MsgSend } from '../generated/regen/ecocredit/v1/tx';

export interface MessageClient {
readonly sign: (
Expand Down Expand Up @@ -46,7 +47,9 @@ function createDefaultTypes(): AminoConverters {
export async function setupTxExtension(
connection: SigningConnectionOptions,
): Promise<MessageClient> {
const customRegistry: Array<[string, GeneratedType]> = [];
const customRegistry: Array<[string, GeneratedType]> = [
['regen.ecocredit.v1.MsgSend', MsgSend],
];
messageTypeRegistry.forEach((value, key) => {
customRegistry.push([`/${key}`, value]);
});
Expand Down

0 comments on commit 1c0c100

Please sign in to comment.