Proyectos de Subversion LeadersLinked - SPA

Rev

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

Rev 2369 Rev 2385
Línea 1... Línea 1...
1
import React from 'react'
1
import React from 'react'
2
import { useSelector } from 'react-redux'
2
import { useSelector } from 'react-redux'
3
import { Container, Grid } from '@mui/material'
3
import { Container, Grid } from '@mui/material'
4
import parse from 'html-react-parser'
4
import parse from 'html-react-parser'
Línea -... Línea 5...
-
 
5
 
-
 
6
import useFetch from '@app/hooks/useFetch'
5
 
7
 
6
import Widget from '@app/components/UI/Widget'
8
import Widget from '@app/components/UI/Widget'
7
import SurveyForm from '@app/components/survey-form/SurveyForm'
9
import SurveyForm from '@app/components/survey-form/SurveyForm'
-
 
10
import AuthNavbar from '@app/components/UI/auth-navbar'
Línea 8... Línea 11...
8
import AuthNavbar from '@app/components/UI/auth-navbar'
11
import { useParams } from 'react-router-dom'
9
 
12
 
10
function ShorterPostPage() {
13
function ShorterPostPage() {
11
  const { isAuth } = useSelector((state) => state.auth)
-
 
12
  const post = {
14
  const { isAuth } = useSelector((state) => state.auth)
13
    feed_unique: '664e1becdd052',
-
 
14
    feed_uuid: 'cb789433-8299-4a93-ab42-d0628a224187',
-
 
15
    feed_my_reaction: 'l',
-
 
16
    feed_delete_url: '/feed/delete/cb789433-8299-4a93-ab42-d0628a224187',
-
 
17
    feed_content_type: '',
-
 
18
    feed_reactions: [
-
 
19
      {
15
  const { id } = useParams()
20
        total: 1,
-
 
21
        reaction: 'l'
16
  const { data } = useFetch(`/shorter/${id}`, null)
22
      }
-
 
23
    ],
-
 
24
    feed_reactions_url:
-
 
25
      'https://dev-services.leaderslinked.com/feed/reactions/cb789433-8299-4a93-ab42-d0628a224187',
-
 
26
    feed_save_reaction_url:
-
 
27
      '/feed/save-reaction/cb789433-8299-4a93-ab42-d0628a224187',
-
 
28
    feed_highlighted: 0,
-
 
29
    feed_abuse_report_url: '',
-
 
30
    feed_delete_reaction_url:
-
 
31
      '/feed/delete-reaction/cb789433-8299-4a93-ab42-d0628a224187',
-
 
32
    feed_share_url:
-
 
33
      '/feed/share/cb789433-8299-4a93-ab42-d0628a224187/group/b294cd89-ebf4-427a-8d5e-332a3bf6924e',
-
 
34
    feed_share_external_url:
-
 
35
      'https://dev-services.leaderslinked.com/shorter/cb789433-8299-4a93-ab42-d0628a224187/generate/feed',
-
 
36
    feed_increment_external_counter_url:
-
 
37
      'https://dev-services.leaderslinked.com/share/type/feed/code/cb789433-8299-4a93-ab42-d0628a224187/user/e85129fa-18eb-4149-8640-fea9ae916cdc/timestamp/1716394988/rand/1496831637/password/87713bf90d8e3c4d3c70cf60e0703424/increment-external-counter',
-
 
38
    feed_vote_url: '',
-
 
39
    owner_url: '',
-
 
40
    owner_image:
-
 
41
      'https://dev-services.leaderslinked.com/storage/type/group/code/b294cd89-ebf4-427a-8d5e-332a3bf6924e/filename/group-image-65312ac078b8c.png/',
17
  const { data: post } = useFetch(data)
42
    owner_name: 'prueba',
-
 
43
    owner_description: '<p>New post</p>\r\n',
-
 
44
    owner_feed_type: 'g',
-
 
45
    owner_shared: 0,
-
 
46
    owner_external_shared: 0,
-
 
47
    owner_comments: 0,
-
 
48
    owner_time_elapse: '5 dias',
-
 
49
    comment_add_url: '/feed/comment/cb789433-8299-4a93-ab42-d0628a224187',
-
 
Línea 50... Línea 18...
50
    comments: []
18
 
51
  }
19
  const { shared_image, shared_title, shared_description } = post
52
 
20
 
53
  return (
21
  return (
Línea 62... Línea 30...
62
            alignItems: 'center'
30
            alignItems: 'center'
63
          }}
31
          }}
64
        >
32
        >
65
          <Grid item xs={12} md={8}>
33
          <Grid item xs={12} md={8}>
66
            <Widget>
34
            <Widget>
67
              <Widget.Header
-
 
68
                avatar={post.owner_image}
-
 
69
                title={post.owner_name}
-
 
70
                subheader={post.owner_time_elapse}
35
              <Widget.Header avatar={shared_image} title={shared_title} />
71
              />
-
 
Línea 72... Línea 36...
72
 
36
 
73
              <Widget.Body>
37
              <Widget.Body>
-
 
38
                <FeedContent
-
 
39
                  type='description'
-
 
40
                  content={{ owner_description: shared_description }}
74
                <FeedContent feed={post} />
41
                />
75
              </Widget.Body>
42
              </Widget.Body>
76
            </Widget>
43
            </Widget>
77
          </Grid>
44
          </Grid>
78
        </Grid>
45
        </Grid>
79
      </Container>
46
      </Container>
80
    </>
47
    </>
81
  )
48
  )
Línea 82... Línea 49...
82
}
49
}
83
 
50
 
84
const FeedContent = ({ feed }) => {
51
const FeedContent = ({ type, content }) => {
85
  const renderContent = ({
52
  const renderContent = ({
86
    owner_description,
53
    owner_description,
87
    owner_file_image_preview,
54
    owner_file_image_preview,
88
    owner_file_video,
55
    owner_file_video,
89
    owner_file_image,
56
    owner_file_image,
90
    shared_name,
57
    shared_name,
91
    shared_image,
-
 
92
    shared_time_elapse,
58
    shared_image,
93
    feed_content_type,
59
    shared_time_elapse,
94
    feed_vote_url
60
    feed_vote_url
95
  }) => {
61
  }) => {
96
    switch (feed_content_type) {
62
    switch (type) {
97
      case 'fast-survey': {
63
      case 'fast-survey': {
Línea 98... Línea 64...
98
        const answers = []
64
        const answers = []
Línea 165... Línea 131...
165
                  owner_file_video,
131
                  owner_file_video,
166
                  owner_file_image,
132
                  owner_file_image,
167
                  shared_name,
133
                  shared_name,
168
                  shared_image,
134
                  shared_image,
169
                  shared_time_elapse,
135
                  shared_time_elapse,
170
                  feed_content_type,
-
 
171
                  feed_vote_url
136
                  feed_vote_url
172
                })}
137
                })}
173
              </Widget.Body>
138
              </Widget.Body>
174
            </Widget>
139
            </Widget>
175
          </>
140
          </>
176
        )
141
        )
177
      }
142
      }
Línea 178... Línea 143...
178
 
143
 
179
      default: {
144
      default: {
180
        return parse(owner_description ?? '')
145
        return parse(owner_description)
181
      }
146
      }
182
    }
147
    }
Línea 183... Línea 148...
183
  }
148
  }
184
 
149
 
Línea 185... Línea 150...
185
  return <>{renderContent(feed)}</>
150
  return <>{renderContent(content)}</>