Rev 3320 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import { axios } from '@utils'
export const saveHabit = async (url, habit) => {
const formData = new FormData()
Object.entries(habit).forEach(
([key, value]) => value && formData.append(key, value)
)
const response = await axios.post(url, formData)
const { data, message, success } = response.data
if (!success) throw new Error('Error al guardar el hábito')
return { data, message }
}
export const editHabit = async (url, habit) => {
const formData = new FormData()
Object.entries(habit).forEach(([key, value]) => formData.append(key, value))
const response = await axios.post(url, formData)
const { data, message, success } = response.data
if (!success) throw new Error('Error al editar el hábito')
return { data, message }
}
export const deleteHabit = async (url) => {
const response = await axios.post(url)
const { data, success } = response.data
if (!success) throw new Error('Error al eliminar el hábito')
return data
}
export const getTemplate = async (url) => {
const response = await axios.get(url)
const { data, success } = response.data
if (!success) throw new Error('Error al guardar el hábito')
return data
}
export const saveProgress = async (url, progress) => {
const formData = new FormData()
Object.entries(progress).forEach(([key, value]) =>
formData.append(key, value)
)
const response = await axios.post(url, formData)
const { data, message, success } = response.data
if (!success) {
const errMsg =
typeof data === 'string'
? data
: 'Error al guardar el progreso del hábito'
throw new Error(errMsg)
}
return { data, message }
}
export const updateProgress = async (url, progress) => {
const formData = new FormData()
Object.entries(progress).forEach(([key, value]) =>
formData.append(key, value)
)
const response = await axios.post(url, formData)
const { data, message, success } = response.data
if (!success) {
const errMsg =
typeof data === 'string'
? data
: 'Error al actualizar el progreso del hábito'
throw new Error(errMsg)
}
return { data, message }
}
export const deleteProgress = async (url) => {
const response = await axios.post(url)
const { data, success } = response.data
if (!success) {
const errMsg =
typeof data === 'string'
? data
: 'Error al eliminar el progreso del hábito'
throw new Error(errMsg)
}
return data
}