victory-core 37.3.2 → 37.3.4

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.
Files changed (127) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/victory-core.js +423 -371
  3. package/dist/victory-core.min.js +1 -1
  4. package/es/types/callbacks.d.ts +11 -11
  5. package/es/types/prop-types.d.ts +28 -28
  6. package/es/victory-animation/util.js +6 -6
  7. package/es/victory-animation/victory-animation.d.ts +3 -3
  8. package/es/victory-clip-container/victory-clip-container.d.ts +6 -1
  9. package/es/victory-clip-container/victory-clip-container.js +20 -12
  10. package/es/victory-container/victory-container.js +2 -2
  11. package/es/victory-label/victory-label.d.ts +3 -3
  12. package/es/victory-label/victory-label.js +12 -16
  13. package/es/victory-portal/victory-portal.js +4 -4
  14. package/es/victory-primitives/arc.js +2 -2
  15. package/es/victory-primitives/background.js +2 -2
  16. package/es/victory-primitives/border.js +2 -2
  17. package/es/victory-primitives/line-segment.js +2 -2
  18. package/es/victory-primitives/point.js +2 -2
  19. package/es/victory-primitives/tspan.d.ts +0 -1
  20. package/es/victory-primitives/types.d.ts +1 -1
  21. package/es/victory-primitives/whisker.d.ts +1 -1
  22. package/es/victory-primitives/whisker.js +2 -2
  23. package/es/victory-theme/types.d.ts +11 -11
  24. package/es/victory-transition/victory-transition.d.ts +1 -1
  25. package/es/victory-transition/victory-transition.js +7 -7
  26. package/es/victory-util/add-events.d.ts +8 -8
  27. package/es/victory-util/add-events.js +13 -13
  28. package/es/victory-util/axis.js +11 -11
  29. package/es/victory-util/data.js +16 -16
  30. package/es/victory-util/domain.js +13 -13
  31. package/es/victory-util/events.d.ts +4 -4
  32. package/es/victory-util/events.js +14 -14
  33. package/es/victory-util/helpers.d.ts +94 -19
  34. package/es/victory-util/helpers.js +95 -49
  35. package/es/victory-util/hooks/use-animation-state.d.ts +2 -2
  36. package/es/victory-util/hooks/use-animation-state.js +4 -4
  37. package/es/victory-util/label-helpers.d.ts +4 -3
  38. package/es/victory-util/label-helpers.js +3 -2
  39. package/es/victory-util/line-helpers.d.ts +1 -1
  40. package/es/victory-util/log.js +3 -2
  41. package/es/victory-util/merge-refs.d.ts +1 -1
  42. package/es/victory-util/scale.js +2 -2
  43. package/es/victory-util/selection.d.ts +3 -3
  44. package/es/victory-util/textsize.js +7 -5
  45. package/es/victory-util/timer.d.ts +1 -1
  46. package/es/victory-util/transitions.d.ts +1 -1
  47. package/es/victory-util/transitions.js +12 -12
  48. package/es/victory-util/type-helpers.d.ts +0 -1
  49. package/es/victory-util/type-helpers.js +0 -5
  50. package/es/victory-util/user-props.d.ts +2 -2
  51. package/es/victory-util/wrapper.js +12 -12
  52. package/lib/types/callbacks.d.ts +11 -11
  53. package/lib/types/prop-types.d.ts +28 -28
  54. package/lib/victory-animation/util.js +6 -6
  55. package/lib/victory-animation/victory-animation.d.ts +3 -3
  56. package/lib/victory-clip-container/victory-clip-container.d.ts +6 -1
  57. package/lib/victory-clip-container/victory-clip-container.js +20 -12
  58. package/lib/victory-container/victory-container.js +3 -3
  59. package/lib/victory-label/victory-label.d.ts +3 -3
  60. package/lib/victory-label/victory-label.js +12 -16
  61. package/lib/victory-portal/victory-portal.js +5 -5
  62. package/lib/victory-primitives/arc.js +2 -2
  63. package/lib/victory-primitives/background.js +2 -2
  64. package/lib/victory-primitives/border.js +2 -2
  65. package/lib/victory-primitives/line-segment.js +2 -2
  66. package/lib/victory-primitives/point.js +2 -2
  67. package/lib/victory-primitives/tspan.d.ts +0 -1
  68. package/lib/victory-primitives/types.d.ts +1 -1
  69. package/lib/victory-primitives/whisker.d.ts +1 -1
  70. package/lib/victory-primitives/whisker.js +2 -2
  71. package/lib/victory-theme/types.d.ts +11 -11
  72. package/lib/victory-transition/victory-transition.d.ts +1 -1
  73. package/lib/victory-transition/victory-transition.js +7 -7
  74. package/lib/victory-util/add-events.d.ts +8 -8
  75. package/lib/victory-util/add-events.js +13 -13
  76. package/lib/victory-util/axis.js +11 -11
  77. package/lib/victory-util/data.js +16 -16
  78. package/lib/victory-util/domain.js +13 -13
  79. package/lib/victory-util/events.d.ts +4 -4
  80. package/lib/victory-util/events.js +14 -14
  81. package/lib/victory-util/helpers.d.ts +94 -19
  82. package/lib/victory-util/helpers.js +96 -50
  83. package/lib/victory-util/hooks/use-animation-state.d.ts +2 -2
  84. package/lib/victory-util/hooks/use-animation-state.js +4 -4
  85. package/lib/victory-util/label-helpers.d.ts +4 -3
  86. package/lib/victory-util/label-helpers.js +3 -3
  87. package/lib/victory-util/line-helpers.d.ts +1 -1
  88. package/lib/victory-util/log.js +3 -2
  89. package/lib/victory-util/merge-refs.d.ts +1 -1
  90. package/lib/victory-util/scale.js +2 -2
  91. package/lib/victory-util/selection.d.ts +3 -3
  92. package/lib/victory-util/textsize.js +5 -5
  93. package/lib/victory-util/timer.d.ts +1 -1
  94. package/lib/victory-util/transitions.d.ts +1 -1
  95. package/lib/victory-util/transitions.js +12 -12
  96. package/lib/victory-util/type-helpers.d.ts +0 -1
  97. package/lib/victory-util/type-helpers.js +0 -6
  98. package/lib/victory-util/user-props.d.ts +2 -2
  99. package/lib/victory-util/wrapper.js +12 -12
  100. package/package.json +2 -30
  101. package/src/victory-animation/util.ts +3 -1
  102. package/src/victory-clip-container/victory-clip-container.tsx +26 -11
  103. package/src/victory-container/victory-container.tsx +1 -1
  104. package/src/victory-label/victory-label.tsx +5 -3
  105. package/src/victory-portal/victory-portal.tsx +3 -1
  106. package/src/victory-primitives/arc.tsx +1 -1
  107. package/src/victory-primitives/background.tsx +1 -1
  108. package/src/victory-primitives/border.tsx +1 -1
  109. package/src/victory-primitives/line-segment.tsx +1 -1
  110. package/src/victory-primitives/point.tsx +1 -1
  111. package/src/victory-primitives/whisker.tsx +1 -1
  112. package/src/victory-transition/victory-transition.tsx +4 -2
  113. package/src/victory-util/add-events.tsx +5 -2
  114. package/src/victory-util/axis.tsx +7 -3
  115. package/src/victory-util/data.ts +9 -10
  116. package/src/victory-util/domain.ts +8 -4
  117. package/src/victory-util/events.ts +4 -1
  118. package/src/victory-util/helpers.ts +155 -39
  119. package/src/victory-util/hooks/use-animation-state.ts +1 -1
  120. package/src/victory-util/label-helpers.ts +1 -1
  121. package/src/victory-util/log.ts +3 -2
  122. package/src/victory-util/scale.ts +1 -1
  123. package/src/victory-util/textsize.ts +2 -1
  124. package/src/victory-util/transitions.ts +3 -1
  125. package/src/victory-util/type-helpers.ts +0 -5
  126. package/src/victory-util/user-props.ts +1 -1
  127. package/src/victory-util/wrapper.tsx +5 -1
