2021-04-25 23:13:03 -05:00
|
|
|
import { AnnotationEvent } from '@grafana/data';
|
|
|
|
import { getBackendSrv } from '@grafana/runtime';
|
2021-07-06 04:50:46 -05:00
|
|
|
import { AnnotationTagsResponse } from './types';
|
2021-04-25 23:13:03 -05:00
|
|
|
|
|
|
|
export function saveAnnotation(annotation: AnnotationEvent) {
|
|
|
|
return getBackendSrv().post('/api/annotations', annotation);
|
|
|
|
}
|
|
|
|
|
|
|
|
export function updateAnnotation(annotation: AnnotationEvent) {
|
|
|
|
return getBackendSrv().put(`/api/annotations/${annotation.id}`, annotation);
|
|
|
|
}
|
|
|
|
|
|
|
|
export function deleteAnnotation(annotation: AnnotationEvent) {
|
|
|
|
return getBackendSrv().delete(`/api/annotations/${annotation.id}`);
|
|
|
|
}
|
2021-07-06 04:50:46 -05:00
|
|
|
|
|
|
|
export async function getAnnotationTags() {
|
|
|
|
const response: AnnotationTagsResponse = await getBackendSrv().get('/api/annotations/tags');
|
|
|
|
return response.result.tags.map(({ tag, count }) => ({
|
|
|
|
term: tag,
|
|
|
|
count,
|
|
|
|
}));
|
|
|
|
}
|