Files
grafana/public/app/features/provisioning/hooks/useCreateOrUpdateRepositoryFile.ts
Alex Khomenko 6a11d462cb API: Support versioned frontend clients (#106545)
* Update the generator to include version

* Add versioned APIs

* Update imports

* Prettier
2025-06-13 13:24:37 +03:00

23 lines
730 B
TypeScript

import { useCallback } from 'react';
import {
ReplaceRepositoryFilesWithPathApiArg,
useCreateRepositoryFilesWithPathMutation,
useReplaceRepositoryFilesWithPathMutation,
} from 'app/api/clients/provisioning/v0alpha1';
export function useCreateOrUpdateRepositoryFile(name?: string) {
const [create, createRequest] = useCreateRepositoryFilesWithPathMutation();
const [update, updateRequest] = useReplaceRepositoryFilesWithPathMutation();
const updateOrCreate = useCallback(
(data: ReplaceRepositoryFilesWithPathApiArg) => {
const actions = name ? update : create;
return actions(data);
},
[create, name, update]
);
return [updateOrCreate, name ? updateRequest : createRequest] as const;
}