fixed caching regression

This commit is contained in:
2024-09-30 10:56:14 -06:00
parent 2dab8bcd6e
commit a51a968aea
6 changed files with 15 additions and 64 deletions

View File

@@ -7,18 +7,9 @@ import {
import { localAssignmentMarkdown } from "@/models/local/assignment/localAssignment";
import { useEffect, useState } from "react";
import AssignmentPreview from "./AssignmentPreview";
import { getCourseUrl, getModuleItemUrl } from "@/services/urlUtils";
import Link from "next/link";
import { getModuleItemUrl } from "@/services/urlUtils";
import { useCourseContext } from "@/app/course/[courseName]/context/courseContext";
import { useLocalCourseSettingsQuery } from "@/hooks/localCourse/localCoursesHooks";
import {
useAddAssignmentToCanvasMutation,
useCanvasAssignmentsQuery,
useDeleteAssignmentFromCanvasMutation,
useUpdateAssignmentInCanvasMutation,
} from "@/hooks/canvas/canvasAssignmentHooks";
import { Spinner } from "@/components/Spinner";
import { baseCanvasUrl } from "@/services/canvas/canvasServiceUtils";
import ClientOnly from "@/components/ClientOnly";
import { SuspenseAndErrorHandling } from "@/components/SuspenseAndErrorHandling";
import { AssignmentSubmissionType } from "@/models/local/assignment/assignmentSubmissionType";
@@ -37,11 +28,13 @@ export default function EditAssignment({
const { courseName } = useCourseContext();
const { data: settings } = useLocalCourseSettingsQuery();
const { data: assignment } = useAssignmentQuery(moduleName, assignmentName);
console.log("due date on edit page", assignment.dueAt);
const updateAssignment = useUpdateAssignmentMutation();
const [assignmentText, setAssignmentText] = useState(
localAssignmentMarkdown.toMarkdown(assignment)
);
const [error, setError] = useState("");
const [showHelp, setShowHelp] = useState(false);

View File

@@ -1,5 +1,6 @@
import React from "react";
import EditAssignment from "./EditAssignment";
import ClientOnly from "@/components/ClientOnly";
export default function Page({
params: { moduleName, assignmentName },

View File

@@ -16,7 +16,7 @@ export default function Providers({ children }: { children: ReactNode }) {
return (
<SuspenseAndErrorHandling>
<QueryClientProvider client={queryClient}>
{/* <ReactQueryDevtools initialIsOpen={false} /> */}
<ReactQueryDevtools initialIsOpen={false} />
{children}
</QueryClientProvider>
</SuspenseAndErrorHandling>

View File

@@ -84,7 +84,6 @@ export const useItemsQueries = <T extends CourseItemType>(
return useSuspenseQueries({
queries: allItems.map((item) => ({
...getItemQueryConfig(courseName, moduleName, item.name, type),
queryFn: () => item,
})),
combine: (results) => ({
data: results.map((r) => r.data),
@@ -161,9 +160,6 @@ export const useUpdateItemMutation = <T extends CourseItemType>(type: T) => {
});
},
onSuccess: async (_, { moduleName, itemName }) => {
await queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
});
await queryClient.invalidateQueries({
queryKey: localCourseKeys.itemOfType(
courseName,
@@ -172,6 +168,9 @@ export const useUpdateItemMutation = <T extends CourseItemType>(type: T) => {
type
),
});
await queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
});
},
});
};
@@ -204,18 +203,18 @@ export const useCreateItemMutation = <T extends CourseItemType>(type: T) => {
encodeURIComponent(itemName);
await axiosClient.post(url, item);
},
onSuccess: async (_, { moduleName, itemName: assignmentName }) => {
await queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
});
onSuccess: async (_, { moduleName, itemName }) => {
await queryClient.invalidateQueries({
queryKey: localCourseKeys.itemOfType(
courseName,
moduleName,
assignmentName,
itemName,
type
),
});
await queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
});
},
});
};