UNPKG

design-comuni-plone-theme

Version:
107 lines (98 loc) 3.36 kB
/** * FooterNavigation components. * @module components/ItaliaTheme/Footer/FooterNavigation */ import { Link } from 'react-router-dom'; import { useSelector } from 'react-redux'; import { defineMessages, useIntl } from 'react-intl'; import { isEqual } from 'lodash'; import { UniversalLink } from '@plone/volto/components'; import { Row, Col, LinkList, LinkListItem } from 'design-react-kit'; import { SectionIcon } from 'design-comuni-plone-theme/components/ItaliaTheme'; import config from '@plone/volto/registry'; const messages = defineMessages({ goToPage: { id: 'Vai alla pagina', defaultMessage: 'Vai alla pagina', }, }); const FooterNavigation = () => { const intl = useIntl(); const items = useSelector((state) => state.navigation.items, isEqual); const show_navigation = useSelector( (state) => state.navigation.show_in_footer, ); // DEPRECATED: isFooterCollapsed to be removed in version 12 if (config.settings.isFooterCollapsed) { // eslint-disable-next-line no-console console.warn( 'DEPRECATED: config.settings.isFooterCollapsed will be removed in version 12. Use config.settings.siteProperties.footerNavigationDepth instead.', ); } const markFooterLinks = config.settings.siteProperties.markFooterLinks; return show_navigation ? ( <> {items && ( <Row tag="div"> {items.map((item) => ( <Col lg={3} md={3} sm={6} className="pb-4" widths={['xs', 'sm', 'md', 'lg', 'xl']} key={item.url} > <h4> <SectionIcon section={item.url} iconProps={{ size: 'sm', color: 'white', className: 'me-2', title: item.title, }} /> <UniversalLink href={item.url} title={ intl.formatMessage(messages.goToPage) + ': ' + item.title } className={markFooterLinks ? 'underlined' : ''} > {item.title} </UniversalLink> </h4> {/* DEPRECATED: isFooterCollapsed to be removed in version 12 */} {!config.settings.isFooterCollapsed && config.settings.siteProperties.footerNavigationDepth > 1 && item.items && ( <LinkList className="footer-list clearfix" tag="div"> {item.items.map((subitem) => { return ( <LinkListItem key={subitem.url} href={subitem.url} tag={UniversalLink} title={ intl.formatMessage(messages.goToPage) + ': ' + subitem.title } > {subitem.title} </LinkListItem> ); })} </LinkList> )} </Col> ))} </Row> )} </> ) : ( <></> ); }; export default FooterNavigation;