import { Card } from 'components/Form/Card'; import Row from 'components/Form/Row'; import Heading from 'components/Form/Heading'; import colors from 'styles/colors'; const cardStyles = ` small { margin-top: 1rem; opacity: 0.5; } a { color: ${colors.textColor}; } details { // display: inline; display: flex; transition: all 0.2s ease-in-out; h3 { display: inline; } summary { padding: 0; margin: 1rem 0 0 0; cursor: pointer; } summary:before { content: "►"; position: absolute; margin-left: -1rem; color: ${colors.primary}; cursor: pointer; } &[open] summary:before { content: "▼"; } } `; const getPathName = (link: string) => { try { const url = new URL(link); return url.pathname; } catch(e) { return link; } }; const ContentLinksCard = (props: { data: any, title: string, actionButtons: any }): JSX.Element => { const internal = props.data.internal || []; const external = props.data.external || []; return ( Summary { internal && internal.length > 0 && (
Internal Links {internal.map((link: string) => ( {getPathName(link)} ))}
)} { external && external.length > 0 && (
External Links {external.map((link: string) => ( {link} ))}
)}
); } export default ContentLinksCard;