diff options
author | Israel Lavi <il0695@att.com> | 2018-08-07 10:54:17 +0300 |
---|---|---|
committer | Israel Lavi <il0695@att.com> | 2018-08-07 11:06:44 +0300 |
commit | b2a3acea0d0f66028c9ce5fad02d4ecc64abf70c (patch) | |
tree | 8d70110f34cb845965c42a5915e950bca967d2c3 /src/react/SVGIcon.js | |
parent | 05b37297177e8a342668c15e5d6f738b51f7aedd (diff) |
Initial commit.
Adding files needed for Linux Foundation.
Change-Id: I9f2b4851a5ae01f83800c7f8bab8608a2221c730
Issue-ID: SDC-1608
Signed-off-by: Israel Lavi <il0695@att.com>
Diffstat (limited to 'src/react/SVGIcon.js')
-rw-r--r-- | src/react/SVGIcon.js | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/react/SVGIcon.js b/src/react/SVGIcon.js deleted file mode 100644 index 8a5b1ae..0000000 --- a/src/react/SVGIcon.js +++ /dev/null @@ -1,47 +0,0 @@ -import React from 'react'; -import PropTypes from 'prop-types'; - -import iconMap from './utils/iconMap.js'; - -const SVGIcon = ({name, onClick, label, className, iconClassName, labelClassName, labelPosition, color, disabled, ...other}) => { - - let colorClass = (color !== '') ? '__' + color : ''; - let classes = `svg-icon-wrapper ${iconClassName} ${className} ${colorClass} ${onClick ? 'clickable' : ''} ${labelPosition}`; - let camelCasedName = name.replace(/-([a-z])/g, function (g) { return g[1].toUpperCase(); }); - let IconComponent = iconMap[camelCasedName]; - if (!IconComponent) { - console.error('Icon by the name ' + camelCasedName + ' is missing.'); - } - - return ( - <div {...other} onClick={onClick} className={classes} disabled={disabled}> - { IconComponent && <IconComponent className={`svg-icon __${name}`} /> } - { !IconComponent && <span className='svg-icon-missing'>Missing Icon</span> } - {label && <span className={`svg-icon-label ${labelClassName}`}>{label}</span>} - </div> - ); - -}; - -SVGIcon.propTypes = { - name: PropTypes.string.isRequired, - onClick: PropTypes.func, - label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]), - labelPosition: PropTypes.string, - className: PropTypes.string, - iconClassName: PropTypes.string, - labelClassName: PropTypes.string, - color: PropTypes.string -}; - -SVGIcon.defaultProps = { - name: '', - label: '', - className: '', - iconClassName: '', - labelClassName: '', - labelPosition: 'bottom', - color: '' -}; - -export default SVGIcon; |