grafana/public/app/features/explore/NoDataSourceCallToAction.tsx
Ivana Huckova 1c58202b26
@grafana/ui: Replace various icons using Icon component (#23442)
* Replace icons in dashboard and settings

* Replace icons in alerting

* Update batch of icons

* Implement icons accross various files

* Style updates

* Search: Fix recent and starred icons

* Update styling and details

* Replace new icon created by unicons

* Fix e2e test, styling

* Minor styling updates

Co-authored-by: Clarity-89 <homes89@ukr.net>
2020-04-12 22:20:02 +02:00

47 lines
1.2 KiB
TypeScript

import React, { useContext } from 'react';
import { css } from 'emotion';
import { ThemeContext, LinkButton, CallToActionCard, Icon } from '@grafana/ui';
export const NoDataSourceCallToAction = () => {
const theme = useContext(ThemeContext);
const message =
'Explore requires at least one data source. Once you have added a data source, you can query it here.';
const footer = (
<>
<Icon name="rocket" />
<> ProTip: You can also define data sources through configuration files. </>
<a
href="http://docs.grafana.org/administration/provisioning/#datasources?utm_source=explore"
target="_blank"
rel="noopener"
className="text-link"
>
Learn more
</a>
</>
);
const ctaElement = (
<LinkButton size="lg" href="/datasources/new" icon="database">
Add data source
</LinkButton>
);
const cardClassName = css`
max-width: ${theme.breakpoints.lg};
margin-top: ${theme.spacing.md};
align-self: center;
`;
return (
<CallToActionCard
callToActionElement={ctaElement}
className={cardClassName}
footer={footer}
message={message}
theme={theme}
/>
);
};