Skip to content

Commit 3a27a2e

Browse files
committed
improve ibc history
1 parent ca3b4aa commit 3a27a2e

File tree

1 file changed

+64
-2
lines changed

1 file changed

+64
-2
lines changed

shared/src/block.rs

Lines changed: 64 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,69 @@ impl Block {
212212
}
213213
}
214214
// IbcMsg is only used for non-transfer ibc packets
215-
TransactionKind::IbcMsg(_) => vec![],
215+
TransactionKind::IbcMsg(Some(data)) => {
216+
match data.0 {
217+
IbcMessage::Envelope(msg_envelope) => {
218+
match *msg_envelope {
219+
MsgEnvelope::Client(client_msg) => match client_msg {
220+
namada_ibc::core::client::types::msgs::ClientMsg::CreateClient(msg_create_client) => {
221+
vec![TransactionTarget::sent(
222+
tx.tx_id.clone(),
223+
msg_create_client.signer.to_string(),
224+
)]
225+
},
226+
namada_ibc::core::client::types::msgs::ClientMsg::UpdateClient(msg_update_client) => {
227+
vec![TransactionTarget::sent(
228+
tx.tx_id.clone(),
229+
msg_update_client.signer.to_string(),
230+
)]
231+
},
232+
namada_ibc::core::client::types::msgs::ClientMsg::UpgradeClient(msg_upgrade_client) => {
233+
vec![TransactionTarget::sent(
234+
tx.tx_id.clone(),
235+
msg_upgrade_client.signer.to_string(),
236+
)]
237+
},
238+
namada_ibc::core::client::types::msgs::ClientMsg::RecoverClient(msg_recover_client) => {
239+
vec![TransactionTarget::sent(
240+
tx.tx_id.clone(),
241+
msg_recover_client.signer.to_string(),
242+
)]
243+
},
244+
_ => vec![]
245+
},
246+
MsgEnvelope::Packet(packet_msg) => match packet_msg {
247+
PacketMsg::Recv(msg_recv_packet) => {
248+
vec![TransactionTarget::sent(
249+
tx.tx_id.clone(),
250+
msg_recv_packet.signer.to_string(),
251+
)]
252+
},
253+
PacketMsg::Ack(msg_acknowledgement) => {
254+
vec![TransactionTarget::sent(
255+
tx.tx_id.clone(),
256+
msg_acknowledgement.signer.to_string(),
257+
)]
258+
},
259+
PacketMsg::Timeout(msg_timeout) => {
260+
vec![TransactionTarget::sent(
261+
tx.tx_id.clone(),
262+
msg_timeout.signer.to_string(),
263+
)]
264+
},
265+
PacketMsg::TimeoutOnClose(msg_timeout_on_close) => {
266+
vec![TransactionTarget::sent(
267+
tx.tx_id.clone(),
268+
msg_timeout_on_close.signer.to_string(),
269+
)]
270+
},
271+
}
272+
_ => vec![]
273+
}
274+
},
275+
_ => vec![]
276+
}
277+
},
216278
TransactionKind::IbcTrasparentTransfer((_, transfer))
217279
| TransactionKind::IbcShieldingTransfer((_, transfer))
218280
| TransactionKind::IbcUnshieldingTransfer((_, transfer)) => {
@@ -389,7 +451,7 @@ impl Block {
389451
vec![]
390452
}
391453
}
392-
TransactionKind::Unknown(_) => vec![],
454+
TransactionKind::IbcMsg(None) | TransactionKind::Unknown(_) => vec![],
393455
})
394456
.collect::<HashSet<_>>()
395457
}

0 commit comments

Comments
 (0)