victory-core 17.2.6 → 17.2.7

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/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  VictoryCore Changelog
2
2
  =====================
3
3
 
4
+ ## 17.2.7 (2017-08-22)
5
+
6
+ - [291](https://github.com/FormidableLabs/victory-core/pull/291) Domain should include negative y0 values
7
+ - [292](https://github.com/FormidableLabs/victory-core/pull/292) Fix single point domain logic for dates
8
+
4
9
  ## 17.2.6 (2017-08-19)
5
10
 
6
11
  - [290](https://github.com/FormidableLabs/victory-core/pull/290) Bugfix: VictoryPortal with VictoryZoomContainer
@@ -25239,27 +25239,36 @@ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr
25239
25239
  * @returns {Array} the domain for the given axis
25240
25240
  */
25241
25241
  getDomainWithZero: function (props, axis) {
25242
- var _this = this;
25243
-
25244
25242
  var propsDomain = this.getDomainFromProps(props, axis);
25245
25243
  if (propsDomain) {
25246
25244
  return this.cleanDomain(this.padDomain(propsDomain, props, axis), props, axis);
25247
25245
  }
25248
25246
  var horizontal = props.horizontal;
25249
25247
 
25250
- var ensureZero = function (domain) {
25251
- var isDependent = axis === "y" && !horizontal || axis === "x" && horizontal;
25252
- var min = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue(domain, 0);
25253
- var max = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMaxValue(domain, 0);
25254
- var zeroDomain = isDependent ? [min, max] : domain;
25255
- return _this.padDomain(zeroDomain, props, axis);
25248
+ var ensureZero = function (domain, dataset) {
25249
+ var currentAxis = __WEBPACK_IMPORTED_MODULE_6__helpers__["a" /* default */].getCurrentAxis(axis, horizontal);
25250
+ if (currentAxis === "x") {
25251
+ return domain;
25252
+ } else if (!dataset) {
25253
+ return [__WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue(domain, 0), __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMaxValue(domain, 0)];
25254
+ }
25255
+ var flatData = __WEBPACK_IMPORTED_MODULE_3_lodash_flatten___default()(dataset);
25256
+ var minData = flatData.map(function (datum) {
25257
+ return datum["_" + currentAxis + "0"] || 0;
25258
+ });
25259
+ var maxData = flatData.map(function (datum) {
25260
+ return datum["_" + currentAxis + "1"] || datum["_" + currentAxis] || 0;
25261
+ });
25262
+ var min = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue([].concat(_toConsumableArray(domain), _toConsumableArray(minData)));
25263
+ var max = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMaxValue([].concat(_toConsumableArray(domain), _toConsumableArray(maxData)));
25264
+ return [min, max];
25256
25265
  };
25257
25266
  var categoryDomain = this.getDomainFromCategories(props, axis);
25258
25267
  if (categoryDomain) {
25259
25268
  return this.cleanDomain(this.padDomain(ensureZero(categoryDomain), props, axis), props, axis);
25260
25269
  }
25261
25270
  var dataset = __WEBPACK_IMPORTED_MODULE_4__data__["a" /* default */].getData(props);
25262
- var domain = ensureZero(this.getDomainFromData(props, axis, dataset));
25271
+ var domain = ensureZero(this.getDomainFromData(props, axis, dataset), dataset);
25263
25272
  return this.cleanDomain(this.padDomain(domain, props, axis), props, axis);
25264
25273
  },
25265
25274
 
@@ -25289,18 +25298,21 @@ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr
25289
25298
  */
25290
25299
  getDomainFromData: function (props, axis, dataset) {
25291
25300
  var currentAxis = __WEBPACK_IMPORTED_MODULE_6__helpers__["a" /* default */].getCurrentAxis(axis, props.horizontal);
25292
- var allData = __WEBPACK_IMPORTED_MODULE_3_lodash_flatten___default()(dataset).map(function (datum) {
25293
- return datum["_" + currentAxis];
25301
+ var flatData = __WEBPACK_IMPORTED_MODULE_3_lodash_flatten___default()(dataset);
25302
+ var allData = flatData.map(function (datum) {
25303
+ return typeof datum["_" + currentAxis + "1"] === "undefined" ? datum["_" + currentAxis] : datum["_" + currentAxis + "1"];
25304
+ });
25305
+ var allMinData = flatData.map(function (datum) {
25306
+ return typeof datum["_" + currentAxis + "0"] === "undefined" ? datum["_" + currentAxis] : datum["_" + currentAxis + "0"];
25294
25307
  });
25295
-
25296
25308
  if (allData.length < 1) {
25297
25309
  return __WEBPACK_IMPORTED_MODULE_5__scale__["a" /* default */].getBaseScale(props, axis).domain();
25298
25310
  }
25299
25311
 
25300
- var min = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue(allData);
25312
+ var min = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue(allMinData);
25301
25313
  var max = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMaxValue(allData);
25302
25314
  var domain = void 0;
25303
- if (min === max) {
25315
+ if (+min === +max) {
25304
25316
  domain = this.getSinglePointDomain(max);
25305
25317
  } else {
25306
25318
  domain = [min, max];
@@ -25311,10 +25323,11 @@ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr
25311
25323
  getSinglePointDomain: function (val) {
25312
25324
  // d3-scale does not properly resolve very small differences.
25313
25325
  // eslint-disable-next-line no-magic-numbers
25314
- var verySmallNumber = Math.pow(10, -15);
25315
- var adjustedMin = val instanceof Date ? new Date(val - 1) : val - verySmallNumber;
25316
- var adjustedMax = val instanceof Date ? new Date(val + 1) : val + verySmallNumber;
25317
- return [adjustedMin, adjustedMax];
25326
+ var verySmallNumber = Math.pow(10, -10);
25327
+ var verySmallDate = 1;
25328
+ var min = val instanceof Date ? new Date(+val - verySmallDate) : val - verySmallNumber;
25329
+ var max = val instanceof Date ? new Date(+val + verySmallDate) : val + verySmallNumber;
25330
+ return [min, max];
25318
25331
  },
25319
25332
  getSymmetricDomain: function (domain, data) {
25320
25333
  var processedData = __WEBPACK_IMPORTED_MODULE_0_lodash_sortedUniq___default()(data.sort(function (a, b) {
@@ -25405,8 +25418,8 @@ function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr
25405
25418
  // use greatest min / max
25406
25419
  var domainMin = cumulativeMin < 0 ? cumulativeMin : __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMinValue(globalDomain);
25407
25420
  var domainMax = __WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */].getMaxValue.apply(__WEBPACK_IMPORTED_MODULE_7__collection__["a" /* default */], [globalDomain].concat(_toConsumableArray(cumulativeMaxArray)));
25408
- if (domainMin === domainMax) {
25409
- return this.getSinglePointDomain(domainMax);
25421
+ if (+domainMin === +domainMax) {
25422
+ return this.getSinglePointDomain(domainMin);
25410
25423
  }
25411
25424
  return [domainMin, domainMax];
25412
25425
  },