cluedin-widget
Version:
This project contains all the pages needed for browsing entities and searching them. The aim is to replace the CluedIn.Webapp project with this one when all the pages ( including the Admin page ) will be ported to REACT.
51 lines (43 loc) • 1.63 kB
JSX
import React, { Component } from "react";
import Badge from "../../generics/badge.jsx";
import InsightLinkRouterLink from "../../insights/InsightLinkRouterLink.jsx";
import InsightSearchLinkRouterLink from "../../insights/InsightSearchLinkRouterLink.jsx";
const CluedInMenuItemTextStyles = {
hashTag: {
float: 'left',
marginRight: '2px',
opacity: '0.65',
color: '#abc6ca'
},
text: {
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
color: '#5ec1c6'
}
};
class CluedInMenuItemText extends Component {
render() {
const { text, count, preText, query, entity } = this.props;
let badgeComponent;
let content;
if( count && count > 0 ) {
badgeComponent = <Badge style={{float:'right'}} text={count}></Badge>
}
if( entity ) {
content = <InsightLinkRouterLink dark={true} entity={entity}>
<span style={CluedInMenuItemTextStyles.hashTag}>{preText}</span>
<span style={CluedInMenuItemTextStyles.text}>{text}</span>
{badgeComponent}
</InsightLinkRouterLink>
} else {
content = (<InsightSearchLinkRouterLink dark={true} query={query}>
<span style={CluedInMenuItemTextStyles.hashTag}>{preText}</span>
<span style={CluedInMenuItemTextStyles.text}>{text}</span>
{badgeComponent}
</InsightSearchLinkRouterLink>);
}
return <div styleName="menuItem">{content}</div>
}
}
export default CluedInMenuItemText;