Sha256: 616c63f8203cc7060d922371d60ebd8c3ad8159ec253ce481af12bb0a713d2bd
Contents?: true
Size: 1.72 KB
Versions: 70
Compression:
Stored size: 1.72 KB
Contents
import React from 'react'; import PropTypes from 'prop-types'; import { BugIcon, SecurityIcon, EnhancementIcon, } from '@patternfly/react-icons'; import { urlBuilder } from 'foremanReact/common/urlHelpers'; import { translate as __ } from 'foremanReact/common/I18n'; import './ContentViewVersionErrata.scss'; import InactiveText from '../../components/InactiveText'; const ContentViewVersionErrata = ({ cvId, versionId, errataCounts }) => { const { total, } = errataCounts; if (!Number(total)) { return <InactiveText text={__('No applicable errata')} />; } const errataIcons = { security: SecurityIcon, bugfix: BugIcon, enhancement: EnhancementIcon, }; const ErrataLinkwithIcon = () => Object.keys(errataIcons).map((type) => { const ErrataIcon = errataIcons[type]; return ( <React.Fragment key={type}> <ErrataIcon title={type} /> <p className="errata-icons-with-commas">{errataCounts[type] || '0'}</p> </React.Fragment> ); }); return ( <> <a href={urlBuilder(`content_views/${cvId}#/versions/${versionId}/errata`, '')}> {total || 0}{' '} </a> ( <ErrataLinkwithIcon /> ) </> ); }; ContentViewVersionErrata.propTypes = { cvId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), versionId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), errataCounts: PropTypes.shape({ security: PropTypes.number, bugfix: PropTypes.number, enhancement: PropTypes.number, total: PropTypes.number, }), }; ContentViewVersionErrata.defaultProps = { cvId: '', versionId: '', errataCounts: { security: 0, bugfix: 0, enhancement: 0, total: 0, }, }; export default ContentViewVersionErrata;
Version data entries
70 entries across 70 versions & 1 rubygems