mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
41 lines
1.2 KiB
TypeScript
41 lines
1.2 KiB
TypeScript
|
import React from 'react';
|
||
|
import { HorizontalGroup, LinkButton } from '@grafana/ui';
|
||
|
import { getExternalManageLink } from '../../helpers';
|
||
|
import { PluginStatus } from '../../types';
|
||
|
|
||
|
type ExternallyManagedButtonProps = {
|
||
|
pluginId: string;
|
||
|
pluginStatus: PluginStatus;
|
||
|
};
|
||
|
|
||
|
export function ExternallyManagedButton({ pluginId, pluginStatus }: ExternallyManagedButtonProps) {
|
||
|
const externalManageLink = getExternalManageLink(pluginId);
|
||
|
|
||
|
if (pluginStatus === PluginStatus.UPDATE) {
|
||
|
return (
|
||
|
<HorizontalGroup height="auto">
|
||
|
<LinkButton href={externalManageLink} target="_blank" rel="noopener noreferrer">
|
||
|
Update via grafana.com
|
||
|
</LinkButton>
|
||
|
<LinkButton variant="destructive" href={externalManageLink} target="_blank" rel="noopener noreferrer">
|
||
|
Uninstall via grafana.com
|
||
|
</LinkButton>
|
||
|
</HorizontalGroup>
|
||
|
);
|
||
|
}
|
||
|
|
||
|
if (pluginStatus === PluginStatus.UNINSTALL) {
|
||
|
return (
|
||
|
<LinkButton variant="destructive" href={externalManageLink} target="_blank" rel="noopener noreferrer">
|
||
|
Uninstall via grafana.com
|
||
|
</LinkButton>
|
||
|
);
|
||
|
}
|
||
|
|
||
|
return (
|
||
|
<LinkButton href={externalManageLink} target="_blank" rel="noopener noreferrer">
|
||
|
Install via grafana.com
|
||
|
</LinkButton>
|
||
|
);
|
||
|
}
|