Commit 554d0103 by Hugo Häggmark

Preparing move to ui/viz

parent 9dcf3d58
...@@ -66,3 +66,10 @@ export interface RangeMap extends BaseMap { ...@@ -66,3 +66,10 @@ export interface RangeMap extends BaseMap {
from: string; from: string;
to: string; to: string;
} }
export type Theme = 'dark' | 'light';
export enum Themes {
Dark = 'dark',
Light = 'light',
}
import React, { PureComponent } from 'react'; import React, { PureComponent } from 'react';
import $ from 'jquery'; import $ from 'jquery';
import { BasicGaugeColor, Threshold, TimeSeriesVMs, MappingType, ValueMapping } from '@grafana/ui'; import {
BasicGaugeColor,
import config from '../core/config'; Threshold,
import kbn from '../core/utils/kbn'; TimeSeriesVMs,
MappingType,
ValueMapping,
getValueFormat,
Theme,
Themes,
} from '@grafana/ui';
export interface Props { export interface Props {
decimals: number; decimals: number;
...@@ -20,6 +26,7 @@ export interface Props { ...@@ -20,6 +26,7 @@ export interface Props {
suffix: string; suffix: string;
unit: string; unit: string;
width: number; width: number;
theme?: Theme;
} }
export class Gauge extends PureComponent<Props> { export class Gauge extends PureComponent<Props> {
...@@ -68,7 +75,7 @@ export class Gauge extends PureComponent<Props> { ...@@ -68,7 +75,7 @@ export class Gauge extends PureComponent<Props> {
formatValue(value) { formatValue(value) {
const { decimals, valueMappings, prefix, suffix, unit } = this.props; const { decimals, valueMappings, prefix, suffix, unit } = this.props;
const formatFunc = kbn.valueFormats[unit]; const formatFunc = getValueFormat(unit);
const formattedValue = formatFunc(value, decimals); const formattedValue = formatFunc(value, decimals);
if (valueMappings.length > 0) { if (valueMappings.length > 0) {
...@@ -116,6 +123,7 @@ export class Gauge extends PureComponent<Props> { ...@@ -116,6 +123,7 @@ export class Gauge extends PureComponent<Props> {
width, width,
height, height,
stat, stat,
theme,
} = this.props; } = this.props;
let value: string | number = ''; let value: string | number = '';
...@@ -127,7 +135,7 @@ export class Gauge extends PureComponent<Props> { ...@@ -127,7 +135,7 @@ export class Gauge extends PureComponent<Props> {
} }
const dimension = Math.min(width, height * 1.3); const dimension = Math.min(width, height * 1.3);
const backgroundColor = config.bootData.user.lightTheme ? 'rgb(230,230,230)' : 'rgb(38,38,38)'; const backgroundColor = theme === Themes.Light ? 'rgb(230,230,230)' : 'rgb(38,38,38)';
const fontScale = parseInt('80', 10) / 100; const fontScale = parseInt('80', 10) / 100;
const fontSize = Math.min(dimension / 5, 100) * fontScale; const fontSize = Math.min(dimension / 5, 100) * fontScale;
const gaugeWidthReduceRatio = showThresholdLabels ? 1.5 : 1; const gaugeWidthReduceRatio = showThresholdLabels ? 1.5 : 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment