aboutsummaryrefslogtreecommitdiffstats
path: root/src/react/Tile.js
diff options
context:
space:
mode:
authorIsrael Lavi <israel.lavi@intl.att.com>2018-05-21 17:42:00 +0300
committerIsrael Lavi <il0695@att.com>2018-05-21 17:52:01 +0300
commit1994c98063c27a41797dec01f2ca9fcbe33ceab0 (patch)
treef30beeaf15a8358f6da78fdd74bcbda74bd334f8 /src/react/Tile.js
parent4749f4631426fcbe29ed98cef8f24cab18b501d0 (diff)
init commit onap ui
Change-Id: I1dace78817dbba752c550c182dfea118b4a38646 Issue-ID: SDC-1350 Signed-off-by: Israel Lavi <il0695@att.com>
Diffstat (limited to 'src/react/Tile.js')
-rw-r--r--src/react/Tile.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/react/Tile.js b/src/react/Tile.js
new file mode 100644
index 0000000..f47f88d
--- /dev/null
+++ b/src/react/Tile.js
@@ -0,0 +1,33 @@
+import React, {Children} from 'react';
+import PropTypes from 'prop-types';
+import TileInfo from './TileInfo.js';
+import TileFooter from './TileFooter.js';
+import SVGIcon from './SVGIcon.js';
+
+const Tile = ({headerText, headerColor, iconName, iconColor, className, onClick, children, dataTestId}) => {
+ let childrenArr = Children.toArray(children);
+ return (
+ <div className={`sdc-tile ${className || ''}`} onClick={onClick} data-test-id={dataTestId}>
+ <div className={`sdc-tile-header ${headerColor || ''}`}>{headerText}</div>
+ <div className='sdc-tile-content'>
+ <div className={`sdc-tile-content-icon ${iconColor || ''}`}>
+ {iconName && <SVGIcon name={iconName}/>}
+ </div>
+ {childrenArr.find(e => e.type === TileInfo)}
+ </div>
+ {childrenArr.find(e => e.type === TileFooter)}
+ </div>
+ );
+};
+
+Tile.propTypes = {
+ headerText: PropTypes.string,
+ headerColor: PropTypes.string,
+ iconName: PropTypes.string,
+ iconColor: PropTypes.string,
+ className: PropTypes.string,
+ onClick: PropTypes.func,
+ dataTestId: PropTypes.string
+};
+
+export default Tile;