mirror of
https://github.com/immich-app/immich.git
synced 2026-05-18 03:10:24 +03:00
91ac56cef2
* migrate timeline config --------- Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
41 lines
1.3 KiB
Dart
41 lines
1.3 KiB
Dart
import 'package:immich_mobile/domain/models/config/cleanup_config.dart';
|
|
import 'package:immich_mobile/domain/models/config/map_config.dart';
|
|
import 'package:immich_mobile/domain/models/config/theme_config.dart';
|
|
import 'package:immich_mobile/domain/models/config/timeline_config.dart';
|
|
|
|
class AppConfig {
|
|
final ThemeConfig theme;
|
|
final CleanupConfig cleanup;
|
|
final MapConfig map;
|
|
final TimelineConfig timeline;
|
|
|
|
const AppConfig({
|
|
this.theme = const .new(),
|
|
this.cleanup = const .new(),
|
|
this.map = const .new(),
|
|
this.timeline = const .new(),
|
|
});
|
|
|
|
AppConfig copyWith({ThemeConfig? theme, CleanupConfig? cleanup, MapConfig? map, TimelineConfig? timeline}) => .new(
|
|
theme: theme ?? this.theme,
|
|
cleanup: cleanup ?? this.cleanup,
|
|
map: map ?? this.map,
|
|
timeline: timeline ?? this.timeline,
|
|
);
|
|
|
|
@override
|
|
bool operator ==(Object other) =>
|
|
identical(this, other) ||
|
|
(other is AppConfig &&
|
|
other.theme == theme &&
|
|
other.cleanup == cleanup &&
|
|
other.map == map &&
|
|
other.timeline == timeline);
|
|
|
|
@override
|
|
int get hashCode => Object.hash(theme, cleanup, map, timeline);
|
|
|
|
@override
|
|
String toString() => 'AppConfig(theme: $theme, cleanup: $cleanup, map: $map, timeline: $timeline)';
|
|
}
|