mirror of
https://github.com/grafana/grafana.git
synced 2025-02-09 23:16:16 -06:00
* show signing status * show signing status * Progress on signed badge style * Progress on signing status look and updated card background * Updates * Transforms card tweak Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import React, { FC } from 'react';
|
|
import { PluginMeta } from '@grafana/data';
|
|
import { PluginSignatureBadge } from './PluginSignatureBadge';
|
|
|
|
interface Props {
|
|
plugin: PluginMeta;
|
|
}
|
|
|
|
const PluginListItem: FC<Props> = props => {
|
|
const { plugin } = props;
|
|
|
|
return (
|
|
<li className="card-item-wrapper">
|
|
<a className="card-item" href={`plugins/${plugin.id}/`}>
|
|
<div className="card-item-header">
|
|
<div className="card-item-type">{plugin.type}</div>
|
|
<PluginSignatureBadge status={plugin.signature} />
|
|
{plugin.hasUpdate && (
|
|
<div className="card-item-notice">
|
|
<span bs-tooltip="plugin.latestVersion">Update available!</span>
|
|
</div>
|
|
)}
|
|
</div>
|
|
<div className="card-item-body">
|
|
<figure className="card-item-figure">
|
|
<img src={plugin.info.logos.small} />
|
|
</figure>
|
|
<div className="card-item-details">
|
|
<div className="card-item-name">{plugin.name}</div>
|
|
<div className="card-item-sub-name">{`By ${plugin.info.author.name}`}</div>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
</li>
|
|
);
|
|
};
|
|
|
|
export default PluginListItem;
|