rozetko
3 years ago
11 changed files with 16 additions and 4876 deletions
@ -1,22 +0,0 @@
|
||||
import { GaugeOptions } from './types'; |
||||
import * as d3 from 'd3'; |
||||
export declare type D3SVGSelection = d3.Selection<SVGElement, unknown, null, undefined>; |
||||
export declare type BoundingBox = { |
||||
x?: number; |
||||
y?: number; |
||||
width: number; |
||||
height: number; |
||||
}; |
||||
export declare class Gauge { |
||||
protected svg: D3SVGSelection; |
||||
protected readonly options: GaugeOptions; |
||||
private _rootGroup; |
||||
private _boundingBox; |
||||
private _radius; |
||||
private _centrum; |
||||
constructor(svg: D3SVGSelection, options: GaugeOptions); |
||||
private _setBoundingBox; |
||||
render(value: number, boudingBox: BoundingBox): void; |
||||
private _initRootGroup; |
||||
private _renderValueArc; |
||||
} |
@ -1,131 +0,0 @@
|
||||
import { GaugeTimeSerie, GaugeOptions, Stat, PointCoordinate } from './types'; |
||||
import { ChartwerkPod } from '@chartwerk/core'; |
||||
import * as d3 from 'd3'; |
||||
export declare class ChartwerkGaugePod extends ChartwerkPod<GaugeTimeSerie, GaugeOptions> { |
||||
_draggableLines: any[]; |
||||
_draggedThresholdValues: number[]; |
||||
_thresholdArc: any | null; |
||||
_thresholdTextLabels: any[]; |
||||
constructor(el: HTMLElement, _series?: GaugeTimeSerie[], _options?: GaugeOptions); |
||||
renderMetrics(): void; |
||||
protected updateOptions(newOptions: GaugeOptions): void; |
||||
get _gaugeTransform(): string; |
||||
get _gaugeCenterTranform(): string; |
||||
get _gaugeCenterCoordinate(): { |
||||
x: number; |
||||
y: number; |
||||
}; |
||||
get _minWH(): number; |
||||
private _renderIcons; |
||||
private _renderIcon; |
||||
private _getIconPosition; |
||||
private _getIconSize; |
||||
protected _renderOverlayBackground(): void; |
||||
private _renderValue; |
||||
private _renderValueArc; |
||||
private _renderThresholdArc; |
||||
protected _getThresholdArc(): d3.Arc<any, d3.DefaultArcObject>; |
||||
get arcScale(): d3.ScaleLinear<number, number>; |
||||
protected _renderDraggableLines(): void; |
||||
protected _renderDraggableLine(stopValue: number, idx: number): void; |
||||
onDrag(idx: number): void; |
||||
updateThresholdArcByNewValues(stops: number[]): void; |
||||
updateThresholdLabel(value: number, idx: number): void; |
||||
updateDraggableLineByAngle(angle: number, idx: number): void; |
||||
onDragEnd(idx: number): void; |
||||
getAngleFromCoordinates(x: number, y: number): number; |
||||
getAngleBetween2Vectors(vector1: { |
||||
start: PointCoordinate; |
||||
end: PointCoordinate; |
||||
}, vector2: { |
||||
start: PointCoordinate; |
||||
end: PointCoordinate; |
||||
}): number; |
||||
restrictAngle(angle: number, idx: number): number; |
||||
protected _renderLabels(): void; |
||||
protected renderLabelBackground(x: number, y: number): void; |
||||
protected renderLabelText(x: number, y: number, text: string): d3.Selection<SVGTextElement, unknown, null, undefined>; |
||||
private get _d3Pie(); |
||||
private get _valueArcColors(); |
||||
private get _mainCircleColor(); |
||||
private _getStopsRange; |
||||
getUpdatedRangeWithMinValue(range: number[]): number[]; |
||||
private get _valueRange(); |
||||
private get _sortedStops(); |
||||
private get _stopsValues(); |
||||
private get _colors(); |
||||
private get _valueText(); |
||||
private get _valueTextFontSize(); |
||||
private get _stat(); |
||||
private get _valueArcBackgroundColor(); |
||||
private get _innerRadius(); |
||||
private get _outerRadius(); |
||||
rescaleArcRadius(radius: number): number; |
||||
rescaleValueFont(fontsize: number): number; |
||||
rescaleSpace(space: number): number; |
||||
rescaleWith(width: number): number; |
||||
private get _scaleFactor(); |
||||
private get aggregatedValue(); |
||||
private get _maxValue(); |
||||
private get _minValue(); |
||||
onMouseOver(): void; |
||||
onMouseMove(): void; |
||||
onMouseOut(): void; |
||||
onGaugeMouseOver(): void; |
||||
onGaugeMouseMove(): void; |
||||
onGaugeMouseOut(): void; |
||||
renderSharedCrosshair(): void; |
||||
hideSharedCrosshair(): void; |
||||
} |
||||
export declare const VueChartwerkGaugePodObject: { |
||||
render(createElement: any): any; |
||||
mixins: { |
||||
props: { |
||||
id: { |
||||
type: StringConstructor; |
||||
required: boolean; |
||||
}; |
||||
series: { |
||||
type: ArrayConstructor; |
||||
required: boolean; |
||||
default: () => any[]; |
||||
}; |
||||
options: { |
||||
type: ObjectConstructor; |
||||
required: boolean; |
||||
default: () => {}; |
||||
}; |
||||
}; |
||||
watch: { |
||||
id(): void; |
||||
series(): void; |
||||
options(): void; |
||||
}; |
||||
mounted(): void; |
||||
destroyed(): void; |
||||
methods: { |
||||
render(): void; |
||||
renderSharedCrosshair(values: { |
||||
x?: number; |
||||
y?: number; |
||||
}): void; |
||||
hideSharedCrosshair(): void; |
||||
onPanningRescale(event: any): void; |
||||
renderChart(): void; |
||||
appendEvents(): void; |
||||
zoomIn(range: any): void; |
||||
zoomOut(centers: any): void; |
||||
mouseMove(evt: any): void; |
||||
mouseOut(): void; |
||||
onLegendClick(idx: any): void; |
||||
panningEnd(range: any): void; |
||||
panning(range: any): void; |
||||
contextMenu(evt: any): void; |
||||
sharedCrosshairMove(event: any): void; |
||||
}; |
||||
}[]; |
||||
methods: { |
||||
render(): void; |
||||
}; |
||||
}; |
||||
export { GaugeOptions, GaugeTimeSerie, Stat }; |
File diff suppressed because one or more lines are too long
@ -1,12 +0,0 @@
|
||||
import { GaugeOptions, GaugeTimeSerie } from './types'; |
||||
import { ChartwerkPod } from '@chartwerk/core'; |
||||
export declare class Pod extends ChartwerkPod<GaugeTimeSerie, GaugeOptions> { |
||||
protected readonly options: GaugeOptions; |
||||
constructor(el: HTMLElement, series: GaugeTimeSerie[], options: GaugeOptions); |
||||
renderMetrics(): void; |
||||
onMouseOver(): void; |
||||
onMouseMove(): void; |
||||
onMouseOut(): void; |
||||
renderSharedCrosshair(): void; |
||||
hideSharedCrosshair(): void; |
||||
} |
@ -1,50 +0,0 @@
|
||||
import { TimeSerie, Options } from '@chartwerk/core'; |
||||
export declare enum Stat { |
||||
CURRENT = "current", |
||||
MIN = "min", |
||||
MAX = "max", |
||||
TOTAL = "total" |
||||
} |
||||
export declare type Stop = { |
||||
color: string; |
||||
value: number | null; |
||||
}; |
||||
export declare type PointCoordinate = { |
||||
x: number; |
||||
y: number; |
||||
}; |
||||
export declare type ValueFormatter = (value: number) => string; |
||||
export declare type GaugeTimeSerie = TimeSerie; |
||||
export declare type IconConfig = { |
||||
src: string; |
||||
position: IconPosition; |
||||
size: number; |
||||
}; |
||||
export declare enum IconPosition { |
||||
LEFT = "left", |
||||
MIDDLE = "middle", |
||||
RIGHT = "right" |
||||
} |
||||
export declare type GaugeOptionsParams = { |
||||
innerRadius: number; |
||||
outerRadius: number; |
||||
maxValue: number; |
||||
minValue: number; |
||||
stops: { |
||||
color: string; |
||||
value: number; |
||||
}[]; |
||||
defaultColor: string; |
||||
stat: Stat; |
||||
valueFormatter: ValueFormatter; |
||||
icons: IconConfig[]; |
||||
valueFontSize: number; |
||||
valueArcBackgroundColor: string; |
||||
reversed: boolean; |
||||
enableThresholdLabels: boolean; |
||||
enableExtremumLabels: boolean; |
||||
enableThresholdDrag: boolean; |
||||
dragCallback: (event: any) => void; |
||||
dragEndCallback: (event: any) => void; |
||||
}; |
||||
export declare type GaugeOptions = Options & Partial<GaugeOptionsParams>; |
@ -1,8 +0,0 @@
|
||||
/** |
||||
* Finds the closest item to a given number in an array using binary search |
||||
* @argument arr: ascending sorted array |
||||
* @argument num: number to find |
||||
* @returns index of the closest item to `num` |
||||
* @returns -1 if given array is empty |
||||
*/ |
||||
export declare function findClosest(arr: number[], num: number): number; |
Loading…
Reference in new issue