File: /www/wwwroot/www.cytocare.cn/wp-content/plugins/blocksy-companion-pro/static/js/dashboard.js
import { createElement, Component } from '@wordpress/element'
import * as check from '@wordpress/element'
import ctEvents from 'ct-events'
import { __ } from 'ct-i18n'
import Extensions from './dashboard/screens/Extensions'
import Extension from './dashboard/screens/Extension'
import DemoInstall from './dashboard/screens/DemoInstall'
import SiteExport from './dashboard/screens/SiteExport'
import DemoToInstall from './dashboard/screens/DemoInstall/DemoToInstall'
import { getStarterSitesStatus } from './dashboard/helpers/starter-sites'
getStarterSitesStatus()
.then((response) => {
if (response.status !== 511) {
// We are good, do nothing
return
}
fetch(
`${ctDashboardLocalizations.ajax_url}?action=blocksy_dashboard_handle_incorrect_license`,
{
method: 'POST',
body: JSON.stringify({}),
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
}
).then(({ success, data }) => {
// Ignore result
})
})
.catch((response) => {
console.error('Error:', response)
})
ctEvents.on('ct:dashboard:routes', (r) => {
r.push({
Component: (props) => <Extensions {...props} />,
path: '/extensions',
})
r.push({
Component: (props) => <Extension {...props} />,
path: '/extensions/:extension',
})
if (ctDashboardLocalizations.plugin_data.has_demo_install === 'yes') {
r.push({
Component: (props) => <DemoInstall {...props} />,
path: '/demos',
})
}
})
ctEvents.on('ct:dashboard:navigation-links', (r) => {
if (ctDashboardLocalizations.plugin_data.has_demo_install === 'yes') {
r.push({
text: __('Starter Sites', 'blocksy-companion'),
path: 'demos',
getProps: ({ isPartiallyCurrent, isCurrent }) =>
isPartiallyCurrent
? {
'aria-current': 'page',
}
: {},
})
}
r.push({
text: __('Extensions', 'blocksy-companion'),
path: '/extensions',
onClick: (e) => {
if (location.hash.indexOf('extensions') > -1) {
e.preventDefault()
}
},
getProps: ({ isPartiallyCurrent, isCurrent }) => {
return {
...(isPartiallyCurrent || isCurrent
? {
'aria-current': 'page',
}
: {}),
}
},
})
})
ctEvents.on('ct:dashboard:heading:after', (r) => {
if (!ctDashboardLocalizations.plugin_data.is_pro) {
return
}
r.content = <span>PRO</span>
})