Add information for uploading asset and error indication with error message for each failed upload. (#315)

* Added info box

* Fixed upload endpoint doesn't report error status code

* Added chip to show update error

* Added chip to show failed upload

* Add duplication check for upload

* Better duplication-checking placement

* Remove check for duplicated asset

* Added failed backup status route

* added page

* Display error card with thumbnail

* Improved styling

* Set thumbnail with better quality

* Remove force upload error
This commit is contained in:
Alex
2022-07-06 16:12:55 -05:00
committed by GitHub
parent 357f7d1c31
commit 58ec7553ea
19 changed files with 706 additions and 87 deletions

View File

@@ -2,6 +2,7 @@ import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:immich_mobile/modules/backup/views/album_preview_page.dart';
import 'package:immich_mobile/modules/backup/views/backup_album_selection_page.dart';
import 'package:immich_mobile/modules/backup/views/failed_backup_status_page.dart';
import 'package:immich_mobile/modules/login/views/change_password_page.dart';
import 'package:immich_mobile/modules/login/views/login_page.dart';
import 'package:immich_mobile/modules/home/views/home_page.dart';
@@ -65,6 +66,11 @@ part 'router.gr.dart';
),
AutoRoute(page: BackupAlbumSelectionPage, guards: [AuthGuard]),
AutoRoute(page: AlbumPreviewPage, guards: [AuthGuard]),
CustomRoute(
page: FailedBackupStatusPage,
guards: [AuthGuard],
transitionsBuilder: TransitionsBuilders.slideBottom,
),
],
)
class AppRouter extends _$AppRouter {

View File

@@ -115,6 +115,14 @@ class _$AppRouter extends RootStackRouter {
routeData: routeData,
child: AlbumPreviewPage(key: args.key, album: args.album));
},
FailedBackupStatusRoute.name: (routeData) {
return CustomPage<dynamic>(
routeData: routeData,
child: const FailedBackupStatusPage(),
transitionsBuilder: TransitionsBuilders.slideBottom,
opaque: true,
barrierDismissible: false);
},
HomeRoute.name: (routeData) {
return MaterialPageX<dynamic>(
routeData: routeData, child: const HomePage());
@@ -177,7 +185,9 @@ class _$AppRouter extends RootStackRouter {
RouteConfig(BackupAlbumSelectionRoute.name,
path: '/backup-album-selection-page', guards: [authGuard]),
RouteConfig(AlbumPreviewRoute.name,
path: '/album-preview-page', guards: [authGuard])
path: '/album-preview-page', guards: [authGuard]),
RouteConfig(FailedBackupStatusRoute.name,
path: '/failed-backup-status-page', guards: [authGuard])
];
}
@@ -437,6 +447,15 @@ class AlbumPreviewRouteArgs {
}
}
/// generated route for
/// [FailedBackupStatusPage]
class FailedBackupStatusRoute extends PageRouteInfo<void> {
const FailedBackupStatusRoute()
: super(FailedBackupStatusRoute.name, path: '/failed-backup-status-page');
static const String name = 'FailedBackupStatusRoute';
}
/// generated route for
/// [HomePage]
class HomeRoute extends PageRouteInfo<void> {