diff --git a/lib/logic/models/service.dart b/lib/logic/models/service.dart index 898d2965..039065e3 100644 --- a/lib/logic/models/service.dart +++ b/lib/logic/models/service.dart @@ -105,13 +105,13 @@ class ServiceStorageUsage { } enum ServiceStatus { + failed, + reloading, activating, active, deactivating, - failed, inactive, - off, - reloading; + off; factory ServiceStatus.fromGraphQL(final Enum$ServiceStatusEnum graphQL) { switch (graphQL) { diff --git a/lib/ui/pages/services/services.dart b/lib/ui/pages/services/services.dart index 498f84a1..fc00922b 100644 --- a/lib/ui/pages/services/services.dart +++ b/lib/ui/pages/services/services.dart @@ -41,6 +41,10 @@ class _ServicesPageState extends State { final isReady = context.watch().state is ServerInstallationFinished; + final services = [...context.watch().state.services]; + services + .sort((final a, final b) => a.status.index.compareTo(b.status.index)); + return Scaffold( appBar: PreferredSize( preferredSize: const Size.fromHeight(52), @@ -58,10 +62,7 @@ class _ServicesPageState extends State { BrandText.body1('basis.services_title'.tr()), const SizedBox(height: 24), if (!isReady) ...[const NotReadyCard(), const SizedBox(height: 24)], - ...context - .read() - .state - .services + ...services .map( (final service) => Padding( padding: const EdgeInsets.only(