diff options
Diffstat (limited to 'makima/frontend/src/hooks/useDirectives.ts')
| -rw-r--r-- | makima/frontend/src/hooks/useDirectives.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/makima/frontend/src/hooks/useDirectives.ts b/makima/frontend/src/hooks/useDirectives.ts index 001cf89..af1c8c6 100644 --- a/makima/frontend/src/hooks/useDirectives.ts +++ b/makima/frontend/src/hooks/useDirectives.ts @@ -5,6 +5,7 @@ import { createDirective, updateDirective, deleteDirective, + startDirective as startDirectiveApi, type DirectiveSummary, type DirectiveWithChains, type CreateDirectiveRequest, @@ -90,6 +91,23 @@ export function useDirectives() { [fetchDirectives] ); + const startDirective = useCallback( + async (id: string): Promise<boolean> => { + setError(null); + try { + await startDirectiveApi(id); + await fetchDirectives(); + return true; + } catch (e) { + setError( + e instanceof Error ? e.message : "Failed to start directive" + ); + return false; + } + }, + [fetchDirectives] + ); + // Initial fetch useEffect(() => { fetchDirectives(); @@ -104,5 +122,6 @@ export function useDirectives() { saveDirective, editDirective, removeDirective, + startDirective, }; } |
