Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev 4797 Rev 4798
Línea 11... Línea 11...
11
        const [shareOptions, setShareOptions] = useState(false)
11
        const [shareOptions, setShareOptions] = useState(false)
12
        const [shareUrl, setShareUrl] = useState('');
12
        const [shareUrl, setShareUrl] = useState('');
Línea 13... Línea 13...
13
 
13
 
Línea 14... Línea -...
14
        const handleDisplayReactionList = () => setShareOptions(!shareOptions)
-
 
15
 
-
 
16
        const getShareUrl = new Promise((resolve, reject) => {
-
 
17
            if (shareOptions) {
-
 
18
                axios.get(url)
-
 
19
                    .then(({ data }) => {
-
 
20
                        if (!data.success) {
-
 
21
                            dispatch(addNotification({ style: 'danger', msg: data.data }))
-
 
22
                            setShareOptions(false)
-
 
23
                            return reject(data.data)
-
 
24
                        }
-
 
25
 
-
 
26
                        return resolve(setShareUrl(data.data))
-
 
27
                    })
-
 
28
                    .catch((err) => reject(err))
-
 
29
            }
-
 
30
        })
14
        const handleDisplayReactionList = () => setShareOptions(!shareOptions)
31
 
-
 
32
        async function getShareUrlVoid() {
15
 
33
            if (shareOptions) {
16
        async function getShareUrl() {
34
                await axios.get(url)
17
            await axios.get(url)
35
                    .then(({ data }) => {
18
                .then(({ data }) => {
36
                        if (!data.success) {
19
                    if (!data.success) {
37
                            dispatch(addNotification({ style: 'danger', msg: data.data }))
20
                        dispatch(addNotification({ style: 'danger', msg: data.data }))
38
                            setShareOptions(false)
21
                        setShareOptions(false)
39
                            return
22
                        return
40
                        }
23
                    }
41
 
24
 
42
                        setShareUrl(data.data)
25
                    setShareUrl(data.data)
43
                    })
-
 
44
                    .catch((err) => console.log(err))
26
                })
Línea -... Línea 27...
-
 
27
                .catch((err) => console.log(err))
-
 
28
        }
45
            }
29
 
46
        }
30
        const handleClose = () => alert('Counter: 1')
47
 
31
 
48
        return (
32
        return (
49
            <div className="position-relative d-inline-flex" onClick={handleDisplayReactionList} style={{ flexGrow: 1 }}>
33
            <div className="position-relative d-inline-flex" onClick={handleDisplayReactionList} style={{ flexGrow: 1 }}>
50
                <Component {...params} />
34
                <Component {...params} />
51
                {shareOptions &&
35
                {shareOptions &&
52
                    <div className="external__share" >
36
                    <div className="external__share" >
53
                        <FacebookShareButton beforeOnClick={getShareUrlVoid} url={shareUrl}>
37
                        <FacebookShareButton beforeOnClick={getShareUrl} url={shareUrl} onShareWindowClose={handleClose}>
54
                            <FacebookIcon size={32} round />
38
                            <FacebookIcon size={32} round />
55
                        </FacebookShareButton>
39
                        </FacebookShareButton>
56
                        <TwitterShareButton beforeOnClick={() => getShareUrl} url={shareUrl}>
40
                        <TwitterShareButton beforeOnClick={getShareUrl} url={shareUrl}>
57
                            <TwitterIcon size={32} round />
41
                            <TwitterIcon size={32} round />
58
                        </TwitterShareButton>
42
                        </TwitterShareButton>
59
                        <TelegramShareButton beforeOnClick={() => getShareUrl} url={shareUrl}>
43
                        <TelegramShareButton beforeOnClick={getShareUrl} url={shareUrl}>
60
                            <TelegramIcon size={32} round />
44
                            <TelegramIcon size={32} round />
61
                        </TelegramShareButton>
45
                        </TelegramShareButton>
62
                        <WhatsappShareButton beforeOnClick={() => getShareUrl} url={shareUrl}>
46
                        <WhatsappShareButton beforeOnClick={getShareUrl} url={shareUrl}>
63
                            <WhatsappIcon size={32} round />
47
                            <WhatsappIcon size={32} round />
64
                        </WhatsappShareButton>
48
                        </WhatsappShareButton>
65
                        <RedditShareButton beforeOnClick={() => getShareUrl} url={shareUrl}>
49
                        <RedditShareButton beforeOnClick={getShareUrl} url={shareUrl}>
66
                            <RedditIcon size={32} round />
50
                            <RedditIcon size={32} round />
67
                        </RedditShareButton>
51
                        </RedditShareButton>
68
                        <EmailShareButton beforeOnClick={() => getShareUrl} url={shareUrl}>
52
                        <EmailShareButton beforeOnClick={getShareUrl} url={shareUrl}>
69
                            <EmailIcon size={32} round />
53
                            <EmailIcon size={32} round />
70
                        </EmailShareButton>
54
                        </EmailShareButton>