mirror of
https://github.com/alexmickelson/canvasManagement.git
synced 2026-03-26 15:48:32 -06:00
can delete without errors
This commit is contained in:
@@ -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"
|
||||
});
|
||||
},
|
||||
});
|
||||
|
||||
@@ -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) =>
|
||||
|
||||
@@ -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");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user