decodePalletEvent method

Map<String, dynamic> decodePalletEvent(
  1. String palletName,
  2. int eventIndex,
  3. Input input
)

Decode event from specific pallet (when you know the pallet) This is useful when you already know which pallet the event is from

Implementation

Map<String, dynamic> decodePalletEvent(String palletName, int eventIndex, Input input) {
  final pallet = registry.palletByName(palletName);
  if (pallet == null) {
    throw MetadataException('Pallet $palletName not found');
  }

  if (pallet.event == null) {
    throw MetadataException('Pallet $palletName has no events');
  }

  final eventTypeId = pallet.event!.type;
  final eventVariant = registry.getVariantByIndex(eventTypeId, eventIndex);

  if (eventVariant == null) {
    throw MetadataException('Event with index $eventIndex not found in pallet $palletName');
  }

  return _decodeEventData(input, eventVariant);
}