1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-24 07:49:41 +02:00
portainer/app/react/edge/edge-devices/open-amt/useActivateDevicesMutation.ts
Chaim Lev-Ari 7fe0712b61
feat(home): move edge device to view [EE-4559] (#8189)
Co-authored-by: matias.spinarolli <matias.spinarolli@portainer.io>
2022-12-21 10:07:34 +13:00

22 lines
808 B
TypeScript

import { useMutation } from 'react-query';
import { promiseSequence } from '@/portainer/helpers/promise-utils';
import { mutationOptions, withError } from '@/react-tools/react-query';
import { EnvironmentId } from '@/react/portainer/environments/types';
import axios, { parseAxiosError } from '@/portainer/services/axios';
export function useActivateDevicesMutation() {
return useMutation(
(environmentIds: EnvironmentId[]) =>
promiseSequence(environmentIds.map((id) => () => activateDevice(id))),
mutationOptions(withError('Unable to associate with OpenAMT'))
);
}
async function activateDevice(environmentId: EnvironmentId) {
try {
await axios.post(`/open_amt/${environmentId}/activate`);
} catch (e) {
throw parseAxiosError(e as Error, 'Unable to activate device');
}
}