/* eslint-disable valid-jsdoc */
import {Tag} from '@trussworks/react-uswds';
import {useIntl} from 'gatsby-plugin-intl';
import React from 'react';
import * as METHODOLOGY_COPY from '../../data/copy/methodology';
import * as styles from './datasetCard.module.scss';
interface IDatasetCardProps {
datasetCardProps: METHODOLOGY_COPY.IIndicators
}
/**
* This component will take in a card and render a dataset card
*
* @param {IDatasetCardProps}
* @return {JSX.Element}
*/
const DatasetCard = ({datasetCardProps}: IDatasetCardProps) => {
const intl = useIntl();
const isNoteAtEnd = datasetCardProps.domID === 'ling-iso' ? true : false;
return (
{/* Dataset header */}
{datasetCardProps.isNew &&
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.NEW)}
}
{datasetCardProps.indicator}
{/* Dataset description */}
{datasetCardProps.description}
{/* Dataset note */}
{(datasetCardProps.note && !isNoteAtEnd) &&
}
{/* Dataset Used in */}
-
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.USED_IN)}
{datasetCardProps.usedIn}
{/* Dataset Responsible Party */}
-
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.RESP_PARTY)}
{datasetCardProps.responsibleParty}
{datasetCardProps.sources.map((dataSource, index) => (
{/* Dataset Source */}
-
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.SOURCE)}
{dataSource.source}
{dataSource.isNew && (<>
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.NEW)}
>)}
{/* Dataset Available for */}
-
{intl.formatMessage(METHODOLOGY_COPY.DATASET_CARD_LABELS.AVAILABLE_FOR)}
{intl.formatMessage(dataSource.availableFor)}
))}
{/* Dataset note */}
{(datasetCardProps.note && isNoteAtEnd) &&
}
);
};
export default DatasetCard;