Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3319 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3313 stevensc 1
import React from 'react'
2
import { useDispatch } from 'react-redux'
3
 
3320 stevensc 4
import { useHabitProgress } from '@hooks'
3313 stevensc 5
import { saveProgress } from '@services/habits/habits'
6
import { addNotification } from '@store/notification/notification.actions'
7
 
8
import PageHeader from '@components/common/page-header'
9
import LoadingWrapper from '@components/common/loading-wrapper'
3320 stevensc 10
import ProgressForm from '@components/habits/progress/progress-form'
3313 stevensc 11
 
12
export default function AddHabitProgress() {
13
  const dispatch = useDispatch()
14
 
3320 stevensc 15
  const { addUrl, loading, addItem } = useHabitProgress()
3313 stevensc 16
 
3320 stevensc 17
  const onSubmit = async (progress) => {
3313 stevensc 18
    try {
3320 stevensc 19
      const response = await saveProgress(addUrl, progress)
20
      addItem(response.data)
21
      dispatch(addNotification({ style: 'success', msg: response.message }))
3313 stevensc 22
    } catch (error) {
23
      dispatch(addNotification({ style: 'danger', msg: error.message }))
24
    }
3320 stevensc 25
  }
3313 stevensc 26
 
27
  return (
28
    <>
3320 stevensc 29
      <PageHeader title='Agregar progreso' goBack />
3313 stevensc 30
 
3320 stevensc 31
      <LoadingWrapper loading={loading}>
32
        <ProgressForm onSubmit={onSubmit} />
3315 stevensc 33
      </LoadingWrapper>
3313 stevensc 34
    </>
35
  )
36
}