Icons: use plain SVG files, load on-demand (#32387)

This commit is contained in:
Leon Sorokin 2021-04-01 09:09:56 -05:00 committed by GitHub
parent 9caf2f8b3a
commit a080669151
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
52 changed files with 261 additions and 588 deletions

View File

@ -154,12 +154,14 @@
"expose-loader": "0.7.5",
"file-loader": "5.0.2",
"fork-ts-checker-webpack-plugin": "6.1.1",
"fs-extra": "9.1.0",
"gaze": "1.1.3",
"glob": "7.1.6",
"html-loader": "0.5.5",
"html-webpack-harddisk-plugin": "1.0.1",
"html-webpack-plugin": "3.2.0",
"husky": "4.2.1",
"iconscout-unicons-tarball": "https://github.com/grafana/icons/tarball/14e6856f7ce5a44d3e722b40c225482663cbfd66",
"jest": "26.6.3",
"jest-canvas-mock": "2.3.0",
"jest-date-mock": "1.0.8",
@ -178,6 +180,7 @@
"postcss-loader": "3.0.0",
"postcss-reporter": "6.0.1",
"prettier": "2.2.1",
"raw-loader": "4.0.2",
"react-hot-loader": "4.8.0",
"react-select-event": "^5.1.0",
"react-test-renderer": "16.12.0",
@ -209,6 +212,7 @@
"@emotion/react": "11.1.5",
"@grafana/aws-sdk": "0.0.3",
"@grafana/slate-react": "0.22.9-grafana",
"@leeoniya/react-inlinesvg": "2.2.4",
"@popperjs/core": "2.5.4",
"@reduxjs/toolkit": "1.5.0",
"@sentry/browser": "5.25.0",

View File

@ -33,7 +33,6 @@
"@grafana/slate-react": "0.22.9-grafana",
"@grafana/tsconfig": "^1.0.0-rc1",
"@grafana/aws-sdk": "0.0.3",
"@iconscout/react-unicons": "1.1.4",
"@popperjs/core": "2.5.4",
"@sentry/browser": "5.25.0",
"@testing-library/jest-dom": "5.11.9",

View File

@ -1,15 +1,12 @@
import React, { ComponentType } from 'react';
import React from 'react';
import { css, cx } from '@emotion/css';
import { GrafanaTheme, toPascalCase } from '@grafana/data';
import { GrafanaTheme } from '@grafana/data';
import { stylesFactory } from '../../themes/stylesFactory';
import { useTheme } from '../../themes/ThemeContext';
import { IconName, IconType, IconSize } from '../../types/icon';
//@ts-ignore
import * as DefaultIcon from '@iconscout/react-unicons';
import * as MonoIcon from './assets';
import { customIcons } from './custom';
import { SvgProps } from './assets/types';
import SVG from '@leeoniya/react-inlinesvg';
const iconRoot = '/public/img/icons/';
const alwaysMonoIcons: IconName[] = ['grafana', 'favorite', 'heart-break', 'heart', 'panel-add', 'reusable-panel'];
export interface IconProps extends React.HTMLAttributes<HTMLDivElement> {
@ -36,47 +33,45 @@ const getIconStyles = stylesFactory((theme: GrafanaTheme) => {
};
});
function getIconComponent(name: IconName, type: string): ComponentType<SvgProps> {
if (alwaysMonoIcons.includes(name)) {
type = 'mono';
}
if (name?.startsWith('gf-')) {
return customIcons[name];
}
const iconName = type === 'default' ? `Uil${toPascalCase(name)}` : toPascalCase(name);
/* Unicons don't have type definitions */
//@ts-ignore
const Component = type === 'default' ? DefaultIcon[iconName] : MonoIcon[iconName];
return Component ?? customIcons.notFoundDummy;
function getIconSubDir(name: IconName, type: string): string {
return name?.startsWith('gf-')
? 'custom'
: alwaysMonoIcons.includes(name)
? 'mono'
: type === 'default'
? 'unicons'
: 'mono';
}
export const Icon = React.forwardRef<HTMLDivElement, IconProps>(
({ size = 'md', type = 'default', name, className, style, ...divElementProps }, ref) => {
const theme = useTheme();
const styles = getIconStyles(theme);
const svgSize = getSvgSize(size);
/* Temporary solution to display also font awesome icons */
if (name?.startsWith('fa fa-')) {
return <i className={getFontAwesomeIconStyles(name, className)} {...divElementProps} style={style} />;
}
const Component = getIconComponent(name, type);
if (name === 'panel-add') {
size = 'xl';
}
const styles = getIconStyles(theme);
const svgSize = getSvgSize(size);
const svgHgt = svgSize;
const svgWid = name?.startsWith('gf-bar-align') ? 16 : name?.startsWith('gf-interp') ? 30 : svgSize;
const subDir = getIconSubDir(name, type);
const svgPath = `${iconRoot}${subDir}/${name}.svg`;
return (
<div className={styles.container} {...divElementProps} ref={ref}>
{type === 'default' && <Component size={svgSize} className={cx(styles.icon, className)} style={style} />}
{type === 'mono' && (
<Component
size={svgSize}
className={cx(styles.icon, { [styles.orange]: name === 'favorite' }, className)}
style={style}
/>
)}
<SVG
src={svgPath}
width={svgWid}
height={svgHgt}
className={cx(styles.icon, className, type === 'mono' ? { [styles.orange]: name === 'favorite' } : '')}
style={style}
/>
</div>
);
}

View File

@ -1,13 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Apps: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<rect width="9" height="9" x="2" y="2" rx="1" />
<rect width="9" height="9" x="2" y="13" rx="1" opacity="0.6" />
<rect width="9" height="9" x="13" y="2" rx="1" opacity="0.6" />
<rect width="9" height="9" x="13" y="13" rx="1" opacity="0.6" />
</svg>
);
};

View File

@ -1,21 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Bell: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<path
opacity="0.6"
d="M18,13.18463V10c0-3.31372-2.68628-6-6-6s-6,2.68628-6,6v3.18463C4.83832,13.59863,4.00146,14.69641,4,16v2c0,0.00037,0,0.00073,0,0.00116C4.00031,18.5531,4.44806,19.00031,5,19h14c0.00037,0,0.00073,0,0.00116,0C19.5531,18.99969,20.00031,18.55194,20,18v-2C19.99854,14.69641,19.16168,13.59863,18,13.18463z"
/>
<path d="M8.14233 19c.4472 1.72119 1.99689 2.99817 3.85767 3 1.86078-.00183 3.41046-1.27881 3.85767-3H8.14233zM12 4c.34149 0 .67413.03516 1 .08997V3c0-.55231-.44769-1-1-1s-1 .44769-1 1v1.08997C11.32587 4.03516 11.65851 4 12 4z" />
</svg>
);
};

View File

@ -1,17 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Circle: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<circle cx="12" cy="12" r="10" />
</svg>
);
};

View File

@ -1,14 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Cog: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<path d="M21.31641,9.55176l-1.88672-.62891.88965-1.77832a.99983.99983,0,0,0-.1875-1.1543L18.01025,3.86816a.99981.99981,0,0,0-1.15429-.1875l-1.77832.88965-.62891-1.88672A1,1,0,0,0,13.5,2h-3a1,1,0,0,0-.94873.68359L8.92236,4.57031,7.144,3.68066a.99634.99634,0,0,0-1.15429.1875L3.86816,5.99023a.99983.99983,0,0,0-.1875,1.1543l.88965,1.77832-1.88672.62891A.9989.9989,0,0,0,2,10.5v3a.9989.9989,0,0,0,.68359.94824l1.88672.62891-.88965,1.77832a.99983.99983,0,0,0,.1875,1.1543l2.12159,2.12207a.99813.99813,0,0,0,1.15429.1875l1.77832-.88965.62891,1.88672A1,1,0,0,0,10.5,22h3a1,1,0,0,0,.94873-.68359l.62891-1.88672,1.77832.88965a.99994.99994,0,0,0,1.15429-.1875l2.12159-2.12207a.99983.99983,0,0,0,.1875-1.1543l-.88916-1.77832,1.88623-.62891A.9989.9989,0,0,0,22,13.5v-3A.9989.9989,0,0,0,21.31641,9.55176ZM12,15a3,3,0,1,1,3-3A3.00344,3.00344,0,0,1,12,15Z" />
<path
opacity="0.6"
d="M12,16a4,4,0,1,1,4-4A4.00427,4.00427,0,0,1,12,16Zm0-6a2,2,0,1,0,2,2A2.00229,2.00229,0,0,0,12,10Z"
/>
</svg>
);
};

View File

@ -1,10 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Favorite: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<path d="M17.56249,21.55957a.99941.99941,0,0,1-.46581-.11523L12,18.76465,6.90332,21.44434a.9999.9999,0,0,1-1.45117-1.05372l.97363-5.67578-4.124-4.01953a.99965.99965,0,0,1,.55469-1.70508l5.69824-.82812,2.54883-5.16406a1.04012,1.04012,0,0,1,1.793,0l2.54883,5.16406,5.69824.82812a.99965.99965,0,0,1,.55469,1.70508l-4.124,4.01953.97363,5.67578a1.00024,1.00024,0,0,1-.98536,1.169Z" />
</svg>
);
};

View File

@ -1,10 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Folder: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<path d="M19,21.5H5a3.00328,3.00328,0,0,1-3-3V5.5a3.00328,3.00328,0,0,1,3-3H9.55859A2.99629,2.99629,0,0,1,12.4043,4.55078L12.7207,5.5H19a3.00328,3.00328,0,0,1,3,3v10A3.00328,3.00328,0,0,1,19,21.5Z" />
</svg>
);
};

View File

@ -1,21 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const FolderPlus: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<path
opacity="0.6"
d="M19,21.5H5a3.00328,3.00328,0,0,1-3-3V5.5a3.00328,3.00328,0,0,1,3-3H9.55859A2.99629,2.99629,0,0,1,12.4043,4.55078L12.7207,5.5H19a3.00328,3.00328,0,0,1,3,3v10A3.00328,3.00328,0,0,1,19,21.5Z"
/>
<path d="M14,12.5H13v-1a1,1,0,0,0-2,0v1H10a1,1,0,0,0,0,2h1v1a1,1,0,0,0,2,0v-1h1a1,1,0,0,0,0-2Z" />
</svg>
);
};

View File

