UNPKG

@asphalt-react/qualifier

Version:

Reusable qualifier component

9 lines (6 loc) 728 B
import React from 'react'; import { SvgNormalizer } from '@asphalt-react/svg-normalizer'; import PropTypes from 'prop-types'; import { svgUtil } from '@asphalt-react/helper'; const{isSVG}=svgUtil;const Qualifier=({children,iconSize})=>{const isTextQualifier=typeof children==="string";if(isTextQualifier){return children}if(!isSVG(children)){console.warn("Qualifier can only be SVG");return null}return React.createElement(SvgNormalizer,{dimension:iconSize},children)};Qualifier.propTypes={children:PropTypes.oneOfType([PropTypes.element,PropTypes.string]).isRequired,iconSize:PropTypes.shape({width:PropTypes.string,height:PropTypes.string})};Qualifier.defaultProps={iconSize:{width:"16",height:"16"}}; export { Qualifier };