feat: implement per book settings with player configuration and update methods

This commit is contained in:
Dr-Blank 2024-09-17 23:19:05 -04:00
parent fd42ee2343
commit e7dd4de515
No known key found for this signature in database
GPG key ID: 7452CC63F210A266
19 changed files with 1030 additions and 20 deletions

View file

@ -0,0 +1,47 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'nullable_player_settings.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
_$NullablePlayerSettingsImpl _$$NullablePlayerSettingsImplFromJson(
Map<String, dynamic> json) =>
_$NullablePlayerSettingsImpl(
miniPlayerSettings: json['miniPlayerSettings'] == null
? null
: MinimizedPlayerSettings.fromJson(
json['miniPlayerSettings'] as Map<String, dynamic>),
expandedPlayerSettings: json['expandedPlayerSettings'] == null
? null
: ExpandedPlayerSettings.fromJson(
json['expandedPlayerSettings'] as Map<String, dynamic>),
preferredDefaultVolume:
(json['preferredDefaultVolume'] as num?)?.toDouble(),
preferredDefaultSpeed:
(json['preferredDefaultSpeed'] as num?)?.toDouble(),
speedOptions: (json['speedOptions'] as List<dynamic>?)
?.map((e) => (e as num).toDouble())
.toList(),
sleepTimerSettings: json['sleepTimerSettings'] == null
? null
: SleepTimerSettings.fromJson(
json['sleepTimerSettings'] as Map<String, dynamic>),
playbackReportInterval: json['playbackReportInterval'] == null
? null
: Duration(
microseconds: (json['playbackReportInterval'] as num).toInt()),
);
Map<String, dynamic> _$$NullablePlayerSettingsImplToJson(
_$NullablePlayerSettingsImpl instance) =>
<String, dynamic>{
'miniPlayerSettings': instance.miniPlayerSettings,
'expandedPlayerSettings': instance.expandedPlayerSettings,
'preferredDefaultVolume': instance.preferredDefaultVolume,
'preferredDefaultSpeed': instance.preferredDefaultSpeed,
'speedOptions': instance.speedOptions,
'sleepTimerSettings': instance.sleepTimerSettings,
'playbackReportInterval': instance.playbackReportInterval?.inMicroseconds,
};