spotube/lib/models/connect/connect.freezed.dart
Kingkor Roy Tirtho 82307bc030
feat: personalized stats based on local music history (#1522)
* feat: add playback history provider

* feat: implement recently played section

* refactor: use route names

* feat: add stats summary and top tracks/artists/albums

* feat: add top date based filtering

* feat: add stream money calculation

* refactor: place search in mobile navbar and settings in home appbar

* feat: add individual minutes and streams page

* feat(stats): add individual minutes and streams page

* chore: default period to 1 month

* feat: add text to explain user how hypothetical fees are calculated

* chore: ensure usage of route names instead of direct paths

* cd: add cache key

* cd: remove media_kit_event_loop from git
2024-06-01 11:40:01 +06:00

611 lines
20 KiB
Dart

// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
part of 'connect.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
T _$identity<T>(T value) => value;
final _privateConstructorUsedError = UnsupportedError(
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
WebSocketLoadEventData _$WebSocketLoadEventDataFromJson(
Map<String, dynamic> json) {
switch (json['runtimeType']) {
case 'playlist':
return WebSocketLoadEventDataPlaylist.fromJson(json);
case 'album':
return WebSocketLoadEventDataAlbum.fromJson(json);
default:
throw CheckedFromJsonException(
json,
'runtimeType',
'WebSocketLoadEventData',
'Invalid union type "${json['runtimeType']}"!');
}
}
/// @nodoc
mixin _$WebSocketLoadEventData {
@JsonKey(name: 'tracks', toJson: _tracksJson)
List<Track> get tracks => throw _privateConstructorUsedError;
Object? get collection => throw _privateConstructorUsedError;
int? get initialIndex => throw _privateConstructorUsedError;
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)
playlist,
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)
album,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
required TResult orElse(),
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult map<TResult extends Object?>({
required TResult Function(WebSocketLoadEventDataPlaylist value) playlist,
required TResult Function(WebSocketLoadEventDataAlbum value) album,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
TResult? Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult? Function(WebSocketLoadEventDataAlbum value)? album,
}) =>
throw _privateConstructorUsedError;
@optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
TResult Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult Function(WebSocketLoadEventDataAlbum value)? album,
required TResult orElse(),
}) =>
throw _privateConstructorUsedError;
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
@JsonKey(ignore: true)
$WebSocketLoadEventDataCopyWith<WebSocketLoadEventData> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $WebSocketLoadEventDataCopyWith<$Res> {
factory $WebSocketLoadEventDataCopyWith(WebSocketLoadEventData value,
$Res Function(WebSocketLoadEventData) then) =
_$WebSocketLoadEventDataCopyWithImpl<$Res, WebSocketLoadEventData>;
@useResult
$Res call(
{@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
int? initialIndex});
}
/// @nodoc
class _$WebSocketLoadEventDataCopyWithImpl<$Res,
$Val extends WebSocketLoadEventData>
implements $WebSocketLoadEventDataCopyWith<$Res> {
_$WebSocketLoadEventDataCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
@pragma('vm:prefer-inline')
@override
$Res call({
Object? tracks = null,
Object? initialIndex = freezed,
}) {
return _then(_value.copyWith(
tracks: null == tracks
? _value.tracks
: tracks // ignore: cast_nullable_to_non_nullable
as List<Track>,
initialIndex: freezed == initialIndex
? _value.initialIndex
: initialIndex // ignore: cast_nullable_to_non_nullable
as int?,
) as $Val);
}
}
/// @nodoc
abstract class _$$WebSocketLoadEventDataPlaylistImplCopyWith<$Res>
implements $WebSocketLoadEventDataCopyWith<$Res> {
factory _$$WebSocketLoadEventDataPlaylistImplCopyWith(
_$WebSocketLoadEventDataPlaylistImpl value,
$Res Function(_$WebSocketLoadEventDataPlaylistImpl) then) =
__$$WebSocketLoadEventDataPlaylistImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex});
}
/// @nodoc
class __$$WebSocketLoadEventDataPlaylistImplCopyWithImpl<$Res>
extends _$WebSocketLoadEventDataCopyWithImpl<$Res,
_$WebSocketLoadEventDataPlaylistImpl>
implements _$$WebSocketLoadEventDataPlaylistImplCopyWith<$Res> {
__$$WebSocketLoadEventDataPlaylistImplCopyWithImpl(
_$WebSocketLoadEventDataPlaylistImpl _value,
$Res Function(_$WebSocketLoadEventDataPlaylistImpl) _then)
: super(_value, _then);
@pragma('vm:prefer-inline')
@override
$Res call({
Object? tracks = null,
Object? collection = freezed,
Object? initialIndex = freezed,
}) {
return _then(_$WebSocketLoadEventDataPlaylistImpl(
tracks: null == tracks
? _value._tracks
: tracks // ignore: cast_nullable_to_non_nullable
as List<Track>,
collection: freezed == collection
? _value.collection
: collection // ignore: cast_nullable_to_non_nullable
as PlaylistSimple?,
initialIndex: freezed == initialIndex
? _value.initialIndex
: initialIndex // ignore: cast_nullable_to_non_nullable
as int?,
));
}
}
/// @nodoc
@JsonSerializable()
class _$WebSocketLoadEventDataPlaylistImpl
extends WebSocketLoadEventDataPlaylist {
_$WebSocketLoadEventDataPlaylistImpl(
{@JsonKey(name: 'tracks', toJson: _tracksJson)
required final List<Track> tracks,
this.collection,
this.initialIndex,
final String? $type})
: _tracks = tracks,
$type = $type ?? 'playlist',
super._();
factory _$WebSocketLoadEventDataPlaylistImpl.fromJson(
Map<String, dynamic> json) =>
_$$WebSocketLoadEventDataPlaylistImplFromJson(json);
final List<Track> _tracks;
@override
@JsonKey(name: 'tracks', toJson: _tracksJson)
List<Track> get tracks {
if (_tracks is EqualUnmodifiableListView) return _tracks;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_tracks);
}
@override
final PlaylistSimple? collection;
@override
final int? initialIndex;
@JsonKey(name: 'runtimeType')
final String $type;
@override
String toString() {
return 'WebSocketLoadEventData.playlist(tracks: $tracks, collection: $collection, initialIndex: $initialIndex)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$WebSocketLoadEventDataPlaylistImpl &&
const DeepCollectionEquality().equals(other._tracks, _tracks) &&
(identical(other.collection, collection) ||
other.collection == collection) &&
(identical(other.initialIndex, initialIndex) ||
other.initialIndex == initialIndex));
}
@JsonKey(ignore: true)
@override
int get hashCode => Object.hash(runtimeType,
const DeepCollectionEquality().hash(_tracks), collection, initialIndex);
@JsonKey(ignore: true)
@override
@pragma('vm:prefer-inline')
_$$WebSocketLoadEventDataPlaylistImplCopyWith<
_$WebSocketLoadEventDataPlaylistImpl>
get copyWith => __$$WebSocketLoadEventDataPlaylistImplCopyWithImpl<
_$WebSocketLoadEventDataPlaylistImpl>(this, _$identity);
@override
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)
playlist,
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)
album,
}) {
return playlist(tracks, collection, initialIndex);
}
@override
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
}) {
return playlist?.call(tracks, collection, initialIndex);
}
@override
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
required TResult orElse(),
}) {
if (playlist != null) {
return playlist(tracks, collection, initialIndex);
}
return orElse();
}
@override
@optionalTypeArgs
TResult map<TResult extends Object?>({
required TResult Function(WebSocketLoadEventDataPlaylist value) playlist,
required TResult Function(WebSocketLoadEventDataAlbum value) album,
}) {
return playlist(this);
}
@override
@optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
TResult? Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult? Function(WebSocketLoadEventDataAlbum value)? album,
}) {
return playlist?.call(this);
}
@override
@optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
TResult Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult Function(WebSocketLoadEventDataAlbum value)? album,
required TResult orElse(),
}) {
if (playlist != null) {
return playlist(this);
}
return orElse();
}
@override
Map<String, dynamic> toJson() {
return _$$WebSocketLoadEventDataPlaylistImplToJson(
this,
);
}
}
abstract class WebSocketLoadEventDataPlaylist extends WebSocketLoadEventData {
factory WebSocketLoadEventDataPlaylist(
{@JsonKey(name: 'tracks', toJson: _tracksJson)
required final List<Track> tracks,
final PlaylistSimple? collection,
final int? initialIndex}) = _$WebSocketLoadEventDataPlaylistImpl;
WebSocketLoadEventDataPlaylist._() : super._();
factory WebSocketLoadEventDataPlaylist.fromJson(Map<String, dynamic> json) =
_$WebSocketLoadEventDataPlaylistImpl.fromJson;
@override
@JsonKey(name: 'tracks', toJson: _tracksJson)
List<Track> get tracks;
@override
PlaylistSimple? get collection;
@override
int? get initialIndex;
@override
@JsonKey(ignore: true)
_$$WebSocketLoadEventDataPlaylistImplCopyWith<
_$WebSocketLoadEventDataPlaylistImpl>
get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class _$$WebSocketLoadEventDataAlbumImplCopyWith<$Res>
implements $WebSocketLoadEventDataCopyWith<$Res> {
factory _$$WebSocketLoadEventDataAlbumImplCopyWith(
_$WebSocketLoadEventDataAlbumImpl value,
$Res Function(_$WebSocketLoadEventDataAlbumImpl) then) =
__$$WebSocketLoadEventDataAlbumImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex});
}
/// @nodoc
class __$$WebSocketLoadEventDataAlbumImplCopyWithImpl<$Res>
extends _$WebSocketLoadEventDataCopyWithImpl<$Res,
_$WebSocketLoadEventDataAlbumImpl>
implements _$$WebSocketLoadEventDataAlbumImplCopyWith<$Res> {
__$$WebSocketLoadEventDataAlbumImplCopyWithImpl(
_$WebSocketLoadEventDataAlbumImpl _value,
$Res Function(_$WebSocketLoadEventDataAlbumImpl) _then)
: super(_value, _then);
@pragma('vm:prefer-inline')
@override
$Res call({
Object? tracks = null,
Object? collection = freezed,
Object? initialIndex = freezed,
}) {
return _then(_$WebSocketLoadEventDataAlbumImpl(
tracks: null == tracks
? _value._tracks
: tracks // ignore: cast_nullable_to_non_nullable
as List<Track>,
collection: freezed == collection
? _value.collection
: collection // ignore: cast_nullable_to_non_nullable
as AlbumSimple?,
initialIndex: freezed == initialIndex
? _value.initialIndex
: initialIndex // ignore: cast_nullable_to_non_nullable
as int?,
));
}
}
/// @nodoc
@JsonSerializable()
class _$WebSocketLoadEventDataAlbumImpl extends WebSocketLoadEventDataAlbum {
_$WebSocketLoadEventDataAlbumImpl(
{@JsonKey(name: 'tracks', toJson: _tracksJson)
required final List<Track> tracks,
this.collection,
this.initialIndex,
final String? $type})
: _tracks = tracks,
$type = $type ?? 'album',
super._();
factory _$WebSocketLoadEventDataAlbumImpl.fromJson(
Map<String, dynamic> json) =>
_$$WebSocketLoadEventDataAlbumImplFromJson(json);
final List<Track> _tracks;
@override
@JsonKey(name: 'tracks', toJson: _tracksJson)
List<Track> get tracks {
if (_tracks is EqualUnmodifiableListView) return _tracks;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_tracks);
}
@override
final AlbumSimple? collection;
@override
final int? initialIndex;
@JsonKey(name: 'runtimeType')
final String $type;
@override
String toString() {
return 'WebSocketLoadEventData.album(tracks: $tracks, collection: $collection, initialIndex: $initialIndex)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$WebSocketLoadEventDataAlbumImpl &&
const DeepCollectionEquality().equals(other._tracks, _tracks) &&
(identical(other.collection, collection) ||
other.collection == collection) &&
(identical(other.initialIndex, initialIndex) ||
other.initialIndex == initialIndex));
}
@JsonKey(ignore: true)
@override
int get hashCode => Object.hash(runtimeType,
const DeepCollectionEquality().hash(_tracks), collection, initialIndex);
@JsonKey(ignore: true)
@override
@pragma('vm:prefer-inline')
_$$WebSocketLoadEventDataAlbumImplCopyWith<_$WebSocketLoadEventDataAlbumImpl>
get copyWith => __$$WebSocketLoadEventDataAlbumImplCopyWithImpl<
_$WebSocketLoadEventDataAlbumImpl>(this, _$identity);
@override
@optionalTypeArgs
TResult when<TResult extends Object?>({
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)
playlist,
required TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)
album,
}) {
return album(tracks, collection, initialIndex);
}
@override
@optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>({
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult? Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
}) {
return album?.call(tracks, collection, initialIndex);
}
@override
@optionalTypeArgs
TResult maybeWhen<TResult extends Object?>({
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
PlaylistSimple? collection,
int? initialIndex)?
playlist,
TResult Function(
@JsonKey(name: 'tracks', toJson: _tracksJson) List<Track> tracks,
AlbumSimple? collection,
int? initialIndex)?
album,
required TResult orElse(),
}) {
if (album != null) {
return album(tracks, collection, initialIndex);
}
return orElse();
}
@override
@optionalTypeArgs
TResult map<TResult extends Object?>({
required TResult Function(WebSocketLoadEventDataPlaylist value) playlist,
required TResult Function(WebSocketLoadEventDataAlbum value) album,
}) {
return album(this);
}
@override
@optionalTypeArgs
TResult? mapOrNull<TResult extends Object?>({
TResult? Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult? Function(WebSocketLoadEventDataAlbum value)? album,
}) {
return album?.call(this);
}
@override
@optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
TResult Function(WebSocketLoadEventDataPlaylist value)? playlist,
TResult Function(WebSocketLoadEventDataAlbum value)? album,
required TResult orElse(),
}) {
if (album != null) {
return album(this);
}
return orElse();
}
@override
Map<String, dynamic> toJson() {
return _$$WebSocketLoadEventDataAlbumImplToJson(
this,
);
}
}
abstract class WebSocketLoadEventDataAlbum extends WebSocketLoadEventData {
factory WebSocketLoadEventDataAlbum(
{@JsonKey(name: 'tracks', toJson: _tracksJson)
required final List<Track> tracks,
final AlbumSimple? collection,
final int? initialIndex}) = _$WebSocketLoadEventDataAlbumImpl;
WebSocketLoadEventDataAlbum._() : super._();
factory WebSocketLoadEventDataAlbum.fromJson(Map<String, dynamic> json) =
_$WebSocketLoadEventDataAlbumImpl.fromJson;
@override
@JsonKey(name: 'tracks', toJson: _tracksJson)
List<Track> get tracks;
@override
AlbumSimple? get collection;
@override
int? get initialIndex;
@override
@JsonKey(ignore: true)
_$$WebSocketLoadEventDataAlbumImplCopyWith<_$WebSocketLoadEventDataAlbumImpl>
get copyWith => throw _privateConstructorUsedError;
}