@semcore/d3-chart 1.6.3 → 1.6.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 (92) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/lib/cjs/Area.js +6 -6
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +14 -14
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +5 -5
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/Bubble.js +9 -9
  9. package/lib/cjs/Bubble.js.map +1 -1
  10. package/lib/cjs/ClipPath.js +28 -8
  11. package/lib/cjs/ClipPath.js.map +1 -1
  12. package/lib/cjs/Donut.js +5 -5
  13. package/lib/cjs/Donut.js.map +1 -1
  14. package/lib/cjs/Dots.js +11 -7
  15. package/lib/cjs/Dots.js.map +1 -1
  16. package/lib/cjs/GroupBar.js +6 -6
  17. package/lib/cjs/GroupBar.js.map +1 -1
  18. package/lib/cjs/HorizontalBar.js +5 -5
  19. package/lib/cjs/HorizontalBar.js.map +1 -1
  20. package/lib/cjs/Hover.js +3 -3
  21. package/lib/cjs/Hover.js.map +1 -1
  22. package/lib/cjs/Line.js +5 -5
  23. package/lib/cjs/Line.js.map +1 -1
  24. package/lib/cjs/Plot.js +8 -4
  25. package/lib/cjs/Plot.js.map +1 -1
  26. package/lib/cjs/ResponsiveContainer.js +8 -4
  27. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  28. package/lib/cjs/ScatterPlot.js +6 -6
  29. package/lib/cjs/ScatterPlot.js.map +1 -1
  30. package/lib/cjs/StackBar.js +8 -8
  31. package/lib/cjs/StackBar.js.map +1 -1
  32. package/lib/cjs/StackedArea.js +9 -9
  33. package/lib/cjs/StackedArea.js.map +1 -1
  34. package/lib/cjs/Tooltip.js +17 -11
  35. package/lib/cjs/Tooltip.js.map +1 -1
  36. package/lib/cjs/Venn.js +4 -4
  37. package/lib/cjs/Venn.js.map +1 -1
  38. package/lib/cjs/color.js +1 -1
  39. package/lib/cjs/createElement.js +15 -7
  40. package/lib/cjs/createElement.js.map +1 -1
  41. package/lib/cjs/index.js +36 -36
  42. package/lib/cjs/utils.js +17 -17
  43. package/lib/cjs/utils.js.map +1 -1
  44. package/lib/es6/Area.js +6 -6
  45. package/lib/es6/Area.js.map +1 -1
  46. package/lib/es6/Axis.js +14 -14
  47. package/lib/es6/Axis.js.map +1 -1
  48. package/lib/es6/Bar.js +5 -5
  49. package/lib/es6/Bar.js.map +1 -1
  50. package/lib/es6/Bubble.js +9 -9
  51. package/lib/es6/Bubble.js.map +1 -1
  52. package/lib/es6/ClipPath.js +21 -6
  53. package/lib/es6/ClipPath.js.map +1 -1
  54. package/lib/es6/Donut.js +5 -5
  55. package/lib/es6/Donut.js.map +1 -1
  56. package/lib/es6/Dots.js +5 -5
  57. package/lib/es6/Dots.js.map +1 -1
  58. package/lib/es6/GroupBar.js +6 -6
  59. package/lib/es6/GroupBar.js.map +1 -1
  60. package/lib/es6/HorizontalBar.js +5 -5
  61. package/lib/es6/HorizontalBar.js.map +1 -1
  62. package/lib/es6/Hover.js +3 -3
  63. package/lib/es6/Hover.js.map +1 -1
  64. package/lib/es6/Line.js +5 -5
  65. package/lib/es6/Line.js.map +1 -1
  66. package/lib/es6/Plot.js +2 -2
  67. package/lib/es6/Plot.js.map +1 -1
  68. package/lib/es6/ResponsiveContainer.js +2 -2
  69. package/lib/es6/ResponsiveContainer.js.map +1 -1
  70. package/lib/es6/ScatterPlot.js +6 -6
  71. package/lib/es6/ScatterPlot.js.map +1 -1
  72. package/lib/es6/StackBar.js +8 -8
  73. package/lib/es6/StackBar.js.map +1 -1
  74. package/lib/es6/StackedArea.js +9 -9
  75. package/lib/es6/StackedArea.js.map +1 -1
  76. package/lib/es6/Tooltip.js +10 -9
  77. package/lib/es6/Tooltip.js.map +1 -1
  78. package/lib/es6/Venn.js +4 -4
  79. package/lib/es6/Venn.js.map +1 -1
  80. package/lib/es6/createElement.js +8 -5
  81. package/lib/es6/createElement.js.map +1 -1
  82. package/lib/es6/utils.js +10 -10
  83. package/lib/es6/utils.js.map +1 -1
  84. package/package.json +2 -2
  85. package/src/Bar.js +2 -7
  86. package/src/Bubble.js +2 -5
  87. package/src/ClipPath.js +13 -3
  88. package/src/Donut.js +8 -10
  89. package/src/Plot.js +1 -1
  90. package/src/ScatterPlot.js +2 -8
  91. package/src/createElement.js +4 -4
  92. package/src/utils.js +2 -5
