diff options
Diffstat (limited to 'app/assets/javascripts/vue_shared/alert_details/service.js')
-rw-r--r-- | app/assets/javascripts/vue_shared/alert_details/service.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/app/assets/javascripts/vue_shared/alert_details/service.js b/app/assets/javascripts/vue_shared/alert_details/service.js new file mode 100644 index 00000000000..90f4961103b --- /dev/null +++ b/app/assets/javascripts/vue_shared/alert_details/service.js @@ -0,0 +1,43 @@ +import { + fetchAlertMetricImages, + uploadAlertMetricImage, + updateAlertMetricImage, + deleteAlertMetricImage, +} from '~/rest_api'; +import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; + +function replaceModelIId(payload = {}) { + delete Object.assign(payload, { alertIid: payload.modelIid }).modelIid; + return payload; +} + +export const getMetricImages = async (payload) => { + const apiPayload = replaceModelIId(payload); + const response = await fetchAlertMetricImages(apiPayload); + return convertObjectPropsToCamelCase(response.data, { deep: true }); +}; + +export const uploadMetricImage = async (payload) => { + const apiPayload = replaceModelIId(payload); + const response = await uploadAlertMetricImage(apiPayload); + return convertObjectPropsToCamelCase(response.data); +}; + +export const updateMetricImage = async (payload) => { + const apiPayload = replaceModelIId(payload); + const response = await updateAlertMetricImage(apiPayload); + return convertObjectPropsToCamelCase(response.data); +}; + +export const deleteMetricImage = async (payload) => { + const apiPayload = replaceModelIId(payload); + const response = await deleteAlertMetricImage(apiPayload); + return convertObjectPropsToCamelCase(response.data); +}; + +export default { + getMetricImages, + uploadMetricImage, + updateMetricImage, + deleteMetricImage, +}; |