@ -1,70 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Grafana: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 85.12 92.46" height={size} width={size} {...rest}>
<defs>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="42.562" y1="113.2595" x2="42.562" y2="28.7828">
<stop offset="0" style={{ stopColor: '#FFF200' }} />
<stop offset="1" style={{ stopColor: '#F15A29' }} />
</linearGradient>
</defs>
<path
fill="url(#SVGID_1_)"
d="M85.01,40.8c-0.14-1.55-0.41-3.35-0.93-5.32c-0.51-1.97-1.28-4.13-2.39-6.37c-1.12-2.24-2.57-4.57-4.47-6.82
c-0.74-0.88-1.54-1.76-2.42-2.6c1.3-5.17-1.59-9.65-1.59-9.65c-4.98-0.31-8.14,1.54-9.31,2.39c-0.2-0.08-0.39-0.17-0.59-0.25
c-0.85-0.34-1.72-0.66-2.61-0.95c-0.89-0.28-1.81-0.54-2.74-0.76c-0.94-0.22-1.89-0.4-2.86-0.55c-0.17-0.03-0.34-0.05-0.51-0.07
C52.41,2.9,46.18,0,46.18,0c-6.95,4.41-8.27,10.57-8.27,10.57s-0.03,0.14-0.07,0.36c-0.38,0.11-0.77,0.22-1.15,0.34
c-0.53,0.16-1.06,0.36-1.59,0.55c-0.53,0.21-1.06,0.41-1.58,0.64c-1.05,0.45-2.09,0.96-3.1,1.53c-0.99,0.55-1.95,1.16-2.9,1.82
c-0.14-0.06-0.24-0.11-0.24-0.11c-9.62-3.68-18.17,0.75-18.17,0.75c-0.78,10.24,3.84,16.68,4.76,17.86
c-0.23,0.63-0.44,1.27-0.64,1.92c-0.71,2.32-1.24,4.7-1.57,7.16c-0.05,0.35-0.09,0.71-0.13,1.07C2.63,48.84,0,57.84,0,57.84
c7.42,8.53,16.07,9.06,16.07,9.06c0.01-0.01,0.02-0.01,0.02-0.02c1.1,1.96,2.37,3.83,3.8,5.57c0.6,0.73,1.23,1.43,1.88,2.11
c-2.71,7.74,0.38,14.18,0.38,14.18c8.26,0.31,13.69-3.61,14.83-4.52c0.82,0.28,1.66,0.53,2.5,0.74c2.54,0.65,5.14,1.04,7.74,1.15
c0.65,0.03,1.3,0.04,1.95,0.04l0.31,0l0.21-0.01l0.41-0.01l0.4-0.02l0.01,0.01c3.89,5.55,10.74,6.34,10.74,6.34
c4.87-5.13,5.15-10.22,5.15-11.33l0,0c0,0,0-0.04,0-0.07c0-0.09,0-0.15,0-0.15s0,0,0,0c0-0.08-0.01-0.15-0.01-0.23
c1.02-0.72,2-1.49,2.92-2.31c1.95-1.76,3.65-3.77,5.06-5.93c0.13-0.2,0.26-0.41,0.39-0.62c5.51,0.32,9.39-3.41,9.39-3.41
c-0.91-5.74-4.18-8.54-4.87-9.07l0,0c0,0-0.03-0.02-0.07-0.05c-0.04-0.03-0.06-0.05-0.06-0.05l0,0c-0.04-0.02-0.08-0.05-0.12-0.08
c0.03-0.35,0.06-0.69,0.08-1.04c0.04-0.62,0.06-1.24,0.06-1.85l0-0.46l0-0.23l0-0.12c0-0.16,0-0.1,0-0.16l-0.02-0.38l-0.03-0.52
c-0.01-0.18-0.02-0.34-0.04-0.5c-0.01-0.16-0.03-0.32-0.05-0.48l-0.06-0.48l-0.07-0.47c-0.09-0.63-0.21-1.26-0.36-1.88
c-0.58-2.47-1.54-4.82-2.82-6.93c-1.28-2.11-2.86-3.98-4.65-5.56c-1.79-1.58-3.79-2.85-5.9-3.79c-2.1-0.95-4.31-1.55-6.51-1.83
c-1.1-0.14-2.2-0.2-3.28-0.19l-0.41,0.01l-0.1,0c-0.03,0-0.15,0-0.14,0l-0.17,0.01l-0.4,0.03c-0.15,0.01-0.31,0.02-0.45,0.04
c-0.56,0.05-1.11,0.13-1.66,0.23c-2.18,0.41-4.24,1.2-6.06,2.28c-1.82,1.09-3.39,2.45-4.68,3.98c-1.28,1.54-2.28,3.24-2.96,5
c-0.69,1.76-1.07,3.58-1.18,5.35c-0.03,0.44-0.04,0.88-0.03,1.32c0,0.11,0,0.22,0.01,0.33l0.01,0.35c0.02,0.21,0.03,0.42,0.05,0.63
c0.09,0.9,0.25,1.75,0.49,2.58c0.48,1.66,1.25,3.15,2.2,4.43c0.95,1.28,2.08,2.33,3.28,3.15c1.2,0.82,2.49,1.41,3.76,1.79
c1.27,0.38,2.54,0.54,3.74,0.53c0.15,0,0.3,0,0.44-0.01c0.08,0,0.16-0.01,0.24-0.01c0.08,0,0.16-0.01,0.24-0.01
c0.13-0.01,0.25-0.03,0.38-0.04c0.03,0,0.07-0.01,0.11-0.01l0.12-0.02c0.08-0.01,0.15-0.02,0.23-0.03c0.16-0.02,0.29-0.05,0.43-0.08
c0.14-0.03,0.28-0.05,0.42-0.09c0.27-0.06,0.54-0.14,0.8-0.22c0.52-0.17,1.01-0.38,1.46-0.61c0.45-0.23,0.87-0.5,1.26-0.77
c0.11-0.08,0.22-0.16,0.33-0.25c0.42-0.33,0.48-0.94,0.15-1.35c-0.29-0.36-0.79-0.45-1.19-0.23c-0.1,0.05-0.2,0.11-0.3,0.16
c-0.35,0.17-0.71,0.32-1.09,0.45c-0.39,0.12-0.79,0.22-1.2,0.29c-0.21,0.03-0.42,0.06-0.63,0.08c-0.11,0.01-0.21,0.02-0.32,0.02
c-0.11,0-0.22,0.01-0.32,0.01c-0.1,0-0.21,0-0.31-0.01c-0.13-0.01-0.26-0.01-0.39-0.02c0,0-0.07,0-0.01,0l-0.04,0L51.4,61.6
c-0.06-0.01-0.12-0.01-0.17-0.02c-0.12-0.01-0.23-0.03-0.35-0.04c-0.93-0.13-1.88-0.4-2.79-0.82c-0.91-0.41-1.79-0.98-2.57-1.69
c-0.79-0.71-1.48-1.56-2.01-2.52c-0.54-0.96-0.92-2.03-1.09-3.16c-0.09-0.56-0.13-1.14-0.11-1.71c0.01-0.16,0.01-0.31,0.02-0.47
c0,0.04,0-0.02,0-0.03l0-0.06l0.01-0.12c0.01-0.08,0.01-0.15,0.02-0.23c0.03-0.31,0.08-0.62,0.13-0.92
c0.43-2.45,1.65-4.83,3.55-6.65c0.47-0.45,0.98-0.87,1.53-1.25c0.55-0.37,1.12-0.7,1.73-0.98c0.6-0.28,1.23-0.5,1.88-0.68
c0.65-0.17,1.31-0.29,1.98-0.35c0.34-0.03,0.67-0.04,1.01-0.04c0.09,0,0.16,0,0.23,0l0.27,0.01l0.17,0.01c0.07,0,0,0,0.03,0l0.07,0
l0.27,0.02c0.73,0.06,1.46,0.16,2.17,0.32c1.43,0.32,2.83,0.85,4.13,1.57c2.6,1.44,4.81,3.69,6.17,6.4c0.69,1.35,1.16,2.81,1.4,4.31
c0.06,0.38,0.1,0.76,0.13,1.14l0.02,0.29l0.01,0.29c0.01,0.1,0.01,0.19,0.01,0.29c0,0.09,0.01,0.2,0,0.27l0,0.25l-0.01,0.28
c-0.01,0.19-0.02,0.49-0.03,0.67c-0.03,0.42-0.07,0.83-0.12,1.24c-0.05,0.41-0.12,0.82-0.19,1.22c-0.08,0.4-0.17,0.81-0.27,1.21
c-0.2,0.8-0.46,1.59-0.76,2.36c-0.61,1.54-1.42,3-2.4,4.36c-1.96,2.7-4.64,4.9-7.69,6.29c-1.52,0.69-3.13,1.19-4.78,1.47
c-0.82,0.14-1.66,0.22-2.5,0.25l-0.15,0.01l-0.13,0l-0.27,0l-0.41,0l-0.21,0c0.11,0-0.02,0-0.01,0l-0.08,0
c-0.45-0.01-0.9-0.03-1.34-0.07c-1.79-0.13-3.55-0.45-5.27-0.95c-1.71-0.49-3.38-1.16-4.95-2c-3.14-1.68-5.95-3.98-8.15-6.76
c-1.11-1.38-2.07-2.87-2.87-4.43c-0.8-1.56-1.42-3.2-1.89-4.88c-0.46-1.68-0.75-3.39-0.86-5.12l-0.02-0.32l-0.01-0.08l0-0.07l0-0.14
l-0.01-0.28l0-0.07l0-0.1l0-0.2l-0.01-0.4l0-0.08c0,0.01,0,0.01,0-0.03l0-0.16c0-0.21,0.01-0.42,0.01-0.63
c0.03-0.85,0.1-1.73,0.21-2.61c0.11-0.88,0.26-1.76,0.44-2.63c0.18-0.87,0.39-1.74,0.64-2.59c0.49-1.71,1.1-3.36,1.82-4.92
c1.44-3.12,3.34-5.88,5.61-8.09c0.57-0.55,1.16-1.08,1.77-1.57c0.61-0.49,1.25-0.95,1.9-1.37c0.65-0.43,1.32-0.82,2.02-1.18
c0.34-0.19,0.7-0.35,1.05-0.52c0.18-0.08,0.36-0.16,0.53-0.24c0.18-0.08,0.36-0.16,0.54-0.23c0.72-0.3,1.46-0.56,2.21-0.8
c0.19-0.06,0.38-0.11,0.56-0.17c0.19-0.06,0.38-0.1,0.57-0.16c0.38-0.11,0.76-0.2,1.14-0.29c0.19-0.05,0.39-0.08,0.58-0.13
c0.19-0.04,0.38-0.08,0.58-0.12c0.19-0.04,0.39-0.07,0.58-0.11l0.29-0.05l0.29-0.04c0.2-0.03,0.39-0.06,0.59-0.09
c0.22-0.04,0.44-0.05,0.66-0.09c0.18-0.02,0.48-0.06,0.65-0.08c0.14-0.01,0.28-0.03,0.41-0.04l0.28-0.03l0.14-0.01l0.16-0.01
c0.22-0.01,0.44-0.03,0.66-0.04l0.33-0.02c0,0,0.12,0,0.02,0l0.07,0l0.14-0.01c0.19-0.01,0.38-0.02,0.56-0.03
c0.75-0.02,1.5-0.02,2.24,0c1.48,0.06,2.93,0.22,4.34,0.48c2.82,0.53,5.49,1.43,7.89,2.62c2.41,1.18,4.57,2.63,6.44,4.2
c0.12,0.1,0.23,0.2,0.35,0.3c0.11,0.1,0.23,0.2,0.34,0.3c0.23,0.2,0.44,0.41,0.66,0.61c0.22,0.2,0.43,0.41,0.64,0.62
c0.2,0.21,0.41,0.41,0.61,0.63c0.8,0.84,1.53,1.69,2.19,2.55c1.33,1.71,2.39,3.44,3.24,5.07c0.05,0.1,0.11,0.2,0.16,0.3
c0.05,0.1,0.1,0.2,0.15,0.3c0.1,0.2,0.2,0.4,0.29,0.6c0.09,0.2,0.19,0.39,0.27,0.59c0.09,0.2,0.17,0.39,0.25,0.58
c0.32,0.76,0.61,1.49,0.84,2.18c0.39,1.11,0.67,2.11,0.89,2.98c0.09,0.35,0.42,0.58,0.78,0.55c0.37-0.03,0.66-0.34,0.66-0.71
C85.14,43.15,85.11,42.05,85.01,40.8z"
/>
</svg>
);
};

