Files
phylum/client/lib/ui/explorer/resource_sync_state.dart
T
2025-04-23 23:18:32 +05:30

27 lines
671 B
Dart

import 'package:flutter/material.dart';
import 'package:offtheline/offtheline.dart';
enum ResourceSyncState {
none(Icons.block),
waiting(Icons.cloud_queue),
error(Icons.sync_problem),
syncing(Icons.sync);
const ResourceSyncState(this.icon);
final IconData icon;
factory ResourceSyncState.fromStatus(ActionStatus status) {
if (status is ActionStatusReady || status is ActionStatusWaiting) {
return ResourceSyncState.waiting;
}
if (status is ActionStatusUploading) {
return ResourceSyncState.syncing;
}
if (status is ActionStatusError) {
return ResourceSyncState.error;
}
return ResourceSyncState.none;
}
}