UNPKG

design-comuni-plone-theme

Version:
39 lines (34 loc) 1.15 kB
import React from 'react'; import { useSelector } from 'react-redux'; import { useLocation } from 'react-router-dom'; import { BodyClass } from '@plone/volto/helpers'; import ScrollToTop from 'design-comuni-plone-theme/components/ItaliaTheme/ScrollToTop/ScrollToTop'; import { SubsiteLoader } from 'volto-subsites'; import config from '@plone/volto/registry'; const GenericAppExtras = (props) => { const location = useLocation(); const subsite = useSelector((state) => state.subsite?.data); const subsiteLoadable = config.settings.loadables['subsite-' + subsite?.subsite_css_class?.token]; if (subsiteLoadable) { subsiteLoadable.load(); } const FORCE_PUBLIC_UI = ['/sitemap', '/search']; const isPublicUI = FORCE_PUBLIC_UI.reduce( (acc, route) => acc || new RegExp(route).test(`/${location.pathname}`), false, ); return ( <> {isPublicUI && ( <> <BodyClass className="public-ui" /> <BodyClass className="cms-ui" remove={true} /> </> )} <ScrollToTop /> <SubsiteLoader pathname={location.pathname} /> </> ); }; export default GenericAppExtras;