View File

@ -1,10 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Heart: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<path d="M12,20.8623a2.75115,2.75115,0,0,1-1.94922-.80468L3.83691,13.84277A6.27238,6.27238,0,0,1,12,4.36328a6.27239,6.27239,0,0,1,8.16309,9.47949l-6.21338,6.21387A2.75,2.75,0,0,1,12,20.8623Z" />
</svg>
);
};

View File

@ -1,14 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const HeartBreak: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<g id="Layer_2" data-name="Layer 2">
<g id="Layer_1-2" data-name="Layer 1">
<path d="M18.17,1.85h0A6.25,6.25,0,0,0,12.12.23L9.42,6.56l2.83.71a1,1,0,0,1,.67,1.41l-2,4a1,1,0,0,1-.9.56,1.13,1.13,0,0,1-.44-.1h0a1,1,0,0,1-.46-1.33l1.4-2.89-2.77-.7a1,1,0,0,1-.65-.53,1,1,0,0,1,0-.83L9.58,1a6.27,6.27,0,0,0-7.73,9.77L9.3,18.18a1,1,0,0,0,1.42,0h0l7.45-7.46A6.27,6.27,0,0,0,18.17,1.85Z" />
</g>
</g>
</svg>
);
};

View File

@ -1,23 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Import: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<svg xmlns="http://www.w3.org/2000/svg" enableBackground="new 0 0 24 24" viewBox="0 0 24 24">
<path d="M19,22H5c-1.65611-0.00181-2.99819-1.34389-3-3v-4c0-0.55229,0.44772-1,1-1s1,0.44771,1,1v4c0.00037,0.55213,0.44787,0.99963,1,1h14c0.55213-0.00037,0.99963-0.44787,1-1v-4c0-0.55229,0.44772-1,1-1s1,0.44771,1,1v4C21.99819,20.65611,20.65611,21.99819,19,22z" />
<path
opacity="0.6"
d="M16.707,10.293c-0.39027-0.39048-1.02319-0.39065-1.41368-0.00038c-0.00013,0.00013-0.00026,0.00026-0.00038,0.00038L13,12.58594V3c0-0.55228-0.44771-1-1-1s-1,0.44772-1,1v9.58594L8.707,10.293c-0.39402-0.38691-1.02709-0.38116-1.414,0.01286c-0.38195,0.38896-0.38195,1.01218,0,1.40114l4,4c0.39028,0.39048,1.02321,0.39065,1.41369,0.00037c0.00012-0.00012,0.00025-0.00025,0.00037-0.00037l4-4c0.39045-0.3903,0.39058-1.02322,0.00028-1.41367C16.70723,10.29322,16.70712,10.29311,16.707,10.293z"
/>
</svg>
</svg>
);
};

View File

@ -1,49 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const PanelAdd: FunctionComponent<SvgProps> = ({ ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 117.8 64"
viewBox="0 0 117.8 64"
xmlSpace="preserve"
width={24}
height={24}
{...rest}
>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="96.4427" y1="83.7013" x2="96.4427" y2="-9.4831">
<stop offset="0" style={{ stopColor: '#FFF23A' }} />
<stop offset="4.010540e-02" style={{ stopColor: '#FEE62D' }} />
<stop offset="0.1171" style={{ stopColor: '#FED41A' }} />
<stop offset="0.1964" style={{ stopColor: '#FDC90F' }} />
<stop offset="0.2809" style={{ stopColor: '#FDC60B' }} />
<stop offset="0.6685" style={{ stopColor: '#F28F3F' }} />
<stop offset="0.8876" style={{ stopColor: '#ED693C' }} />
<stop offset="1" style={{ stopColor: '#E83E39' }} />
</linearGradient>
<path
d="M15.2,22.7H1.9c-1.1,0-1.9,0.9-1.9,1.9v37.5C0,63.2,0.9,64,1.9,64h13.3c1.1,0,1.9-0.9,1.9-1.9V24.6
C17.1,23.5,16.3,22.7,15.2,22.7z"
/>
<path
d="M36.3,10.2H23c-1.1,0-1.9,0.9-1.9,1.9v50c0,1.1,0.9,1.9,1.9,1.9h13.3c1.1,0,1.9-0.9,1.9-1.9v-50
C38.2,11.1,37.3,10.2,36.3,10.2z"
/>
<path
d="M57.3,32H44c-1.1,0-1.9,0.9-1.9,1.9v28.1c0,1.1,0.9,1.9,1.9,1.9h13.3c1.1,0,1.9-0.9,1.9-1.9V34
C59.2,32.9,58.4,32,57.3,32z"
/>
<path
d="M70.1,38V26.1c0-3.4,2.7-6.1,6.1-6.1h4.1V2c0-1.1-0.9-1.9-1.9-1.9H65.1C64,0,63.1,0.9,63.1,2v60.1
c0,1.1,0.9,1.9,1.9,1.9h13.3c1.1,0,1.9-0.9,1.9-1.9V44.1h-4.1C72.9,44.1,70.1,41.3,70.1,38z"
/>
<path
fill="url(#SVGID_1_)"
d="M116.7,24.9h-7.2h-0.5h-5.4V11.8c0-0.6-0.5-1.1-1.1-1.1H90.5c-0.6,0-1.1,0.5-1.1,1.1v13.1h-9.1h-4.1
c-0.6,0-1.1,0.5-1.1,1.1V38c0,0.6,0.5,1.1,1.1,1.1h4.1h9.1v4.6v1.9v6.7c0,0.6,0.5,1.1,1.1,1.1h11.9c0.6,0,1.1-0.5,1.1-1.1V39.1
h13.1c0.6,0,1.1-0.5,1.1-1.1V26.1C117.8,25.5,117.3,24.9,116.7,24.9z"
/>
</svg>
);
};

View File

@ -1,21 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const PlusSquare: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<path d="M17,11H13V7a1,1,0,0,0-2,0v4H7a1,1,0,0,0,0,2h4v4a1,1,0,0,0,2,0V13h4a1,1,0,0,0,0-2Z" />
<path
opacity="0.6"
d="M21,2H3A.99974.99974,0,0,0,2,3V21a.99974.99974,0,0,0,1,1H21a.99974.99974,0,0,0,1-1V3A.99974.99974,0,0,0,21,2ZM17,13H13v4a1,1,0,0,1-2,0V13H7a1,1,0,0,1,0-2h4V7a1,1,0,0,1,2,0v4h4a1,1,0,0,1,0,2Z"
/>
</svg>
);
};

View File

@ -1,13 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const ReusablePanel: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" fill="none" width={size} height={size} {...rest}>
<path
d="M14.3 8.7H9.4c-.18565 0-.3637.07375-.49497.20503C8.77375 9.0363 8.7 9.21435 8.7 9.4v4.9c0 .1857.07375.3637.20503.495.13127.1313.30932.205.49497.205h4.9c.1857 0 .3637-.0737.495-.205.1313-.1313.205-.3093.205-.495V9.4c0-.18565-.0737-.3637-.205-.49497C14.6637 8.77375 14.4857 8.7 14.3 8.7zm-.7 4.9h-3.5v-3.5h3.5v3.5zM6.6 1H1.7c-.18565 0-.3637.07375-.49497.20503C1.07375 1.3363 1 1.51435 1 1.7v4.9c0 .18565.07375.3637.20503.49497C1.3363 7.22625 1.51435 7.3 1.7 7.3h4.9c.18565 0 .3637-.07375.49497-.20503C7.22625 6.9637 7.3 6.78565 7.3 6.6V1.7c0-.18565-.07375-.3637-.20503-.49497C6.9637 1.07375 6.78565 1 6.6 1zm-.7 4.9H2.4V2.4h3.5v3.5zM13.9 6.97633c-.0425-.01764-.0816-.04176-.1155-.07137L12.15 5.40298c-.0573-.06206-.0873-.14189-.0839-.22353.0034-.08165.0399-.1591.1023-.21687.0623-.05777.1458-.09162.2339-.09477.0881-.00316.1742.02461.2412.07776l1.022.94725V3.62201c0-.25811-.1106-.50565-.3075-.68816-.197-.18251-.464-.28505-.7425-.28505H9.35c-.09283 0-.18185-.03417-.24749-.09501C9.03687 2.49295 9 2.41044 9 2.3244c0-.08603.03687-.16855.10251-.22938C9.16815 2.03418 9.25717 2 9.35 2h3.2795c.4641 0 .9092.17089 1.2374.47508.3282.30418.5126.71675.5126 1.14693v2.27081l1.022-.94725c.0325-.03041.0712-.05454.1139-.07101.0426-.01647.0884-.02495.1346-.02495.0462 0 .0919.00848.1346.02495.0426.01647.0814.0406.1139.07101.0324.03031.0581.06626.0755.10579.0174.03952.0263.08184.026.12454-.0004.0851-.0368.16665-.1015.22708L14.278 6.90496c-.033.0307-.0722.05496-.1155.07137-.0842.03156-.1783.03156-.2625 0zM2.1 9.02367c.04254.01764.08158.04176.1155.07137L3.85 10.597c.05734.0621.0873.1419.0839.2236-.0034.0816-.03992.159-.10225.2168-.06233.0578-.14589.0916-.23398.0948-.08808.0031-.17421-.0246-.24117-.0778l-1.022-.9472v2.2708c0 .2581.11063.5056.30754.6882.19691.1825.46399.285.74246.285H6.65c.09283 0 .18185.0342.24749.095.06564.0608.10251.1434.10251.2294s-.03687.1685-.10251.2294c-.06564.0608-.15466.095-.24749.095H3.3705c-.46413 0-.90924-.1709-1.23743-.4751s-.51257-.7167-.51257-1.1469v-2.2708l-1.021995.9472c-.032537.0304-.071247.0546-.113897.071-.042651.0165-.088398.025-.134602.025-.046204 0-.091951-.0085-.134602-.025-.042651-.0164-.081361-.0406-.113898-.071-.032438-.0303-.0581023-.0662-.0755198-.1058-.01741788-.0395-.02624652-.0818-.02597996-.1245.00038671-.0851.03683946-.1667.10149976-.2271L1.722 9.09504c.03298-.0307.07225-.05496.1155-.07137.08419-.03156.17832-.03156.2625 0z"
fill="#C7D0D9"
/>
</svg>
);
};

