gifted-charts-core 0.1.15 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gifted-charts-core",
3
- "version": "0.1.15",
3
+ "version": "0.1.17",
4
4
  "description": "Mathematical and logical utilities used by react-gifted-charts and react-native-gifted-charts",
5
5
  "main": "./src/index.js",
6
6
  "files": [
@@ -172,7 +172,9 @@ export declare const useBarChart: (props: extendedBarChartPropsType) => {
172
172
  noOfSectionsBelowXAxis: number;
173
173
  leftShiftForLastIndexTooltip: number;
174
174
  label: any;
175
+ secondaryLabel: any;
175
176
  labelTextStyle: any;
177
+ secondaryLabelTextStyle: any;
176
178
  pointerConfig: import("../utils/types").Pointer | undefined;
177
179
  yAxisExtraHeightAtTop: number;
178
180
  yAxisOffset: number;
@@ -181,6 +183,7 @@ export declare const useBarChart: (props: extendedBarChartPropsType) => {
181
183
  stepValue: number;
182
184
  negativeStepHeight: number;
183
185
  negativeStepValue: number;
186
+ secondaryXAxis: import("../utils/types").XAxisConfig | undefined;
184
187
  };
185
188
  barAndLineChartsWrapperProps: BarAndLineChartsWrapperTypes;
186
189
  yAxisExtraHeightAtTop: number;
@@ -394,7 +394,7 @@ export var useBarChart = function (props) {
394
394
  outputRange: [0, initialSpacing + totalWidth]
395
395
  });
396
396
  var getPropsCommonForBarAndStack = function (item, index) {
397
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
397
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
398
398
  return {
399
399
  item: item,
400
400
  index: index,
@@ -449,15 +449,18 @@ export var useBarChart = function (props) {
449
449
  noOfSectionsBelowXAxis: noOfSectionsBelowXAxis,
450
450
  leftShiftForLastIndexTooltip: (_g = props.leftShiftForLastIndexTooltip) !== null && _g !== void 0 ? _g : 0,
451
451
  label: (_h = item.label) !== null && _h !== void 0 ? _h : (((_j = props.xAxisLabelTexts) === null || _j === void 0 ? void 0 : _j[index]) ? props.xAxisLabelTexts[index] : ''),
452
- labelTextStyle: (_k = item.labelTextStyle) !== null && _k !== void 0 ? _k : props.xAxisLabelTextStyle,
452
+ secondaryLabel: (_o = (_k = item.secondaryLabel) !== null && _k !== void 0 ? _k : (_m = (_l = props.secondaryXAxis) === null || _l === void 0 ? void 0 : _l.labelTexts) === null || _m === void 0 ? void 0 : _m[index]) !== null && _o !== void 0 ? _o : '',
453
+ labelTextStyle: (_p = item.labelTextStyle) !== null && _p !== void 0 ? _p : props.xAxisLabelTextStyle,
454
+ secondaryLabelTextStyle: (_t = (_s = (_q = item.secondaryLabelTextStyle) !== null && _q !== void 0 ? _q : (_r = props.secondaryXAxis) === null || _r === void 0 ? void 0 : _r.labelsTextStyle) !== null && _s !== void 0 ? _s : item.labelTextStyle) !== null && _t !== void 0 ? _t : props.xAxisLabelTextStyle,
453
455
  pointerConfig: pointerConfig,
454
456
  yAxisExtraHeightAtTop: yAxisExtraHeightAtTop,
455
457
  yAxisOffset: yAxisOffset !== null && yAxisOffset !== void 0 ? yAxisOffset : 0,
456
458
  focusedBarIndex: focusedBarIndex,
457
459
  stepHeight: stepHeight,
458
460
  stepValue: stepValue,
459
- negativeStepHeight: (_l = props.negativeStepHeight) !== null && _l !== void 0 ? _l : stepHeight,
460
- negativeStepValue: (_m = props.negativeStepValue) !== null && _m !== void 0 ? _m : stepValue
461
+ negativeStepHeight: (_u = props.negativeStepHeight) !== null && _u !== void 0 ? _u : stepHeight,
462
+ negativeStepValue: (_v = props.negativeStepValue) !== null && _v !== void 0 ? _v : stepValue,
463
+ secondaryXAxis: props.secondaryXAxis
461
464
  };
462
465
  };
463
466
  var barAndLineChartsWrapperProps = {
@@ -695,7 +695,14 @@ export const useBarChart = (props: extendedBarChartPropsType) => {
695
695
  label:
696
696
  item.label ??
697
697
  (props.xAxisLabelTexts?.[index] ? props.xAxisLabelTexts[index] : ''),
698
+ secondaryLabel:
699
+ item.secondaryLabel ?? props.secondaryXAxis?.labelTexts?.[index] ?? '',
698
700
  labelTextStyle: item.labelTextStyle ?? props.xAxisLabelTextStyle,
701
+ secondaryLabelTextStyle:
702
+ item.secondaryLabelTextStyle ??
703
+ props.secondaryXAxis?.labelsTextStyle ??
704
+ item.labelTextStyle ??
705
+ props.xAxisLabelTextStyle,
699
706
  pointerConfig,
700
707
  yAxisExtraHeightAtTop,
701
708
  yAxisOffset: yAxisOffset ?? 0,
@@ -703,7 +710,8 @@ export const useBarChart = (props: extendedBarChartPropsType) => {
703
710
  stepHeight,
704
711
  stepValue,
705
712
  negativeStepHeight: props.negativeStepHeight ?? stepHeight,
706
- negativeStepValue: props.negativeStepValue ?? stepValue
713
+ negativeStepValue: props.negativeStepValue ?? stepValue,
714
+ secondaryXAxis: props.secondaryXAxis
707
715
  }
708
716
  }
709
717
 
@@ -1,6 +1,6 @@
1
1
  import { type ColorValue, type GestureResponderEvent, type ViewStyle } from 'react-native';
2
2
  import { type yAxisSides } from '../utils/constants';
3
- import { type CurveType, type Pointer, type RuleType, type RulesConfig, type referenceConfigType, type secondaryYAxisType } from '../utils/types';
3
+ import { XAxisConfig, type CurveType, type Pointer, type RuleType, type RulesConfig, type referenceConfigType, type secondaryYAxisType } from '../utils/types';
4
4
  import { type Component, type ReactNode } from 'react';
5
5
  import { type lineDataItem } from '../LineChart/types';
6
6
  export interface stackDataItem {
@@ -292,6 +292,7 @@ export interface BarChartPropsType {
292
292
  focusedBarIndex?: number;
293
293
  adjustToWidth?: boolean;
294
294
  parentWidth?: number;
295
+ secondaryXAxis?: XAxisConfig;
295
296
  }
296
297
  export interface FocusedBarConfig {
297
298
  color?: ColorValue;
@@ -405,6 +406,9 @@ export interface barDataItem {
405
406
  topLabelComponentHeight?: number;
406
407
  spacing?: number;
407
408
  labelWidth?: number;
409
+ secondaryLabel?: string;
410
+ secondaryLabelComponent?: Function;
411
+ secondaryLabelTextStyle?: any;
408
412
  barBackgroundPattern?: () => ReactNode;
409
413
  patternId?: string;
410
414
  barMarginBottom?: number;
@@ -473,9 +477,11 @@ export interface RenderBarsPropsType {
473
477
  opacity?: number;
474
478
  side?: string;
475
479
  labelTextStyle?: any;
480
+ secondaryLabelTextStyle?: any;
476
481
  item: barDataItem;
477
482
  index: number;
478
483
  label: string;
484
+ secondaryLabel: string;
479
485
  containerHeight?: number;
480
486
  maxValue: number;
481
487
  spacing: number;
@@ -543,6 +549,7 @@ export interface RenderBarsPropsType {
543
549
  stepValue: number;
544
550
  negativeStepHeight: number;
545
551
  negativeStepValue: number;
552
+ secondaryXAxis?: XAxisConfig;
546
553
  }
547
554
  export interface trianglePropTypes {
548
555
  style: any;
@@ -5,6 +5,7 @@ import {
5
5
  } from 'react-native'
6
6
  import { type yAxisSides } from '../utils/constants'
7
7
  import {
8
+ XAxisConfig,
8
9
  type CurveType,
9
10
  type Pointer,
10
11
  type RuleType,
@@ -328,6 +329,7 @@ export interface BarChartPropsType {
328
329
 
329
330
  adjustToWidth?: boolean
330
331
  parentWidth?: number
332
+ secondaryXAxis?: XAxisConfig
331
333
  }
332
334
 
333
335
  export interface FocusedBarConfig {
@@ -445,6 +447,9 @@ export interface barDataItem {
445
447
  topLabelComponentHeight?: number
446
448
  spacing?: number
447
449
  labelWidth?: number
450
+ secondaryLabel?: string
451
+ secondaryLabelComponent?: Function
452
+ secondaryLabelTextStyle?: any
448
453
  barBackgroundPattern?: () => ReactNode
449
454
  patternId?: string
450
455
  barMarginBottom?: number
@@ -515,10 +520,12 @@ export interface RenderBarsPropsType {
515
520
  opacity?: number
516
521
  side?: string
517
522
  labelTextStyle?: any
523
+ secondaryLabelTextStyle?: any
518
524
 
519
525
  item: barDataItem
520
526
  index: number
521
527
  label: string
528
+ secondaryLabel: string
522
529
  containerHeight?: number
523
530
  maxValue: number
524
531
  spacing: number
@@ -590,6 +597,7 @@ export interface RenderBarsPropsType {
590
597
  stepValue: number
591
598
  negativeStepHeight: number
592
599
  negativeStepValue: number
600
+ secondaryXAxis?: XAxisConfig
593
601
  }
594
602
 
595
603
  export interface trianglePropTypes {
@@ -370,6 +370,7 @@ export declare const useLineChart: (props: extendedLineChartPropsType) => {
370
370
  stripWidth: number;
371
371
  stripColor: any;
372
372
  stripOpacity: number;
373
+ stripStrokeDashArray: number[] | undefined;
373
374
  unFocusOnPressOut: boolean;
374
375
  delayBeforeUnFocus: number;
375
376
  containerHeightIncludingBelowXAxis: number;
@@ -237,7 +237,9 @@ export var useLineChart = function (props) {
237
237
  var _339 = computeMaxAndMinItems(data0 !== null && data0 !== void 0 ? data0 : data, props.roundToDigits, props.showFractionalValues), maxItem = _339.maxItem, minItem = _339.minItem;
238
238
  var maxValue = getMaxValue(props.maxValue, props.stepValue, noOfSections, maxItem);
239
239
  var mostNegativeValue = (_98 = props.mostNegativeValue) !== null && _98 !== void 0 ? _98 : minItem;
240
- var overflowTop = (_99 = props.overflowTop) !== null && _99 !== void 0 ? _99 : 0;
240
+ var overflowTop = ((_99 = props.overflowTop) !== null && _99 !== void 0 ? _99 : props.secondaryXAxis)
241
+ ? AxesAndRulesDefaults.overflowTopWithSecondaryXAxis
242
+ : AxesAndRulesDefaults.overflowTop;
241
243
  var extendedContainerHeight = getExtendedContainerHeightWithPadding(containerHeight, overflowTop);
242
244
  var getX = function (index) { return initialSpacing + spacing * index - 1; };
243
245
  var getY = function (value) {
@@ -969,6 +971,7 @@ export var useLineChart = function (props) {
969
971
  var stripWidth = (_284 = props.stripWidth) !== null && _284 !== void 0 ? _284 : LineDefaults.stripWidth;
970
972
  var stripColor = (_285 = props.stripColor) !== null && _285 !== void 0 ? _285 : color1;
971
973
  var stripOpacity = (_286 = props.stripOpacity) !== null && _286 !== void 0 ? _286 : (startOpacity1 + endOpacity1) / 2;
974
+ var stripStrokeDashArray = props.stripStrokeDashArray;
972
975
  var unFocusOnPressOut = (_287 = props.unFocusOnPressOut) !== null && _287 !== void 0 ? _287 : LineDefaults.unFocusOnPressOut;
973
976
  var delayBeforeUnFocus = (_288 = props.delayBeforeUnFocus) !== null && _288 !== void 0 ? _288 : LineDefaults.delayBeforeUnFocus;
974
977
  var containerHeightIncludingBelowXAxis = extendedContainerHeight + noOfSectionsBelowXAxis * stepHeight;
@@ -1453,6 +1456,7 @@ export var useLineChart = function (props) {
1453
1456
  stripWidth: stripWidth,
1454
1457
  stripColor: stripColor,
1455
1458
  stripOpacity: stripOpacity,
1459
+ stripStrokeDashArray: stripStrokeDashArray,
1456
1460
  unFocusOnPressOut: unFocusOnPressOut,
1457
1461
  delayBeforeUnFocus: delayBeforeUnFocus,
1458
1462
  containerHeightIncludingBelowXAxis: containerHeightIncludingBelowXAxis,
@@ -446,7 +446,10 @@ export const useLineChart = (props: extendedLineChartPropsType) => {
446
446
 
447
447
  const mostNegativeValue = props.mostNegativeValue ?? minItem
448
448
 
449
- const overflowTop = props.overflowTop ?? 0
449
+ const overflowTop =
450
+ props.overflowTop ?? props.secondaryXAxis
451
+ ? AxesAndRulesDefaults.overflowTopWithSecondaryXAxis
452
+ : AxesAndRulesDefaults.overflowTop
450
453
 
451
454
  const extendedContainerHeight = getExtendedContainerHeightWithPadding(
452
455
  containerHeight,
@@ -1660,6 +1663,7 @@ export const useLineChart = (props: extendedLineChartPropsType) => {
1660
1663
  const stripWidth = props.stripWidth ?? LineDefaults.stripWidth
1661
1664
  const stripColor = props.stripColor ?? color1
1662
1665
  const stripOpacity = props.stripOpacity ?? (startOpacity1 + endOpacity1) / 2
1666
+ const stripStrokeDashArray = props.stripStrokeDashArray
1663
1667
  const unFocusOnPressOut =
1664
1668
  props.unFocusOnPressOut ?? LineDefaults.unFocusOnPressOut
1665
1669
  const delayBeforeUnFocus =
@@ -2184,6 +2188,7 @@ export const useLineChart = (props: extendedLineChartPropsType) => {
2184
2188
  stripWidth,
2185
2189
  stripColor,
2186
2190
  stripOpacity,
2191
+ stripStrokeDashArray,
2187
2192
  unFocusOnPressOut,
2188
2193
  delayBeforeUnFocus,
2189
2194
  containerHeightIncludingBelowXAxis,
@@ -1,6 +1,6 @@
1
1
  import { GestureResponderEvent, type ColorValue } from 'react-native';
2
2
  import { type yAxisSides } from '../utils/constants';
3
- import { type CurveType, type DataSet, type EdgePosition, type HighlightedRange, type LineSegment, type Pointer, type RuleType, type RulesConfig, type arrowConfigType, type referenceConfigType, type secondaryLineConfigType, type secondaryYAxisType } from '../utils/types';
3
+ import { XAxisConfig, type CurveType, type DataSet, type EdgePosition, type HighlightedRange, type LineSegment, type Pointer, type RuleType, type RulesConfig, type arrowConfigType, type referenceConfigType, type secondaryLineConfigType, type secondaryYAxisType } from '../utils/types';
4
4
  export interface LineChartPropsType {
5
5
  height?: number;
6
6
  overflowTop?: number;
@@ -62,6 +62,7 @@ export interface LineChartPropsType {
62
62
  stripWidth?: number;
63
63
  stripColor?: ColorValue | string | any;
64
64
  stripOpacity?: number;
65
+ stripStrokeDashArray?: number[];
65
66
  onPress?: Function;
66
67
  unFocusOnPressOut?: boolean;
67
68
  delayBeforeUnFocus?: number;
@@ -299,12 +300,16 @@ export interface LineChartPropsType {
299
300
  parentWidth?: number;
300
301
  onChartAreaPress?: (event: GestureResponderEvent) => void;
301
302
  onBackgroundPress?: (event: GestureResponderEvent) => void;
303
+ secondaryXAxis?: XAxisConfig;
302
304
  }
303
305
  export interface lineDataItem {
304
306
  value: number;
305
307
  label?: string;
306
308
  labelComponent?: Function;
307
309
  labelTextStyle?: any;
310
+ secondaryLabel?: string;
311
+ secondaryLabelComponent?: Function;
312
+ secondaryLabelTextStyle?: any;
308
313
  dataPointText?: string;
309
314
  textShiftX?: number;
310
315
  textShiftY?: number;
@@ -321,6 +326,7 @@ export interface lineDataItem {
321
326
  stripWidth?: number;
322
327
  stripColor?: ColorValue | string | any;
323
328
  stripOpacity?: number;
329
+ stripStrokeDashArray?: number[];
324
330
  focusedDataPointShape?: string;
325
331
  focusedDataPointWidth?: number;
326
332
  focusedDataPointHeight?: number;
@@ -1,6 +1,7 @@
1
1
  import { GestureResponderEvent, type ColorValue } from 'react-native'
2
2
  import { type yAxisSides } from '../utils/constants'
3
3
  import {
4
+ XAxisConfig,
4
5
  type CurveType,
5
6
  type DataSet,
6
7
  type EdgePosition,
@@ -76,6 +77,7 @@ export interface LineChartPropsType {
76
77
  stripWidth?: number
77
78
  stripColor?: ColorValue | string | any
78
79
  stripOpacity?: number
80
+ stripStrokeDashArray?: number[]
79
81
  onPress?: Function
80
82
  unFocusOnPressOut?: boolean
81
83
  delayBeforeUnFocus?: number
@@ -334,6 +336,8 @@ export interface LineChartPropsType {
334
336
 
335
337
  onChartAreaPress?: (event: GestureResponderEvent) => void
336
338
  onBackgroundPress?: (event: GestureResponderEvent) => void
339
+
340
+ secondaryXAxis?: XAxisConfig
337
341
  }
338
342
 
339
343
  export interface lineDataItem {
@@ -341,6 +345,9 @@ export interface lineDataItem {
341
345
  label?: string
342
346
  labelComponent?: Function
343
347
  labelTextStyle?: any
348
+ secondaryLabel?: string
349
+ secondaryLabelComponent?: Function
350
+ secondaryLabelTextStyle?: any
344
351
  dataPointText?: string
345
352
  textShiftX?: number
346
353
  textShiftY?: number
@@ -359,6 +366,7 @@ export interface lineDataItem {
359
366
  stripWidth?: number
360
367
  stripColor?: ColorValue | string | any
361
368
  stripOpacity?: number
369
+ stripStrokeDashArray?: number[]
362
370
 
363
371
  focusedDataPointShape?: string
364
372
  focusedDataPointWidth?: number
@@ -37,7 +37,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
37
37
  import { useEffect, useState } from 'react';
38
38
  import { AxesAndRulesDefaults, BarDefaults } from '../../utils/constants';
39
39
  export var useBarAndLineChartsWrapper = function (props) {
40
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12;
40
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11;
41
41
  var chartType = props.chartType, containerHeight = props.containerHeight, noOfSectionsBelowXAxis = props.noOfSectionsBelowXAxis, sectionColors = props.sectionColors, stepHeight = props.stepHeight, negativeStepHeight = props.negativeStepHeight, labelsExtraHeight = props.labelsExtraHeight, yAxisLabelWidth = props.yAxisLabelWidth, horizontal = props.horizontal, rtl = props.rtl, shiftX = props.shiftX, shiftY = props.shiftY, initialSpacing = props.initialSpacing, data = props.data, stackData = props.stackData, secondaryData = props.secondaryData, barWidth = props.barWidth, xAxisThickness = props.xAxisThickness, totalWidth = props.totalWidth, spacing = props.spacing, lineConfig = props.lineConfig, lineConfig2 = props.lineConfig2, maxValue = props.maxValue, lineData = props.lineData, lineData2 = props.lineData2, animatedWidth = props.animatedWidth, lineBehindBars = props.lineBehindBars, points = props.points, points2 = props.points2, arrowPoints = props.arrowPoints, width = props.width, horizSections = props.horizSections, endSpacing = props.endSpacing, horizontalRulesStyle = props.horizontalRulesStyle, noOfSections = props.noOfSections, showFractionalValues = props.showFractionalValues, axesAndRulesProps = props.axesAndRulesProps, yAxisLabelTexts = props.yAxisLabelTexts, yAxisOffset = props.yAxisOffset, rotateYAxisTexts = props.rotateYAxisTexts, pointerConfig = props.pointerConfig, getPointerProps = props.getPointerProps, pointerIndex = props.pointerIndex, pointerX = props.pointerX, pointerY = props.pointerY, scrollEventThrottle = props.scrollEventThrottle, endReachedOffset = props.endReachedOffset, isRTL = props.isRTL;
42
42
  var yAxisAtTop = rtl ? !props.yAxisAtTop : props.yAxisAtTop;
43
43
  var hideOrigin = (_a = axesAndRulesProps.hideOrigin) !== null && _a !== void 0 ? _a : AxesAndRulesDefaults.hideOrigin;
@@ -46,48 +46,49 @@ export var useBarAndLineChartsWrapper = function (props) {
46
46
  var yAxisColor = (_c = axesAndRulesProps.yAxisColor) !== null && _c !== void 0 ? _c : AxesAndRulesDefaults.yAxisColor;
47
47
  var yAxisExtraHeight = (_d = axesAndRulesProps.yAxisExtraHeight) !== null && _d !== void 0 ? _d : containerHeight / 20;
48
48
  var trimYAxisAtTop = (_e = axesAndRulesProps.trimYAxisAtTop) !== null && _e !== void 0 ? _e : AxesAndRulesDefaults.trimYAxisAtTop;
49
- var overflowTop = (_f = axesAndRulesProps.overflowTop) !== null && _f !== void 0 ? _f : AxesAndRulesDefaults.overflowTop;
50
- var yAxisThickness = (_g = axesAndRulesProps.yAxisThickness) !== null && _g !== void 0 ? _g : AxesAndRulesDefaults.yAxisThickness;
51
- var xAxisColor = (_h = axesAndRulesProps.xAxisColor) !== null && _h !== void 0 ? _h : AxesAndRulesDefaults.xAxisColor;
49
+ var overflowTop = axesAndRulesProps.overflowTop;
50
+ var yAxisThickness = (_f = axesAndRulesProps.yAxisThickness) !== null && _f !== void 0 ? _f : AxesAndRulesDefaults.yAxisThickness;
51
+ var xAxisColor = (_g = axesAndRulesProps.xAxisColor) !== null && _g !== void 0 ? _g : AxesAndRulesDefaults.xAxisColor;
52
52
  var xAxisLength = axesAndRulesProps.xAxisLength;
53
- var xAxisType = (_j = axesAndRulesProps.xAxisType) !== null && _j !== void 0 ? _j : AxesAndRulesDefaults.xAxisType;
54
- var xAxisLabelsVerticalShift = (_k = axesAndRulesProps.xAxisLabelsVerticalShift) !== null && _k !== void 0 ? _k : AxesAndRulesDefaults.xAxisLabelsVerticalShift;
53
+ var xAxisType = (_h = axesAndRulesProps.xAxisType) !== null && _h !== void 0 ? _h : AxesAndRulesDefaults.xAxisType;
54
+ var xAxisLabelsVerticalShift = (_j = axesAndRulesProps.xAxisLabelsVerticalShift) !== null && _j !== void 0 ? _j : AxesAndRulesDefaults.xAxisLabelsVerticalShift;
55
55
  var xAxisLabelsHeight = axesAndRulesProps.xAxisLabelsHeight;
56
56
  var xAxisTextNumberOfLines = axesAndRulesProps.xAxisTextNumberOfLines;
57
- var dashWidth = (_l = axesAndRulesProps.dashWidth) !== null && _l !== void 0 ? _l : AxesAndRulesDefaults.dashWidth;
58
- var dashGap = (_m = axesAndRulesProps.dashGap) !== null && _m !== void 0 ? _m : AxesAndRulesDefaults.dashGap;
59
- var backgroundColor = (_o = axesAndRulesProps.backgroundColor) !== null && _o !== void 0 ? _o : AxesAndRulesDefaults.backgroundColor;
60
- var hideRules = (_p = axesAndRulesProps.hideRules) !== null && _p !== void 0 ? _p : AxesAndRulesDefaults.hideRules;
57
+ var dashWidth = (_k = axesAndRulesProps.dashWidth) !== null && _k !== void 0 ? _k : AxesAndRulesDefaults.dashWidth;
58
+ var dashGap = (_l = axesAndRulesProps.dashGap) !== null && _l !== void 0 ? _l : AxesAndRulesDefaults.dashGap;
59
+ var backgroundColor = (_m = axesAndRulesProps.backgroundColor) !== null && _m !== void 0 ? _m : AxesAndRulesDefaults.backgroundColor;
60
+ var hideRules = (_o = axesAndRulesProps.hideRules) !== null && _o !== void 0 ? _o : AxesAndRulesDefaults.hideRules;
61
61
  var rulesLength = axesAndRulesProps.rulesLength;
62
- var rulesType = (_q = axesAndRulesProps.rulesType) !== null && _q !== void 0 ? _q : AxesAndRulesDefaults.rulesType;
63
- var rulesThickness = (_r = axesAndRulesProps.rulesThickness) !== null && _r !== void 0 ? _r : AxesAndRulesDefaults.rulesThickness;
64
- var rulesColor = (_s = axesAndRulesProps.rulesColor) !== null && _s !== void 0 ? _s : AxesAndRulesDefaults.rulesColor;
65
- var rulesConfigArray = (_t = axesAndRulesProps.rulesConfigArray) !== null && _t !== void 0 ? _t : AxesAndRulesDefaults.rulesConfigArray;
66
- var showYAxisIndices = (_u = axesAndRulesProps.showYAxisIndices) !== null && _u !== void 0 ? _u : false;
67
- var yAxisIndicesHeight = (_v = axesAndRulesProps.yAxisIndicesHeight) !== null && _v !== void 0 ? _v : AxesAndRulesDefaults.yAxisIndicesHeight;
68
- var yAxisIndicesWidth = (_w = axesAndRulesProps.yAxisIndicesWidth) !== null && _w !== void 0 ? _w : AxesAndRulesDefaults.yAxisIndicesWidth;
69
- var yAxisIndicesColor = (_x = axesAndRulesProps.yAxisIndicesColor) !== null && _x !== void 0 ? _x : AxesAndRulesDefaults.yAxisIndicesColor;
70
- var hideYAxisText = (_y = axesAndRulesProps.hideYAxisText) !== null && _y !== void 0 ? _y : AxesAndRulesDefaults.hideYAxisText;
71
- var yAxisTextNumberOfLines = (_z = axesAndRulesProps.yAxisTextNumberOfLines) !== null && _z !== void 0 ? _z : AxesAndRulesDefaults.yAxisTextNumberOfLines;
72
- var yAxisLabelPrefix = (_0 = axesAndRulesProps.yAxisLabelPrefix) !== null && _0 !== void 0 ? _0 : '';
73
- var yAxisLabelSuffix = (_1 = axesAndRulesProps.yAxisLabelSuffix) !== null && _1 !== void 0 ? _1 : '';
62
+ var rulesType = (_p = axesAndRulesProps.rulesType) !== null && _p !== void 0 ? _p : AxesAndRulesDefaults.rulesType;
63
+ var rulesThickness = (_q = axesAndRulesProps.rulesThickness) !== null && _q !== void 0 ? _q : AxesAndRulesDefaults.rulesThickness;
64
+ var rulesColor = (_r = axesAndRulesProps.rulesColor) !== null && _r !== void 0 ? _r : AxesAndRulesDefaults.rulesColor;
65
+ var rulesConfigArray = (_s = axesAndRulesProps.rulesConfigArray) !== null && _s !== void 0 ? _s : AxesAndRulesDefaults.rulesConfigArray;
66
+ var showYAxisIndices = (_t = axesAndRulesProps.showYAxisIndices) !== null && _t !== void 0 ? _t : false;
67
+ var yAxisIndicesHeight = (_u = axesAndRulesProps.yAxisIndicesHeight) !== null && _u !== void 0 ? _u : AxesAndRulesDefaults.yAxisIndicesHeight;
68
+ var yAxisIndicesWidth = (_v = axesAndRulesProps.yAxisIndicesWidth) !== null && _v !== void 0 ? _v : AxesAndRulesDefaults.yAxisIndicesWidth;
69
+ var yAxisIndicesColor = (_w = axesAndRulesProps.yAxisIndicesColor) !== null && _w !== void 0 ? _w : AxesAndRulesDefaults.yAxisIndicesColor;
70
+ var hideYAxisText = (_x = axesAndRulesProps.hideYAxisText) !== null && _x !== void 0 ? _x : AxesAndRulesDefaults.hideYAxisText;
71
+ var yAxisTextNumberOfLines = (_y = axesAndRulesProps.yAxisTextNumberOfLines) !== null && _y !== void 0 ? _y : AxesAndRulesDefaults.yAxisTextNumberOfLines;
72
+ var yAxisLabelPrefix = (_z = axesAndRulesProps.yAxisLabelPrefix) !== null && _z !== void 0 ? _z : '';
73
+ var yAxisLabelSuffix = (_0 = axesAndRulesProps.yAxisLabelSuffix) !== null && _0 !== void 0 ? _0 : '';
74
74
  var yAxisTextStyle = axesAndRulesProps.yAxisTextStyle;
75
75
  var secondaryYAxis = axesAndRulesProps.secondaryYAxis;
76
76
  var stepValue = axesAndRulesProps.stepValue;
77
77
  var negativeStepValue = axesAndRulesProps.negativeStepValue;
78
78
  var roundToDigits = axesAndRulesProps.roundToDigits;
79
79
  var referenceLinesConfig = axesAndRulesProps.referenceLinesConfig;
80
- var referenceLinesOverChartContent = (_2 = referenceLinesConfig.referenceLinesOverChartContent) !== null && _2 !== void 0 ? _2 : AxesAndRulesDefaults.referenceLinesOverChartContent;
81
- var showVerticalLines = (_3 = axesAndRulesProps.showVerticalLines) !== null && _3 !== void 0 ? _3 : AxesAndRulesDefaults.showVerticalLines;
82
- var verticalLinesThickness = (_4 = axesAndRulesProps.verticalLinesThickness) !== null && _4 !== void 0 ? _4 : AxesAndRulesDefaults.verticalLinesThickness;
80
+ var referenceLinesOverChartContent = (_1 = referenceLinesConfig.referenceLinesOverChartContent) !== null && _1 !== void 0 ? _1 : AxesAndRulesDefaults.referenceLinesOverChartContent;
81
+ var showVerticalLines = (_2 = axesAndRulesProps.showVerticalLines) !== null && _2 !== void 0 ? _2 : AxesAndRulesDefaults.showVerticalLines;
82
+ var verticalLinesThickness = (_3 = axesAndRulesProps.verticalLinesThickness) !== null && _3 !== void 0 ? _3 : AxesAndRulesDefaults.verticalLinesThickness;
83
83
  var verticalLinesHeight = axesAndRulesProps.verticalLinesHeight;
84
- var verticalLinesColor = (_5 = axesAndRulesProps.verticalLinesColor) !== null && _5 !== void 0 ? _5 : AxesAndRulesDefaults.verticalLinesColor;
85
- var verticalLinesStrokeDashArray = (_6 = axesAndRulesProps.verticalLinesStrokeDashArray) !== null && _6 !== void 0 ? _6 : AxesAndRulesDefaults.verticalLinesStrokeDashArray;
86
- var verticalLinesShift = (_7 = axesAndRulesProps.verticalLinesShift) !== null && _7 !== void 0 ? _7 : AxesAndRulesDefaults.verticalLinesShift;
87
- var verticalLinesZIndex = (_8 = axesAndRulesProps.verticalLinesZIndex) !== null && _8 !== void 0 ? _8 : AxesAndRulesDefaults.verticalLinesZIndex;
88
- var verticalLinesSpacing = (_9 = axesAndRulesProps.verticalLinesSpacing) !== null && _9 !== void 0 ? _9 : AxesAndRulesDefaults.verticalLinesSpacing;
89
- var verticalLinesUptoDataPoint = (_10 = axesAndRulesProps.verticalLinesUptoDataPoint) !== null && _10 !== void 0 ? _10 : AxesAndRulesDefaults.verticalLinesUptoDataPoint;
84
+ var verticalLinesColor = (_4 = axesAndRulesProps.verticalLinesColor) !== null && _4 !== void 0 ? _4 : AxesAndRulesDefaults.verticalLinesColor;
85
+ var verticalLinesStrokeDashArray = (_5 = axesAndRulesProps.verticalLinesStrokeDashArray) !== null && _5 !== void 0 ? _5 : AxesAndRulesDefaults.verticalLinesStrokeDashArray;
86
+ var verticalLinesShift = (_6 = axesAndRulesProps.verticalLinesShift) !== null && _6 !== void 0 ? _6 : AxesAndRulesDefaults.verticalLinesShift;
87
+ var verticalLinesZIndex = (_7 = axesAndRulesProps.verticalLinesZIndex) !== null && _7 !== void 0 ? _7 : AxesAndRulesDefaults.verticalLinesZIndex;
88
+ var verticalLinesSpacing = (_8 = axesAndRulesProps.verticalLinesSpacing) !== null && _8 !== void 0 ? _8 : AxesAndRulesDefaults.verticalLinesSpacing;
89
+ var verticalLinesUptoDataPoint = (_9 = axesAndRulesProps.verticalLinesUptoDataPoint) !== null && _9 !== void 0 ? _9 : AxesAndRulesDefaults.verticalLinesUptoDataPoint;
90
90
  var noOfVerticalLines = axesAndRulesProps.noOfVerticalLines;
91
+ var secondaryXAxis = axesAndRulesProps.secondaryXAxis;
91
92
  var verticalLinesAr = noOfVerticalLines
92
93
  ? __spreadArray([], __read(Array(noOfVerticalLines).keys()), false) : __spreadArray([], __read(Array(stackData ? stackData.length : data.length).keys()), false);
93
94
  var horizSectionProps = {
@@ -149,7 +150,8 @@ export var useBarAndLineChartsWrapper = function (props) {
149
150
  roundToDigits: roundToDigits,
150
151
  secondaryData: secondaryData,
151
152
  secondaryYAxis: secondaryYAxis,
152
- formatYLabel: axesAndRulesProps.formatYLabel
153
+ formatYLabel: axesAndRulesProps.formatYLabel,
154
+ secondaryXAxis: secondaryXAxis
153
155
  };
154
156
  var lineInBarChartProps = {
155
157
  yAxisLabelWidth: yAxisLabelWidth,
@@ -157,7 +159,7 @@ export var useBarAndLineChartsWrapper = function (props) {
157
159
  spacing: spacing,
158
160
  containerHeight: containerHeight,
159
161
  lineConfig: lineConfig,
160
- maxValue: (_11 = secondaryYAxis === null || secondaryYAxis === void 0 ? void 0 : secondaryYAxis.maxValue) !== null && _11 !== void 0 ? _11 : maxValue,
162
+ maxValue: (_10 = secondaryYAxis === null || secondaryYAxis === void 0 ? void 0 : secondaryYAxis.maxValue) !== null && _10 !== void 0 ? _10 : maxValue,
161
163
  animatedWidth: animatedWidth,
162
164
  lineBehindBars: lineBehindBars,
163
165
  points: points,
@@ -175,7 +177,7 @@ export var useBarAndLineChartsWrapper = function (props) {
175
177
  var verticalLinesProps = {
176
178
  verticalLinesAr: verticalLinesAr,
177
179
  verticalLinesSpacing: verticalLinesSpacing,
178
- spacing: (_12 = lineConfig === null || lineConfig === void 0 ? void 0 : lineConfig.spacing) !== null && _12 !== void 0 ? _12 : spacing,
180
+ spacing: (_11 = lineConfig === null || lineConfig === void 0 ? void 0 : lineConfig.spacing) !== null && _11 !== void 0 ? _11 : spacing,
179
181
  initialSpacing: initialSpacing,
180
182
  verticalLinesZIndex: verticalLinesZIndex,
181
183
  verticalLinesHeight: verticalLinesHeight,
@@ -229,7 +231,7 @@ export var useBarAndLineChartsWrapper = function (props) {
229
231
  : difBwWidthHeight - 40) /
230
232
  2 +
231
233
  (yAxisAtTop ? (rtl ? (props.width ? 12 : 40) : 12) : 52), ")");
232
- var _13 = __read(useState(false), 2), canMomentum = _13[0], setCanMomentum = _13[1];
234
+ var _12 = __read(useState(false), 2), canMomentum = _12[0], setCanMomentum = _12[1];
233
235
  var isCloseToEnd = function (_a) {
234
236
  var layoutMeasurement = _a.layoutMeasurement, contentOffset = _a.contentOffset, contentSize = _a.contentSize;
235
237
  return isRTL
@@ -78,8 +78,7 @@ export const useBarAndLineChartsWrapper = (
78
78
  axesAndRulesProps.yAxisExtraHeight ?? containerHeight / 20
79
79
  const trimYAxisAtTop =
80
80
  axesAndRulesProps.trimYAxisAtTop ?? AxesAndRulesDefaults.trimYAxisAtTop
81
- const overflowTop =
82
- axesAndRulesProps.overflowTop ?? AxesAndRulesDefaults.overflowTop
81
+ const overflowTop = axesAndRulesProps.overflowTop
83
82
  const yAxisThickness =
84
83
  axesAndRulesProps.yAxisThickness ?? AxesAndRulesDefaults.yAxisThickness
85
84
  const xAxisColor =
@@ -162,6 +161,7 @@ export const useBarAndLineChartsWrapper = (
162
161
  axesAndRulesProps.verticalLinesUptoDataPoint ??
163
162
  AxesAndRulesDefaults.verticalLinesUptoDataPoint
164
163
  const noOfVerticalLines = axesAndRulesProps.noOfVerticalLines
164
+ const secondaryXAxis = axesAndRulesProps.secondaryXAxis
165
165
 
166
166
  const verticalLinesAr = noOfVerticalLines
167
167
  ? [...Array(noOfVerticalLines).keys()]
@@ -233,7 +233,8 @@ export const useBarAndLineChartsWrapper = (
233
233
 
234
234
  secondaryData,
235
235
  secondaryYAxis,
236
- formatYLabel: axesAndRulesProps.formatYLabel
236
+ formatYLabel: axesAndRulesProps.formatYLabel,
237
+ secondaryXAxis
237
238
  }
238
239
 
239
240
  const lineInBarChartProps = {
package/src/index.d.ts CHANGED
@@ -35,4 +35,4 @@ export { getTopAndLeftForStripAndLabel } from './components/common/StripAndLabel
35
35
  /***********************************************************************************************************************/
36
36
  export { getCumulativeWidth, getLighterColor, svgQuadraticCurvePath, svgPath, bezierCommand, getSegmentString, getCurvePathWithSegments, getPreviousSegmentsLastPoint, getPathWithHighlight, getRegionPathObjects, getSegmentedPathObjects, getArrowPoints, getAxesAndRulesProps, getExtendedContainerHeightWithPadding, getSecondaryDataWithOffsetIncluded, getArrowProperty, getAllArrowProperties, maxAndMinUtil, computeMaxAndMinItems, getLabelTextUtil, getXForLineInBar, getYForLineInBar, clone, getLineConfigForBarChart, adjustToOffset } from './utils';
37
37
  export { chartTypes, yAxisSides, loc, SEGMENT_START, SEGMENT_END, RANGE_ENTER, RANGE_EXIT, STOP, ruleTypes, AxesAndRulesDefaults, defaultArrowConfig, BarDefaults, defaultLineConfig, LineDefaults, defaultPointerConfig, pieColors, populationDefaults, defaultAnimationDuration } from './utils/constants';
38
- export { type RuleType, type RuleTypes, type RulesConfig, type CurveType, type EdgePosition, type LabelsPosition, type PointerEvents, type secondaryYAxisType, type secondaryLineConfigType, type referenceConfigType, type arrowConfigType, type horizSectionPropTypes, type HorizSectionsType, type BarAndLineChartsWrapperTypes, type Pointer, type HighlightedRange, type LineSegment, type LineSvgProps, type LineProperties, type DataSet, type Framework } from './utils/types';
38
+ export { type RuleType, type RuleTypes, type RulesConfig, CurveType, EdgePosition, type LabelsPosition, type PointerEvents, type secondaryYAxisType, type secondaryLineConfigType, type referenceConfigType, type arrowConfigType, type horizSectionPropTypes, type HorizSectionsType, type BarAndLineChartsWrapperTypes, type Pointer, type HighlightedRange, type LineSegment, type LineSvgProps, type LineProperties, type DataSet, Framework, type XAxisConfig } from './utils/types';
package/src/index.js CHANGED
@@ -31,3 +31,4 @@ export { getTopAndLeftForStripAndLabel } from './components/common/StripAndLabel
31
31
  /***********************************************************************************************************************/
32
32
  export { getCumulativeWidth, getLighterColor, svgQuadraticCurvePath, svgPath, bezierCommand, getSegmentString, getCurvePathWithSegments, getPreviousSegmentsLastPoint, getPathWithHighlight, getRegionPathObjects, getSegmentedPathObjects, getArrowPoints, getAxesAndRulesProps, getExtendedContainerHeightWithPadding, getSecondaryDataWithOffsetIncluded, getArrowProperty, getAllArrowProperties, maxAndMinUtil, computeMaxAndMinItems, getLabelTextUtil, getXForLineInBar, getYForLineInBar, clone, getLineConfigForBarChart, adjustToOffset } from './utils';
33
33
  export { chartTypes, yAxisSides, loc, SEGMENT_START, SEGMENT_END, RANGE_ENTER, RANGE_EXIT, STOP, ruleTypes, AxesAndRulesDefaults, defaultArrowConfig, BarDefaults, defaultLineConfig, LineDefaults, defaultPointerConfig, pieColors, populationDefaults, defaultAnimationDuration } from './utils/constants';
34
+ export { CurveType, EdgePosition, Framework } from './utils/types';
package/src/index.ts CHANGED
@@ -128,8 +128,8 @@ export {
128
128
  type RuleType,
129
129
  type RuleTypes,
130
130
  type RulesConfig,
131
- type CurveType,
132
- type EdgePosition,
131
+ CurveType,
132
+ EdgePosition,
133
133
  type LabelsPosition,
134
134
  type PointerEvents,
135
135
  type secondaryYAxisType,
@@ -145,5 +145,6 @@ export {
145
145
  type LineSvgProps,
146
146
  type LineProperties,
147
147
  type DataSet,
148
- type Framework
148
+ Framework,
149
+ type XAxisConfig
149
150
  } from './utils/types'
@@ -30,6 +30,7 @@ export declare const AxesAndRulesDefaults: {
30
30
  yAxisThickness: number;
31
31
  trimYAxisAtTop: boolean;
32
32
  overflowTop: number;
33
+ overflowTopWithSecondaryXAxis: number;
33
34
  xAxisColor: string;
34
35
  xAxisThickness: number;
35
36
  xAxisType: string;
@@ -40,6 +40,7 @@ export var AxesAndRulesDefaults = {
40
40
  yAxisThickness: 1,
41
41
  trimYAxisAtTop: false,
42
42
  overflowTop: 0,
43
+ overflowTopWithSecondaryXAxis: 30,
43
44
  xAxisColor: 'black',
44
45
  xAxisThickness: 1,
45
46
  xAxisType: ruleTypes.SOLID,
@@ -48,6 +48,7 @@ export const AxesAndRulesDefaults = {
48
48
  yAxisThickness: 1,
49
49
  trimYAxisAtTop: false,
50
50
  overflowTop: 0,
51
+ overflowTopWithSecondaryXAxis: 30,
51
52
  xAxisColor: 'black',
52
53
  xAxisThickness: 1,
53
54
  xAxisType: ruleTypes.SOLID,
@@ -476,7 +476,7 @@ export var getArrowPoints = function (arrowTipX, arrowTipY, x1, y1, arrowLength,
476
476
  return arrowPoints;
477
477
  };
478
478
  export var getAxesAndRulesProps = function (props, stepValue, negativeStepValue, maxValue) {
479
- var _a, _b, _c, _d;
479
+ var _a, _b, _c, _d, _e;
480
480
  var secondaryYAxis = !props.secondaryYAxis || props.secondaryYAxis === true
481
481
  ? {}
482
482
  : props.secondaryYAxis;
@@ -486,13 +486,15 @@ export var getAxesAndRulesProps = function (props, stepValue, negativeStepValue,
486
486
  yAxisColor: props.yAxisColor,
487
487
  yAxisExtraHeight: props.yAxisExtraHeight,
488
488
  trimYAxisAtTop: props.trimYAxisAtTop,
489
- overflowTop: props.overflowTop,
489
+ overflowTop: ((_a = props.overflowTop) !== null && _a !== void 0 ? _a : props.secondaryXAxis)
490
+ ? AxesAndRulesDefaults.overflowTopWithSecondaryXAxis
491
+ : AxesAndRulesDefaults.overflowTop,
490
492
  yAxisThickness: props.yAxisThickness,
491
493
  xAxisColor: props.xAxisColor,
492
494
  xAxisLength: props.xAxisLength,
493
495
  xAxisType: props.xAxisType,
494
- xAxisTextNumberOfLines: (_a = props.xAxisTextNumberOfLines) !== null && _a !== void 0 ? _a : 1,
495
- xAxisThickness: (_b = props.xAxisThickness) !== null && _b !== void 0 ? _b : AxesAndRulesDefaults.xAxisThickness,
496
+ xAxisTextNumberOfLines: (_b = props.xAxisTextNumberOfLines) !== null && _b !== void 0 ? _b : 1,
497
+ xAxisThickness: (_c = props.xAxisThickness) !== null && _c !== void 0 ? _c : AxesAndRulesDefaults.xAxisThickness,
496
498
  xAxisLabelsHeight: props.xAxisLabelsHeight,
497
499
  xAxisLabelsVerticalShift: props.xAxisLabelsVerticalShift,
498
500
  dashWidth: props.dashWidth,
@@ -541,11 +543,13 @@ export var getAxesAndRulesProps = function (props, stepValue, negativeStepValue,
541
543
  stepValue: stepValue,
542
544
  negativeStepValue: negativeStepValue !== null && negativeStepValue !== void 0 ? negativeStepValue : stepValue,
543
545
  secondaryYAxis: props.secondaryYAxis,
544
- formatYLabel: props.formatYLabel
546
+ formatYLabel: props.formatYLabel,
547
+ secondaryXAxis: props.secondaryXAxis
545
548
  };
546
- if (((_c = props.secondaryYAxis) !== null && _c !== void 0 ? _c : (_d = props.lineConfig) === null || _d === void 0 ? void 0 : _d.isSecondary) &&
549
+ if (((_d = props.secondaryYAxis) !== null && _d !== void 0 ? _d : (_e = props.lineConfig) === null || _e === void 0 ? void 0 : _e.isSecondary) &&
547
550
  maxValue !== undefined &&
548
- secondaryYAxis && secondaryYAxis.maxValue === undefined) {
551
+ secondaryYAxis &&
552
+ secondaryYAxis.maxValue === undefined) {
549
553
  axesAndRulesProps.secondaryYAxis = __assign(__assign({}, secondaryYAxis), { maxValue: maxValue });
550
554
  }
551
555
  return axesAndRulesProps;
@@ -679,7 +679,10 @@ export const getAxesAndRulesProps = (
679
679
  yAxisColor: props.yAxisColor,
680
680
  yAxisExtraHeight: props.yAxisExtraHeight,
681
681
  trimYAxisAtTop: props.trimYAxisAtTop,
682
- overflowTop: props.overflowTop,
682
+ overflowTop:
683
+ props.overflowTop ?? props.secondaryXAxis
684
+ ? AxesAndRulesDefaults.overflowTopWithSecondaryXAxis
685
+ : AxesAndRulesDefaults.overflowTop,
683
686
  yAxisThickness: props.yAxisThickness,
684
687
  xAxisColor: props.xAxisColor,
685
688
  xAxisLength: props.xAxisLength,
@@ -739,12 +742,14 @@ export const getAxesAndRulesProps = (
739
742
  negativeStepValue: negativeStepValue ?? stepValue,
740
743
 
741
744
  secondaryYAxis: props.secondaryYAxis,
742
- formatYLabel: props.formatYLabel
745
+ formatYLabel: props.formatYLabel,
746
+ secondaryXAxis: props.secondaryXAxis
743
747
  }
744
748
  if (
745
749
  (props.secondaryYAxis ?? props.lineConfig?.isSecondary) &&
746
750
  maxValue !== undefined &&
747
- secondaryYAxis && secondaryYAxis.maxValue === undefined
751
+ secondaryYAxis &&
752
+ secondaryYAxis.maxValue === undefined
748
753
  ) {
749
754
  axesAndRulesProps.secondaryYAxis = { ...secondaryYAxis, maxValue }
750
755
  }
@@ -30,6 +30,14 @@ export interface RulesConfig {
30
30
  dashWidth?: number;
31
31
  dashGap?: number;
32
32
  }
33
+ export interface XAxisConfig {
34
+ thickness?: number;
35
+ color?: ColorValue;
36
+ labelsDistanceFromXaxis?: number;
37
+ labelsHeight?: number;
38
+ labelsTextStyle?: any;
39
+ labelTexts?: string[];
40
+ }
33
41
  export type PointerEvents = 'box-none' | 'none' | 'box-only' | 'auto';
34
42
  export interface secondaryYAxisType {
35
43
  noOfSections?: number;
@@ -171,6 +179,7 @@ export interface horizSectionPropTypes {
171
179
  formatYLabel?: (label: string) => string;
172
180
  onlyReferenceLines?: boolean;
173
181
  renderReferenceLines?: boolean;
182
+ secondaryXAxis?: XAxisConfig;
174
183
  }
175
184
  interface HorizSectionObject {
176
185
  value: string;
@@ -38,6 +38,15 @@ export interface RulesConfig {
38
38
  dashGap?: number
39
39
  }
40
40
 
41
+ export interface XAxisConfig {
42
+ thickness?: number
43
+ color?: ColorValue
44
+ labelsDistanceFromXaxis?: number
45
+ labelsHeight?: number
46
+ labelsTextStyle?: any
47
+ labelTexts?: string[]
48
+ }
49
+
41
50
  export type PointerEvents = 'box-none' | 'none' | 'box-only' | 'auto'
42
51
 
43
52
  export interface secondaryYAxisType {
@@ -193,6 +202,7 @@ export interface horizSectionPropTypes {
193
202
  formatYLabel?: (label: string) => string
194
203
  onlyReferenceLines?: boolean
195
204
  renderReferenceLines?: boolean
205
+ secondaryXAxis?: XAxisConfig
196
206
  }
197
207
 
198
208
  interface HorizSectionObject {