diff --git a/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentButtons.tsx b/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentButtons.tsx
index 4c8bcd8..35d988d 100644
--- a/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentButtons.tsx
+++ b/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/AssignmentButtons.tsx
@@ -135,15 +135,20 @@ export function AssignmentButtons({
moduleName,
itemName: assignmentName,
});
-
router.refresh();
- setIsLoading(false);
+ // setIsLoading(false); //refreshing the router will make spinner go away
}}
+ disabled={deleteLocal.isPending || isLoading}
className="btn-danger"
>
Yes
-
+
{(deleteLocal.isPending || isLoading) && }
diff --git a/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/loading.tsx b/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/loading.tsx
new file mode 100644
index 0000000..858e083
--- /dev/null
+++ b/nextjs/src/app/course/[courseName]/modules/[moduleName]/assignment/[assignmentName]/loading.tsx
@@ -0,0 +1,10 @@
+import { Spinner } from "@/components/Spinner";
+import React from "react";
+
+export default function Loading() {
+ return (
+
+
+
+ );
+}
diff --git a/nextjs/src/hooks/localCourse/courseItemHooks.ts b/nextjs/src/hooks/localCourse/courseItemHooks.ts
index d74f20f..7247a73 100644
--- a/nextjs/src/hooks/localCourse/courseItemHooks.ts
+++ b/nextjs/src/hooks/localCourse/courseItemHooks.ts
@@ -261,11 +261,11 @@ export const useDeleteItemMutation = (type: T) => {
await axiosClient.delete(url);
},
onSuccess: async (_, { moduleName, itemName }) => {
- queryClient.invalidateQueries({
+ await queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
// refetchType: "all",
});
- queryClient.invalidateQueries({
+ await queryClient.invalidateQueries({
queryKey: localCourseKeys.itemOfType(
courseName,
moduleName,
diff --git a/nextjs/src/services/fileStorage/settingsFileStorageService.ts b/nextjs/src/services/fileStorage/settingsFileStorageService.ts
index 1701bbc..521e695 100644
--- a/nextjs/src/services/fileStorage/settingsFileStorageService.ts
+++ b/nextjs/src/services/fileStorage/settingsFileStorageService.ts
@@ -38,7 +38,7 @@ const populateDefaultValues = (settingsFromFile: LocalCourseSettings) => {
AssignmentSubmissionType.ONLINE_TEXT_ENTRY,
AssignmentSubmissionType.ONLINE_UPLOAD,
];
- const defaultFileUploadTypes = ["pdf", "jpg", "jpeg", "pdf"];
+ const defaultFileUploadTypes = ["pdf", "jpg", "jpeg"];
const settings: LocalCourseSettings = {
...settingsFromFile,