Files
Immich/mobile/lib/domain/models/server_capability.model.dart
T
ed3073624b fix: memories mobile sync for older clients (#32167)
fix: memories mobile sync for older clients (#32150)


(cherry picked from commit 8d377bfef5a0c9d840bf2c19d155f9779387baeb)

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
Co-authored-by: Santo Shakil <shakil.mezbah@gmail.com>
2026-10-06 14:10:38 +00:00

30 lines
1.0 KiB
Dart

import 'package:immich_mobile/utils/semver.dart';
enum ServerCapability {
// Feature Support
cloudIdMetadata(SemVer(major: 2, minor: 4, patch: 0)),
bulkCloudIdMetadata(SemVer(major: 2, minor: 5, patch: 0)),
albumEditorUpdate(SemVer(major: 2, minor: 6, patch: 2)),
// Sync
syncV2(SemVer(major: 3, minor: 0, patch: 0)),
syncAssetEditsV1(SemVer(major: 2, minor: 6, patch: 0)),
syncAssetFacesV2(SemVer(major: 2, minor: 6, patch: 0)),
syncAssetFacesV3(SemVer(major: 3, minor: 3, patch: 0)),
syncAssetOcrV1(SemVer(major: 3, minor: 0, patch: 0)),
syncAuthUsersV2(SemVer(major: 3, minor: 3, patch: 0)),
syncMemoriesV2(SemVer(major: 3, minor: 3, patch: 0)),
// Migrations
assetPayloadChange20260128(SemVer(major: 2, minor: 5, patch: 0)),
assetPayloadChange20260597(SemVer(major: 2, minor: 7, patch: 6));
const ServerCapability(this.minVersion);
final SemVer minVersion;
}
extension ServerCapabilitySupport on SemVer {
bool supports(ServerCapability capability) => this >= capability.minVersion;
}