import React, { Fragment } from 'react'; import { borderRadius, Flex, Grid, Wrapper } from 'dot-design-system'; import { MdClose, MdEdit } from 'react-icons/md'; import { Placement } from './placements.models'; import { sectionBg } from '../styles/colors'; import { isAllTaxonomies, isNumeralInsertion, resolveFormat, resolveInsertionPointLabel, } from './placements.utils'; import { capitalize } from '../utils/strings'; import { subMenuMarginTop } from '../layout/layout.constants'; import { pathSatisfies } from 'ramda'; interface Props { placements: Placement[]; renderTaxonomy: (type: 'categories' | 'tags', id: number | string) => string; onDelete: (placement: Placement) => void; onEditClick: (placement: Placement) => void; } function SavedPlacementsTable({ placements, renderTaxonomy, onDelete, onEditClick }: Props) { let columnLayout = '1fr 1fr 1fr 1fr 1fr 1fr'; if (!placements.length) { return null; } return ( Widget Category / Tag Insertion Alignment Format {placements.map((placement) => { const taxonomies = placement.categories .map((id) => renderTaxonomy('categories', id)) .concat(placement.tags.map((id) => renderTaxonomy('tags', id))); if (isAllTaxonomies(placement)) { taxonomies.unshift('All'); } return ( * { padding: 10px; } && { > *:not(.saved-placements__icons) { @media (max-width: 770px) { font-size: 14px; } @media (max-width: 540px) { font-size: 10px; padding: 5px; } } } `} > {placement.meta.widget_title} {taxonomies.join(', ')} {resolveInsertionPointLabel(placement.meta.insertion_point[0])}{' '} {isNumeralInsertion(placement.meta.insertion_point[0]) && placement.meta.insertion_number} {capitalize(placement.meta.alignment[0])} {placement.meta.format[0] .split(',') .map(resolveFormat as any) .join(' & ')} onEditClick(placement)} > onDelete(placement)} >
); })}
); } export default SavedPlacementsTable;