mirror of
https://github.com/grafana/grafana.git
synced 2025-01-24 15:27:01 -06:00
36fa54a288
* image and card component * change height of getting started panel * progress * setup basic step * advanced steps * step forward and backward * do checks * fix button size * minor styling on butttons * add correct links * save tutorial click in localstorage * types and gradients * fix gradients * use spacing variable * lots of responsiveness * add links to help * Getting started work * redo according to split panel design * minor touch ups * new background images * split up docs card to different hrefs * welcome bar touch ups * hide icon on small screens * transparent false on welcome banner * fix urls * source tag in welcome urls * move images to panel dir, removed unused images * Nicer loading message * make the cards look nicer on wide screens * append utm tag on render instead * replace width with margin * new background image for light * remove target on a element * removing buttonselect, add tag to href * more polishing Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com> Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
50 lines
1.6 KiB
TypeScript
50 lines
1.6 KiB
TypeScript
import { GrafanaTheme } from '@grafana/data';
|
|
import { css } from 'emotion';
|
|
import { stylesFactory } from '@grafana/ui';
|
|
|
|
export const cardStyle = stylesFactory((theme: GrafanaTheme, complete: boolean) => {
|
|
const completeGradient = 'linear-gradient(to right, #5182CC 0%, #245BAF 100%)';
|
|
const darkThemeGradients = complete ? completeGradient : 'linear-gradient(to right, #f05a28 0%, #fbca0a 100%)';
|
|
const lightThemeGradients = complete ? completeGradient : 'linear-gradient(to right, #FBCA0A 0%, #F05A28 100%)';
|
|
|
|
const borderGradient = theme.isDark ? darkThemeGradients : lightThemeGradients;
|
|
|
|
return `
|
|
background-color: ${theme.colors.bg1};
|
|
margin-right: ${theme.spacing.xl};
|
|
border: 1px solid ${theme.colors.border1};
|
|
border-bottom-left-radius: ${theme.border.radius.md};
|
|
border-bottom-right-radius: ${theme.border.radius.md};
|
|
position: relative;
|
|
max-height: 230px;
|
|
|
|
@media only screen and (max-width: ${theme.breakpoints.xxl}) {
|
|
margin-right: ${theme.spacing.md};
|
|
}
|
|
&::before {
|
|
display: block;
|
|
content: ' ';
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
height: 2px;
|
|
top: 0;
|
|
background-image: ${borderGradient};
|
|
}
|
|
`;
|
|
});
|
|
|
|
export const iconStyle = stylesFactory(
|
|
(theme: GrafanaTheme, complete: boolean) => css`
|
|
color: ${complete ? theme.palette.blue95 : theme.colors.textWeak};
|
|
|
|
@media only screen and (max-width: ${theme.breakpoints.sm}) {
|
|
display: none;
|
|
}
|
|
`
|
|
);
|
|
|
|
export const cardContent = css`
|
|
padding: 24px 16px;
|
|
`;
|