victory-core 36.7.0 → 36.8.2

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 (154) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/victory-core.js +371 -289
  3. package/dist/victory-core.min.js +1 -1
  4. package/es/victory-label/victory-label.js +12 -12
  5. package/es/victory-primitives/arc.d.ts +0 -5
  6. package/es/victory-primitives/arc.js +7 -7
  7. package/es/victory-primitives/background.d.ts +0 -6
  8. package/es/victory-primitives/background.js +8 -8
  9. package/es/victory-primitives/border.d.ts +0 -5
  10. package/es/victory-primitives/border.js +7 -7
  11. package/es/victory-primitives/circle.d.ts +2 -2
  12. package/es/victory-primitives/circle.js +30 -16
  13. package/es/victory-primitives/clip-path.d.ts +1 -8
  14. package/es/victory-primitives/clip-path.js +4 -10
  15. package/es/victory-primitives/line-segment.d.ts +0 -5
  16. package/es/victory-primitives/line-segment.js +7 -7
  17. package/es/victory-primitives/line.d.ts +2 -2
  18. package/es/victory-primitives/line.js +30 -16
  19. package/es/victory-primitives/path.d.ts +1 -1
  20. package/es/victory-primitives/path.js +24 -12
  21. package/es/victory-primitives/point.d.ts +0 -5
  22. package/es/victory-primitives/point.js +7 -7
  23. package/es/victory-primitives/rect.d.ts +2 -2
  24. package/es/victory-primitives/rect.js +30 -16
  25. package/es/victory-primitives/text.d.ts +1 -9
  26. package/es/victory-primitives/text.js +23 -13
  27. package/es/victory-primitives/tspan.js +30 -5
  28. package/es/victory-primitives/whisker.d.ts +0 -6
  29. package/es/victory-primitives/whisker.js +8 -8
  30. package/es/victory-util/add-events.d.ts +2 -2
  31. package/es/victory-util/add-events.js +4 -2
  32. package/es/victory-util/helpers.js +4 -3
  33. package/es/victory-util/textsize.js +7 -0
  34. package/es/victory-util/user-props.js +2 -16
  35. package/lib/victory-label/victory-label.js +13 -12
  36. package/lib/victory-primitives/arc.d.ts +0 -5
  37. package/lib/victory-primitives/arc.js +8 -7
  38. package/lib/victory-primitives/background.d.ts +0 -6
  39. package/lib/victory-primitives/background.js +9 -8
  40. package/lib/victory-primitives/border.d.ts +0 -5
  41. package/lib/victory-primitives/border.js +8 -7
  42. package/lib/victory-primitives/circle.d.ts +2 -2
  43. package/lib/victory-primitives/circle.js +34 -18
  44. package/lib/victory-primitives/clip-path.d.ts +1 -8
  45. package/lib/victory-primitives/clip-path.js +5 -12
  46. package/lib/victory-primitives/line-segment.d.ts +0 -5
  47. package/lib/victory-primitives/line-segment.js +8 -7
  48. package/lib/victory-primitives/line.d.ts +2 -2
  49. package/lib/victory-primitives/line.js +34 -18
  50. package/lib/victory-primitives/path.d.ts +1 -1
  51. package/lib/victory-primitives/path.js +25 -12
  52. package/lib/victory-primitives/point.d.ts +0 -5
  53. package/lib/victory-primitives/point.js +8 -7
  54. package/lib/victory-primitives/rect.d.ts +2 -2
  55. package/lib/victory-primitives/rect.js +34 -18
  56. package/lib/victory-primitives/text.d.ts +1 -9
  57. package/lib/victory-primitives/text.js +24 -14
  58. package/lib/victory-primitives/tspan.js +31 -5
  59. package/lib/victory-primitives/whisker.d.ts +0 -6
  60. package/lib/victory-primitives/whisker.js +9 -8
  61. package/lib/victory-util/add-events.d.ts +2 -2
  62. package/lib/victory-util/add-events.js +4 -2
  63. package/lib/victory-util/helpers.js +8 -3
  64. package/lib/victory-util/textsize.js +7 -0
  65. package/lib/victory-util/user-props.js +3 -16
  66. package/package.json +2 -2
  67. package/src/victory-label/victory-label.tsx +11 -12
  68. package/src/victory-primitives/arc.tsx +7 -7
  69. package/src/victory-primitives/background.tsx +8 -8
  70. package/src/victory-primitives/border.tsx +7 -7
  71. package/src/victory-primitives/circle.tsx +24 -14
  72. package/src/victory-primitives/clip-path.tsx +1 -13
  73. package/src/victory-primitives/line-segment.tsx +7 -7
  74. package/src/victory-primitives/line.tsx +25 -14
  75. package/src/victory-primitives/path.tsx +23 -17
  76. package/src/victory-primitives/point.tsx +7 -7
  77. package/src/victory-primitives/rect.tsx +25 -14
  78. package/src/victory-primitives/text.tsx +13 -10
  79. package/src/victory-primitives/tspan.tsx +15 -4
  80. package/src/victory-primitives/whisker.tsx +8 -8
  81. package/src/victory-util/add-events.tsx +14 -5
  82. package/src/victory-util/helpers.ts +5 -3
  83. package/src/victory-util/textsize.ts +5 -1
  84. package/src/victory-util/user-props.ts +2 -14
  85. package/es/v37/clone.d.ts +0 -23
  86. package/es/v37/clone.js +0 -32
  87. package/es/v37/index.d.ts +0 -5
  88. package/es/v37/index.js +0 -4
  89. package/es/v37/victory-state/defaults.d.ts +0 -3
  90. package/es/v37/victory-state/defaults.js +0 -2
  91. package/es/v37/victory-state/helpers/get-axis-data.d.ts +0 -3
  92. package/es/v37/victory-state/helpers/get-axis-data.js +0 -14
  93. package/es/v37/victory-state/helpers/get-data.d.ts +0 -15
  94. package/es/v37/victory-state/helpers/get-data.js +0 -87
  95. package/es/v37/victory-state/helpers/get-domain.d.ts +0 -6
  96. package/es/v37/victory-state/helpers/get-domain.js +0 -67
  97. package/es/v37/victory-state/helpers/get-range.d.ts +0 -6
  98. package/es/v37/victory-state/helpers/get-range.js +0 -36
  99. package/es/v37/victory-state/helpers/get-scale.d.ts +0 -6
  100. package/es/v37/victory-state/helpers/get-scale.js +0 -58
  101. package/es/v37/victory-state/index.d.ts +0 -4
  102. package/es/v37/victory-state/index.js +0 -3
  103. package/es/v37/victory-state/types.d.ts +0 -24
  104. package/es/v37/victory-state/types.js +0 -1
  105. package/es/v37/victory-state/victory-provider.d.ts +0 -21
  106. package/es/v37/victory-state/victory-provider.js +0 -148
  107. package/es/v37/victory-state/with-victory-provider.d.ts +0 -7
  108. package/es/v37/victory-state/with-victory-provider.js +0 -43
  109. package/es/v37/with-container.d.ts +0 -5
  110. package/es/v37/with-container.js +0 -32
  111. package/es/v37/with-normalized-props.d.ts +0 -17
  112. package/es/v37/with-normalized-props.js +0 -18
  113. package/lib/v37/clone.d.ts +0 -23
  114. package/lib/v37/clone.js +0 -43
  115. package/lib/v37/index.d.ts +0 -5
  116. package/lib/v37/index.js +0 -57
  117. package/lib/v37/victory-state/defaults.d.ts +0 -3
  118. package/lib/v37/victory-state/defaults.js +0 -10
  119. package/lib/v37/victory-state/helpers/get-axis-data.d.ts +0 -3
  120. package/lib/v37/victory-state/helpers/get-axis-data.js +0 -22
  121. package/lib/v37/victory-state/helpers/get-data.d.ts +0 -15
  122. package/lib/v37/victory-state/helpers/get-data.js +0 -98
  123. package/lib/v37/victory-state/helpers/get-domain.d.ts +0 -6
  124. package/lib/v37/victory-state/helpers/get-domain.js +0 -81
  125. package/lib/v37/victory-state/helpers/get-range.d.ts +0 -6
  126. package/lib/v37/victory-state/helpers/get-range.js +0 -45
  127. package/lib/v37/victory-state/helpers/get-scale.d.ts +0 -6
  128. package/lib/v37/victory-state/helpers/get-scale.js +0 -73
  129. package/lib/v37/victory-state/index.d.ts +0 -4
  130. package/lib/v37/victory-state/index.js +0 -44
  131. package/lib/v37/victory-state/types.d.ts +0 -24
  132. package/lib/v37/victory-state/types.js +0 -1
  133. package/lib/v37/victory-state/victory-provider.d.ts +0 -21
  134. package/lib/v37/victory-state/victory-provider.js +0 -175
  135. package/lib/v37/victory-state/with-victory-provider.d.ts +0 -7
  136. package/lib/v37/victory-state/with-victory-provider.js +0 -56
  137. package/lib/v37/with-container.d.ts +0 -5
  138. package/lib/v37/with-container.js +0 -45
  139. package/lib/v37/with-normalized-props.d.ts +0 -17
  140. package/lib/v37/with-normalized-props.js +0 -29
  141. package/src/v37/clone.tsx +0 -30
  142. package/src/v37/index.tsx +0 -4
  143. package/src/v37/victory-state/defaults.ts +0 -2
  144. package/src/v37/victory-state/helpers/get-axis-data.ts +0 -14
  145. package/src/v37/victory-state/helpers/get-data.ts +0 -78
  146. package/src/v37/victory-state/helpers/get-domain.ts +0 -62
  147. package/src/v37/victory-state/helpers/get-range.ts +0 -39
  148. package/src/v37/victory-state/helpers/get-scale.ts +0 -67
  149. package/src/v37/victory-state/index.ts +0 -3
  150. package/src/v37/victory-state/types.ts +0 -32
  151. package/src/v37/victory-state/victory-provider.tsx +0 -152
  152. package/src/v37/victory-state/with-victory-provider.tsx +0 -53
  153. package/src/v37/with-container.tsx +0 -38
  154. package/src/v37/with-normalized-props.tsx +0 -43