@@ -23,15 +23,15 @@ export interface CallbackArgs {
23
23
  ticks?: any;
24
24
  text?: any;
25
25
  }
26
- export declare type VictoryStringOrNumberCallback = (args: CallbackArgs) => string | number;
27
- export declare type VictoryStringCallback = (args: CallbackArgs) => string;
28
- export declare type StringOrNumberOrCallback = string | number | VictoryStringOrNumberCallback;
29
- export declare type StringOrCallback = string | VictoryStringCallback;
30
- export declare type SliceNumberOrCallback<T, P extends string | number | symbol = never> = number | ((props: Omit<T, P>) => number);
31
- export declare type VictoryNumberCallback = (args: CallbackArgs) => number;
32
- export declare type VictoryPaddingCallback = (args: CallbackArgs) => number | BlockProps;
33
- export declare type VictoryOrientationCallback = (args: CallbackArgs) => OrientationTypes;
34
- export declare type NumberOrCallback = number | VictoryNumberCallback;
35
- export declare type PaddingOrCallback = number | BlockProps | VictoryPaddingCallback;
36
- export declare type OrientationOrCallback = OrientationTypes | VictoryOrientationCallback;
26
+ export type VictoryStringOrNumberCallback = (args: CallbackArgs) => string | number;
27
+ export type VictoryStringCallback = (args: CallbackArgs) => string;
28
+ export type StringOrNumberOrCallback = string | number | VictoryStringOrNumberCallback;
29
+ export type StringOrCallback = string | VictoryStringCallback;
30
+ export type SliceNumberOrCallback<T, P extends string | number | symbol = never> = number | ((props: Omit<T, P>) => number);
31
+ export type VictoryNumberCallback = (args: CallbackArgs) => number;
32
+ export type VictoryPaddingCallback = (args: CallbackArgs) => number | BlockProps;
33
+ export type VictoryOrientationCallback = (args: CallbackArgs) => OrientationTypes;
34
+ export type NumberOrCallback = number | VictoryNumberCallback;
35
+ export type PaddingOrCallback = number | BlockProps | VictoryPaddingCallback;
36
+ export type OrientationOrCallback = OrientationTypes | VictoryOrientationCallback;
37
37
  //# sourceMappingURL=callbacks.d.ts.map