View File

@ -1,14 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const Shield: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width={size} height={size} {...rest}>
<path d="M12,22a.9986.9986,0,0,1-.581-.18652l-3.6504-2.60743A9.01643,9.01643,0,0,1,4,11.88281v-7.457a1.00039,1.00039,0,0,1,1.20605-.97851,8.00088,8.00088,0,0,0,6.22168-1.26758.99888.99888,0,0,1,1.14454,0A7.9976,7.9976,0,0,0,18.794,3.44727,1.00039,1.00039,0,0,1,20,4.42578v7.457a9.01643,9.01643,0,0,1-3.76855,7.32324l-3.6504,2.60743A.9986.9986,0,0,1,12,22Z" />
<path
opacity="0.6"
d="M10.84961,14.7002h0a.99927.99927,0,0,1-.707-.293L8.543,12.80664A.99989.99989,0,0,1,9.957,11.39258l.89258.89355L13.543,9.59277A.99989.99989,0,1,1,14.957,11.00684l-3.40039,3.40039A.99928.99928,0,0,1,10.84961,14.7002Z"
/>
</svg>
);
};

View File

@ -1,17 +0,0 @@
import React, { FunctionComponent } from 'react';
import { SvgProps } from './types';
export const SquareShape: FunctionComponent<SvgProps> = ({ size, ...rest }) => {
return (
<svg
xmlns="http://www.w3.org/2000/svg"
enableBackground="new 0 0 24 24"
viewBox="0 0 24 24"
width={size}
height={size}
{...rest}
>
<rect width="85%" height="85%" x="2" y="2" rx="5" />
</svg>
);
};

View File

@ -1,16 +0,0 @@
export * from './Apps';
export * from './Bell';
export * from './Circle';
export * from './Cog';
export * from './Favorite';
export * from './Folder';
export * from './FolderPlus';
export * from './Grafana';
export * from './Heart';
export * from './HeartBreak';
export * from './Import';
export * from './PanelAdd';
export * from './PlusSquare';
export * from './ReusablePanel';
export * from './Shield';
export * from './SquareShape';

View File

@ -1,7 +0,0 @@
import React from 'react';
export interface SvgProps extends React.HTMLAttributes<SVGElement> {
size: number;
secondaryColor?: string;
className?: string;
}

View File

@ -1,147 +0,0 @@
import React, { FC, ComponentType } from 'react';
import { SvgProps } from '../assets/types';
const InterpolationLinear: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.5 20" width={'30px'} height={size} {...rest}>
<g id="Layer_2" data-name="Layer 2">
<g id="Icons">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="25.83" cy="17.33" r="2.67" />
<rect x="19.25" y="-1.21" width="1.5" height="22.42" transform="translate(-1.79 15.03) rotate(-39.57)" />
<circle cx="2.67" cy="17.33" r="2.67" />
<rect x="-2.71" y="9.25" width="22.42" height="1.5" transform="translate(-4.62 10.18) rotate(-50.44)" />
</g>
</g>
</svg>
);
};
const InterpolationSmooth: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20" width={'30px'} height={size} {...rest}>
<g id="Layer_2" data-name="Layer 2">
<g id="Icons">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<path d="M3.42,17.33H1.92c0-6.46,4.39-15.41,12.64-15.41v1.5C7.29,3.42,3.42,11.5,3.42,17.33Z" />
<circle cx="25.67" cy="17.33" r="2.67" />
<path d="M26.42,17.33h-1.5c0-5.83-3.87-13.91-11.14-13.91V1.92C22,1.92,26.42,10.87,26.42,17.33Z" />
</g>
</g>
</svg>
);
};
const InterpolationStepBefore: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20" width={'30px'} height={size} {...rest}>
<g id="Layer_2" data-name="Layer 2">
<g id="Icons">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<circle cx="25.67" cy="17.33" r="2.67" />
<polygon points="3.42 17.33 1.92 17.33 1.92 1.92 13.78 1.92 13.78 3.42 3.42 3.42 3.42 17.33" />
<polygon points="25.67 18.08 13.42 18.08 13.42 2.67 14.92 2.67 14.92 16.58 25.67 16.58 25.67 18.08" />
</g>
</g>
</svg>
);
};
const InterpolationStepAfter: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20" width={'30px'} height={size} {...rest}>
<g id="Layer_2" data-name="Layer 2">
<g id="Icons">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="25.67" cy="17.33" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<polygon points="26.42 17.33 24.92 17.33 24.92 3.42 14.56 3.42 14.56 1.92 26.42 1.92 26.42 17.33" />
<polygon points="14.92 18.08 2.67 18.08 2.67 16.58 13.42 16.58 13.42 2.67 14.92 2.67 14.92 18.08" />
</g>
</g>
</svg>
);
};
export const Logs: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" width={30} height={size} {...rest}>
<path
fillRule="evenodd"
clipRule="evenodd"
d="M2.36906 14.2144H8.68657C8.89601 14.2144 9.09687 14.2976 9.24496 14.4457C9.39306 14.5938 9.47626 14.7946 9.47626 15.0041C9.47626 15.2135 9.39306 15.4144 9.24496 15.5625C9.09687 15.7106 8.89601 15.7938 8.68657 15.7938H2.36906C1.74075 15.7938 1.13817 15.5442 0.693883 15.0999C0.249597 14.6556 0 14.053 0 13.4247V2.36906C0 1.74075 0.249597 1.13817 0.693883 0.693883C1.13817 0.249597 1.74075 0 2.36906 0H7.15457L7.37569 0.0789687H7.44676C7.52795 0.116938 7.60259 0.167585 7.66787 0.229009L12.406 4.96714C12.5156 5.07819 12.5898 5.2192 12.6193 5.37239C12.6488 5.52559 12.6323 5.68409 12.5718 5.8279C12.5126 5.97211 12.412 6.09556 12.2827 6.18269C12.1534 6.26982 12.0012 6.31673 11.8453 6.3175H8.68657C8.05825 6.3175 7.45567 6.06791 7.01139 5.62362C6.5671 5.17934 6.3175 4.57675 6.3175 3.94844V1.57938H2.36906C2.15963 1.57938 1.95877 1.66258 1.81067 1.81067C1.66258 1.95877 1.57938 2.15963 1.57938 2.36906V13.4247C1.57938 13.6341 1.66258 13.835 1.81067 13.9831C1.95877 14.1312 2.15963 14.2144 2.36906 14.2144ZM9.94217 4.73813L7.89688 2.69284V3.94844C7.89688 4.15788 7.98008 4.35874 8.12817 4.50683C8.27627 4.65493 8.47713 4.73813 8.68657 4.73813H9.94217ZM3.34761 12.2739C3.31241 12.1914 3.29137 12.1041 3.2854 12.0158L3.2854 8.36528C3.28184 8.18607 3.34961 8.01561 3.47382 7.89141C3.59802 7.76721 3.76848 7.69943 3.94769 7.70299C4.1269 7.70655 4.30019 7.78116 4.42943 7.9104C4.55867 8.03964 4.63327 8.21293 4.63683 8.39214L4.63684 11.2969L5.92266 11.2969C6.01149 11.2983 6.12471 11.3282 6.20753 11.3636C6.27155 11.391 6.31643 11.4391 6.3631 11.4892L6.36311 11.4892C6.37681 11.5039 6.39066 11.5187 6.4052 11.5332C6.46926 11.5973 6.52051 11.6729 6.55597 11.7557C6.59143 11.8386 6.61041 11.9269 6.61181 12.0158C6.61394 12.1046 6.59846 12.1923 6.56626 12.2738C6.53407 12.3553 6.48579 12.4289 6.42422 12.4905C6.36265 12.552 6.289 12.6003 6.20753 12.6325C6.12605 12.6647 6.01151 12.707 5.92266 12.7049H3.97454C3.8858 12.7025 3.79782 12.6813 3.71644 12.6427C3.55164 12.5712 3.41911 12.4387 3.34761 12.2739ZM8.70634 12.793C9.98203 12.793 11.0162 11.6439 11.0162 10.2265C11.0162 8.80904 9.98203 7.65998 8.70634 7.65998C7.43065 7.65998 6.3965 8.80904 6.3965 10.2265C6.3965 11.6439 7.43065 12.793 8.70634 12.793ZM8.73597 11.5453C9.37381 11.5453 9.89089 10.9407 9.89089 10.1949C9.89089 9.44911 9.37381 8.84453 8.73597 8.84453C8.09813 8.84453 7.58105 9.44911 7.58105 10.1949C7.58105 10.9407 8.09813 11.5453 8.73597 11.5453ZM11.3715 10.2265C11.3715 8.80904 12.4056 7.65998 13.6813 7.65998C14.1833 7.65998 14.7779 7.9067 15.0267 8.14005C15.1561 8.2614 15.3112 8.44705 15.3397 8.63063C15.366 8.80006 15.2757 8.96772 15.162 9.08144C15.0708 9.17262 14.938 9.2579 14.8066 9.25912C14.5968 9.26106 14.3907 9.13001 14.3646 9.08144C14.1787 8.93199 13.9535 8.84451 13.7109 8.84451C13.0731 8.84451 12.556 9.44909 12.556 10.1949C12.556 10.9407 13.0731 11.5452 13.7109 11.5452C14.0485 11.5452 14.3522 11.3759 14.5634 11.106L14.6882 10.8582H14.2144C14.1414 10.8571 14.0483 10.8326 13.9802 10.8034C13.9276 10.7809 13.8907 10.7413 13.8523 10.7002C13.8411 10.6882 13.8297 10.676 13.8177 10.664C13.7651 10.6113 13.723 10.5492 13.6938 10.4811C13.6647 10.413 13.6491 10.3404 13.6479 10.2674C13.6462 10.1943 13.6589 10.1222 13.6853 10.0553C13.7118 9.9883 13.7515 9.92777 13.8021 9.87716C13.8527 9.82654 13.9132 9.78686 13.9802 9.7604C14.0472 9.73393 14.1414 9.69913 14.2144 9.70088H15.4247C15.4977 9.70283 15.57 9.72026 15.6369 9.75202C15.7723 9.8108 15.8813 9.91973 15.94 10.0552C15.94 10.0552 15.9629 10.1198 15.9912 10.266C16.0154 10.3912 15.9852 10.5411 15.9549 10.6909C15.9499 10.7159 15.9448 10.741 15.94 10.7659C15.717 11.9243 14.7905 12.793 13.6813 12.793C12.4056 12.793 11.3715 11.6439 11.3715 10.2265Z"
/>
</svg>
);
};
const IconNotFound: FC<SvgProps> = ({ size, ...rest }) => {
return <svg width={size} height={size} {...rest} />;
};
const BarAlignmentAfter: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg width={'16px'} height={size} viewBox="0 0 16 19" version="1.1" xmlns="http://www.w3.org/2000/svg" {...rest}>
<g id="Page-1">
<g id="Group" transform="translate(0.500000, 0.000000)">
<circle id="Oval" cx="2.67" cy="2.67" r="2.67" />
<polygon id="Path" points="13.42 18.08 13.42 3.42 3.06 3.42 3.06 1.92 14.92 1.92 14.92 18.08" />
<polygon id="Path" points="1.92 18.08 1.92 16.58 1.92 2.67 3.42 2.67 3.42 18.08" />
</g>
</g>
</svg>
);
};
const BarAlignmentBefore: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg width={'16px'} height={size} viewBox="0 0 16 19" version="1.1" xmlns="http://www.w3.org/2000/svg" {...rest}>
<g id="Page-1">
<g
id="Group"
transform="translate(8.000000, 9.500000) scale(-1, 1) translate(-8.000000, -9.500000) translate(0.500000, 0.000000)"
>
<circle id="Oval" cx="2.67" cy="2.67" r="2.67" />
<polygon id="Path" points="13.42 18.08 13.42 3.42 3.06 3.42 3.06 1.92 14.92 1.92 14.92 18.08" />
<polygon id="Path" points="1.92 18.08 1.92 16.58 1.92 2.67 3.42 2.67 3.42 18.08" />
</g>
</g>
</svg>
);
};
const BarAlignmentCenter: FC<SvgProps> = ({ size, ...rest }) => {
return (
<svg width="16px" height={size} viewBox="0 0 16 19" version="1.1" xmlns="http://www.w3.org/2000/svg" {...rest}>
<g id="Page-1">
<g id="Group" transform="translate(2.500000, 0.000000)">
<circle id="Oval" cx="6.67" cy="2.67" r="2.67" />
<g id="Group-2" transform="translate(0.000000, 2.000000)">
<polygon
id="Path"
points="11.5 16.16 11.5 1.5 1.84741111e-13 1.5 1.84741111e-13 1.77635684e-14 13 1.77635684e-14 13 16.16"
/>
<polygon
id="Path"
points="2.27373675e-13 16.16 2.27373675e-13 14.66 2.32286412e-13 0.75 1.5 0.75 1.5 16.16"
/>
</g>
</g>
</g>
</svg>
);
};
export const customIcons: Record<string, ComponentType<SvgProps>> = {
'gf-interpolation-linear': InterpolationLinear,
'gf-interpolation-smooth': InterpolationSmooth,
'gf-interpolation-step-before': InterpolationStepBefore,
'gf-interpolation-step-after': InterpolationStepAfter,
'gf-logs': Logs,
'gf-bar-alignment-after': BarAlignmentAfter,
'gf-bar-alignment-before': BarAlignmentBefore,
'gf-bar-alignment-center': BarAlignmentCenter,
notFoundDummy: IconNotFound,
};

