immich/mobile/lib/domain/models/server_capability.model.dart
shenlong 652ef8a427
refactor: server capabilities (#30663)
Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
2026-08-14 07:53:12 -05:00

23 lines
773 B
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)),
assetEdits(SemVer(major: 2, minor: 6, patch: 0)),
assetFacesV2(SemVer(major: 2, minor: 6, patch: 0)),
syncV2(SemVer(major: 3, minor: 0, patch: 0)),
assetOcr(SemVer(major: 3, minor: 0, 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;
}