create static method
Implementation
static PlayableItem create(Map<String, dynamic> data) {
final String id = data['id'] ?? '';
final String thumbnail = data['thumbnail'] ?? '';
final int duration = data['duration'] ?? 0;
final Uri? streamUrl = data['streamUrl'] ? Uri.parse(data['streamUrl'] ?? '') : null;
final TextComponentDetail title = TextComponentDetail.create(
[data['title'] ?? {}].map((d) => d as Map<String, dynamic>).toList(),
).first;
final TextComponentDetail author = TextComponentDetail.create(
[data['author'] ?? {}].map((d) => d as Map<String, dynamic>).toList(),
).first;
return PlayableItem(
id: id,
title: title,
author: author,
thumbnail: thumbnail,
duration: duration,
streamUrl: streamUrl,
);
}