Skip to content

Commit 48373c1

Browse files
committed
fix(bump): provide datum to InheritedColorConfig type
1 parent 8752e39 commit 48373c1

File tree

1 file changed

+41
-17
lines changed

1 file changed

+41
-17
lines changed

packages/bump/index.d.ts

Lines changed: 41 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
* For the full copyright and license information, please view the LICENSE
77
* file that was distributed with this source code.
88
*/
9+
import { AxisProps } from '@nivo/axes'
910
import { Component, MouseEvent } from 'react'
1011
import { Dimensions, Box, Theme, MotionProps, SvgDefsAndFill, CssMixBlendMode } from '@nivo/core'
1112
import { OrdinalColorScaleConfig, InheritedColorConfig } from '@nivo/colors'
@@ -25,10 +26,33 @@ declare module '@nivo/bump' {
2526
[key: string]: any
2627
}
2728

29+
export interface BumpPoint {
30+
id: string
31+
serie: BumpInputSerie
32+
data: BumpInputDatum
33+
x: number | null
34+
y: number | null
35+
}
36+
37+
export interface BumpComputedSerie extends BumpInputSerie {
38+
points: BumpPoint[]
39+
linePoints: [number, number][]
40+
}
41+
42+
export interface BumpComputedPoint extends BumpPoint {
43+
serie: BumpComputedSerie
44+
serieId: string
45+
isActive: boolean
46+
isInactive: boolean
47+
}
48+
2849
export type BumpLabelFunction = (serie: BumpInputSerie) => string
2950
export type BumpLabel = false | string | BumpLabelFunction
3051

31-
export type BumpMouseHandler = (serie: BumpInputSerie, event: MouseEvent<any>) => void
52+
export type BumpMouseHandler = (
53+
serie: BumpInputSerie,
54+
event: MouseEvent<SVGPathElement>
55+
) => void
3256

3357
export interface BumpProps {
3458
data: BumpInputSerie[]
@@ -46,33 +70,33 @@ declare module '@nivo/bump' {
4670

4771
startLabel?: BumpLabel
4872
startLabelPadding?: number
49-
startLabelTextColor?: InheritedColorConfig
73+
startLabelTextColor?: InheritedColorConfig<BumpComputedSerie>
5074
endLabel?: BumpLabel
5175
endLabelPadding?: number
52-
endLabelTextColor?: InheritedColorConfig
76+
endLabelTextColor?: InheritedColorConfig<BumpComputedSerie>
5377

5478
pointSize?: number
5579
activePointSize?: number
5680
inactivePointSize?: number
57-
pointColor?: InheritedColorConfig
81+
pointColor?: InheritedColorConfig<BumpComputedPoint>
5882
pointBorderWidth?: number
5983
activePointBorderWidth?: number
6084
inactivePointBorderWidth?: number
61-
pointBorderColor?: InheritedColorConfig
85+
pointBorderColor?: InheritedColorConfig<BumpComputedPoint>
6286

6387
enableGridX?: boolean
6488
enableGridY?: boolean
65-
axisTop?: any
66-
axisRight?: any
67-
axisBottom?: any
68-
axisLeft?: any
89+
axisTop?: AxisProps
90+
axisRight?: AxisProps
91+
axisBottom?: AxisProps
92+
axisLeft?: AxisProps
6993

7094
isInteractive?: boolean
7195
onMouseEnter?: BumpMouseHandler
7296
onMouseMove?: BumpMouseHandler
7397
onMouseLeave?: BumpMouseHandler
7498
onClick?: BumpMouseHandler
75-
tooltip?: any
99+
tooltip?: React.FC<{ serie: BumpComputedSerie }>
76100
role?: string
77101
}
78102

@@ -127,7 +151,7 @@ declare module '@nivo/bump' {
127151

128152
export type AreaBumpMouseHandler = (
129153
serie: AreaBumpComputedSerie,
130-
event: MouseEvent<any>
154+
event: MouseEvent<SVGPathElement>
131155
) => void
132156

133157
export interface AreaBumpProps {
@@ -149,28 +173,28 @@ declare module '@nivo/bump' {
149173
borderWidth?: number | SerieDerivedProp<AreaBumpInputSerie, number>
150174
activeBorderWidth?: number | SerieDerivedProp<AreaBumpInputSerie, number>
151175
inactiveBorderWidth?: number | SerieDerivedProp<AreaBumpInputSerie, number>
152-
borderColor?: InheritedColorConfig
176+
borderColor?: InheritedColorConfig<AreaBumpInputSerie>
153177
borderOpacity?: number | SerieDerivedProp<AreaBumpInputSerie, number>
154178
activeBorderOpacity?: number | SerieDerivedProp<AreaBumpInputSerie, number>
155179
inactiveBorderOpacity?: number | SerieDerivedProp<AreaBumpInputSerie, number>
156180

157181
startLabel?: AreaBumpLabel
158182
startLabelPadding?: number
159-
startLabelTextColor?: InheritedColorConfig
183+
startLabelTextColor?: InheritedColorConfig<AreaBumpInputSerie>
160184
endLabel?: AreaBumpLabel
161185
endLabelPadding?: number
162-
endLabelTextColor?: InheritedColorConfig
186+
endLabelTextColor?: InheritedColorConfig<AreaBumpInputSerie>
163187

164188
enableGridX?: boolean
165-
axisTop?: any
166-
axisBottom?: any
189+
axisTop?: AxisProps
190+
axisBottom?: AxisProps
167191

168192
isInteractive?: boolean
169193
onMouseEnter?: AreaBumpMouseHandler
170194
onMouseMove?: AreaBumpMouseHandler
171195
onMouseLeave?: AreaBumpMouseHandler
172196
onClick?: AreaBumpMouseHandler
173-
tooltip?: any
197+
tooltip?: React.FC<{ serie: AreaBumpComputedSerie }>
174198
role?: string
175199
}
176200

0 commit comments

Comments
 (0)