(workspace: Workspace, queryClient: QueryClient)
| 385 | }; |
| 386 | |
| 387 | export const cancelBuild = (workspace: Workspace, queryClient: QueryClient) => { |
| 388 | return { |
| 389 | mutationFn: () => { |
| 390 | const { status } = workspace.latest_build; |
| 391 | const params = |
| 392 | status === "pending" || status === "running" |
| 393 | ? { expect_status: status } |
| 394 | : undefined; |
| 395 | return API.cancelWorkspaceBuild(workspace.latest_build.id, params); |
| 396 | }, |
| 397 | onSuccess: async () => { |
| 398 | await queryClient.invalidateQueries({ |
| 399 | queryKey: workspaceBuildsKey(workspace.id), |
| 400 | }); |
| 401 | }, |
| 402 | }; |
| 403 | }; |
| 404 | |
| 405 | export const activate = (workspace: Workspace, queryClient: QueryClient) => { |
| 406 | return { |
no test coverage detected