🐛 Fix the site refresh didn't wrok
This commit is contained in:
@@ -87,7 +87,7 @@ class SiteFilesNotifier
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Refresh the files list
|
// Refresh the files list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(siteFilesProvider(siteId: arg.siteId, path: arg.path));
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
state = AsyncValue.error(error, stackTrace);
|
state = AsyncValue.error(error, stackTrace);
|
||||||
rethrow;
|
rethrow;
|
||||||
@@ -104,7 +104,7 @@ class SiteFilesNotifier
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Refresh the files list
|
// Refresh the files list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(siteFilesProvider(siteId: arg.siteId, path: arg.path));
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
state = AsyncValue.error(error, stackTrace);
|
state = AsyncValue.error(error, stackTrace);
|
||||||
rethrow;
|
rethrow;
|
||||||
@@ -120,7 +120,7 @@ class SiteFilesNotifier
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Refresh the files list
|
// Refresh the files list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(siteFilesProvider(siteId: arg.siteId, path: arg.path));
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
state = AsyncValue.error(error, stackTrace);
|
state = AsyncValue.error(error, stackTrace);
|
||||||
rethrow;
|
rethrow;
|
||||||
@@ -131,7 +131,7 @@ class SiteFilesNotifier
|
|||||||
// For directories, we upload a dummy file first then delete it or create through upload
|
// For directories, we upload a dummy file first then delete it or create through upload
|
||||||
// Actually, according to API docs, directories are created when uploading files to them
|
// Actually, according to API docs, directories are created when uploading files to them
|
||||||
// So we'll just invalidate to refresh the list
|
// So we'll just invalidate to refresh the list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(siteFilesProvider(siteId: arg.siteId, path: arg.path));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ class SitePagesNotifier
|
|||||||
final newPage = SnPublicationPage.fromJson(resp.data);
|
final newPage = SnPublicationPage.fromJson(resp.data);
|
||||||
|
|
||||||
// Refresh the pages list
|
// Refresh the pages list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(sitePagesProvider(arg.pubName, arg.siteSlug));
|
||||||
|
|
||||||
return newPage;
|
return newPage;
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
@@ -85,7 +85,7 @@ class SitePagesNotifier
|
|||||||
final updatedPage = SnPublicationPage.fromJson(resp.data);
|
final updatedPage = SnPublicationPage.fromJson(resp.data);
|
||||||
|
|
||||||
// Refresh the pages list
|
// Refresh the pages list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(sitePagesProvider(arg.pubName, arg.siteSlug));
|
||||||
|
|
||||||
return updatedPage;
|
return updatedPage;
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
@@ -101,7 +101,7 @@ class SitePagesNotifier
|
|||||||
await apiClient.delete('/zone/sites/pages/$pageId');
|
await apiClient.delete('/zone/sites/pages/$pageId');
|
||||||
|
|
||||||
// Refresh the pages list
|
// Refresh the pages list
|
||||||
ref.invalidateSelf();
|
ref.invalidate(sitePagesProvider(arg.pubName, arg.siteSlug));
|
||||||
} catch (error, stackTrace) {
|
} catch (error, stackTrace) {
|
||||||
state = AsyncValue.error(error, stackTrace);
|
state = AsyncValue.error(error, stackTrace);
|
||||||
rethrow;
|
rethrow;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|||||||
import 'package:island/models/site_file.dart';
|
import 'package:island/models/site_file.dart';
|
||||||
import 'package:island/models/publication_site.dart';
|
import 'package:island/models/publication_site.dart';
|
||||||
import 'package:island/pods/site_files.dart';
|
import 'package:island/pods/site_files.dart';
|
||||||
|
import 'package:island/widgets/alert.dart';
|
||||||
import 'package:material_symbols_icons/symbols.dart';
|
import 'package:material_symbols_icons/symbols.dart';
|
||||||
import 'package:styled_widget/styled_widget.dart';
|
import 'package:styled_widget/styled_widget.dart';
|
||||||
|
|
||||||
@@ -116,19 +117,9 @@ class FileItem extends HookConsumerWidget {
|
|||||||
)).notifier,
|
)).notifier,
|
||||||
)
|
)
|
||||||
.deleteFile(file.relativePath);
|
.deleteFile(file.relativePath);
|
||||||
if (context.mounted) {
|
showSnackBar('File deleted successfully');
|
||||||
ScaffoldMessenger.of(context).showSnackBar(
|
|
||||||
const SnackBar(
|
|
||||||
content: Text('File deleted successfully'),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (context.mounted) {
|
showErrorAlert(e);
|
||||||
ScaffoldMessenger.of(context).showSnackBar(
|
|
||||||
const SnackBar(content: Text('Failed to delete file')),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import 'package:gap/gap.dart';
|
|||||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||||
import 'package:island/models/publication_site.dart';
|
import 'package:island/models/publication_site.dart';
|
||||||
import 'package:island/pods/site_pages.dart';
|
import 'package:island/pods/site_pages.dart';
|
||||||
|
import 'package:island/widgets/alert.dart';
|
||||||
import 'package:island/widgets/sites/page_form.dart';
|
import 'package:island/widgets/sites/page_form.dart';
|
||||||
import 'package:material_symbols_icons/symbols.dart';
|
import 'package:material_symbols_icons/symbols.dart';
|
||||||
import 'package:styled_widget/styled_widget.dart';
|
import 'package:styled_widget/styled_widget.dart';
|
||||||
@@ -104,19 +105,9 @@ class PageItem extends HookConsumerWidget {
|
|||||||
)).notifier,
|
)).notifier,
|
||||||
)
|
)
|
||||||
.deletePage(page.id);
|
.deletePage(page.id);
|
||||||
if (context.mounted) {
|
showSnackBar('Page deleted successfully');
|
||||||
ScaffoldMessenger.of(context).showSnackBar(
|
|
||||||
const SnackBar(
|
|
||||||
content: Text('Page deleted successfully'),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
if (context.mounted) {
|
showErrorAlert(e);
|
||||||
ScaffoldMessenger.of(context).showSnackBar(
|
|
||||||
const SnackBar(content: Text('Failed to delete page')),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user