can delete without errors

This commit is contained in:
2024-09-30 22:30:34 -06:00
parent 73a05debfc
commit f8c4978319
7 changed files with 29 additions and 45 deletions

View File

@@ -230,17 +230,6 @@ export const useDeleteItemMutation = <T extends CourseItemType>(type: T) => {
moduleName: string;
itemName: string;
}) => {
queryClient.removeQueries({
queryKey: localCourseKeys.itemOfType(
courseName,
moduleName,
itemName,
type
),
});
queryClient.removeQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
});
const url =
"/api/courses/" +
encodeURIComponent(courseName) +
@@ -253,8 +242,19 @@ export const useDeleteItemMutation = <T extends CourseItemType>(type: T) => {
await axiosClient.delete(url);
},
onSuccess: async (_, { moduleName, itemName }) => {
queryClient.invalidateQueries({
queryKey: localCourseKeys.allItemsOfType(courseName, moduleName, type),
refetchType: "all"
});
queryClient.invalidateQueries({
queryKey: localCourseKeys.itemOfType(
courseName,
moduleName,
itemName,
type
),
refetchType: "none"
});
},
});

View File

@@ -7,12 +7,9 @@ import {
useSuspenseQuery,
} from "@tanstack/react-query";
import { localCourseKeys } from "./localCourseKeys";
import {
getAllAssignmentsQueryConfig,
getAssignmentQueryConfig,
} from "./assignmentHooks";
import { getAllPagesQueryConfig, getPageQueryConfig } from "./pageHooks";
import { getAllQuizzesQueryConfig, getQuizQueryConfig } from "./quizHooks";
import { getAllAssignmentsQueryConfig } from "./assignmentHooks";
import { getAllQuizzesQueryConfig } from "./quizHooks";
import { getAllItemsQueryConfig } from "./courseItemHooks";
export const useModuleNamesQuery = () => {
const { courseName } = useCourseContext();
@@ -109,7 +106,7 @@ export const useAllCourseDataQuery = () => {
const { data: pagesAndModules } = useSuspenseQueries({
queries: moduleNames.map((moduleName) =>
getAllPagesQueryConfig(courseName, moduleName)
getAllItemsQueryConfig(courseName, moduleName, "Page")
),
combine: (results) => ({
data: results.flatMap((r, i) =>

View File

@@ -1,7 +1,5 @@
"use client";
import {
getAllItemsQueryConfig,
getItemQueryConfig,
useCreateItemMutation,
useDeleteItemMutation,
useItemQuery,
@@ -9,18 +7,6 @@ import {
useUpdateItemMutation,
} from "./courseItemHooks";
export function getAllPagesQueryConfig(courseName: string, moduleName: string) {
return getAllItemsQueryConfig(courseName, moduleName, "Page");
}
export function getPageQueryConfig(
courseName: string,
moduleName: string,
pageName: string
) {
return getItemQueryConfig(courseName, moduleName, pageName, "Page");
}
export const usePageQuery = (moduleName: string, pageName: string) =>
useItemQuery(moduleName, pageName, "Page");