@@ -2,25 +2,25 @@ import * as React from "react";
2
2
  import { ScaleLinear, ScaleLogarithmic, ScalePower, ScaleTime } from "victory-vendor/d3-scale";
3
3
  import { AnimationEasing, AnimationStyle } from "../victory-animation/victory-animation";
4
4
  import { CallbackArgs, StringOrNumberOrCallback } from "./callbacks";
5
- export declare type AxisType = "x" | "y";
6
- export declare type DatumValue = number | string | Date | null | undefined;
7
- export declare type Datum = any;
8
- export declare type ForAxes<T> = T | {
5
+ export type AxisType = "x" | "y";
6
+ export type DatumValue = number | string | Date | null | undefined;
7
+ export type Datum = any;
8
+ export type ForAxes<T> = T | {
9
9
  x?: T;
10
10
  y?: T;
11
11
  };
12
- export declare type ID = number | string;
13
- export declare type ValueOrAccessor<ValueType, PropsType = CallbackArgs> = ValueType | ((props: PropsType) => ValueType);
14
- export declare type Tuple<T> = [T, T];
15
- export declare type ValueOrAxes<T> = T | ForAxes<T>;
16
- export declare type DomainPaddingPropType = ValueOrAxes<PaddingType>;
17
- export declare type DomainPropType = ValueOrAxes<DomainTuple>;
18
- export declare type DomainValue = number | Date;
19
- export declare type DomainTuple = Tuple<number> | Tuple<Date>;
20
- export declare type PaddingType = number | Tuple<number>;
21
- export declare type RangePropType = ValueOrAxes<RangeTuple>;
22
- export declare type RangeTuple = number[];
23
- export declare type StringOrNumberOrList = string | number | (string | number)[];
12
+ export type ID = number | string;
13
+ export type ValueOrAccessor<ValueType, PropsType = CallbackArgs> = ValueType | ((props: PropsType) => ValueType);
14
+ export type Tuple<T> = [T, T];
15
+ export type ValueOrAxes<T> = T | ForAxes<T>;
16
+ export type DomainPaddingPropType = ValueOrAxes<PaddingType>;
17
+ export type DomainPropType = ValueOrAxes<DomainTuple>;
18
+ export type DomainValue = number | Date;
19
+ export type DomainTuple = Tuple<number> | Tuple<Date>;
20
+ export type PaddingType = number | Tuple<number>;
21
+ export type RangePropType = ValueOrAxes<RangeTuple>;
22
+ export type RangeTuple = number[];
23
+ export type StringOrNumberOrList = string | number | (string | number)[];
24
24
  export interface Padding {
25
25
  top: number;
26
26
  bottom: number;
@@ -69,7 +69,7 @@ export interface EventPropTypeInterface<TTarget, TEventKey> {
69
69
  };
70
70
  };
71
71
  }