View File

@ -0,0 +1,94 @@
import { cacheStore } from '@leeoniya/react-inlinesvg';
// inlined static cache
import i001 from '!!raw-loader!../../../../../public/img/icons/unicons/bars.svg';
import i002 from '!!raw-loader!../../../../../public/img/icons/unicons/times.svg';
import i003 from '!!raw-loader!../../../../../public/img/icons/unicons/search.svg';
import i004 from '!!raw-loader!../../../../../public/img/icons/unicons/plus.svg';
import i005 from '!!raw-loader!../../../../../public/img/icons/unicons/apps.svg';
import i006 from '!!raw-loader!../../../../../public/img/icons/unicons/folder-plus.svg';
import i007 from '!!raw-loader!../../../../../public/img/icons/unicons/import.svg';
import i008 from '!!raw-loader!../../../../../public/img/icons/unicons/home-alt.svg';
import i009 from '!!raw-loader!../../../../../public/img/icons/unicons/sitemap.svg';
import i010 from '!!raw-loader!../../../../../public/img/icons/unicons/presentation-play.svg';
import i011 from '!!raw-loader!../../../../../public/img/icons/unicons/camera.svg';
import i012 from '!!raw-loader!../../../../../public/img/icons/unicons/compass.svg';
import i013 from '!!raw-loader!../../../../../public/img/icons/unicons/bell.svg';
import i014 from '!!raw-loader!../../../../../public/img/icons/unicons/list-ul.svg';
import i015 from '!!raw-loader!../../../../../public/img/icons/unicons/comment-alt-share.svg';
import i016 from '!!raw-loader!../../../../../public/img/icons/unicons/cog.svg';
import i017 from '!!raw-loader!../../../../../public/img/icons/unicons/database.svg';
import i018 from '!!raw-loader!../../../../../public/img/icons/unicons/user.svg';
import i019 from '!!raw-loader!../../../../../public/img/icons/unicons/users-alt.svg';
import i020 from '!!raw-loader!../../../../../public/img/icons/unicons/plug.svg';
import i021 from '!!raw-loader!../../../../../public/img/icons/unicons/sliders-v-alt.svg';
import i022 from '!!raw-loader!../../../../../public/img/icons/unicons/key-skeleton-alt.svg';
import i023 from '!!raw-loader!../../../../../public/img/icons/unicons/shield.svg';
import i024 from '!!raw-loader!../../../../../public/img/icons/unicons/building.svg';
import i025 from '!!raw-loader!../../../../../public/img/icons/unicons/graph-bar.svg';
import i026 from '!!raw-loader!../../../../../public/img/icons/unicons/unlock.svg';
import i027 from '!!raw-loader!../../../../../public/img/icons/unicons/lock.svg';
import i028 from '!!raw-loader!../../../../../public/img/icons/unicons/arrow-from-right.svg';
import i029 from '!!raw-loader!../../../../../public/img/icons/unicons/question-circle.svg';
import i030 from '!!raw-loader!../../../../../public/img/icons/unicons/document-info.svg';
import i031 from '!!raw-loader!../../../../../public/img/icons/unicons/comments-alt.svg';
import i032 from '!!raw-loader!../../../../../public/img/icons/unicons/keyboard.svg';
import i033 from '!!raw-loader!../../../../../public/img/icons/unicons/star.svg';
import i034 from '!!raw-loader!../../../../../public/img/icons/unicons/share-alt.svg';
import i035 from '!!raw-loader!../../../../../public/img/icons/mono/panel-add.svg';
import i036 from '!!raw-loader!../../../../../public/img/icons/unicons/save.svg';
import i037 from '!!raw-loader!../../../../../public/img/icons/unicons/clock-nine.svg';
import i038 from '!!raw-loader!../../../../../public/img/icons/unicons/angle-down.svg';
import i039 from '!!raw-loader!../../../../../public/img/icons/unicons/search-minus.svg';
import i040 from '!!raw-loader!../../../../../public/img/icons/unicons/sync.svg';
import i041 from '!!raw-loader!../../../../../public/img/icons/unicons/monitor.svg';
import i042 from '!!raw-loader!../../../../../public/img/icons/unicons/trash-alt.svg';
const iconRoot = '/public/img/icons/';
function cacheItem(content: string, path: string) {
cacheStore[iconRoot + path] = { content, status: 'loaded', queue: [] };
}
cacheItem(i001, 'unicons/bars.svg');
cacheItem(i002, 'unicons/times.svg');
cacheItem(i003, 'unicons/search.svg');
cacheItem(i004, 'unicons/plus.svg');
cacheItem(i005, 'unicons/apps.svg');
cacheItem(i006, 'unicons/folder-plus.svg');
cacheItem(i007, 'unicons/import.svg');
cacheItem(i008, 'unicons/home-alt.svg');
cacheItem(i009, 'unicons/sitemap.svg');
cacheItem(i010, 'unicons/presentation-play.svg');
cacheItem(i011, 'unicons/camera.svg');
cacheItem(i012, 'unicons/compass.svg');
cacheItem(i013, 'unicons/bell.svg');
cacheItem(i014, 'unicons/list-ul.svg');
cacheItem(i015, 'unicons/comment-alt-share.svg');
cacheItem(i016, 'unicons/cog.svg');
cacheItem(i017, 'unicons/database.svg');
cacheItem(i018, 'unicons/user.svg');
cacheItem(i019, 'unicons/users-alt.svg');
cacheItem(i020, 'unicons/plug.svg');
cacheItem(i021, 'unicons/sliders-v-alt.svg');
cacheItem(i022, 'unicons/key-skeleton-alt.svg');
cacheItem(i023, 'unicons/shield.svg');
cacheItem(i024, 'unicons/building.svg');
cacheItem(i025, 'unicons/graph-bar.svg');
cacheItem(i026, 'unicons/unlock.svg');
cacheItem(i027, 'unicons/lock.svg');
cacheItem(i028, 'unicons/arrow-from-right.svg');
cacheItem(i029, 'unicons/question-circle.svg');
cacheItem(i030, 'unicons/document-info.svg');
cacheItem(i031, 'unicons/comments-alt.svg');
cacheItem(i032, 'unicons/keyboard.svg');
cacheItem(i033, 'unicons/star.svg');
cacheItem(i034, 'unicons/share-alt.svg');
cacheItem(i035, 'mono/panel-add.svg');
cacheItem(i036, 'unicons/save.svg');
cacheItem(i037, 'unicons/clock-nine.svg');
cacheItem(i038, 'unicons/angle-down.svg');
cacheItem(i039, 'unicons/search-minus.svg');
cacheItem(i040, 'unicons/sync.svg');
cacheItem(i041, 'unicons/monitor.svg');
cacheItem(i042, 'unicons/trash-alt.svg');

View File

@ -4,9 +4,10 @@ import 'regenerator-runtime/runtime';
import 'whatwg-fetch'; // fetch polyfill needed for PhantomJs rendering
import 'abortcontroller-polyfill/dist/polyfill-patch-fetch'; // fetch polyfill needed for PhantomJs rendering
import 'file-saver';
import 'jquery';
import '@grafana/ui/src/components/Icon/iconBundle';
import _ from 'lodash';
import ReactDOM from 'react-dom';
import React from 'react';

