DataSourcesListItem.tsx 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import React, { PureComponent } from 'react';
  2. import { DataSourceSettings } from '@grafana/ui';
  3. export interface Props {
  4. dataSource: DataSourceSettings;
  5. }
  6. export class DataSourcesListItem extends PureComponent<Props> {
  7. render() {
  8. const { dataSource } = this.props;
  9. return (
  10. <li className="card-item-wrapper">
  11. <a className="card-item" href={`datasources/edit/${dataSource.id}`}>
  12. <div className="card-item-header">
  13. <div className="card-item-type">{dataSource.type}</div>
  14. </div>
  15. <div className="card-item-body">
  16. <figure className="card-item-figure">
  17. <img src={dataSource.typeLogoUrl} alt={dataSource.name} />
  18. </figure>
  19. <div className="card-item-details">
  20. <div className="card-item-name">
  21. {dataSource.name}
  22. {dataSource.isDefault && <span className="btn btn-secondary btn-small card-item-label">default</span>}
  23. </div>
  24. <div className="card-item-sub-name">{dataSource.url}</div>
  25. </div>
  26. </div>
  27. </a>
  28. </li>
  29. );
  30. }
  31. }
  32. export default DataSourcesListItem;