@@ -1,10 +1,13 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ var _excluded = ["render", "tag", "childrenPosition", "x", "y"],
5
+ _excluded2 = ["forwardRef", "children", "Children", "x", "y"],
6
+ _excluded3 = ["$rootProps"];
4
7
 
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
8
+ 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
9
 
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
10
+ 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
11
 
9
12
  import React, { useContext } from 'react';
10
13
  import createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';
@@ -23,7 +26,7 @@ function createElementRender() {
23
26
  childrenPosition = _ref$childrenPosition === void 0 ? 'below' : _ref$childrenPosition,
24
27
  xS = _ref.x,
25
28
  yS = _ref.y,
26
- source = _objectWithoutProperties(_ref, ["render", "tag", "childrenPosition", "x", "y"]);
29
+ source = _objectWithoutProperties(_ref, _excluded);
27
30
 
28
31
  var _Element$props = Element.props,
29
32
  _Element$props$forwar = _Element$props.forwardRef,
@@ -34,7 +37,7 @@ function createElementRender() {
34
37
  x = _Element$props$x === void 0 ? xS : _Element$props$x,
35
38
  _Element$props$y = _Element$props.y,
36
39
  y = _Element$props$y === void 0 ? yS : _Element$props$y,
37
- props = _objectWithoutProperties(_Element$props, ["forwardRef", "children", "Children", "x", "y"]);
40
+ props = _objectWithoutProperties(_Element$props, _excluded2);
38
41
 
39
42
  var children = getOriginChildren(Children);
40
43
  var mergedProps = assignProps(_objectSpread(_objectSpread({
@@ -84,7 +87,7 @@ function elementEnhancement() {
84
87
  },
85
88
  asProps: function asProps(_ref2, WrapperComponent, isFunction) {
86
89
  var $rootProps = _ref2.$rootProps,
87
- props = _objectWithoutProperties(_ref2, ["$rootProps"]);
90
+ props = _objectWithoutProperties(_ref2, _excluded3);
88
91
 
89
92
  if (isFunction) {
90
93
  return _objectSpread(_objectSpread(_objectSpread({}, $rootProps), props), {}, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/createElement.js"],"names":["React","useContext","createComponent","createBaseComponent","CONTEXT_COMPONENT","Plot","assignProps","useForkRef","propsForElement","getOriginChildren","hoistNonReactStatics","createElementRender","Element","forwardRef","ref","render","tag","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","mergedProps","Tag","_child","undefined","Error","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","displayName","createElement","ElementRoot","child","options","enhancements","Object","keys","forEach","n"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nfunction createElementRender() {\n const Element = React.forwardRef(function(\n { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('В Element нужно передать render');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: ['data', 'scale'],\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function() {\n this.Element = createElementRender();\n },\n asProps: function({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function(render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"file":"createElement.js"}
1
+ {"version":3,"sources":["../../src/createElement.js"],"names":["React","useContext","createComponent","createBaseComponent","CONTEXT_COMPONENT","Plot","assignProps","useForkRef","propsForElement","getOriginChildren","hoistNonReactStatics","createElementRender","Element","forwardRef","ref","render","tag","childrenPosition","xS","x","yS","y","source","props","_children","children","Children","mergedProps","Tag","_child","undefined","Error","__excludeProps","elementEnhancement","init","asProps","WrapperComponent","isFunction","$rootProps","WrapComponent","ElementWithContext","displayName","createElement","ElementRoot","child","options","enhancements","Object","keys","forEach","n"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport createComponent, { createBaseComponent, CONTEXT_COMPONENT } from '@semcore/core';\nimport Plot from './Plot';\nimport assignProps from '@semcore/utils/lib/assignProps';\nimport { useForkRef } from '@semcore/utils/lib/ref';\nimport propsForElement from '@semcore/utils/lib/propsForElement';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nfunction createElementRender() {\n const Element = React.forwardRef(function (\n { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },\n ref,\n ) {\n const {\n forwardRef = null,\n children: _children,\n Children,\n x = xS,\n y = yS,\n ...props\n } = Element.props;\n let children = getOriginChildren(Children);\n\n let mergedProps = assignProps(\n {\n x: xS,\n y: yS,\n ...props,\n ref: useForkRef(forwardRef, ref),\n },\n {\n x,\n y,\n ...source,\n },\n );\n\n const Tag = typeof render === 'string' ? mergedProps.tag || render : render;\n\n if (typeof children === 'function') {\n const _child = mergedProps.children;\n mergedProps = assignProps(children(mergedProps), mergedProps);\n children = mergedProps.children;\n mergedProps.children = _child;\n }\n\n if (childrenPosition === 'inside') {\n mergedProps.children = children === undefined ? mergedProps.children : children;\n }\n\n if (!Tag) {\n throw new Error('В Element нужно передать render');\n }\n return [\n <React.Fragment key=\"child-above\">\n {childrenPosition === 'above' ? children : null}\n </React.Fragment>,\n <Tag\n {...propsForElement(\n {\n __excludeProps: ['data', 'scale'],\n ...mergedProps,\n },\n Tag,\n )}\n key=\"element\"\n />,\n <React.Fragment key=\"child-below\">\n {childrenPosition === 'below' ? children : null}\n </React.Fragment>,\n ];\n });\n\n Element.props = {};\n return Element;\n}\n\nfunction elementEnhancement() {\n return {\n init: function () {\n this.Element = createElementRender();\n },\n asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...$rootProps,\n ...props,\n Element: this.Element,\n };\n }\n return {\n ...$rootProps,\n ...props,\n };\n },\n render: function (render, props) {\n this.Element.props = props;\n return render;\n },\n };\n}\n\nfunction WrapComponent(Element) {\n function ElementWithContext(props, ref) {\n const { $rootProps } = useContext(Plot[CONTEXT_COMPONENT]);\n return <Element ref={ref} $rootProps={$rootProps} {...props} />;\n }\n\n ElementWithContext.displayName = Element.displayName;\n\n const WrapperComponent = createBaseComponent(ElementWithContext);\n WrapperComponent.displayName = Element.displayName;\n\n return hoistNonReactStatics(WrapperComponent, Element);\n}\n\nfunction createElement(ElementRoot, child = {}, options = {}) {\n const Element = createComponent(ElementRoot, child, {\n ...options,\n enhancements: [elementEnhancement],\n });\n\n Object.keys(child).forEach((n) => {\n Element[n] = WrapComponent(Element[n]);\n });\n\n return WrapComponent(Element);\n}\n\nexport default createElement;\n"],"file":"createElement.js"}
package/lib/es6/utils.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
 
3
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
3
+ 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; }
4
4
 
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
5
+ 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; }
6
6
 
7
7
  import { extent, bisector } from 'd3-array';
8
8
  import { scaleQuantize } from 'd3-scale';
@@ -84,14 +84,14 @@ export function getIndexFromData(data, scale, key, value) {
84
84
  return bisect(data, value);
85
85
  } // detect bar chart
86
86
  else if ('step' in scale && typeof scale.step !== 'undefined') {
87
- var index = data.findIndex(function (d) {
88
- return d[key] === value;
89
- });
90
- return index >= 0 ? index : null;
91
- } else {
92
- console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');
93
- return null;
94
- }
87
+ var index = data.findIndex(function (d) {
88
+ return d[key] === value;
89
+ });
90
+ return index >= 0 ? index : null;
91
+ } else {
92
+ console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');
93
+ return null;
94
+ }
95
95
  }
96
96
  export function roundedPath(x, y, w, h, r) {
97
97
  var tl = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils.js"],"names":["extent","bisector","scaleQuantize","CONSTANT","VIRTUAL_ELEMENT","Symbol","eventToPoint","event","svgRoot","node","currentTarget","target","rect","getBoundingClientRect","clientX","left","clientLeft","clientY","top","clientTop","invert","scale","value","range","domain","slice","reverse","definedNullData","x","y","p","definedData","undefined","scaleOfBandwidth","bandwidth","minMax","data","key","d","getNullData","defined","name","reduce","acc","i","push","prev","next","defNext","find","length","defPrev","getIndexFromData","bisect","center","step","index","findIndex","console","warn","roundedPath","w","h","r","tl","tr","bl","br","retval","getBandwidth","Math","abs"],"mappings":"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","sourcesContent":["import { extent, bisector } from 'd3-array';\nimport { scaleQuantize } from 'd3-scale';\n\nconst CONSTANT = {\n VIRTUAL_ELEMENT: Symbol('VIRTUAL_ELEMENT'),\n};\n\nexport { CONSTANT };\n\nexport function eventToPoint(event, svgRoot) {\n const node = event.currentTarget || event.target;\n const rect = svgRoot.getBoundingClientRect();\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n}\n\nexport function invert(scale, value) {\n if (scale.invert) return scale.invert(value);\n\n const range = scale.range();\n const domain = scale.domain();\n\n return scaleQuantize()\n .domain(range[0] <= range[1] ? range : range.slice().reverse())\n .range(range[0] <= range[1] ? domain : domain.slice().reverse())(value);\n}\n\nexport function definedNullData(x, y) {\n return (p) => p[x] !== null && p[y] !== null;\n}\n\nexport function definedData(x, y) {\n return (p) => {\n return p[x] !== null && p[x] !== undefined && (p[y] !== null && p[y] !== undefined);\n };\n}\n\nexport function scaleOfBandwidth(scale, value) {\n return scale.bandwidth ? scale(value) + scale.bandwidth() / 2 : scale(value);\n}\n\nexport function minMax(data, key) {\n if (typeof key === 'string') {\n return extent(data, (d) => d[key]);\n }\n return extent(data, key);\n}\n\nexport function getNullData(data, defined, name) {\n return data.reduce((acc, d, i, data) => {\n if (defined(d)) {\n acc.push({\n [name]: null,\n });\n } else {\n const prev = data[i - 1];\n const next = data[i + 1];\n\n if (i === 0) {\n const defNext = data.find(defined);\n acc.push({\n ...d,\n [name]: defNext ? defNext[name] : null,\n });\n }\n\n // prev\n if (prev && defined(prev)) {\n acc.push(prev);\n }\n\n // next\n if (next && defined(next)) {\n acc.push(next);\n }\n\n if (data.length - 1 === i) {\n const defPrev = data\n .slice()\n .reverse()\n .find(defined);\n acc.push({\n ...d,\n [name]: defPrev ? defPrev[name] : null,\n });\n }\n }\n return acc;\n }, []);\n}\n\nexport function getIndexFromData(data, scale, key, value) {\n // detect line chart\n if ('invert' in scale && typeof scale.invert === 'function') {\n const bisect = bisector((d) => d[key]).center;\n return bisect(data, value);\n }\n // detect bar chart\n else if ('step' in scale && typeof scale.step !== 'undefined') {\n const index = data.findIndex((d) => d[key] === value);\n return index >= 0 ? index : null;\n } else {\n console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');\n return null;\n }\n}\n\nexport function roundedPath(x, y, w, h, r, tl = false, tr = false, bl = false, br = false) {\n let retval;\n retval = 'M' + (x + r) + ',' + y;\n retval += 'h' + (w - 2 * r);\n if (tr) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + r;\n } else {\n retval += 'h' + r;\n retval += 'v' + r;\n }\n retval += 'v' + (h - 2 * r);\n if (br) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + r;\n } else {\n retval += 'v' + r;\n retval += 'h' + -r;\n }\n retval += 'h' + (2 * r - w);\n if (bl) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + -r;\n } else {\n retval += 'h' + -r;\n retval += 'v' + -r;\n }\n retval += 'v' + (2 * r - h);\n if (tl) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + -r;\n } else {\n retval += 'v' + -r;\n retval += 'h' + r;\n }\n retval += 'z';\n return retval;\n}\n\nexport function getBandwidth(scale) {\n if ('bandwidth' in scale) {\n return scale.bandwidth();\n }\n\n const range = scale.range();\n const domain = scale.domain();\n return Math.abs(range[range.length - 1] - range[0]) / domain.length;\n}\n"],"file":"utils.js"}
1
+ {"version":3,"sources":["../../src/utils.js"],"names":["extent","bisector","scaleQuantize","CONSTANT","VIRTUAL_ELEMENT","Symbol","eventToPoint","event","svgRoot","node","currentTarget","target","rect","getBoundingClientRect","clientX","left","clientLeft","clientY","top","clientTop","invert","scale","value","range","domain","slice","reverse","definedNullData","x","y","p","definedData","undefined","scaleOfBandwidth","bandwidth","minMax","data","key","d","getNullData","defined","name","reduce","acc","i","push","prev","next","defNext","find","length","defPrev","getIndexFromData","bisect","center","step","index","findIndex","console","warn","roundedPath","w","h","r","tl","tr","bl","br","retval","getBandwidth","Math","abs"],"mappings":"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","sourcesContent":["import { extent, bisector } from 'd3-array';\nimport { scaleQuantize } from 'd3-scale';\n\nconst CONSTANT = {\n VIRTUAL_ELEMENT: Symbol('VIRTUAL_ELEMENT'),\n};\n\nexport { CONSTANT };\n\nexport function eventToPoint(event, svgRoot) {\n const node = event.currentTarget || event.target;\n const rect = svgRoot.getBoundingClientRect();\n return [event.clientX - rect.left - node.clientLeft, event.clientY - rect.top - node.clientTop];\n}\n\nexport function invert(scale, value) {\n if (scale.invert) return scale.invert(value);\n\n const range = scale.range();\n const domain = scale.domain();\n\n return scaleQuantize()\n .domain(range[0] <= range[1] ? range : range.slice().reverse())\n .range(range[0] <= range[1] ? domain : domain.slice().reverse())(value);\n}\n\nexport function definedNullData(x, y) {\n return (p) => p[x] !== null && p[y] !== null;\n}\n\nexport function definedData(x, y) {\n return (p) => {\n return p[x] !== null && p[x] !== undefined && p[y] !== null && p[y] !== undefined;\n };\n}\n\nexport function scaleOfBandwidth(scale, value) {\n return scale.bandwidth ? scale(value) + scale.bandwidth() / 2 : scale(value);\n}\n\nexport function minMax(data, key) {\n if (typeof key === 'string') {\n return extent(data, (d) => d[key]);\n }\n return extent(data, key);\n}\n\nexport function getNullData(data, defined, name) {\n return data.reduce((acc, d, i, data) => {\n if (defined(d)) {\n acc.push({\n [name]: null,\n });\n } else {\n const prev = data[i - 1];\n const next = data[i + 1];\n\n if (i === 0) {\n const defNext = data.find(defined);\n acc.push({\n ...d,\n [name]: defNext ? defNext[name] : null,\n });\n }\n\n // prev\n if (prev && defined(prev)) {\n acc.push(prev);\n }\n\n // next\n if (next && defined(next)) {\n acc.push(next);\n }\n\n if (data.length - 1 === i) {\n const defPrev = data.slice().reverse().find(defined);\n acc.push({\n ...d,\n [name]: defPrev ? defPrev[name] : null,\n });\n }\n }\n return acc;\n }, []);\n}\n\nexport function getIndexFromData(data, scale, key, value) {\n // detect line chart\n if ('invert' in scale && typeof scale.invert === 'function') {\n const bisect = bisector((d) => d[key]).center;\n return bisect(data, value);\n }\n // detect bar chart\n else if ('step' in scale && typeof scale.step !== 'undefined') {\n const index = data.findIndex((d) => d[key] === value);\n return index >= 0 ? index : null;\n } else {\n console.warn('[d3-chart/utils/getIndexFromData] encountered incompatible scale type');\n return null;\n }\n}\n\nexport function roundedPath(x, y, w, h, r, tl = false, tr = false, bl = false, br = false) {\n let retval;\n retval = 'M' + (x + r) + ',' + y;\n retval += 'h' + (w - 2 * r);\n if (tr) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + r;\n } else {\n retval += 'h' + r;\n retval += 'v' + r;\n }\n retval += 'v' + (h - 2 * r);\n if (br) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + r;\n } else {\n retval += 'v' + r;\n retval += 'h' + -r;\n }\n retval += 'h' + (2 * r - w);\n if (bl) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + -r + ',' + -r;\n } else {\n retval += 'h' + -r;\n retval += 'v' + -r;\n }\n retval += 'v' + (2 * r - h);\n if (tl) {\n retval += 'a' + r + ',' + r + ' 0 0 1 ' + r + ',' + -r;\n } else {\n retval += 'v' + -r;\n retval += 'h' + r;\n }\n retval += 'z';\n return retval;\n}\n\nexport function getBandwidth(scale) {\n if ('bandwidth' in scale) {\n return scale.bandwidth();\n }\n\n const range = scale.range();\n const domain = scale.domain();\n return Math.abs(range[range.length - 1] - range[0]) / domain.length;\n}\n"],"file":"utils.js"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/d3-chart",
3
3
  "description": "SEMRush D3 Chart Component",
4
- "version": "1.6.3",
4
+ "version": "1.6.4",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -30,6 +30,6 @@
30
30
  "react": "16.8 - 17"
31
31
  },
32
32
  "jest": {
33
- "preset": "jest-preset-ui"
33
+ "preset": "@semcore/jest-preset-ui"
34
34
  }
35
35
  }
package/src/Bar.js CHANGED
@@ -28,16 +28,11 @@ class BarRoot extends Component {
28
28
 
29
29
  animationBar() {
30
30
  const { duration, uid } = this.asProps;
31
- const selectRect = transition()
32
- .selection()
33
- .selectAll(`#${uid} rect`);
31
+ const selectRect = transition().selection().selectAll(`#${uid} rect`);
34
32
  const selectRectNode = selectRect.node();
35
33
 
36
34
  if (duration > 0 && selectRectNode && selectRectNode.getAttribute('y') !== '0') {
37
- selectRect
38
- .transition()
39
- .duration(duration)
40
- .attr('y', 0);
35
+ selectRect.transition().duration(duration).attr('y', 0);
41
36
  }
42
37
  }
43
38
 
package/src/Bubble.js CHANGED
@@ -59,17 +59,14 @@ class BubbleRoot extends Component {
59
59
  .domain([0, Math.max(...data.map((el) => el[value]))])
60
60
  .range([5.5, 50.5]);
61
61
 
62
- const selectRect = transition()
63
- .selection()
64
- .selectAll(`[id^=${uid}${uid}]`)
65
- .attr('r', 0);
62
+ const selectRect = transition().selection().selectAll(`[id^=${uid}${uid}]`).attr('r', 0);
66
63
 
67
64
  const selectRectNode = selectRect.node();
68
65
  if (duration > 0 && selectRectNode) {
69
66
  selectRect
70
67
  .transition()
71
68
  .duration(duration)
72
- .attr('r', function(_, ind) {
69
+ .attr('r', function (_, ind) {
73
70
  return z(data[ind][value]);
74
71
  });
75
72
  }
package/src/ClipPath.js CHANGED
@@ -12,15 +12,25 @@ class ClipPath extends Component {
12
12
 
13
13
  refClipPath = React.createRef();
14
14
 
15
- componentDidMount() {
15
+ setAttributeTag() {
16
16
  const { id, tag, setAttributeTag } = this.asProps;
17
+ if (setAttributeTag) {
18
+ Array.from(document.querySelectorAll(`#${id} ${tag}`)).forEach(setAttributeTag);
19
+ }
20
+ }
21
+
22
+ componentDidMount() {
23
+ const { id } = this.asProps;
17
24
  if (!document || !id || !document.querySelector(`#${id}`)) return;
18
25
  const svg = document.querySelector(`#${id}`).closest('svg');
19
26
  Array.from(svg.querySelectorAll(`[clip-path="url(#${id})"]`)).forEach((node) => {
20
27
  node && node.getTotalLength && node.getTotalLength();
21
28
  });
22
- setAttributeTag &&
23
- Array.from(document.querySelectorAll(`#${id} ${tag}`)).forEach(setAttributeTag);
29
+ this.setAttributeTag();
30
+ }
31
+
32
+ componentDidUpdate() {
33
+ this.setAttributeTag();
24
34
  }
25
35
 
26
36
  render() {
package/src/Donut.js CHANGED
@@ -14,12 +14,12 @@ import style from './style/donut.shadow.css';
14
14
  const DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
15
15
 
16
16
  function animationInitialPie({ halfsize, d3Arc, arcs }) {
17
- return function(_, ind) {
17
+ return function (_, ind) {
18
18
  const d = arcs[ind];
19
19
  if (!d) return () => '';
20
20
  const iStart = interpolate(halfsize ? -Math.PI / 2 : 0, d.startAngle);
21
21
  const iEnd = interpolate(halfsize ? -Math.PI / 2 : 0, d.endAngle);
22
- return function(t) {
22
+ return function (t) {
23
23
  d.startAngle = iStart(t);
24
24
  d.endAngle = iEnd(t);
25
25
  return d3Arc(d);
@@ -28,12 +28,12 @@ function animationInitialPie({ halfsize, d3Arc, arcs }) {
28
28
  }
29
29
 
30
30
  function animationUpdatePie({ halfsize, arcs, d3Arc }) {
31
- return function(_, ind) {
31
+ return function (_, ind) {
32
32
  const d = arcs[ind];
33
33
  if (this._current) {
34
34
  const i = interpolate(this._current, d);
35
35
  this._current = i(0);
36
- return function(t) {
36
+ return function (t) {
37
37
  return d3Arc(i(t));
38
38
  };
39
39
  } else {
@@ -50,14 +50,12 @@ function animationHoverPie({ d, selector, duration, innerRadius, outerRadius })
50
50
  .select(selector)
51
51
  .transition()
52
52
  .duration(duration)
53
- .attrTween('d', function() {
53
+ .attrTween('d', function () {
54
54
  if (!d) return () => '';
55
55
  const [min, max] = outerRadius;
56
56
  const i = interpolate(min, max);
57
- return function(t) {
58
- const d3ArcOut = arc()
59
- .innerRadius(innerRadius)
60
- .outerRadius(i(t));
57
+ return function (t) {
58
+ const d3ArcOut = arc().innerRadius(innerRadius).outerRadius(i(t));
61
59
  return d3ArcOut(d);
62
60
  };
63
61
  });
@@ -205,7 +203,7 @@ class DonutRoot extends Component {
205
203
  transition()
206
204
  .selection()
207
205
  .selectAll(`#${this.id} [data-ui-name="Donut.Pie"]`)
208
- .each(function(_, ind) {
206
+ .each(function (_, ind) {
209
207
  this._current = arcs[ind];
210
208
  })
211
209
  .transition()
package/src/Plot.js CHANGED
@@ -29,7 +29,7 @@ class PlotRoot extends Component {
29
29
  const [minX, maxX] = xScale.range();
30
30
  const [maxY, minY] = yScale.range();
31
31
 
32
- if (pX >= minX && pX <= maxX && (pY >= minY && pY <= maxY)) {
32
+ if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {
33
33
  this.eventEmitter.emit('onMouseMoveChart', e);
34
34
  } else {
35
35
  this.eventEmitter.emit('onMouseLeaveChart', e);
@@ -34,17 +34,11 @@ class ScatterPlotRoot extends Component {
34
34
  animationCircle() {
35
35
  const { duration, uid, r, value } = this.asProps;
36
36
  const radius = r ? r : value ? 12 : 5.5;
37
- const selectRect = transition()
38
- .selection()
39
- .selectAll(`[id^=${uid}]`)
40
- .attr('r', 0);
37
+ const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);
41
38
  const selectRectNode = selectRect.node();
42
39
 
43
40
  if (duration > 0 && selectRectNode) {
44
- selectRect
45
- .transition()
46
- .duration(duration)
47
- .attr('r', radius);
41
+ selectRect.transition().duration(duration).attr('r', radius);
48
42
  }
49
43
  }
50
44
 
@@ -8,7 +8,7 @@ import getOriginChildren from '@semcore/utils/lib/getOriginChildren';
8
8
  import hoistNonReactStatics from 'hoist-non-react-statics';
9
9
 
10
10
  function createElementRender() {
11
- const Element = React.forwardRef(function(
11
+ const Element = React.forwardRef(function (
12
12
  { render, tag, childrenPosition = 'below', x: xS, y: yS, ...source },
13
13
  ref,
14
14
  ) {
@@ -78,10 +78,10 @@ function createElementRender() {
78
78
 
79
79
  function elementEnhancement() {
80
80
  return {
81
- init: function() {
81
+ init: function () {
82
82
  this.Element = createElementRender();
83
83
  },
84
- asProps: function({ $rootProps, ...props }, WrapperComponent, isFunction) {
84
+ asProps: function ({ $rootProps, ...props }, WrapperComponent, isFunction) {
85
85
  if (isFunction) {
86
86
  return {
87
87
  ...$rootProps,
@@ -94,7 +94,7 @@ function elementEnhancement() {
94
94
  ...props,
95
95
  };
96
96
  },
97
- render: function(render, props) {
97
+ render: function (render, props) {
98
98
  this.Element.props = props;
99
99
  return render;
100
100
  },
package/src/utils.js CHANGED
@@ -30,7 +30,7 @@ export function definedNullData(x, y) {
30
30
 
31
31
  export function definedData(x, y) {
32
32
  return (p) => {
33
- return p[x] !== null && p[x] !== undefined && (p[y] !== null && p[y] !== undefined);
33
+ return p[x] !== null && p[x] !== undefined && p[y] !== null && p[y] !== undefined;
34
34
  };
35
35
  }
36
36
 
@@ -74,10 +74,7 @@ export function getNullData(data, defined, name) {
74
74
  }
75
75
 
76
76
  if (data.length - 1 === i) {
77
- const defPrev = data
78
- .slice()
79
- .reverse()
80
- .find(defined);
77
+ const defPrev = data.slice().reverse().find(defined);
81
78
  acc.push({
82
79
  ...d,
83
80
  [name]: defPrev ? defPrev[name] : null,