mirror of
https://github.com/grafana/grafana.git
synced 2025-02-20 11:48:34 -06:00
* Add and configure eslint-plugin-import * Fix the lint:ts npm command * Autofix + prettier all the files * Manually fix remaining files * Move jquery code in jest-setup to external file to safely reorder imports * Resolve issue caused by circular dependencies within Prometheus * Update .betterer.results * Fix missing // @ts-ignore * ignore iconBundle.ts * Fix missing // @ts-ignore
32 lines
813 B
TypeScript
32 lines
813 B
TypeScript
import React, { FC } from 'react';
|
|
|
|
import { HorizontalGroup, LinkButton } from '@grafana/ui';
|
|
|
|
export interface Props {
|
|
folderId?: number;
|
|
isEditor: boolean;
|
|
canEdit?: boolean;
|
|
}
|
|
|
|
export const DashboardActions: FC<Props> = ({ folderId, isEditor, canEdit }) => {
|
|
const actionUrl = (type: string) => {
|
|
let url = `dashboard/${type}`;
|
|
|
|
if (folderId) {
|
|
url += `?folderId=${folderId}`;
|
|
}
|
|
|
|
return url;
|
|
};
|
|
|
|
return (
|
|
<div>
|
|
<HorizontalGroup spacing="md" align="center">
|
|
{canEdit && <LinkButton href={actionUrl('new')}>New Dashboard</LinkButton>}
|
|
{!folderId && isEditor && <LinkButton href="dashboards/folder/new">New Folder</LinkButton>}
|
|
{canEdit && <LinkButton href={actionUrl('import')}>Import</LinkButton>}
|
|
</HorizontalGroup>
|
|
</div>
|
|
);
|
|
};
|