Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 1126 | Rev 1133 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1126 Rev 1132
Línea 12... Línea 12...
12
const topicsReducer = (state = initialState, { type, payload }) => {
12
const topicsReducer = (state = initialState, { type, payload }) => {
13
  switch (type) {
13
  switch (type) {
14
    case TOPIC_ACTIONS.ADD_TOPIC: {
14
    case TOPIC_ACTIONS.ADD_TOPIC: {
15
      const { uuid, ...topic } = payload
15
      const { uuid, ...topic } = payload
Línea -... Línea 16...
-
 
16
 
-
 
17
      const topicsIds = new Set([...state.topicsAllIds, uuid])
16
 
18
 
17
      return {
19
      return {
18
        ...state,
20
        ...state,
19
        topicById: {
21
        topicById: {
20
          ...state.topicById,
22
          ...state.topicById,
21
          [uuid]: { ...topic, uuid }
23
          [uuid]: { ...topic, uuid }
22
        },
24
        },
23
        topicsAllIds: [...state.topicsAllIds, uuid]
25
        topicsAllIds: Array.from(topicsIds)
24
      }
26
      }
Línea 25... Línea 27...
25
    }
27
    }
26
 
28
 
Línea -... Línea 29...
-
 
29
    case TOPIC_ACTIONS.ADD_CAPSULE: {
-
 
30
      const { topicId, capsule } = payload
27
    case TOPIC_ACTIONS.ADD_CAPSULE: {
31
 
28
      const { topicId, capsule } = payload
32
      const capsulesIds = new Set([...state.capsulesAllIds, capsule.uuid])
29
 
33
 
30
      return {
34
      return {
31
        ...state,
35
        ...state,
32
        capsuleById: {
36
        capsuleById: {
33
          ...state.capsuleById,
37
          ...state.capsuleById,
34
          [capsule.uuid]: { ...capsule, topicId }
38
          [capsule.uuid]: { ...capsule, topicId }
35
        },
39
        },
Línea 36... Línea 40...
36
        capsulesAllIds: [...state.capsulesAllIds, capsule.uuid]
40
        capsulesAllIds: Array.from(capsulesIds)
37
      }
41
      }
Línea -... Línea 42...
-
 
42
    }
-
 
43
 
38
    }
44
    case TOPIC_ACTIONS.ADD_SLIDE: {
39
 
45
      const { capsuleId, slide } = payload
40
    case TOPIC_ACTIONS.ADD_SLIDE: {
46
 
41
      const { capsuleId, slide } = payload
47
      const slidesIds = new Set([...state.slidesAllIds, slide.uuid])
42
 
48
 
43
      return {
49
      return {
44
        ...state,
50
        ...state,
-
 
51
        slideById: {
-
 
52
          ...state.slideById,
-
 
53
          [slide.uuid]: { ...slide, capsuleId }
-
 
54
        },
-
 
55
        slidesAllIds: Array.from(slidesIds)
-
 
56
      }
-
 
57
    }
-
 
58
 
-
 
59
    case TOPIC_ACTIONS.COMPLETE_TOPIC: {
-
 
60
      const { uuid } = payload
-
 
61
      const completedTopic = { ...state.topicById[uuid], completed: 1 }
-
 
62
 
-
 
63
      return {
-
 
64
        ...state,
-
 
65
        topicById: {
-
 
66
          ...state.topicById,
-
 
67
          [uuid]: completedTopic
-
 
68
        }
-
 
69
      }
-
 
70
    }
-
 
71
 
-
 
72
    case TOPIC_ACTIONS.COMPLETE_CAPSULE: {
-
 
73
      const { uuid } = payload
-
 
74
      const completedCapsule = { ...state.capsuleById[uuid], completed: 1 }
-
 
75
 
-
 
76
      return {
-
 
77
        ...state,
-
 
78
        capsuleById: {
-
 
79
          ...state.capsuleById,
-
 
80
          [uuid]: completedCapsule
-
 
81
        }
-
 
82
      }
-
 
83
    }
-
 
84
 
-
 
85
    case TOPIC_ACTIONS.COMPLETE_SLIDE: {
-
 
86
      const { uuid } = payload
-
 
87
      const completedSlide = { ...state.slideById[uuid], completed: 1 }
-
 
88
 
-
 
89
      return {
45
        slideById: {
90
        ...state,
46
          ...state.capsuleById,
91
        slideById: {
Línea 47... Línea 92...
47
          [slide.uuid]: { ...slide, capsuleId }
92
          ...state.slideById,
48
        },
93
          [uuid]: completedSlide