fix: plugin task
This commit is contained in:
parent
8ad9ab40df
commit
57756b18e4
@ -7,6 +7,7 @@ import {
|
|||||||
import { TaskStatus } from '@/app/components/plugins/types'
|
import { TaskStatus } from '@/app/components/plugins/types'
|
||||||
import type { PluginStatus } from '@/app/components/plugins/types'
|
import type { PluginStatus } from '@/app/components/plugins/types'
|
||||||
import {
|
import {
|
||||||
|
useMutationClearAllTaskPlugin,
|
||||||
useMutationClearTaskPlugin,
|
useMutationClearTaskPlugin,
|
||||||
usePluginTaskList,
|
usePluginTaskList,
|
||||||
} from '@/service/use-plugins'
|
} from '@/service/use-plugins'
|
||||||
@ -14,8 +15,10 @@ import {
|
|||||||
export const usePluginTaskStatus = () => {
|
export const usePluginTaskStatus = () => {
|
||||||
const {
|
const {
|
||||||
pluginTasks,
|
pluginTasks,
|
||||||
|
handleRefetch,
|
||||||
} = usePluginTaskList()
|
} = usePluginTaskList()
|
||||||
const { mutate } = useMutationClearTaskPlugin()
|
const { mutateAsync } = useMutationClearTaskPlugin()
|
||||||
|
const { mutateAsync: mutateAsyncClearAll } = useMutationClearAllTaskPlugin()
|
||||||
const allPlugins = pluginTasks.filter(task => task.status !== TaskStatus.success).map(task => task.plugins.map((plugin) => {
|
const allPlugins = pluginTasks.filter(task => task.status !== TaskStatus.success).map(task => task.plugins.map((plugin) => {
|
||||||
return {
|
return {
|
||||||
...plugin,
|
...plugin,
|
||||||
@ -35,12 +38,17 @@ export const usePluginTaskStatus = () => {
|
|||||||
successPlugins.push(plugin)
|
successPlugins.push(plugin)
|
||||||
})
|
})
|
||||||
|
|
||||||
const handleClearErrorPlugin = useCallback((taskId: string, pluginId: string) => {
|
const handleClearErrorPlugin = useCallback(async (taskId: string, pluginId: string) => {
|
||||||
mutate({
|
await mutateAsync({
|
||||||
taskId,
|
taskId,
|
||||||
pluginId,
|
pluginId,
|
||||||
})
|
})
|
||||||
}, [mutate])
|
handleRefetch()
|
||||||
|
}, [mutateAsync, handleRefetch])
|
||||||
|
const handleClearAllErrorPlugin = useCallback(async () => {
|
||||||
|
await mutateAsyncClearAll()
|
||||||
|
handleRefetch()
|
||||||
|
}, [mutateAsyncClearAll, handleRefetch])
|
||||||
const totalPluginsLength = allPlugins.length
|
const totalPluginsLength = allPlugins.length
|
||||||
const runningPluginsLength = runningPlugins.length
|
const runningPluginsLength = runningPlugins.length
|
||||||
const errorPluginsLength = errorPlugins.length
|
const errorPluginsLength = errorPlugins.length
|
||||||
@ -84,6 +92,7 @@ export const usePluginTaskStatus = () => {
|
|||||||
isSuccess,
|
isSuccess,
|
||||||
isFailed,
|
isFailed,
|
||||||
handleClearErrorPlugin,
|
handleClearErrorPlugin,
|
||||||
|
handleClearAllErrorPlugin,
|
||||||
opacity,
|
opacity,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -38,6 +38,7 @@ const PluginTasks = () => {
|
|||||||
isSuccess,
|
isSuccess,
|
||||||
isFailed,
|
isFailed,
|
||||||
handleClearErrorPlugin,
|
handleClearErrorPlugin,
|
||||||
|
handleClearAllErrorPlugin,
|
||||||
opacity,
|
opacity,
|
||||||
} = usePluginTaskStatus()
|
} = usePluginTaskStatus()
|
||||||
const { getIconUrl } = useGetIcon()
|
const { getIconUrl } = useGetIcon()
|
||||||
@ -133,6 +134,7 @@ const PluginTasks = () => {
|
|||||||
className='shrink-0'
|
className='shrink-0'
|
||||||
size='small'
|
size='small'
|
||||||
variant='ghost'
|
variant='ghost'
|
||||||
|
onClick={() => handleClearAllErrorPlugin()}
|
||||||
>
|
>
|
||||||
{t('plugin.task.clearAll')}
|
{t('plugin.task.clearAll')}
|
||||||
</Button>
|
</Button>
|
||||||
|
@ -315,6 +315,14 @@ export const useMutationClearTaskPlugin = () => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const useMutationClearAllTaskPlugin = () => {
|
||||||
|
return useMutation({
|
||||||
|
mutationFn: () => {
|
||||||
|
return post<{ success: boolean }>('/workspaces/current/plugin/tasks/delete_all')
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export const useMutationCheckDependenciesBeforeImportDSL = () => {
|
export const useMutationCheckDependenciesBeforeImportDSL = () => {
|
||||||
const mutation = useMutation({
|
const mutation = useMutation({
|
||||||
mutationFn: ({ dslString, url }: { dslString?: string, url?: string }) => {
|
mutationFn: ({ dslString, url }: { dslString?: string, url?: string }) => {
|
||||||
|
Loading…
Reference in New Issue
Block a user