@@ -1,87 +0,0 @@
1
- import _orderBy from "lodash/orderBy";
2
- import _isNil from "lodash/isNil";
3
- import _get from "lodash/get";
4
-
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
-
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
-
9
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
10
-
11
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
12
-
13
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
14
-
15
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
-
17
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
-
19
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
20
-
21
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
22
-
23
- import { isKeyValueObject } from "../../../victory-util/type-helpers";
24
-
25
- function getValue(datum, key) {
26
- if (typeof datum === "object") {
27
- return _get(datum, key);
28
- }
29
-
30
- return datum;
31
- }
32
-
33
- function getNumericValue(value, fallback) {
34
- if (typeof value === "number" || value instanceof Date) {
35
- return value;
36
- }
37
-
38
- return fallback;
39
- }
40
-
41
- export function getData() {
42
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
43
- _ref$x = _ref.x,
44
- xAccessor = _ref$x === void 0 ? "x" : _ref$x,
45
- _ref$y = _ref.y,
46
- yAccessor = _ref$y === void 0 ? "y" : _ref$y,
47
- sortKey = _ref.sortKey,
48
- _ref$sortOrder = _ref.sortOrder,
49
- sortOrder = _ref$sortOrder === void 0 ? "ascending" : _ref$sortOrder,
50
- _ref$data = _ref.data,
51
- data = _ref$data === void 0 ? [] : _ref$data;
52
-
53
- var formattedData = data.reduce(function (nonNullData, datum, index) {
54
- var x = getValue(datum, xAccessor);
55
- var y = getValue(datum, yAccessor);
56
-
57
- if (_isNil(x) || _isNil(y)) {
58
- return nonNullData;
59
- }
60
-
61
- var _x = getNumericValue(x, index + 1);
62
-
63
- var _y = getNumericValue(y, index + 1); // TODO: Get this value if it is different
64
-
65
-
66
- var xName = typeof x === "string" ? x : undefined;
67
- var yName = typeof y === "string" ? y : undefined;
68
- var additionalProperties = isKeyValueObject(datum) ? datum : {};
69
- return [].concat(_toConsumableArray(nonNullData), [_objectSpread(_objectSpread(_objectSpread({
70
- x: x,
71
- y: y,
72
- _x: _x,
73
- _y: _y
74
- }, xName ? {
75
- xName: xName
76
- } : {}), yName ? {
77
- yName: yName
78
- } : {}), additionalProperties)]);
79
- }, []);
80
-
81
- if (sortKey) {
82
- var order = sortOrder === "descending" ? "desc" : "asc";
83
- return _orderBy(formattedData, sortKey, order);
84
- }
85
-
86
- return formattedData;
87
- }
@@ -1,6 +0,0 @@
1
- import { VictoryProviderProps } from "../types";
2
- import { AxisType, DomainTuple } from "../../../types/prop-types";
3
- declare type DomainProps = Pick<VictoryProviderProps, "data" | "domain" | "maxDomain" | "minDomain" | "includeZero">;
4
- export declare function getDomain({ data, includeZero, ...props }: DomainProps, axis: AxisType): DomainTuple;
5
- export {};
6
- //# sourceMappingURL=get-domain.d.ts.map
@@ -1,67 +0,0 @@
1
- var _excluded = ["data", "includeZero"];
2
-
3
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
-
5
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
-
7
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
-
9
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
11
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
-
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
-
15
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
16
-
17
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
18
-
19
- import * as d3Array from "victory-vendor/d3-array";
20
- import { getAxisData } from "./get-axis-data";
21
- import { getValueForAxis, isDate, isTuple } from "../../../victory-util/type-helpers";
22
- // TODO: What should this default value be?
23
- var DEFAULT_MIN = 0;
24
- var DEFAULT_MAX = 1;
25
-
26
- function getDomainFromMinMax() {
27
- var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_MIN;
28
- var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_MAX;
29
- // TODO: Victoy currently has some really specific logic in getDomainFromMinMax
30
- // that adds or subtracts a very small number from each domain to avoid the min
31
- // and max being the same value. This has resulted in some weird behavior in the
32
- // past, so we should revisit this.
33
- return [min, max];
34
- }
35
-
36
- export function getDomain(_ref, axis) {
37
- var _ref$data = _ref.data,
38
- data = _ref$data === void 0 ? [] : _ref$data,
39
- includeZero = _ref.includeZero,
40
- props = _objectWithoutProperties(_ref, _excluded);
41
-
42
- var domainFromProps = getValueForAxis(props.domain, axis);
43
- var axisData = getAxisData(data, axis);
44
-
45
- if (includeZero && axis === "y") {
46
- axisData.push(0);
47
- }
48
-
49
- if (isTuple(domainFromProps)) {
50
- return domainFromProps;
51
- }
52
-
53
- var _ref2 = d3Array.extent(axisData),
54
- _ref3 = _slicedToArray(_ref2, 2),
55
- min = _ref3[0],
56
- max = _ref3[1];
57
-
58
- var minDomain = getValueForAxis(props.minDomain, axis) || min;
59
- var maxDomain = getValueForAxis(props.maxDomain, axis) || max;
60
-
61
- if (isDate(minDomain) && isDate(maxDomain)) {
62
- return [min, max];
63
- } // TODO: There might be an edge case here where we have mixed types
64
-
65
-
66
- return getDomainFromMinMax(minDomain, maxDomain);
67
- }
@@ -1,6 +0,0 @@
1
- import { AxisType } from "../../../types/prop-types";
2
- import { VictoryProviderProps } from "../types";
3
- declare type RangeProps = Pick<VictoryProviderProps, "range" | "padding" | "height" | "width">;
4
- export declare function getRange({ range, height, width, ...props }: RangeProps, axis: AxisType): number[];
5
- export {};
6
- //# sourceMappingURL=get-range.d.ts.map
@@ -1,36 +0,0 @@
1
- var _excluded = ["range", "height", "width"];
2
-
3
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
-
5
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
-
7
- import { getPadding } from "../../../victory-util/helpers";
8
- import { getValueForAxis, isTuple } from "../../../victory-util/type-helpers";
9
- // TODO: Should we store these defaults somewhere?
10
- var DEFAULT_HEIGHT = 300;
11
- var DEFAULT_WIDTH = 450; // TODO: This does not include polar range
12
-
13
- export function getRange(_ref, axis) {
14
- var range = _ref.range,
15
- _ref$height = _ref.height,
16
- height = _ref$height === void 0 ? DEFAULT_HEIGHT : _ref$height,
17
- _ref$width = _ref.width,
18
- width = _ref$width === void 0 ? DEFAULT_WIDTH : _ref$width,
19
- props = _objectWithoutProperties(_ref, _excluded);
20
-
21
- var rangeFromProps = getValueForAxis(range, axis);
22
-
23
- if (isTuple(rangeFromProps)) {
24
- return rangeFromProps;
25
- } // TODO: Convert this to TS
26
-
27
-
28
- var padding = getPadding({
29
- padding: props.padding
30
- });
31
- var rangeForAxis = {
32
- x: [padding.left, width - padding.right],
33
- y: [height - padding.top, padding.bottom]
34
- };
35
- return rangeForAxis[axis];
36
- }
@@ -1,6 +0,0 @@
1
- import { AxisType, D3ScaleFn } from "../../../types/prop-types";
2
- import { VictoryProviderProps } from "../types";
3
- declare type ScaleProps = Pick<VictoryProviderProps, "data" | "scale">;
4
- export declare function getScale({ data, ...props }: ScaleProps, axis: AxisType): D3ScaleFn;
5
- export {};
6
- //# sourceMappingURL=get-scale.d.ts.map
@@ -1,58 +0,0 @@
1
- var _excluded = ["data"];
2
-
3
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
-
5
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
-
7
- import { scaleLinear, scaleTime, scaleLog, scaleSqrt } from "victory-vendor/d3-scale";
8
- import * as Collection from "../../../victory-util/collection";
9
- import { getValueForAxis, isFunction } from "../../../victory-util/type-helpers";
10
- import { getAxisData } from "./get-axis-data";
11
- var DEFAULT_SCALE = scaleLinear;
12
-
13
- function isD3Scale(scale) {
14
- return isFunction(scale) && isFunction(scale().copy) && isFunction(scale().domain) && isFunction(scale().range);
15
- }
16
-
17
- function getD3ScaleFromString(scale) {
18
- switch (scale) {
19
- case "linear":
20
- return scaleLinear;
21
-
22
- case "time":
23
- return scaleTime;
24
-
25
- case "log":
26
- return scaleLog;
27
-
28
- case "sqrt":
29
- return scaleSqrt;
30
-
31
- default:
32
- return DEFAULT_SCALE;
33
- }
34
- }
35
-
36
- export function getScale(_ref, axis) {
37
- var _ref$data = _ref.data,
38
- data = _ref$data === void 0 ? [] : _ref$data,
39
- props = _objectWithoutProperties(_ref, _excluded);
40
-
41
- var scale = getValueForAxis(props.scale, axis);
42
-
43
- if (isD3Scale(scale)) {
44
- return scale;
45
- }
46
-
47
- if (typeof scale === "string") {
48
- return getD3ScaleFromString(scale);
49
- }
50
-
51
- var axisData = getAxisData(data, axis);
52
-
53
- if (Collection.containsDates(axisData)) {
54
- return scaleTime;
55
- }
56
-
57
- return DEFAULT_SCALE;
58
- }
@@ -1,4 +0,0 @@
1
- export * from "./victory-provider";
2
- export * from "./types";
3
- export * from "./with-victory-provider";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1,3 +0,0 @@
1
- export * from "./victory-provider";
2
- export * from "./types";
3
- export * from "./with-victory-provider";
@@ -1,24 +0,0 @@
1
- /// <reference types="react" />
2
- import { D3ScaleFn, Datum, DomainTuple, RangeTuple, ScalePropType, ValueOrAxes } from "../../types/prop-types";
3
- import { PaddingProps } from "../../victory-theme/types";
4
- export interface VictoryCalculatedStateProps {
5
- data?: Datum[];
6
- domain?: ValueOrAxes<DomainTuple>;
7
- height?: number;
8
- includeZero?: boolean;
9
- maxDomain?: ValueOrAxes<number>;
10
- minDomain?: ValueOrAxes<number>;
11
- padding?: PaddingProps;
12
- range?: ValueOrAxes<RangeTuple>;
13
- samples?: number;
14
- scale?: ValueOrAxes<ScalePropType | D3ScaleFn>;
15
- sortKey?: string;
16
- sortOrder?: "ascending" | "descending";
17
- width?: number;
18
- x?: string;
19
- y?: string;
20
- }
21
- export interface VictoryProviderProps extends VictoryCalculatedStateProps {
22
- children?: React.ReactNode;
23
- }
24
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- export {};
@@ -1,21 +0,0 @@
1
- /// <reference types="react" />
2
- import { D3ScaleFn, DomainTuple, ForAxes } from "../../types/prop-types";
3
- import { FormattedDatum } from "./helpers/get-data";
4
- import { VictoryCalculatedStateProps, VictoryProviderProps } from "./types";
5
- declare type ScaleType = Required<ForAxes<D3ScaleFn>>;
6
- declare type DomainType = Required<ForAxes<DomainTuple>>;
7
- export interface ContextType {
8
- data: FormattedDatum[];
9
- scale: ScaleType;
10
- domain: DomainType;
11
- updateChildProps: (id: symbol, props: VictoryProviderProps | null) => void;
12
- }
13
- export declare function VictoryProvider({ children, ...providerProps }: VictoryProviderProps): JSX.Element;
14
- export declare function useVictoryContextMaybe<T>(selector: (value: ContextType | null) => T): T;
15
- export declare function useVictoryContext<T>(selector: (value: ContextType) => T): T;
16
- export declare function useScale(): ScaleType;
17
- export declare function useData(): FormattedDatum[];
18
- export declare function useDomain(): DomainType;
19
- export declare function useVictoryProviderSync(props: VictoryCalculatedStateProps): void;
20
- export {};
21
- //# sourceMappingURL=victory-provider.d.ts.map
@@ -1,148 +0,0 @@
1
- var _excluded = ["children"];
2
-
3
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
-
5
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
6
-
7
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
-
9
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
-
11
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
12
-
13
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
14
-
15
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
-
17
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
18
-
19
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
20
-
21
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
22
-
23
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
24
-
25
- import * as React from "react";
26
- import { createContext, useContext } from "react";
27
- import { getData } from "./helpers/get-data";
28
- import { getDomain } from "./helpers/get-domain";
29
- import { getRange } from "./helpers/get-range";
30
- import { getScale } from "./helpers/get-scale";
31
- var VictoryContext = /*#__PURE__*/createContext(null);
32
-
33
- function useNormalizedProps() {
34
- var _React$useState = React.useState({}),
35
- _React$useState2 = _slicedToArray(_React$useState, 2),
36
- collectedProps = _React$useState2[0],
37
- setCollectedProps = _React$useState2[1];
38
-
39
- var updateChildProps = React.useCallback(function (id, newProps) {
40
- setCollectedProps(function (prev) {
41
- var result = _objectSpread({}, prev);
42
-
43
- if (newProps === null) {
44
- delete result[id];
45
- } else {
46
- result[id] = newProps;
47
- }
48
-
49
- return result;
50
- });
51
- }, []); // TEMP: combine all props into a single result:
52
- // TODO: instead, we should intelligently aggregate all these props
53
-
54
- var props = Object.values(collectedProps).reduce(function (result, childProps) {
55
- return Object.assign(result, childProps);
56
- }, {});
57
- var data = React.useMemo(function () {
58
- return getData(props);
59
- }, [props]);
60
- var domain = React.useMemo(function () {
61
- return {
62
- x: getDomain(props, "x"),
63
- y: getDomain(props, "y")
64
- };
65
- }, [props]);
66
- var range = React.useMemo(function () {
67
- return {
68
- x: getRange(props, "x"),
69
- y: getRange(props, "y")
70
- };
71
- }, [props]);
72
- var scale = React.useMemo(function () {
73
- var xBaseScaleFn = getScale(props, "x");
74
- var yBaseScaleFn = getScale(props, "y"); // @ts-expect-error: This is a valid scale function
75
-
76
- var xScaleFn = xBaseScaleFn().domain(domain.x).range(range.x); // @ts-expect-error: This is a valid scale function
77
-
78
- var yScaleFn = yBaseScaleFn().domain(domain.y).range(range.y);
79
- return {
80
- x: xScaleFn,
81
- y: yScaleFn
82
- };
83
- }, [props, domain, range]);
84
- var normalizedProps = React.useMemo(function () {
85
- return {
86
- scale: scale,
87
- data: data,
88
- domain: domain,
89
- updateChildProps: updateChildProps
90
- };
91
- }, [scale, data, domain, updateChildProps]);
92
- return normalizedProps;
93
- }
94
-
95
- export function VictoryProvider(_ref) {
96
- var children = _ref.children,
97
- providerProps = _objectWithoutProperties(_ref, _excluded);
98
-
99
- var value = useNormalizedProps(); // TODO: sync the providerProps
100
-
101
- return /*#__PURE__*/React.createElement(VictoryContext.Provider, {
102
- value: value
103
- }, children);
104
- }
105
- export function useVictoryContextMaybe(selector) {
106
- var context = useContext(VictoryContext);
107
- return selector(context);
108
- }
109
- export function useVictoryContext(selector) {
110
- var context = useContext(VictoryContext);
111
-
112
- if (!context) {
113
- throw new Error("useVictoryContext must be used within a VictoryProvider");
114
- }
115
-
116
- return selector(context);
117
- }
118
- export function useScale() {
119
- return useVictoryContext(function (value) {
120
- return value.scale;
121
- });
122
- }
123
- export function useData() {
124
- return useVictoryContext(function (value) {
125
- return value.data;
126
- });
127
- }
128
- export function useDomain() {
129
- return useVictoryContext(function (value) {
130
- return value.domain;
131
- });
132
- } // This function keeps props in sync betwen the VictoryProvider and child components
133
-
134
- export function useVictoryProviderSync(props) {
135
- var updateChildProps = useVictoryContext(function (value) {
136
- return value.updateChildProps;
137
- });
138
-
139
- var _React$useState3 = React.useState(function () {
140
- return Symbol("UniqueIdFor(VictoryProviderChild)");
141
- }),
142
- _React$useState4 = _slicedToArray(_React$useState3, 1),
143
- myId = _React$useState4[0];
144
-
145
- React.useEffect(function () {
146
- updateChildProps(myId, props);
147
- }, [updateChildProps, props, myId]);
148
- }
@@ -1,7 +0,0 @@
1
- import * as React from "react";
2
- import { VictoryCommonProps } from "../../victory-util/common-props";
3
- /**
4
- * Ensures the component is wrapped by a VictoryProvider, if not already.
5
- */
6
- export declare function withVictoryProvider<TComp extends React.FC<TProps>, TProps extends React.PropsWithChildren<VictoryCommonProps>>(Comp: TComp): TComp;
7
- //# sourceMappingURL=with-victory-provider.d.ts.map
@@ -1,43 +0,0 @@
1
- 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); }
2
-
3
- import * as React from "react";
4
- import { useVictoryContextMaybe, VictoryProvider } from "./victory-provider";
5
- import { Clone } from "../clone";
6
-
7
- /* eslint-disable react/prop-types */
8
-
9
- /**
10
- * Ensures the component is wrapped by a VictoryProvider, if not already.
11
- */
12
- export function withVictoryProvider(Comp) {
13
- var WithVictoryProvider = /*#__PURE__*/React.memo(function (props) {
14
- var updateChildProps = useVictoryContextMaybe(function (value) {
15
- return value === null || value === void 0 ? void 0 : value.updateChildProps;
16
- });
17
- var hasParentProvider = !!updateChildProps;
18
- React.useEffect(function () {
19
- if (!hasParentProvider) return;
20
- var id = Symbol("WithVictoryProvider");
21
- updateChildProps(id, props); // eslint-disable-next-line consistent-return
22
-
23
- return function () {
24
- return updateChildProps(id, null);
25
- };
26
- }); // @ts-expect-error "TProps not assignable to LibraryManagedAttributes"
27
-
28
- var result = /*#__PURE__*/React.createElement(Comp, props, props.children);
29
-
30
- if (!hasParentProvider) {
31
- // Wrap with a parent Provider:
32
- result = /*#__PURE__*/React.createElement(VictoryProvider, null, /*#__PURE__*/React.createElement(Clone, _extends({
33
- element: props.containerComponent
34
- }, props), result));
35
- }
36
-
37
- return result;
38
- });
39
- var name = Comp.displayName || Comp.name;
40
- WithVictoryProvider.displayName = name ? "WithVictoryProvider(".concat(name, ")") : "WithVictoryProvider"; // @ts-expect-error "WithVictoryProvider does not overlap with TComp"
41
-
42
- return WithVictoryProvider;
43
- }
@@ -1,5 +0,0 @@
1
- import React from "react";
2
- import { VictoryProviderProps } from "./victory-state";
3
- import { VictoryCommonProps } from "../victory-util/common-props";
4
- export declare function withContainer<Props extends VictoryCommonProps>(WrappedComponent: React.FC<Props>, initialProviderProps?: Partial<VictoryProviderProps>): React.FC<Props>;
5
- //# sourceMappingURL=with-container.d.ts.map
@@ -1,32 +0,0 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
5
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
-
7
- import React from "react";
8
- import { VictoryProvider } from "./victory-state";
9
- import { VictoryContainer } from "../victory-container/victory-container";
10
- var defaultProviderProps = {
11
- width: 450,
12
- height: 300,
13
- padding: 50,
14
- data: []
15
- };
16
- export function withContainer(WrappedComponent) {
17
- var initialProviderProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
18
- return function (props) {
19
- var providerProps = _objectSpread(_objectSpread(_objectSpread({}, defaultProviderProps), initialProviderProps), props);
20
-
21
- var _props$standalone = props.standalone,
22
- standalone = _props$standalone === void 0 ? true : _props$standalone,
23
- _props$containerCompo = props.containerComponent,
24
- containerComponent = _props$containerCompo === void 0 ? /*#__PURE__*/React.createElement(VictoryContainer, null) : _props$containerCompo;
25
-
26
- if (standalone) {
27
- return /*#__PURE__*/React.createElement(VictoryProvider, providerProps, /*#__PURE__*/React.cloneElement(containerComponent, providerProps, /*#__PURE__*/React.createElement(WrappedComponent, props)));
28
- }
29
-
30
- return /*#__PURE__*/React.createElement(WrappedComponent, props);
31
- };
32
- }
@@ -1,17 +0,0 @@
1
- import { VictoryCommonProps } from "../victory-util/common-props";
2
- import React from "react";
3
- import { VictoryProviderProps } from "./victory-state";
4
- declare type FC<TProps> = (props: TProps) => JSX.Element;
5
- export declare function withNormalizedProps<TProps extends React.PropsWithChildren<VictoryCommonProps>, TDefaultPropKeys extends keyof TProps>(config: {
6
- displayName: string;
7
- propTypes?: React.WeakValidationMap<Omit<TProps, keyof VictoryCommonProps>>;
8
- defaultProps: Pick<TProps, TDefaultPropKeys>;
9
- /** @deprecated */
10
- initialProviderProps?: Partial<VictoryProviderProps>;
11
- }, WrappedComponent: React.FC<TProps>): FC<TProps> & {
12
- displayName: string;
13
- defaultProps: Pick<TProps, TDefaultPropKeys>;
14
- propTypes: React.WeakValidationMap<Omit<TProps, keyof VictoryCommonProps>> | undefined;
15
- };
16
- export {};
17
- //# sourceMappingURL=with-normalized-props.d.ts.map
@@ -1,18 +0,0 @@
1
- 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); }
2
-
3
- import React from "react";
4
- import { useVictoryContext, withVictoryProvider } from "./victory-state";
5
- export function withNormalizedProps(config, WrappedComponent) {
6
- WrappedComponent.displayName = config.displayName;
7
- var WithNormalizedProps = withVictoryProvider(function (props) {
8
- var normalizedProps = useVictoryContext(function (v) {
9
- return v;
10
- });
11
- return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, props, normalizedProps), props.children);
12
- });
13
- return Object.assign(WithNormalizedProps, {
14
- displayName: "WithNormalizedProps(".concat(config.displayName),
15
- defaultProps: config.defaultProps,
16
- propTypes: config.propTypes
17
- });
18
- }
@@ -1,23 +0,0 @@
1
- import React from "react";
2
- /**
3
- * Syntax sugar for `React.cloneElement`, so that we can use JSX instead
4
- *
5
- * @example
6
- * // Before:
7
- * const children = React.cloneElement(props.groupComponent, { prop2 }, props.children);
8
- * return React.cloneElement(props.containerComponent, { prop1 }, children);
9
- *
10
- * // After:
11
- * return (
12
- * <Clone element={props.containerComponent} prop1={prop1}>
13
- * <Clone element={props.groupComponent} prop2={prop2}>
14
- * {props.children}
15
- * </Clone>
16
- * </Clone>
17
- * );
18
- */
19
- export declare const Clone: <TProps>(props: React.PropsWithChildren<{
20
- element: React.ReactElement<TProps, string | React.JSXElementConstructor<any>>;
21
- children?: React.ReactNode | React.ReactNode[];
22
- } & TProps>) => React.ReactElement<TProps, string | React.JSXElementConstructor<any>>;
23
- //# sourceMappingURL=clone.d.ts.map