Skip to content

Commit

Permalink
Merge pull request #6565 from viown/react-tasks-edit
Browse files Browse the repository at this point in the history
Migrate tasks edit page to react
  • Loading branch information
thornbill authored Mar 5, 2025
2 parents 917994c + 709378f commit 3c62c1d
Show file tree
Hide file tree
Showing 22 changed files with 530 additions and 343 deletions.
84 changes: 0 additions & 84 deletions src/apps/dashboard/controllers/scheduledtasks/scheduledtask.html

This file was deleted.

236 changes: 0 additions & 236 deletions src/apps/dashboard/controllers/scheduledtasks/scheduledtask.js

This file was deleted.

29 changes: 29 additions & 0 deletions src/apps/dashboard/features/tasks/api/useTask.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import type { ScheduledTasksApiGetTaskRequest } from '@jellyfin/sdk/lib/generated-client/api/scheduled-tasks-api';
import type { AxiosRequestConfig } from 'axios';
import type { Api } from '@jellyfin/sdk';
import { getScheduledTasksApi } from '@jellyfin/sdk/lib/utils/api/scheduled-tasks-api';
import { useQuery } from '@tanstack/react-query';

import { useApi } from 'hooks/useApi';
import { QUERY_KEY } from './useTasks';

const fetchTask = async (
api: Api,
params: ScheduledTasksApiGetTaskRequest,
options?: AxiosRequestConfig
) => {
const response = await getScheduledTasksApi(api).getTask(params, options);

return response.data;
};

export const useTask = (params: ScheduledTasksApiGetTaskRequest) => {
const { api } = useApi();

return useQuery({
queryKey: [ QUERY_KEY, params.taskId ],
queryFn: ({ signal }) =>
fetchTask(api!, params, { signal }),
enabled: !!api
});
};
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export const useTasks = (params?: ScheduledTasksApiGetTasksRequest) => {
const { api } = useApi();

return useQuery({
queryKey: [QUERY_KEY],
queryKey: [ QUERY_KEY ],
queryFn: ({ signal }) =>
fetchTasks(api!, params, { signal }),
enabled: !!api
Expand Down
22 changes: 22 additions & 0 deletions src/apps/dashboard/features/tasks/api/useUpdateTask.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import { ScheduledTasksApiUpdateTaskRequest } from '@jellyfin/sdk/lib/generated-client/api/scheduled-tasks-api';
import { getScheduledTasksApi } from '@jellyfin/sdk/lib/utils/api/scheduled-tasks-api';
import { useMutation } from '@tanstack/react-query';
import { useApi } from 'hooks/useApi';
import { queryClient } from 'utils/query/queryClient';
import { QUERY_KEY } from './useTasks';

export const useUpdateTask = () => {
const { api } = useApi();

return useMutation({
mutationFn: (params: ScheduledTasksApiUpdateTaskRequest) => (
getScheduledTasksApi(api!)
.updateTask(params)
),
onSuccess: (_data, params) => {
void queryClient.invalidateQueries({
queryKey: [ QUERY_KEY, params.taskId ]
});
}
});
};
Loading

0 comments on commit 3c62c1d

Please sign in to comment.