Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3326 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 3326 Rev 3719
Línea 1... Línea 1...
1
import { axios } from '@utils'
1
import { axios } from '@utils';
2
 
2
 
3
export const saveHabit = async (url, habit) => {
3
export const saveHabit = async (url, habit) => {
4
  const formData = new FormData()
4
  const formData = new FormData();
5
  Object.entries(habit).forEach(
-
 
6
    ([key, value]) => value && formData.append(key, value)
5
  Object.entries(habit).forEach(([key, value]) => value && formData.append(key, value));
7
  )
-
 
8
  const response = await axios.post(url, formData)
6
  const response = await axios.post(url, formData);
9
  const { data, message, success } = response.data
7
  const { data, message, success } = response.data;
10
  if (!success) throw new Error('Error al guardar el hábito')
8
  if (!success) throw new Error('Error al guardar el hábito');
11
  return { data, message }
9
  return { data, message };
12
}
10
};
13
 
11
 
14
export const editHabit = async (url, habit) => {
12
export const editHabit = async (url, habit) => {
15
  const formData = new FormData()
13
  const formData = new FormData();
16
  Object.entries(habit).forEach(([key, value]) => formData.append(key, value))
14
  Object.entries(habit).forEach(([key, value]) => formData.append(key, value));
17
  const response = await axios.post(url, formData)
15
  const response = await axios.post(url, formData);
18
  const { data, message, success } = response.data
16
  const { data, message, success } = response.data;
19
  if (!success) throw new Error('Error al editar el hábito')
17
  if (!success) throw new Error('Error al editar el hábito');
20
  return { data, message }
18
  return { data, message };
21
}
19
};
22
 
20
 
23
export const deleteHabit = async (url) => {
21
export const deleteHabit = async (url) => {
24
  const response = await axios.post(url)
22
  const response = await axios.post(url);
25
  const { data, success } = response.data
23
  const { data, success } = response.data;
26
  if (!success) throw new Error('Error al eliminar el hábito')
24
  if (!success) throw new Error('Error al eliminar el hábito');
27
  return data
25
  return data;
28
}
26
};
29
 
27
 
30
export const getTemplate = async (url) => {
28
export const getTemplate = async (url) => {
31
  const response = await axios.get(url)
29
  const response = await axios.get(url);
32
  const { data, success } = response.data
30
  const { data, success } = response.data;
33
  if (!success) throw new Error('Error al guardar el hábito')
31
  if (!success) throw new Error('Error al guardar el hábito');
34
  return data
32
  return data;
35
}
33
};
36
 
34
 
37
export const saveProgress = async (url, progress) => {
35
export const saveProgress = async (url, progress) => {
38
  const formData = new FormData()
36
  const formData = new FormData();
39
  Object.entries(progress).forEach(([key, value]) =>
37
  Object.entries(progress).forEach(([key, value]) => formData.append(key, value));
40
    formData.append(key, value)
-
 
41
  )
-
 
42
  const response = await axios.post(url, formData)
38
  const response = await axios.post(url, formData);
43
  const { data, message, success } = response.data
39
  const { data, message, success } = response.data;
44
  if (!success) {
40
  if (!success) {
45
    const errMsg =
-
 
46
      typeof data === 'string'
-
 
47
        ? data
-
 
48
        : 'Error al guardar el progreso del hábito'
41
    const errMsg = typeof data === 'string' ? data : 'Error al guardar el progreso del hábito';
49
    throw new Error(errMsg)
42
    throw new Error(errMsg);
50
  }
43
  }
51
  return { data, message }
44
  return { data, message };
52
}
45
};
53
 
46
 
54
export const updateProgress = async (url, progress) => {
47
export const updateProgress = async (url, progress) => {
55
  const formData = new FormData()
48
  const formData = new FormData();
56
  Object.entries(progress).forEach(([key, value]) =>
49
  Object.entries(progress).forEach(([key, value]) => formData.append(key, value));
57
    formData.append(key, value)
-
 
58
  )
-
 
59
  const response = await axios.post(url, formData)
50
  const response = await axios.post(url, formData);
60
  const { data, message, success } = response.data
51
  const { data, message, success } = response.data;
61
  if (!success) {
52
  if (!success) {
62
    const errMsg =
-
 
63
      typeof data === 'string'
-
 
64
        ? data
-
 
65
        : 'Error al actualizar el progreso del hábito'
53
    const errMsg = typeof data === 'string' ? data : 'Error al actualizar el progreso del hábito';
66
    throw new Error(errMsg)
54
    throw new Error(errMsg);
67
  }
55
  }
68
  return { data, message }
56
  return { data, message };
69
}
57
};
70
 
58
 
71
export const deleteProgress = async (url) => {
59
export const deleteProgress = async (url) => {
72
  const response = await axios.post(url)
60
  const response = await axios.post(url);
73
  const { data, success } = response.data
61
  const { data, success } = response.data;
74
  if (!success) {
62
  if (!success) {
75
    const errMsg =
-
 
76
      typeof data === 'string'
-
 
77
        ? data
-
 
78
        : 'Error al eliminar el progreso del hábito'
63
    const errMsg = typeof data === 'string' ? data : 'Error al eliminar el progreso del hábito';
79
    throw new Error(errMsg)
64
    throw new Error(errMsg);
80
  }
65
  }
81
  return data
66
  return data;
82
}
67
};