View File

@ -83,24 +83,14 @@ exports[`Render should render component 1`] = `
<div
className="css-1vzus6i-Icon"
>
<ni
<InlineSVG
cacheRequests={true}
className="css-sr6nr"
color="currentColor"
size={24}
>
<svg
className="css-sr6nr"
fill="currentColor"
height={24}
viewBox="0 0 24 24"
width={24}
xmlns="http://www.w3.org/2000/svg"
>
<path
d="M18.42,9.21a7,7,0,0,0-13.36,1.9A4,4,0,0,0,6,19H17a5,5,0,0,0,1.42-9.79ZM17,17H6a2,2,0,0,1,0-4,1,1,0,0,0,1-1,5,5,0,0,1,9.73-1.61,1,1,0,0,0,.78.66A3,3,0,0,1,17,17Z"
/>
</svg>
</ni>
height={24}
src="/public/img/icons/unicons/cloud.svg"
uniquifyIDs={false}
width={24}
/>
</div>
</Icon>
</span>

4
public/img/icons/.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
# unicons folder is imported via webpack
# https://github.com/Iconscout/unicons/tarball/d0859416ab8d8e60dcfa1c0b50716874fcf11778
# just the line icons
unicons

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 19">
<g transform="translate(.5)">
<circle cx="2.67" cy="2.67" r="2.67"/>
<path d="M13.42 18.08V3.42H3.06v-1.5h11.86v16.16z"/>
<path d="M1.92 18.08V2.67h1.5v15.41z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 266 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 19">
<g transform="matrix(-1 0 0 1 15.5 0)">
<circle cx="2.67" cy="2.67" r="2.67"/>
<path d="M13.42 18.08V3.42H3.06v-1.5h11.86v16.16z"/>
<path d="M1.92 18.08V2.67h1.5v15.41z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 276 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 19">
<g transform="translate(2.5)">
<circle cx="6.67" cy="2.67" r="2.67"/>
<path d="M11.5 18.16V3.5H0V2h13v16.16z"/>
<path d="M0 18.16V2.75h1.5v15.41z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 237 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.5 20">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="25.83" cy="17.33" r="2.67" />
<rect x="19.25" y="-1.21" width="1.5" height="22.42" transform="translate(-1.79 15.03) rotate(-39.57)" />
<circle cx="2.67" cy="17.33" r="2.67" />
<rect x="-2.71" y="9.25" width="22.42" height="1.5" transform="translate(-4.62 10.18) rotate(-50.44)" />
</svg>

After

Width:  |  Height:  |  Size: 424 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<path d="M3.42,17.33H1.92c0-6.46,4.39-15.41,12.64-15.41v1.5C7.29,3.42,3.42,11.5,3.42,17.33Z" />
<circle cx="25.67" cy="17.33" r="2.67" />
<path d="M26.42,17.33h-1.5c0-5.83-3.87-13.91-11.14-13.91V1.92C22,1.92,26.42,10.87,26.42,17.33Z" />
</svg>

After

Width:  |  Height:  |  Size: 409 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="25.67" cy="17.33" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<polygon points="26.42 17.33 24.92 17.33 24.92 3.42 14.56 3.42 14.56 1.92 26.42 1.92 26.42 17.33" />
<polygon points="14.92 18.08 2.67 18.08 2.67 16.58 13.42 16.58 13.42 2.67 14.92 2.67 14.92 18.08" />
</svg>

After

Width:  |  Height:  |  Size: 416 B

View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28.34 20">
<circle cx="14.17" cy="2.67" r="2.67" />
<circle cx="2.67" cy="17.33" r="2.67" />
<circle cx="25.67" cy="17.33" r="2.67" />
<polygon points="3.42 17.33 1.92 17.33 1.92 1.92 13.78 1.92 13.78 3.42 3.42 3.42 3.42 17.33" />
<polygon points="25.67 18.08 13.42 18.08 13.42 2.67 14.92 2.67 14.92 16.58 25.67 16.58 25.67 18.08" />
</svg>

After

Width:  |  Height:  |  Size: 413 B

View File

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
<path fillRule="evenodd" clipRule="evenodd" d="M2.36906 14.2144H8.68657C8.89601 14.2144 9.09687 14.2976 9.24496 14.4457C9.39306 14.5938 9.47626 14.7946 9.47626 15.0041C9.47626 15.2135 9.39306 15.4144 9.24496 15.5625C9.09687 15.7106 8.89601 15.7938 8.68657 15.7938H2.36906C1.74075 15.7938 1.13817 15.5442 0.693883 15.0999C0.249597 14.6556 0 14.053 0 13.4247V2.36906C0 1.74075 0.249597 1.13817 0.693883 0.693883C1.13817 0.249597 1.74075 0 2.36906 0H7.15457L7.37569 0.0789687H7.44676C7.52795 0.116938 7.60259 0.167585 7.66787 0.229009L12.406 4.96714C12.5156 5.07819 12.5898 5.2192 12.6193 5.37239C12.6488 5.52559 12.6323 5.68409 12.5718 5.8279C12.5126 5.97211 12.412 6.09556 12.2827 6.18269C12.1534 6.26982 12.0012 6.31673 11.8453 6.3175H8.68657C8.05825 6.3175 7.45567 6.06791 7.01139 5.62362C6.5671 5.17934 6.3175 4.57675 6.3175 3.94844V1.57938H2.36906C2.15963 1.57938 1.95877 1.66258 1.81067 1.81067C1.66258 1.95877 1.57938 2.15963 1.57938 2.36906V13.4247C1.57938 13.6341 1.66258 13.835 1.81067 13.9831C1.95877 14.1312 2.15963 14.2144 2.36906 14.2144ZM9.94217 4.73813L7.89688 2.69284V3.94844C7.89688 4.15788 7.98008 4.35874 8.12817 4.50683C8.27627 4.65493 8.47713 4.73813 8.68657 4.73813H9.94217ZM3.34761 12.2739C3.31241 12.1914 3.29137 12.1041 3.2854 12.0158L3.2854 8.36528C3.28184 8.18607 3.34961 8.01561 3.47382 7.89141C3.59802 7.76721 3.76848 7.69943 3.94769 7.70299C4.1269 7.70655 4.30019 7.78116 4.42943 7.9104C4.55867 8.03964 4.63327 8.21293 4.63683 8.39214L4.63684 11.2969L5.92266 11.2969C6.01149 11.2983 6.12471 11.3282 6.20753 11.3636C6.27155 11.391 6.31643 11.4391 6.3631 11.4892L6.36311 11.4892C6.37681 11.5039 6.39066 11.5187 6.4052 11.5332C6.46926 11.5973 6.52051 11.6729 6.55597 11.7557C6.59143 11.8386 6.61041 11.9269 6.61181 12.0158C6.61394 12.1046 6.59846 12.1923 6.56626 12.2738C6.53407 12.3553 6.48579 12.4289 6.42422 12.4905C6.36265 12.552 6.289 12.6003 6.20753 12.6325C6.12605 12.6647 6.01151 12.707 5.92266 12.7049H3.97454C3.8858 12.7025 3.79782 12.6813 3.71644 12.6427C3.55164 12.5712 3.41911 12.4387 3.34761 12.2739ZM8.70634 12.793C9.98203 12.793 11.0162 11.6439 11.0162 10.2265C11.0162 8.80904 9.98203 7.65998 8.70634 7.65998C7.43065 7.65998 6.3965 8.80904 6.3965 10.2265C6.3965 11.6439 7.43065 12.793 8.70634 12.793ZM8.73597 11.5453C9.37381 11.5453 9.89089 10.9407 9.89089 10.1949C9.89089 9.44911 9.37381 8.84453 8.73597 8.84453C8.09813 8.84453 7.58105 9.44911 7.58105 10.1949C7.58105 10.9407 8.09813 11.5453 8.73597 11.5453ZM11.3715 10.2265C11.3715 8.80904 12.4056 7.65998 13.6813 7.65998C14.1833 7.65998 14.7779 7.9067 15.0267 8.14005C15.1561 8.2614 15.3112 8.44705 15.3397 8.63063C15.366 8.80006 15.2757 8.96772 15.162 9.08144C15.0708 9.17262 14.938 9.2579 14.8066 9.25912C14.5968 9.26106 14.3907 9.13001 14.3646 9.08144C14.1787 8.93199 13.9535 8.84451 13.7109 8.84451C13.0731 8.84451 12.556 9.44909 12.556 10.1949C12.556 10.9407 13.0731 11.5452 13.7109 11.5452C14.0485 11.5452 14.3522 11.3759 14.5634 11.106L14.6882 10.8582H14.2144C14.1414 10.8571 14.0483 10.8326 13.9802 10.8034C13.9276 10.7809 13.8907 10.7413 13.8523 10.7002C13.8411 10.6882 13.8297 10.676 13.8177 10.664C13.7651 10.6113 13.723 10.5492 13.6938 10.4811C13.6647 10.413 13.6491 10.3404 13.6479 10.2674C13.6462 10.1943 13.6589 10.1222 13.6853 10.0553C13.7118 9.9883 13.7515 9.92777 13.8021 9.87716C13.8527 9.82654 13.9132 9.78686 13.9802 9.7604C14.0472 9.73393 14.1414 9.69913 14.2144 9.70088H15.4247C15.4977 9.70283 15.57 9.72026 15.6369 9.75202C15.7723 9.8108 15.8813 9.91973 15.94 10.0552C15.94 10.0552 15.9629 10.1198 15.9912 10.266C16.0154 10.3912 15.9852 10.5411 15.9549 10.6909C15.9499 10.7159 15.9448 10.741 15.94 10.7659C15.717 11.9243 14.7905 12.793 13.6813 12.793C12.4056 12.793 11.3715 11.6439 11.3715 10.2265Z" />
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><rect width="9" height="9" x="2" y="2" rx="1"/><rect width="9" height="9" x="2" y="13" rx="1" opacity=".6"/><rect width="9" height="9" x="13" y="2" rx="1" opacity=".6"/><rect width="9" height="9" x="13" y="13" rx="1" opacity=".6"/></svg>

After

Width:  |  Height:  |  Size: 297 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path opacity=".6" d="M18 13.18V10a6 6 0 10-12 0v3.18A3 3 0 004 16v2a1 1 0 001 1h14a1 1 0 001-1v-2a3 3 0 00-2-2.82z"/><path d="M8.14 19A4 4 0 0012 22a4 4 0 003.86-3H8.14zM12 4c.34 0 .67.04 1 .09V3a1 1 0 10-2 0v1.09c.33-.05.66-.09 1-.09z"/></svg>

After

Width:  |  Height:  |  Size: 305 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/></svg>

After

Width:  |  Height:  |  Size: 98 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21.316 9.552l-1.886-.63.89-1.777a1 1 0 00-.188-1.155L18.01 3.868a1 1 0 00-1.154-.187l-1.778.89-.63-1.887A1 1 0 0013.5 2h-3a1 1 0 00-.949.684L8.922 4.57l-1.778-.89a.996.996 0 00-1.154.188L3.868 5.99a1 1 0 00-.187 1.155l.89 1.778-1.887.629A.999.999 0 002 10.5v3a.999.999 0 00.684.948l1.886.63-.89 1.777a1 1 0 00.188 1.155l2.122 2.122a.998.998 0 001.154.187l1.778-.89.63 1.887A1 1 0 0010.5 22h3a1 1 0 00.949-.684l.629-1.886 1.778.89a1 1 0 001.154-.188l2.122-2.122a1 1 0 00.187-1.155l-.889-1.778 1.886-.629A.999.999 0 0022 13.5v-3a.999.999 0 00-.684-.948zM12 15a3 3 0 113-3 3.003 3.003 0 01-3 3z"/><path opacity=".6" d="M12 16a4 4 0 114-4 4.004 4.004 0 01-4 4zm0-6a2 2 0 102 2 2.002 2.002 0 00-2-2z"/></svg>

After

Width:  |  Height:  |  Size: 773 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.56 21.56a1 1 0 01-.46-.12L12 18.76l-5.1 2.68a1 1 0 01-1.45-1.05l.98-5.68L2.3 10.7a1 1 0 01.56-1.71l5.7-.83L11.1 3a1.04 1.04 0 011.8 0l2.55 5.16 5.7.83a1 1 0 01.55 1.7l-4.13 4.02.98 5.68a1 1 0 01-.99 1.17z"/></svg>

After

Width:  |  Height:  |  Size: 286 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path opacity=".6" d="M19 21.5H5a3 3 0 01-3-3v-13a3 3 0 013-3h4.56a3 3 0 012.84 2.05l.32.95H19a3 3 0 013 3v10a3 3 0 01-3 3z"/><path d="M14 12.5h-1v-1a1 1 0 00-2 0v1h-1a1 1 0 000 2h1v1a1 1 0 002 0v-1h1a1 1 0 000-2z"/></svg>

After

Width:  |  Height:  |  Size: 282 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 21.5H5a3 3 0 01-3-3v-13a3 3 0 013-3h4.56a3 3 0 012.84 2.05l.32.95H19a3 3 0 013 3v10a3 3 0 01-3 3z"/></svg>

After

Width:  |  Height:  |  Size: 179 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 85.12 92.46"><defs><linearGradient id="a" gradientUnits="userSpaceOnUse" x1="42.56" y1="113.26" x2="42.56" y2="28.78"><stop offset="0" stop-color="#FFF200"/><stop offset="1" stop-color="#F15A29"/></linearGradient></defs><path fill="url(#a)" d="M85.01 40.8a33.05 33.05 0 00-3.32-11.69 34.33 34.33 0 00-6.89-9.42c1.3-5.17-1.59-9.65-1.59-9.65-4.98-.31-8.14 1.54-9.31 2.39l-.59-.25a39.35 39.35 0 00-8.21-2.26l-.51-.07C52.41 2.9 46.18 0 46.18 0c-6.95 4.41-8.27 10.57-8.27 10.57l-.07.36-1.15.34c-.53.16-1.06.36-1.59.55-.53.21-1.06.41-1.58.64a31.81 31.81 0 00-6 3.35l-.24-.11c-9.62-3.68-18.17.75-18.17.75-.78 10.24 3.84 16.68 4.76 17.86a44.72 44.72 0 00-2.34 10.15C2.63 48.84 0 57.84 0 57.84c7.42 8.53 16.07 9.06 16.07 9.06l.02-.02a38.29 38.29 0 005.68 7.68c-2.71 7.74.38 14.18.38 14.18a23.03 23.03 0 0014.83-4.52 37.7 37.7 0 0012.19 1.93h.31l.21-.01.41-.01.4-.02.01.01c3.89 5.55 10.74 6.34 10.74 6.34 4.87-5.13 5.15-10.22 5.15-11.33v-.07-.15l-.01-.23a30.34 30.34 0 008.37-8.86c5.51.32 9.39-3.41 9.39-3.41-.91-5.74-4.18-8.54-4.87-9.07l-.07-.05a.61.61 0 01-.06-.05l-.12-.08.08-1.04c.04-.62.06-1.24.06-1.85v-.81-.16l-.02-.38-.03-.52a7.25 7.25 0 00-.09-.98l-.06-.48-.07-.47a23.94 23.94 0 00-7.83-14.37 23.17 23.17 0 00-15.69-5.81l-.41.01H54.73l-.17.01-.4.03-.45.04a18.4 18.4 0 00-12.4 6.49 18.02 18.02 0 00-4.14 10.35 14.54 14.54 0 00-.02 1.65l.01.35.05.63a13.93 13.93 0 005.97 10.16 13.6 13.6 0 003.76 1.79c1.27.38 2.54.54 3.74.53l.44-.01.24-.01.24-.01.38-.04.11-.01.12-.02.23-.03.43-.08.42-.09a10.46 10.46 0 002.26-.83c.45-.23.87-.5 1.26-.77l.33-.25a.96.96 0 00.15-1.35.94.94 0 00-1.19-.23l-.3.16c-.35.17-.71.32-1.09.45a9.54 9.54 0 01-1.83.37l-.32.02-.32.01-.31-.01-.39-.02h-.05l-.09.02-.17-.02-.35-.04a9.98 9.98 0 01-5.36-2.51 9.71 9.71 0 01-3.21-7.39l.02-.47v-.09l.01-.12.02-.23a12.18 12.18 0 016.94-9.8 12.02 12.02 0 014.87-1.07h.23l.27.01.17.01h.1l.27.02a15.57 15.57 0 016.3 1.89 15.18 15.18 0 016.17 6.4 14.52 14.52 0 011.53 5.45l.02.29.01.29.01.29v.52l-.01.28-.03.67a24.8 24.8 0 01-.31 2.46 19.65 19.65 0 01-11.12 14.22 19.46 19.46 0 01-7.28 1.72l-.15.01h-1.02-.09a25.45 25.45 0 01-6.61-1.02 26.1 26.1 0 01-18.72-23.19l-.02-.32-.01-.08V49.57l-.01-.28v-.37l-.01-.4v-.08-.19l.01-.63a29.56 29.56 0 01.65-5.24 34.3 34.3 0 012.46-7.51 27.12 27.12 0 015.61-8.09 22.83 22.83 0 015.69-4.12c.34-.19.7-.35 1.05-.52l.53-.24.54-.23c.72-.3 1.46-.56 2.21-.8l.56-.17.57-.16c.38-.11.76-.2 1.14-.29l.58-.13.58-.12.58-.11.29-.05.29-.04.59-.09.66-.09.65-.08.41-.04.28-.03.14-.01.16-.01.66-.04.33-.02H51.17l.14-.01.56-.03a30.82 30.82 0 016.58.48 30.5 30.5 0 017.89 2.62 31.8 31.8 0 016.44 4.2l.35.3.34.3.66.61.64.62.61.63a33.4 33.4 0 015.43 7.62l.16.3.15.3.29.6c.09.2.19.39.27.59l.25.58a34.09 34.09 0 011.73 5.16c.09.35.42.58.78.55a.72.72 0 00.66-.71c.04-.95.01-2.05-.09-3.3z"/></svg>

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.17 1.85A6.25 6.25 0 0012.12.23l-2.7 6.33 2.83.71a1 1 0 01.67 1.41l-2 4a1 1 0 01-.9.56 1.13 1.13 0 01-.44-.1 1 1 0 01-.46-1.33l1.4-2.89-2.77-.7a1 1 0 01-.65-.53 1 1 0 010-.83L9.58 1a6.27 6.27 0 00-7.73 9.77l7.45 7.41a1 1 0 001.42 0l7.45-7.46a6.27 6.27 0 000-8.87z"/></svg>

After

Width:  |  Height:  |  Size: 344 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 20.86a2.75 2.75 0 01-1.95-.8l-6.21-6.22A6.27 6.27 0 0112 4.36a6.27 6.27 0 018.16 9.48l-6.21 6.22a2.75 2.75 0 01-1.95.8z"/></svg>

After

Width:  |  Height:  |  Size: 201 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 22H5a3 3 0 01-3-3v-4a1 1 0 112 0v4a1 1 0 001 1h14a1 1 0 001-1v-4a1 1 0 112 0v4a3 3 0 01-3 3z"/><path opacity=".6" d="M16.7 10.3a1 1 0 00-1.4 0L13 12.58V3a1 1 0 10-2 0v9.59l-2.3-2.3a1 1 0 00-1.4 1.42l4 4a1 1 0 001.4 0l4-4a1 1 0 000-1.42z"/></svg>

After

Width:  |  Height:  |  Size: 318 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 117.8 64"><linearGradient id="a" gradientUnits="userSpaceOnUse" x1="96.44" y1="83.7" x2="96.44" y2="-9.48"><stop offset="0" stop-color="#FFF23A"/><stop offset=".04" stop-color="#FEE62D"/><stop offset=".12" stop-color="#FED41A"/><stop offset=".2" stop-color="#FDC90F"/><stop offset=".28" stop-color="#FDC60B"/><stop offset=".67" stop-color="#F28F3F"/><stop offset=".89" stop-color="#ED693C"/><stop offset="1" stop-color="#E83E39"/></linearGradient><path d="M15.2 22.7H1.9c-1.1 0-1.9.9-1.9 1.9v37.5C0 63.2.9 64 1.9 64h13.3c1.1 0 1.9-.9 1.9-1.9V24.6c0-1.1-.8-1.9-1.9-1.9zM36.3 10.2H23c-1.1 0-1.9.9-1.9 1.9v50c0 1.1.9 1.9 1.9 1.9h13.3c1.1 0 1.9-.9 1.9-1.9v-50c0-1-.9-1.9-1.9-1.9zM57.3 32H44c-1.1 0-1.9.9-1.9 1.9V62c0 1.1.9 1.9 1.9 1.9h13.3c1.1 0 1.9-.9 1.9-1.9V34c0-1.1-.8-2-1.9-2zM70.1 38V26.1c0-3.4 2.7-6.1 6.1-6.1h4.1V2c0-1.1-.9-1.9-1.9-1.9H65.1c-1.1-.1-2 .8-2 1.9v60.1c0 1.1.9 1.9 1.9 1.9h13.3c1.1 0 1.9-.9 1.9-1.9v-18h-4.1c-3.2 0-6-2.8-6-6.1z"/><path fill="url(#a)" d="M116.7 24.9H103.6V11.8c0-.6-.5-1.1-1.1-1.1h-12c-.6 0-1.1.5-1.1 1.1v13.1H76.2c-.6 0-1.1.5-1.1 1.1v12c0 .6.5 1.1 1.1 1.1h13.2v13.2c0 .6.5 1.1 1.1 1.1h11.9c.6 0 1.1-.5 1.1-1.1V39.1h13.1c.6 0 1.1-.5 1.1-1.1V26.1c.1-.6-.4-1.2-1-1.2z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 11h-4V7a1 1 0 00-2 0v4H7a1 1 0 000 2h4v4a1 1 0 002 0v-4h4a1 1 0 000-2z"/><path opacity=".6" d="M21 2H3a1 1 0 00-1 1v18a1 1 0 001 1h18a1 1 0 001-1V3a1 1 0 00-1-1zm-4 11h-4v4a1 1 0 01-2 0v-4H7a1 1 0 010-2h4V7a1 1 0 012 0v4h4a1 1 0 010 2z"/></svg>

After

Width:  |  Height:  |  Size: 317 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg"><path d="M14.3 8.7H9.4a.7.7 0 00-.7.7v4.9a.7.7 0 00.7.7h4.9a.7.7 0 00.7-.7V9.4a.7.7 0 00-.7-.7zm-.7 4.9h-3.5v-3.5h3.5v3.5zM6.6 1H1.7a.7.7 0 00-.7.7v4.9a.7.7 0 00.7.7h4.9a.7.7 0 00.7-.7V1.7a.7.7 0 00-.7-.7zm-.7 4.9H2.4V2.4h3.5v3.5zm8 1.08a.42.42 0 01-.12-.08l-1.63-1.5a.31.31 0 01-.08-.22c0-.08.04-.16.1-.22.06-.06.14-.09.23-.1.09 0 .18.03.24.09l1.03.94V3.62c0-.26-.12-.5-.31-.69a1.1 1.1 0 00-.74-.28H9.35a.36.36 0 01-.25-.1.31.31 0 01-.1-.23c0-.08.04-.16.1-.22.07-.07.16-.1.25-.1h3.28c.46 0 .9.17 1.24.48.33.3.51.71.51 1.14V5.9l1.02-.94a.37.37 0 01.5 0c.03.03.06.06.07.1a.31.31 0 01-.08.35l-1.61 1.5a.35.35 0 01-.12.08.38.38 0 01-.26 0zM2.1 9.02l.12.08 1.63 1.5c.06.06.09.14.08.22 0 .08-.04.16-.1.22a.37.37 0 01-.48.02l-1.02-.95v2.27c0 .26.12.5.31.69.2.18.47.28.74.28h3.27c.1 0 .18.04.25.1.06.06.1.14.1.23s-.04.16-.1.22a.36.36 0 01-.25.1H3.37c-.46 0-.9-.17-1.24-.48s-.5-.71-.5-1.14V10.1l-1.03.94a.37.37 0 01-.5 0 .32.32 0 01-.07-.1.31.31 0 01.08-.35l1.61-1.5a.35.35 0 01.12-.08.38.38 0 01.26 0z" fill="#C7D0D9"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 22a1 1 0 01-.58-.19l-3.65-2.6A9.02 9.02 0 014 11.88V4.43a1 1 0 011.2-.98 8 8 0 006.23-1.27 1 1 0 011.14 0 8 8 0 006.22 1.27 1 1 0 011.21.98v7.45a9.02 9.02 0 01-3.77 7.33l-3.65 2.6A1 1 0 0112 22z"/><path opacity=".6" d="M10.85 14.7a1 1 0 01-.7-.3l-1.6-1.6a1 1 0 011.4-1.4l.9.89 2.7-2.7a1 1 0 111.4 1.42l-3.4 3.4a1 1 0 01-.7.29z"/></svg>

After

Width:  |  Height:  |  Size: 408 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><rect width="85%" height="85%" x="2" y="2" rx="5"/></svg>

After

Width:  |  Height:  |  Size: 117 B

View File

@ -1,8 +1,22 @@
const fs = require('fs-extra');
const path = require('path');
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
const getBabelConfig = require('./babel.config');
class CopyUniconsPlugin {
apply(compiler) {
compiler.hooks.afterEnvironment.tap('CopyUniconsPlugin', () => {
let destDir = path.resolve(__dirname, '../../public/img/icons/unicons');
if (!fs.pathExistsSync(destDir)) {
let srcDir = path.resolve(__dirname, '../../node_modules/iconscout-unicons-tarball/unicons/svg/line');
fs.copySync(srcDir, destDir);
}
});
}
}
// https://github.com/visionmedia/debug/issues/701#issuecomment-505487361
function shouldExclude(filename) {
// There is external js code inside this which needs to be processed by babel.
@ -17,7 +31,6 @@ function shouldExclude(filename) {
'apache-arrow',
'react-hook-form',
'rc-trigger',
'@iconscout/react-unicons',
'monaco-editor',
];
for (const package of packagesToProcessbyBabel) {
@ -69,6 +82,7 @@ module.exports = {
fs: 'empty',
},
plugins: [
new CopyUniconsPlugin(),
new MonacoWebpackPlugin({
// available options are documented at https://github.com/Microsoft/monaco-editor-webpack-plugin#options
filename: 'monaco-[name].worker.js',
@ -170,6 +184,11 @@ module.exports = {
// include: MONACO_DIR, // https://github.com/react-monaco-editor/react-monaco-editor
use: ['style-loader', 'css-loader'],
},
// for pre-caching SVGs as part of the JS bundles
{
test: /\.svg$/,
use: 'raw-loader',
},
{
test: /\.(svg|ico|jpg|jpeg|png|gif|eot|otf|webp|ttf|woff|woff2|cur|ani|pdf)(\?.*)?$/,
loader: 'file-loader',

View File

@ -3410,13 +3410,6 @@
resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8"
integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw==
"@iconscout/react-unicons@1.1.4":
version "1.1.4"
resolved "https://registry.yarnpkg.com/@iconscout/react-unicons/-/react-unicons-1.1.4.tgz#30731707e1baa49ab1c3198a5e0121be86b8928a"
integrity sha512-lhTSU3nKvzt1OwsRfFyK194QcQbE1Q4rRm6d5BOnKyZB+SN4qRv7tS4wLQgwk/pQyzn14Qw70nGA+tuKLRqcJg==
dependencies:
react ">=15.0.0 <17.0.0"
"@istanbuljs/load-nyc-config@^1.0.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
@ -3701,6 +3694,14 @@
"@types/yargs" "^15.0.0"
chalk "^4.0.0"
"@leeoniya/react-inlinesvg@2.2.4":
version "2.2.4"
resolved "https://registry.yarnpkg.com/@leeoniya/react-inlinesvg/-/react-inlinesvg-2.2.4.tgz#b1f226136945fc692ea37f5a889e6545c9334336"
integrity sha512-6zaOOjYjrTC/D6tQKIPmoh+T+8d7h2kCZYbbSjEYt2Sz0OtPZw44v+MKVXiRHVYrlODgT1viJbrUmrSH0k7wOA==
dependencies:
exenv "^1.2.2"
react-from-dom "^0.6.0"
"@lerna/add@3.21.0":
version "3.21.0"
resolved "https://registry.yarnpkg.com/@lerna/add/-/add-3.21.0.tgz#27007bde71cc7b0a2969ab3c2f0ae41578b4577b"
@ -13123,6 +13124,11 @@ executable@^4.1.1:
dependencies:
pify "^2.2.0"
exenv@^1.2.2:
version "1.2.2"
resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d"
integrity sha1-KueOhdmJQVhnCwPUe+wfA72Ru50=
exit-hook@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8"
@ -13828,6 +13834,16 @@ fs-extra@8.1.0, fs-extra@^8.1.0:
jsonfile "^4.0.0"
universalify "^0.1.0"
fs-extra@9.1.0, fs-extra@^9.0.1:
version "9.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d"
integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
dependencies:
at-least-node "^1.0.0"
graceful-fs "^4.2.0"
jsonfile "^6.0.1"
universalify "^2.0.0"
fs-extra@^0.30.0:
version "0.30.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0"
@ -13858,16 +13874,6 @@ fs-extra@^9.0.0:
jsonfile "^6.0.1"
universalify "^1.0.0"
fs-extra@^9.0.1:
version "9.1.0"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d"
integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
dependencies:
at-least-node "^1.0.0"
graceful-fs "^4.2.0"
jsonfile "^6.0.1"
universalify "^2.0.0"
fs-extra@~7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
@ -15130,6 +15136,10 @@ hyphenate-style-name@^1.0.2:
resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48"
integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ==
"iconscout-unicons-tarball@https://github.com/grafana/icons/tarball/14e6856f7ce5a44d3e722b40c225482663cbfd66":
version "0.0.0"
resolved "https://github.com/grafana/icons/tarball/14e6856f7ce5a44d3e722b40c225482663cbfd66#416ef13f075fc9c7f5c4b722586fc9b69140c30d"
iconv-lite@0.4, iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@^0.4.8, iconv-lite@~0.4.13:
version "0.4.24"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
@ -21321,7 +21331,7 @@ raw-body@2.4.0:
iconv-lite "0.4.24"
unpipe "1.0.0"
raw-loader@^4.0.1:
raw-loader@4.0.2, raw-loader@^4.0.1:
version "4.0.2"
resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6"
integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==
@ -21715,6 +21725,11 @@ react-fast-compare@^3.0.1, react-fast-compare@^3.2.0:
resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb"
integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==
react-from-dom@^0.6.0:
version "0.6.0"
resolved "https://registry.yarnpkg.com/react-from-dom/-/react-from-dom-0.6.0.tgz#8b9710ba7fbd36cde9e13e9eb26f5f67ab933678"
integrity sha512-W5m1pYV7qlc9bmpA7p2K/wspYNlAh3aqJ9Tc5KRXe6vt/JlX6/84ol+RQlCMK69z+5e38sOpoVW5i4Qpqgs+EA==
react-grid-layout@1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/react-grid-layout/-/react-grid-layout-1.2.0.tgz#87124d549c86c8df8841666618c8c3e3cb205c26"
@ -22124,15 +22139,6 @@ react@17.0.1:
loose-envify "^1.1.0"
object-assign "^4.1.1"
"react@>=15.0.0 <17.0.0":
version "16.13.1"
resolved "https://registry.yarnpkg.com/react/-/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e"
integrity sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==
dependencies:
loose-envify "^1.1.0"
object-assign "^4.1.1"
prop-types "^15.6.2"
reactcss@^1.2.0:
version "1.2.3"
resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd"