Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3146 | Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3140 stevensc 1
import React, { createContext, useState } from 'react'
2
 
3
export const HabitsContext = createContext()
4
 
5
export default function HabitsProvider({ children }) {
6
  const [habits, setHabits] = useState([
7
    {
8
      id: Date.now(),
9
      name: 'Ejercicio Diario',
10
      description:
11
        'Realizar ejercicios físicos todos los días para mantenerse en forma.',
12
      action: {
13
        frequency: 'Diariamente'
14
      },
15
      method: {
16
        type: '',
17
        content: ''
18
      },
19
      goal: {
20
        amount: 30 // minutos de ejercicio diario
21
      }
22
    }
23
  ])
24
  const [showModal, setshowModal] = useState(false)
25
 
26
  const toggleModal = () => setshowModal(!showModal)
27
 
28
  const addHabit = (habit) => {
29
    const newHabit = {
30
      id: habits.length + 1,
31
      ...habit
32
    }
33
    setHabits([...habits, newHabit])
34
    toggleModal()
35
  }
36
 
37
  return (
38
    <HabitsContext.Provider
39
      value={{
40
        setHabits,
41
        habits,
42
        toggleModal,
43
        showModal,
44
        addHabit
45
      }}
46
    >
47
      {children}
48
    </HabitsContext.Provider>
49
  )
50
}