From 5e9d09e75ce24447876457c6cee782ece323695d Mon Sep 17 00:00:00 2001 From: Eli Bosley Date: Fri, 23 May 2025 11:22:35 -0400 Subject: [PATCH] fix: review feedback --- .../resolvers/rclone/rclone-api.service.ts | 7 ++----- .../rclone/rclone.mutation.resolver.ts | 9 ++++++-- web/components/RClone/RCloneOverview.vue | 21 +++++++++++++++++-- 3 files changed, 28 insertions(+), 9 deletions(-) diff --git a/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts b/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts index 46ac5aa3b..cc5814662 100644 --- a/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts +++ b/api/src/unraid-api/graph/resolvers/rclone/rclone-api.service.ts @@ -278,12 +278,9 @@ export class RCloneApiService implements OnModuleInit, OnModuleDestroy { parameters: parameters, // Nest the parameters object under the 'parameters' key }; - this.logger.log( - `Creating new remote: ${name} of type: ${type} with params: ${JSON.stringify(params)}` - ); // Added params logging + this.logger.log(`Creating new remote: ${name} of type: ${type}`); const result = await this.callRcloneApi('config/create', params); - // console.log('Result was: ', result); // Result is usually empty on success, potentially remove - this.logger.log(`Successfully created remote: ${name}`); // Improved success log + this.logger.log(`Successfully created remote: ${name}`); return result; // Rclone 'config/create' usually returns an empty object on success } diff --git a/api/src/unraid-api/graph/resolvers/rclone/rclone.mutation.resolver.ts b/api/src/unraid-api/graph/resolvers/rclone/rclone.mutation.resolver.ts index d03424591..22ada9821 100644 --- a/api/src/unraid-api/graph/resolvers/rclone/rclone.mutation.resolver.ts +++ b/api/src/unraid-api/graph/resolvers/rclone/rclone.mutation.resolver.ts @@ -32,11 +32,16 @@ export class RCloneMutationsResolver { }) async createRCloneRemote(@Args('input') input: CreateRCloneRemoteInput): Promise { try { - await this.rcloneApiService.createRemote(input.name, input.type, input.parameters); + const config = await this.rcloneApiService.createRemote( + input.name, + input.type, + input.parameters + ); return { name: input.name, type: input.type, - parameters: input.parameters, + parameters: {}, + config, }; } catch (error) { this.logger.error(`Error creating remote: ${error}`); diff --git a/web/components/RClone/RCloneOverview.vue b/web/components/RClone/RCloneOverview.vue index f675bf94e..452675364 100644 --- a/web/components/RClone/RCloneOverview.vue +++ b/web/components/RClone/RCloneOverview.vue @@ -28,6 +28,7 @@ const { result: remotes, loading: loadingRemotes, refetch: refetchRemotes, + error, } = useQuery(GET_RCLONE_REMOTES); // Delete remote mutation @@ -48,6 +49,12 @@ onDeleteDone((result) => { description: 'Remote deleted successfully', }); } + } else { + if (window.toast) { + window.toast.error('Deletion Failed', { + description: 'Failed to delete remote. Please try again.', + }); + } } }); @@ -90,6 +97,7 @@ declare global { interface Window { toast?: { success: (title: string, options: { description?: string }) => void; + error?: (title: string, options: { description?: string }) => void; }; } } @@ -118,6 +126,12 @@ declare global { /> + +
+

Failed to load remotes

+ +
+

No remotes configured yet

@@ -128,11 +142,14 @@ declare global {