parseList method
Parses a dispatch eventType whose payload is a JSON array.
Returns null for unrecognized event types or when deserialization
fails, so the caller can skip emitting an event.
Implementation
GatewayEvent? parseList(String eventType, List<dynamic> data) {
try {
return switch (eventType) {
'WEBAUTHN_CREDENTIALS_UPDATE' => WebauthnCredentialsUpdateEvent(
credentials: data
.map(
(e) => WebAuthnCredentialResponse.fromJson(
(e as Map).cast<String, Object?>(),
),
)
.toList(),
),
'USER_PINNED_DMS_UPDATE' => UserPinnedDmsUpdateEvent(
pinnedDmChannelIds: data.map((dynamic id) => id.toString()).toList(),
),
_ => null,
};
} catch (_) {
return null;
}
}