Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 1x 1x 1x 1x 1x | import React, { forwardRef } from 'react'; import PropTypes from 'prop-types'; import Atom from '../Atom'; import withStyle from '../../Theme/withStyle'; const getFontProps = (color, getColor, rest) => { const nextCss = { ...rest.css, color: getColor(color) }; return { ...rest, css: nextCss }; }; const Font = forwardRef(({ children, getColor, color, ...rest }, ref) => ( <Atom element="span" atomRef={ref} {...getFontProps(color, getColor, rest)}> {children} </Atom> )); Font.displayName = 'Font'; Font.propTypes = { children: PropTypes.node, color: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), getColor: PropTypes.func.isRequired, }; Font.defaultProps = { children: null, color: '', }; export default withStyle(Font); |