part of 'connect.dart'; List> _tracksJson(List tracks) { return tracks.map((e) => e.toJson()).toList(); } @freezed class WebSocketLoadEventData with _$WebSocketLoadEventData { factory WebSocketLoadEventData({ @JsonKey(name: 'tracks', toJson: _tracksJson) required List tracks, String? collectionId, int? initialIndex, }) = _WebSocketLoadEventData; factory WebSocketLoadEventData.fromJson(Map json) => _$WebSocketLoadEventDataFromJson(json); } class WebSocketLoadEvent extends WebSocketEvent { WebSocketLoadEvent(WebSocketLoadEventData data) : super(WsEvent.load, data); factory WebSocketLoadEvent.fromJson(Map json) { return WebSocketLoadEvent( WebSocketLoadEventData.fromJson(json['data'] as Map), ); } }