72
- declare type NumberValue = number | {
72
+ type NumberValue = number | {
73
73
  valueOf(): number;
74
74
  };
75
75
  /**
@@ -91,14 +91,14 @@ export interface D3Scale<TRange = any> {
91
91
  copy: () => this;
92
92
  invert: (value: number) => number;
93
93
  }
94
- export declare type D3ScaleFn<TRange = any, TOutput = any> = () => ScaleLinear<TRange, TOutput, unknown> | ScaleLogarithmic<TRange, TOutput, unknown> | ScaleTime<TRange, TOutput, unknown> | ScalePower<TRange, TOutput, unknown>;
95
- export declare type ScaleName = "linear" | "time" | "log" | "sqrt";
96
- export declare type ScalePropType = ScaleName;
97
- export declare type ScaleXYPropType = {
94
+ export type D3ScaleFn<TRange = any, TOutput = any> = () => ScaleLinear<TRange, TOutput, unknown> | ScaleLogarithmic<TRange, TOutput, unknown> | ScaleTime<TRange, TOutput, unknown> | ScalePower<TRange, TOutput, unknown>;
95
+ export type ScaleName = "linear" | "time" | "log" | "sqrt";
96
+ export type ScalePropType = ScaleName;
97
+ export type ScaleXYPropType = {
98
98
  x: D3Scale;
99
99
  y: D3Scale;
100
100
  };
101
- export declare type CategoryPropType = string[] | {
101
+ export type CategoryPropType = string[] | {
102
102
  x: string[];
103
103
  } | {
104
104
  y: string[];
@@ -106,10 +106,10 @@ export declare type CategoryPropType = string[] | {
106
106
  x: string[];
107
107
  y: string[];
108
108
  };
109
- export declare type DataGetterPropType = ValueOrAccessor<string | string[] | number | number[], any>;
110
- export declare type InterpolationPropType = "basis" | "basisClosed" | "basisOpen" | "bundle" | "cardinal" | "cardinalClosed" | "cardinalOpen" | "catmullRom" | "catmullRomClosed" | "catmullRomOpen" | "linear" | "linearClosed" | "monotoneX" | "monotoneY" | "natural" | "radial" | "step" | "stepAfter" | "stepBefore";
111
- export declare type ColorScalePropType = "grayscale" | "qualitative" | "heatmap" | "warm" | "cool" | "red" | "green" | "blue" | string[];
112
- export declare type SortOrderPropType = "ascending" | "descending";
109
+ export type DataGetterPropType = ValueOrAccessor<string | string[] | number | number[], any>;
110
+ export type InterpolationPropType = "basis" | "basisClosed" | "basisOpen" | "bundle" | "cardinal" | "cardinalClosed" | "cardinalOpen" | "catmullRom" | "catmullRomClosed" | "catmullRomOpen" | "linear" | "linearClosed" | "monotoneX" | "monotoneY" | "natural" | "radial" | "step" | "stepAfter" | "stepBefore";
111
+ export type ColorScalePropType = "grayscale" | "qualitative" | "heatmap" | "warm" | "cool" | "red" | "green" | "blue" | string[];
112
+ export type SortOrderPropType = "ascending" | "descending";
113
113
  export interface VictoryLabelableProps {
114
114
  labelComponent?: React.ReactElement;
115
115
  }
@@ -123,10 +123,10 @@ export interface VictorySingleLabelableProps extends VictoryLabelableProps {
123
123
  (data: any): string | number | null;
124
124
  };
125
125
  }
126
- export declare type CoordinatesPropType = {
126
+ export type CoordinatesPropType = {
127
127
  x: number;
128
128
  y: number;
129
129
  };
130
- export declare type VictoryEventHandler = (event?: any, targetProps?: any, eventKey?: any, context?: any) => void;
130
+ export type VictoryEventHandler = (event?: any, targetProps?: any, eventKey?: any, context?: any) => void;
131
131
  export {};
132
132
  //# sourceMappingURL=prop-types.d.ts.map
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.victoryInterpolator = exports.isInterpolatable = exports.interpolateString = exports.interpolateObject = exports.interpolateImmediate = exports.interpolateFunction = void 0;
7
- var _orderBy2 = _interopRequireDefault(require("lodash/orderBy"));
8
- var _isPlainObject2 = _interopRequireDefault(require("lodash/isPlainObject"));
7
+ var _isPlainObject = _interopRequireDefault(require("lodash/isPlainObject"));
8
+ var _orderBy = _interopRequireDefault(require("lodash/orderBy"));
9
9
  var _d3Interpolate = require("victory-vendor/d3-interpolate");
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  const isInterpolatable = function (obj) {
@@ -29,7 +29,7 @@ const isInterpolatable = function (obj) {
29
29
  return false;
30
30
  case "object":
31
31
  // Don't try to interpolate class instances (except Date or Array).
32
- return obj instanceof Date || Array.isArray(obj) || (0, _isPlainObject2.default)(obj);
32
+ return obj instanceof Date || Array.isArray(obj) || (0, _isPlainObject.default)(obj);
33
33
  case "function":
34
34
  // Careful! There may be extra properties on function objects that the
35
35
  // component expects to access - for instance, it may be a `d3.scale()`
@@ -118,7 +118,7 @@ const interpolateObject = function (startValue, endValue) {
118
118
  if (typeof x === "function" || typeof y === "function") {
119
119
  return interpolateFunction(x, y);
120
120
  }
121
- if (typeof x === "object" && (0, _isPlainObject2.default)(x) || typeof y === "object" && (0, _isPlainObject2.default)(y)) {
121
+ if (typeof x === "object" && (0, _isPlainObject.default)(x) || typeof y === "object" && (0, _isPlainObject.default)(y)) {
122
122
  return interpolateObject(x, y);
123
123
  }
124
124
  return (0, _d3Interpolate.interpolate)(x, y);
@@ -127,7 +127,7 @@ const interpolateObject = function (startValue, endValue) {
127
127
  // When the value is an array, attempt to sort by "key" so that animating nodes may be identified
128
128
  // based on "key" instead of index
129
129
  const keyData = val => {
130
- return Array.isArray(val) ? (0, _orderBy2.default)(val, "key") : val;
130
+ return Array.isArray(val) ? (0, _orderBy.default)(val, "key") : val;
131
131
  };
132
132
  const i = {};
133
133
  const c = {};
@@ -196,7 +196,7 @@ const victoryInterpolator = function (a, b) {
196
196
  if (typeof a === "function" || typeof b === "function") {
197
197
  return interpolateFunction(a, b);
198
198
  }
199
- if ((0, _isPlainObject2.default)(a) || (0, _isPlainObject2.default)(b)) {
199
+ if ((0, _isPlainObject.default)(a) || (0, _isPlainObject.default)(b)) {
200
200
  // @ts-expect-error These generics are tough, but they work :)
201
201
  return interpolateObject(a, b);
202
202
  }
@@ -3,14 +3,14 @@ import TimerContext from "../victory-util/timer-context";
3
3
  /**
4
4
  * Single animation object to interpolate
5
5
  */
6
- export declare type AnimationStyle = {
6
+ export type AnimationStyle = {
7
7
  [key: string]: string | number;
8
8
  };
9
9
  /**
10
10
  * Animation styles to interpolate
11
11
  */
12
- export declare type AnimationData = AnimationStyle | AnimationStyle[];
13
- export declare type AnimationEasing = "back" | "backIn" | "backOut" | "backInOut" | "bounce" | "bounceIn" | "bounceOut" | "bounceInOut" | "circle" | "circleIn" | "circleOut" | "circleInOut" | "linear" | "linearIn" | "linearOut" | "linearInOut" | "cubic" | "cubicIn" | "cubicOut" | "cubicInOut" | "elastic" | "elasticIn" | "elasticOut" | "elasticInOut" | "exp" | "expIn" | "expOut" | "expInOut" | "poly" | "polyIn" | "polyOut" | "polyInOut" | "quad" | "quadIn" | "quadOut" | "quadInOut" | "sin" | "sinIn" | "sinOut" | "sinInOut";
12
+ export type AnimationData = AnimationStyle | AnimationStyle[];
13
+ export type AnimationEasing = "back" | "backIn" | "backOut" | "backInOut" | "bounce" | "bounceIn" | "bounceOut" | "bounceInOut" | "circle" | "circleIn" | "circleOut" | "circleInOut" | "linear" | "linearIn" | "linearOut" | "linearInOut" | "cubic" | "cubicIn" | "cubicOut" | "cubicInOut" | "elastic" | "elasticIn" | "elasticOut" | "elasticInOut" | "exp" | "expIn" | "expOut" | "expInOut" | "poly" | "polyIn" | "polyOut" | "polyInOut" | "quad" | "quadIn" | "quadOut" | "quadInOut" | "sin" | "sinIn" | "sinOut" | "sinInOut";
14
14
  export interface VictoryAnimationProps {
15
15
  children: (style: AnimationStyle, info: AnimationInfo) => React.ReactElement;
16
16
  duration?: number;
@@ -20,7 +20,10 @@ export interface VictoryClipContainerProps {
20
20
  translateX?: number;
21
21
  translateY?: number;
22
22
  }
23
- export declare class VictoryClipContainer extends React.Component<VictoryClipContainerProps> {
23
+ interface VictoryClipContainerState {
24
+ clipId?: number | string;
25
+ }
26
+ export declare class VictoryClipContainer extends React.Component<VictoryClipContainerProps, VictoryClipContainerState> {
24
27
  static displayName: string;
25
28
  static role: string;
26
29
  static defaultProps: {
@@ -31,6 +34,7 @@ export declare class VictoryClipContainer extends React.Component<VictoryClipCon
31
34
  };
32
35
  clipId: VictoryClipContainerProps["clipId"];
33
36
  constructor(props: VictoryClipContainerProps);
37
+ componentDidMount(): void;
34
38
  calculateAttributes(props: any): {
35
39
  x: number;
36
40
  y: number;
@@ -44,4 +48,5 @@ export declare class VictoryClipContainer extends React.Component<VictoryClipCon
44
48
  getTranslateValue(props: any, axis: any): any;
45
49
  render(): React.DetailedReactHTMLElement<any, HTMLElement>;
46
50
  }
51
+ export {};
47
52
  //# sourceMappingURL=victory-clip-container.d.ts.map
@@ -4,10 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.VictoryClipContainer = void 0;
7
- var _uniqueId2 = _interopRequireDefault(require("lodash/uniqueId"));
8
- var _isObject2 = _interopRequireDefault(require("lodash/isObject"));
9
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
10
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
+ var _uniqueId = _interopRequireDefault(require("lodash/uniqueId"));
11
10
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
12
11
  var UserProps = _interopRequireWildcard(require("../victory-util/user-props"));
13
12
  var _clipPath = require("../victory-primitives/clip-path");
@@ -27,7 +26,20 @@ class VictoryClipContainer extends _react.default.Component {
27
26
  };
28
27
  constructor(props) {
29
28
  super(props);
30
- this.clipId = !(0, _isObject2.default)(props) || props.clipId === undefined ? (0, _uniqueId2.default)("victory-clip-") : props.clipId;
29
+ this.state = {
30
+ clipId: props?.clipId
31
+ };
32
+ }
33
+
34
+ // The clipId state is used to prevent hydration mismatches between the server and client (issue #2941).
35
+ // A better alternative would be to utilize React 18's useId hook instead of uniqueId, which would avoid needing state for this purpose.
36
+ // However, this component currently supports React 16 at the time of writing, so this workaround is necessary.
37
+ componentDidMount() {
38
+ if (!this.state.clipId) {
39
+ this.setState({
40
+ clipId: (0, _uniqueId.default)("victory-clip-")
41
+ });
42
+ }
31
43
  }
32
44
  calculateAttributes(props) {
33
45
  const {
@@ -38,9 +50,7 @@ class VictoryClipContainer extends _react.default.Component {
38
50
  translateX = 0,
39
51
  translateY = 0
40
52
  } = props;
41
- const clipPadding = Helpers.getPadding({
42
- padding: props.clipPadding
43
- });
53
+ const clipPadding = Helpers.getPadding(props.clipPadding);
44
54
  const radius = props.radius || Helpers.getRadius(props);
45
55
  return {
46
56
  x: (polar ? origin.x : translateX) - clipPadding.left,
@@ -109,9 +119,7 @@ class VictoryClipContainer extends _react.default.Component {
109
119
  bottom,
110
120
  left,
111
121
  right
112
- } = Helpers.getPadding({
113
- padding: props.clipPadding
114
- });
122
+ } = Helpers.getPadding(props.clipPadding);
115
123
  let child;
116
124
  if (polar) {
117
125
  const radius = props.radius || Helpers.getRadius(props);
@@ -166,13 +174,13 @@ class VictoryClipContainer extends _react.default.Component {
166
174
  }
167
175
  const translateX = this.getTranslateValue(this.props, "x");
168
176
  const translateY = this.getTranslateValue(this.props, "y");
169
- const clipProps = (0, _defaults2.default)({}, this.props, {
177
+ const clipProps = (0, _defaults.default)({}, this.props, {
170
178
  clipHeight,
171
179
  clipWidth,
172
180
  translateX,
173
181
  translateY
174
182
  });
175
- return this.renderClippedGroup(clipProps, this.clipId);
183
+ return this.renderClippedGroup(clipProps, this.state.clipId);
176
184
  }
177
185
  }
178
186
  exports.VictoryClipContainer = VictoryClipContainer;
@@ -5,16 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.VictoryContainer = void 0;
7
7
  exports.useVictoryContainer = useVictoryContainer;
8
- var _uniqueId2 = _interopRequireDefault(require("lodash/uniqueId"));
9
8
  var _react = _interopRequireWildcard(require("react"));
9
+ var _uniqueId = _interopRequireDefault(require("lodash/uniqueId"));
10
10
  var _portal = require("../victory-portal/portal");
11
11
  var UserProps = _interopRequireWildcard(require("../victory-util/user-props"));
12
12
  var _victoryUtil = require("../victory-util");
13
13
  var _portalOutlet = require("../victory-portal/portal-outlet");
14
14
  var _portalContext = require("../victory-portal/portal-context");
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
17
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
18
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19
19
  const defaultProps = {
20
20
  className: "VictoryContainer",
@@ -38,7 +38,7 @@ function useVictoryContainer(initialProps) {
38
38
  const localContainerRef = (0, _react.useRef)(null);
39
39
 
40
40
  // Generated ID stored in ref because it needs to persist across renders
41
- const generatedId = (0, _react.useRef)((0, _uniqueId2.default)("victory-container-"));
41
+ const generatedId = (0, _react.useRef)((0, _uniqueId.default)("victory-container-"));
42
42
  const containerId = props.containerId ?? generatedId.current;
43
43
  const getIdForElement = elName => `${containerId}-${elName}`;
44
44
  const userProps = UserProps.getSafeUserProps(props);
@@ -2,12 +2,12 @@ import React from "react";
2
2
  import { NumberOrCallback, StringOrCallback, StringOrNumberOrCallback } from "../types/callbacks";
3
3
  import { ValueOrAccessor } from "../types/prop-types";
4
4
  import { PaddingProps, VerticalAnchorType, VictoryLabelStyleObject } from "../victory-theme/victory-theme";
5
- export declare type TextAnchorType = "start" | "middle" | "end" | "inherit";
6
- export declare type OriginType = {
5
+ export type TextAnchorType = "start" | "middle" | "end" | "inherit";
6
+ export type OriginType = {
7
7
  x: number;
8
8
  y: number;
9
9
  };
10
- export declare type LabelOrientationType = "parallel" | "perpendicular" | "vertical";
10
+ export type LabelOrientationType = "parallel" | "perpendicular" | "vertical";
11
11
  export interface VictoryLabelProps {
12
12
  angle?: StringOrNumberOrCallback;
13
13
  ariaLabel?: StringOrCallback;
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.VictoryLabel = void 0;
7
- var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty"));
8
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
9
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
10
10
  var _victoryPortal = require("../victory-portal/victory-portal");
11
11
  var _rect = require("../victory-primitives/rect");
12
12
  var _text = require("../victory-primitives/text");
@@ -62,7 +62,7 @@ const shouldUseMultilineBackgrounds = props => {
62
62
  backgroundStyle,
63
63
  backgroundPadding
64
64
  } = props;
65
- return Array.isArray(backgroundStyle) && !(0, _isEmpty2.default)(backgroundStyle) || Array.isArray(backgroundPadding) && !(0, _isEmpty2.default)(backgroundPadding);
65
+ return Array.isArray(backgroundStyle) && !(0, _isEmpty.default)(backgroundStyle) || Array.isArray(backgroundPadding) && !(0, _isEmpty.default)(backgroundPadding);
66
66
  };
67
67
  const getStyles = (style, props) => {
68
68
  if (props.disableInlineStyles) {
@@ -73,37 +73,33 @@ const getStyles = (style, props) => {
73
73
  };
74
74
  }
75
75
  const getSingleStyle = s => {
76
- const baseStyles = Helpers.evaluateStyle(s ? (0, _defaults2.default)({}, s, defaultStyles) : defaultStyles, props);
76
+ const baseStyles = Helpers.evaluateStyle(s ? (0, _defaults.default)({}, s, defaultStyles) : defaultStyles, props);
77
77
  return Object.assign({}, baseStyles, {
78
78
  fontSize: getFontSize(baseStyles)
79
79
  });
80
80
  };
81
- return Array.isArray(style) && !(0, _isEmpty2.default)(style) ? style.map(s => getSingleStyle(s)) : getSingleStyle(style);
81
+ return Array.isArray(style) && !(0, _isEmpty.default)(style) ? style.map(s => getSingleStyle(s)) : getSingleStyle(style);
82
82
  };
83
83
  const getBackgroundStyles = (style, props) => {
84
84
  if (!style) {
85
85
  return undefined;
86
86
  }
87
- return Array.isArray(style) && !(0, _isEmpty2.default)(style) ? style.map(s => Helpers.evaluateStyle(s, props)) : Helpers.evaluateStyle(style, props);
87
+ return Array.isArray(style) && !(0, _isEmpty.default)(style) ? style.map(s => Helpers.evaluateStyle(s, props)) : Helpers.evaluateStyle(style, props);
88
88
  };
89
89
  const getBackgroundPadding = props => {
90
90
  if (props.backgroundPadding && Array.isArray(props.backgroundPadding)) {
91
91
  return props.backgroundPadding.map(backgroundPadding => {
92
92
  const padding = Helpers.evaluateProp(backgroundPadding, props);
93
- return Helpers.getPadding({
94
- padding
95
- });
93
+ return Helpers.getPadding(padding);
96
94
  });
97
95
  }
98
96
  const padding = Helpers.evaluateProp(props.backgroundPadding, props);
99
- return Helpers.getPadding({
100
- padding
101
- });
97
+ return Helpers.getPadding(padding);
102
98
  };
103
99
  const getLineHeight = props => {
104
100
  const lineHeight = Helpers.evaluateProp(props.lineHeight, props);
105
101
  if (Array.isArray(lineHeight)) {
106
- return (0, _isEmpty2.default)(lineHeight) ? [1] : lineHeight;
102
+ return (0, _isEmpty.default)(lineHeight) ? [1] : lineHeight;
107
103
  }
108
104
  return lineHeight;
109
105
  };
@@ -223,7 +219,7 @@ const getFullBackground = (calculatedProps, tspanValues) => {
223
219
  x: inline ? xCoordinate - backgroundPadding.left : xCoordinate + dx - backgroundPadding.left,
224
220
  y: yCoordinate
225
221
  };
226
- return /*#__PURE__*/_react.default.cloneElement(backgroundComponent, (0, _defaults2.default)({}, backgroundComponent.props, backgroundProps));
222
+ return /*#__PURE__*/_react.default.cloneElement(backgroundComponent, (0, _defaults.default)({}, backgroundComponent.props, backgroundProps));
227
223
  };
228
224
  const getInlineXOffset = (calculatedProps, textElements, index) => {
229
225
  const {
@@ -293,7 +289,7 @@ const getChildBackgrounds = (calculatedProps, tspanValues) => {
293
289
  x: xCoord - padding.left,
294
290
  y: yCoord
295
291
  };
296
- return /*#__PURE__*/_react.default.cloneElement(backgroundComponent, (0, _defaults2.default)({}, backgroundComponent.props, backgroundProps));
292
+ return /*#__PURE__*/_react.default.cloneElement(backgroundComponent, (0, _defaults.default)({}, backgroundComponent.props, backgroundProps));
297
293
  });
298
294
  };
299
295
  const getBackgroundElement = (calculatedProps, tspanValues) => {
@@ -439,7 +435,7 @@ const defaultProps = {
439
435
  lineHeight: 1
440
436
  };
441
437
  const VictoryLabel = initialProps => {
442
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
438
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
443
439
  if (props.text === null || props.text === undefined) {
444
440
  return null;
445
441
  }
@@ -4,15 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.VictoryPortal = void 0;
7
- var _uniqueId2 = _interopRequireDefault(require("lodash/uniqueId"));
8
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
9
7
  var _react = _interopRequireWildcard(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
+ var _uniqueId = _interopRequireDefault(require("lodash/uniqueId"));
10
10
  var Log = _interopRequireWildcard(require("../victory-util/log"));
11
11
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
12
12
  var _portalContext = require("./portal-context");
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
16
  const defaultProps = {
17
17
  groupComponent: /*#__PURE__*/_react.default.createElement("g", null)
18
18
  };
@@ -21,7 +21,7 @@ const VictoryPortal = initialProps => {
21
21
  ...defaultProps,
22
22
  ...initialProps
23
23
  };
24
- const [id] = (0, _react.useState)((0, _uniqueId2.default)());
24
+ const [id] = (0, _react.useState)((0, _uniqueId.default)());
25
25
  const portalContext = (0, _portalContext.usePortalContext)();
26
26
  if (!portalContext) {
27
27
  const msg = "`renderInPortal` is not supported outside of `VictoryContainer`. " + "Component will be rendered in place";
@@ -36,7 +36,7 @@ const VictoryPortal = initialProps => {
36
36
  groupComponent,
37
37
  standalone: false
38
38
  } : {};
39
- const newProps = (0, _defaults2.default)(standardProps, childProps, Helpers.omit(props, ["children", "groupComponent"]), {
39
+ const newProps = (0, _defaults.default)(standardProps, childProps, Helpers.omit(props, ["children", "groupComponent"]), {
40
40
  key: childProps.key ?? id
41
41
  });
42
42
  const child = children && /*#__PURE__*/_react.default.cloneElement(children, newProps);
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Arc = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var _path = require("./path");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -69,7 +69,7 @@ const defaultProps = {
69
69
  shapeRendering: "auto"
70
70
  };
71
71
  const Arc = initialProps => {
72
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
72
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
73
73
  return /*#__PURE__*/_react.default.cloneElement(props.pathComponent, {
74
74
  ...props.events,
75
75
  "aria-label": props.ariaLabel,
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Background = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var _rect = require("./rect");
11
11
  var _circle = require("./circle");
@@ -29,7 +29,7 @@ const defaultProps = {
29
29
  shapeRendering: "auto"
30
30
  };
31
31
  const Background = initialProps => {
32
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
32
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
33
33
  return props.polar ? /*#__PURE__*/_react.default.cloneElement(props.circleComponent, {
34
34
  ...props.events,
35
35
  style: props.style,
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Border = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var _rect = require("./rect");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -41,7 +41,7 @@ const defaultProps = {
41
41
  shapeRendering: "auto"
42
42
  };
43
43
  const Border = initialProps => {
44
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
44
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
45
45
  return /*#__PURE__*/_react.default.cloneElement(props.rectComponent, {
46
46
  ...props.events,
47
47
  "aria-label": props.ariaLabel,
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.LineSegment = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var _line = require("./line");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -41,7 +41,7 @@ const defaultProps = {
41
41
  shapeRendering: "auto"
42
42
  };
43
43
  const LineSegment = initialProps => {
44
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
44
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
45
45
  return /*#__PURE__*/_react.default.cloneElement(props.lineComponent, {
46
46
  ...props.events,
47
47
  "aria-label": props.ariaLabel,
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Point = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var pathHelpers = _interopRequireWildcard(require("../victory-util/point-path-helpers"));
11
11
  var UserProps = _interopRequireWildcard(require("../victory-util/user-props"));
@@ -61,7 +61,7 @@ const defaultProps = {
61
61
  shapeRendering: "auto"
62
62
  };
63
63
  const Point = initialProps => {
64
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
64
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
65
65
  const userProps = UserProps.getSafeUserProps(props);
66
66
  return /*#__PURE__*/_react.default.cloneElement(props.pathComponent, {
67
67
  ...props.events,
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { VictoryCommonPrimitiveProps } from "../victory-util/common-props";
3
2
  export declare const TSpan: (props: VictoryCommonPrimitiveProps) => JSX.Element;
4
3
  //# sourceMappingURL=tspan.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { VictoryCommonPrimitiveProps } from "../victory-util/common-props";
2
- export declare type ScatterSymbolType = "circle" | "cross" | "diamond" | "plus" | "minus" | "square" | "star" | "triangleDown" | "triangleUp";
2
+ export type ScatterSymbolType = "circle" | "cross" | "diamond" | "plus" | "minus" | "square" | "star" | "triangleDown" | "triangleUp";
3
3
  export interface VictoryPrimitiveShapeProps extends VictoryCommonPrimitiveProps {
4
4
  desc?: string;
5
5
  rx?: number;
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import { VictoryCommonPrimitiveProps } from "../victory-util/common-props";
3
- export declare type WhiskerAxes = {
3
+ export type WhiskerAxes = {
4
4
  x1?: number;
5
5
  x2?: number;
6
6
  y1?: number;
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Whisker = void 0;
7
- var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
8
7
  var _react = _interopRequireDefault(require("react"));
8
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
9
9
  var Helpers = _interopRequireWildcard(require("../victory-util/helpers"));
10
10
  var _line = require("./line");
11
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -40,7 +40,7 @@ const defaultProps = {
40
40
  shapeRendering: "auto"
41
41
  };
42
42
  const Whisker = initialProps => {
43
- const props = evaluateProps((0, _defaults2.default)({}, initialProps, defaultProps));
43
+ const props = evaluateProps((0, _defaults.default)({}, initialProps, defaultProps));
44
44
  const {
45
45
  ariaLabel,
46
46
  groupComponent,