import React, { Fragment, useState, useEffect } from 'react'; import { isEmpty } from 'lodash'; import { DashCheck, DashClose, DashEye } from './dashboard-icons'; const DashboardPage = () => { const { install, installText, activateText, doneText, title, description, title2, title3, description3, note, note2, demo, demoUrl, pages, table, benefits } = window['GutenThemeConfig']; const [gutenverse, setGutenverse] = useState(null); const [loading, setLoading] = useState(true); const [popupImg, setPopupImg] = useState(''); const [openPopup, setOpenPopup] = useState(false); useEffect(() => { wp.apiFetch({ path: 'wp/v2/plugins/gutenverse/gutenverse', method: 'GET', }).then(data => { !isEmpty(data) && setGutenverse(data); }).catch(() => { setGutenverse(false); }).finally(() => { setLoading(false); }); }, []); const activatePlugin =() => { setLoading(true); if (!isEmpty(gutenverse) && gutenverse['status'] === 'active') { window.open(install, '_self'); return; } let path = 'wp/v2/plugins'; let data = { slug: 'gutenverse', status: 'active' } if (!isEmpty(gutenverse) && gutenverse['status'] === 'inactive') { path = 'wp/v2/plugins/gutenverse/gutenverse'; data = { status: 'active' }; } wp.apiFetch({ path, method: 'POST', data }).finally(() => { setLoading(false); location.reload(); }); } const onOpen = img => { setOpenPopup(true); setPopupImg(img); } const onClose = () => { setOpenPopup(false); } return
{Object.keys(pages).map(key => { return
onOpen(pages[key])}> image
})}

{title}

{description} {note} {note2}
{!isEmpty(gutenverse) && gutenverse['status'] === 'active' ? {loading ?
: doneText}
: !isEmpty(gutenverse) && gutenverse['status'] === 'inactive' ? {loading ?
: activateText}
: {loading ?
: installText}
} {demo}

{title2}

{table['titles'].map((title, key) => )} {table['features'].map((feature, key) => { return })}
{title}
{feature}

{title3}

{description3}
{benefits['title']}
    {benefits['features'].map((feature, key) => { return
  • {feature}
  • })}
image
} export default DashboardPage;