badguardhome/client/src/components/ui/Popover.js

52 lines
1.9 KiB
JavaScript
Raw Normal View History

import React, { Component } from 'react';
import PropTypes from 'prop-types';
2018-10-14 20:24:11 +00:00
import { getSourceData } from '../../helpers/trackers/trackers';
import './Popover.css';
class Popover extends Component {
render() {
const { data } = this.props;
2018-10-14 20:24:11 +00:00
const sourceData = getSourceData(data);
const source = (
<div className="popover__list-item">
Source: <a className="popover__link" target="_blank" rel="noopener noreferrer" href={sourceData.url}><strong>{sourceData.name}</strong></a>
</div>
);
const tracker = (
<div className="popover__list-item">
Name: <a className="popover__link" target="_blank" rel="noopener noreferrer" href={data.url}><strong>{data.name}</strong></a>
</div>
);
return (
<div className="popover-wrap">
<div className="popover__trigger">
<svg className="popover__icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle></svg>
</div>
<div className="popover__body">
<div className="popover__list">
<div className="popover__list-title">
2018-10-14 20:24:11 +00:00
Found in the known domains database.
</div>
2018-10-14 20:24:11 +00:00
{tracker}
<div className="popover__list-item">
Category: <strong>{data.category}</strong>
</div>
2018-10-14 20:24:11 +00:00
{source}
</div>
</div>
</div>
);
}
}
Popover.propTypes = {
data: PropTypes.object.isRequired,
};
export default Popover;