D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
usr
/
share
/
grafana
/
public
/
app
/
features
/
datasources
/
components
/
Filename :
EditDataSourceActions.tsx
back
Copy
import React from 'react'; import { config } from '@grafana/runtime'; import { LinkButton } from '@grafana/ui'; import { contextSrv } from 'app/core/core'; import { AccessControlAction } from 'app/types'; import { useDataSource } from '../state'; import { trackCreateDashboardClicked, trackDsConfigClicked, trackExploreClicked } from '../tracking'; import { constructDataSourceExploreUrl } from '../utils'; interface Props { uid: string; } export function EditDataSourceActions({ uid }: Props) { const dataSource = useDataSource(uid); const hasExploreRights = contextSrv.hasPermission(AccessControlAction.DataSourcesExplore); return ( <> {hasExploreRights && ( <LinkButton variant="secondary" size="sm" href={constructDataSourceExploreUrl(dataSource)} onClick={() => { trackDsConfigClicked('explore'); trackExploreClicked({ grafana_version: config.buildInfo.version, datasource_uid: dataSource.uid, plugin_name: dataSource.typeName, path: location.pathname, }); }} > Explore data </LinkButton> )} <LinkButton size="sm" variant="secondary" href={`dashboard/new-with-ds/${dataSource.uid}`} onClick={() => { trackDsConfigClicked('build_a_dashboard'); trackCreateDashboardClicked({ grafana_version: config.buildInfo.version, datasource_uid: dataSource.uid, plugin_name: dataSource.typeName, path: location.pathname, }); }} > Build a dashboard </LinkButton> </> ); }