[Files Refactor] Object file management (#2790)

* Add Make Primary file function
* Add delete file functionality
This commit is contained in:
WithoutPants
2022-10-06 14:50:06 +11:00
committed by GitHub
parent 83359b00d5
commit ef9e138a2d
22 changed files with 759 additions and 106 deletions

View File

@@ -495,6 +495,18 @@ export const useSceneGenerateScreenshot = () =>
update: deleteCache([GQL.FindScenesDocument]),
});
export const mutateSceneSetPrimaryFile = (id: string, fileID: string) =>
client.mutate<GQL.SceneUpdateMutation>({
mutation: GQL.SceneUpdateDocument,
variables: {
input: {
id,
primary_file_id: fileID,
},
},
update: deleteCache(sceneMutationImpactedQueries),
});
const imageMutationImpactedQueries = [
GQL.FindPerformerDocument,
GQL.FindPerformersDocument,
@@ -617,6 +629,18 @@ export const mutateImageResetO = (id: string) =>
},
});
export const mutateImageSetPrimaryFile = (id: string, fileID: string) =>
client.mutate<GQL.ImageUpdateMutation>({
mutation: GQL.ImageUpdateDocument,
variables: {
input: {
id,
primary_file_id: fileID,
},
},
update: deleteCache(imageMutationImpactedQueries),
});
const galleryMutationImpactedQueries = [
GQL.FindPerformerDocument,
GQL.FindPerformersDocument,
@@ -665,6 +689,18 @@ export const mutateRemoveGalleryImages = (input: GQL.GalleryRemoveInput) =>
update: deleteCache(galleryMutationImpactedQueries),
});
export const mutateGallerySetPrimaryFile = (id: string, fileID: string) =>
client.mutate<GQL.GalleryUpdateMutation>({
mutation: GQL.GalleryUpdateDocument,
variables: {
input: {
id,
primary_file_id: fileID,
},
},
update: deleteCache(galleryMutationImpactedQueries),
});
export const studioMutationImpactedQueries = [
GQL.FindStudiosDocument,
GQL.FindSceneDocument,
@@ -672,6 +708,24 @@ export const studioMutationImpactedQueries = [
GQL.AllStudiosForFilterDocument,
];
export const mutateDeleteFiles = (ids: string[]) =>
client.mutate<GQL.DeleteFilesMutation>({
mutation: GQL.DeleteFilesDocument,
variables: {
ids,
},
update: deleteCache([
...sceneMutationImpactedQueries,
...imageMutationImpactedQueries,
...galleryMutationImpactedQueries,
]),
refetchQueries: getQueryNames([
GQL.FindSceneDocument,
GQL.FindImageDocument,
GQL.FindGalleryDocument,
]),
});
export const useStudioCreate = () =>
GQL.useStudioCreateMutation({
refetchQueries: getQueryNames([GQL.AllStudiosForFilterDocument]),