summaryrefslogtreecommitdiff
path: root/player-android/lib/models/playback_hint.dart
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-05-17 15:31:16 +0300
committerPaul Buetow <paul@buetow.org>2026-05-17 15:31:16 +0300
commitc11b7c145fc1b2db6c1ed29a7abd739d0f6cbf3b (patch)
tree4db8478fded8f3e1ad832b2788f6f82888a8f3ad /player-android/lib/models/playback_hint.dart
parent914bd7cd6aa14e839332a98d91c30b19865b0cf2 (diff)
Add player-android/ Flutter skeleton
Diffstat (limited to 'player-android/lib/models/playback_hint.dart')
-rw-r--r--player-android/lib/models/playback_hint.dart14
1 files changed, 14 insertions, 0 deletions
diff --git a/player-android/lib/models/playback_hint.dart b/player-android/lib/models/playback_hint.dart
new file mode 100644
index 0000000..076fd4d
--- /dev/null
+++ b/player-android/lib/models/playback_hint.dart
@@ -0,0 +1,14 @@
+import 'json_helpers.dart';
+
+class PlaybackHint {
+ final int mediaId;
+ final double positionSeconds;
+ final bool finished;
+ final DateTime? updatedAt;
+
+ const PlaybackHint({required this.mediaId, required this.positionSeconds, required this.finished, this.updatedAt});
+
+ factory PlaybackHint.fromJson(Map<String, dynamic> json) => PlaybackHint(mediaId: json['media_id'] as int? ?? 0, positionSeconds: (json['position_seconds'] as num?)?.toDouble() ?? 0, finished: json['finished'] as bool? ?? false, updatedAt: dateTimeFromJson(json['updated_at']));
+
+ Map<String, dynamic> toJson() => {'media_id': mediaId, 'position_seconds': positionSeconds, 'finished': finished, 'updated_at': dateTimeToJson(updatedAt)};
+}