@semcore/d3-chart 1.0.0-8 → 1.2.0

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 +62 -0
  2. package/lib/cjs/Area.js +71 -49
  3. package/lib/cjs/Area.js.map +1 -1
  4. package/lib/cjs/Axis.js +148 -142
  5. package/lib/cjs/Axis.js.map +1 -1
  6. package/lib/cjs/Bar.js +101 -54
  7. package/lib/cjs/Bar.js.map +1 -1
  8. package/lib/cjs/ClipPath.js +110 -0
  9. package/lib/cjs/ClipPath.js.map +1 -0
  10. package/lib/cjs/Donut.js +169 -68
  11. package/lib/cjs/Donut.js.map +1 -1
  12. package/lib/cjs/Dots.js +55 -21
  13. package/lib/cjs/Dots.js.map +1 -1
  14. package/lib/cjs/GroupBar.js +7 -6
  15. package/lib/cjs/GroupBar.js.map +1 -1
  16. package/lib/cjs/HorizontalBar.js +72 -45
  17. package/lib/cjs/HorizontalBar.js.map +1 -1
  18. package/lib/cjs/Hover.js +46 -47
  19. package/lib/cjs/Hover.js.map +1 -1
  20. package/lib/cjs/Line.js +63 -41
  21. package/lib/cjs/Line.js.map +1 -1
  22. package/lib/cjs/Plot.js +16 -29
  23. package/lib/cjs/Plot.js.map +1 -1
  24. package/lib/cjs/ResponsiveContainer.js +13 -9
  25. package/lib/cjs/ResponsiveContainer.js.map +1 -1
  26. package/lib/cjs/StackBar.js +6 -6
  27. package/lib/cjs/StackBar.js.map +1 -1
  28. package/lib/cjs/StackedArea.js +8 -9
  29. package/lib/cjs/StackedArea.js.map +1 -1
  30. package/lib/cjs/Tooltip.js +49 -75
  31. package/lib/cjs/Tooltip.js.map +1 -1
  32. package/lib/cjs/Venn.js +235 -0
  33. package/lib/cjs/Venn.js.map +1 -0
  34. package/lib/cjs/index.js +8 -0
  35. package/lib/cjs/index.js.map +1 -1
  36. package/lib/cjs/style/area.shadow.css +11 -10
  37. package/lib/cjs/style/bar.shadow.css +4 -0
  38. package/lib/cjs/style/donut.shadow.css +1 -0
  39. package/lib/cjs/style/dot.shadow.css +19 -0
  40. package/lib/cjs/style/line.shadow.css +4 -15
  41. package/lib/cjs/style/tooltip.shadow.css +1 -0
  42. package/lib/cjs/style/venn.shadow.css +23 -0
  43. package/lib/cjs/utils.js +8 -1
  44. package/lib/cjs/utils.js.map +1 -1
  45. package/lib/es6/Area.js +72 -50
  46. package/lib/es6/Area.js.map +1 -1
  47. package/lib/es6/Axis.js +149 -143
  48. package/lib/es6/Axis.js.map +1 -1
  49. package/lib/es6/Bar.js +100 -54
  50. package/lib/es6/Bar.js.map +1 -1
  51. package/lib/es6/ClipPath.js +91 -0
  52. package/lib/es6/ClipPath.js.map +1 -0
  53. package/lib/es6/Donut.js +167 -67
  54. package/lib/es6/Donut.js.map +1 -1
  55. package/lib/es6/Dots.js +51 -20
  56. package/lib/es6/Dots.js.map +1 -1
  57. package/lib/es6/GroupBar.js +7 -6
  58. package/lib/es6/GroupBar.js.map +1 -1
  59. package/lib/es6/HorizontalBar.js +72 -45
  60. package/lib/es6/HorizontalBar.js.map +1 -1
  61. package/lib/es6/Hover.js +47 -48
  62. package/lib/es6/Hover.js.map +1 -1
  63. package/lib/es6/Line.js +65 -43
  64. package/lib/es6/Line.js.map +1 -1
  65. package/lib/es6/Plot.js +17 -29
  66. package/lib/es6/Plot.js.map +1 -1
  67. package/lib/es6/ResponsiveContainer.js +13 -7
  68. package/lib/es6/ResponsiveContainer.js.map +1 -1
  69. package/lib/es6/StackBar.js +6 -6
  70. package/lib/es6/StackBar.js.map +1 -1
  71. package/lib/es6/StackedArea.js +8 -9
  72. package/lib/es6/StackedArea.js.map +1 -1
  73. package/lib/es6/Tooltip.js +52 -76
  74. package/lib/es6/Tooltip.js.map +1 -1
  75. package/lib/es6/Venn.js +217 -0
  76. package/lib/es6/Venn.js.map +1 -0
  77. package/lib/es6/index.js +1 -0
  78. package/lib/es6/index.js.map +1 -1
  79. package/lib/es6/style/area.shadow.css +11 -10
  80. package/lib/es6/style/bar.shadow.css +4 -0
  81. package/lib/es6/style/donut.shadow.css +1 -0
  82. package/lib/es6/style/dot.shadow.css +19 -0
  83. package/lib/es6/style/line.shadow.css +4 -15
  84. package/lib/es6/style/tooltip.shadow.css +1 -0
  85. package/lib/es6/style/venn.shadow.css +23 -0
  86. package/lib/es6/utils.js +6 -1
  87. package/lib/es6/utils.js.map +1 -1
  88. package/lib/types/Area.d.ts +7 -8
  89. package/lib/types/Axis.d.ts +6 -6
  90. package/lib/types/Bar.d.ts +7 -3
  91. package/lib/types/ClipPath.d.ts +26 -0
  92. package/lib/types/Donut.d.ts +12 -2
  93. package/lib/types/GroupBar.d.ts +2 -2
  94. package/lib/types/HorizontalBar.d.ts +7 -3
  95. package/lib/types/Hover.d.ts +2 -2
  96. package/lib/types/Line.d.ts +9 -4
  97. package/{src/types/Plot.ts → lib/types/Plot.d.ts} +2 -2
  98. package/lib/types/ResponsiveContainer.d.ts +1 -1
  99. package/lib/types/StackBar.d.ts +3 -11
  100. package/lib/types/StackedArea.d.ts +7 -6
  101. package/lib/types/Tooltip.d.ts +4 -4
  102. package/lib/types/Venn.d.ts +45 -0
  103. package/lib/types/context.d.ts +1 -1
  104. package/lib/types/index.d.ts +6 -0
  105. package/package.json +10 -5
  106. package/src/Area.js +43 -14
  107. package/src/Axis.js +24 -22
  108. package/src/Bar.js +69 -24
  109. package/src/ClipPath.js +36 -0
  110. package/src/Donut.js +84 -12
  111. package/src/Dots.js +36 -20
  112. package/src/GroupBar.js +1 -0
  113. package/src/HorizontalBar.js +49 -22
  114. package/src/Hover.js +3 -3
  115. package/src/Line.js +41 -13
  116. package/src/Plot.js +3 -7
  117. package/src/ResponsiveContainer.js +3 -3
  118. package/src/StackBar.js +1 -1
  119. package/src/StackedArea.js +3 -2
  120. package/src/Tooltip.js +11 -12
  121. package/src/Venn.js +112 -0
  122. package/src/index.js +1 -0
  123. package/src/style/area.shadow.css +11 -10
  124. package/src/style/bar.shadow.css +4 -0
  125. package/src/style/donut.shadow.css +1 -0
  126. package/src/style/dot.shadow.css +19 -0
  127. package/src/style/line.shadow.css +4 -15
  128. package/src/style/tooltip.shadow.css +1 -0
  129. package/src/style/venn.shadow.css +23 -0
  130. package/src/types/Area.d.ts +7 -8
  131. package/src/types/Axis.d.ts +6 -6
  132. package/src/types/Bar.d.ts +7 -3
  133. package/src/types/ClipPath.d.ts +26 -0
  134. package/src/types/Donut.d.ts +12 -2
  135. package/src/types/GroupBar.d.ts +2 -2
  136. package/src/types/HorizontalBar.d.ts +7 -3
  137. package/src/types/Hover.d.ts +2 -2
  138. package/src/types/Line.d.ts +9 -4
  139. package/src/types/Plot.d.ts +16 -0
  140. package/src/types/ResponsiveContainer.d.ts +1 -1
  141. package/src/types/StackBar.d.ts +3 -11
  142. package/src/types/StackedArea.d.ts +7 -6
  143. package/src/types/Tooltip.d.ts +4 -4
  144. package/src/types/Venn.d.ts +45 -0
  145. package/src/types/context.d.ts +1 -1
  146. package/src/types/index.d.ts +6 -0
  147. package/src/utils.js +7 -1
  148. package/lib/cjs/style/chart.shadow.css +0 -4
  149. package/lib/cjs/types/Plot.js +0 -2
  150. package/lib/cjs/types/Plot.js.map +0 -1
  151. package/lib/es6/style/chart.shadow.css +0 -4
  152. package/lib/es6/types/Plot.js +0 -2
  153. package/lib/es6/types/Plot.js.map +0 -1
  154. package/src/style/chart.shadow.css +0 -4
package/CHANGELOG.md CHANGED
@@ -2,6 +2,68 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## [1.2.0] - 2021-09-24
6
+
7
+ ### Added
8
+
9
+ - The ability to pass "undefined" to skip some of the data.
10
+
11
+ ## [1.1.0] - 2021-09-14
12
+
13
+ ### Added
14
+
15
+ - Display 1% of the sector as the minimum value for Donut chart
16
+
17
+ ## [1.0.0] - 2021-09-08
18
+
19
+ ### Added
20
+
21
+ - Added animation for all charts.
22
+
23
+ ## [1.0.0-15] - 2021-08-26
24
+
25
+ ### Changed
26
+
27
+ - Add 'sideEffect=false' for more optimal build via webpack
28
+
29
+ ## [1.0.0-14] - 2021-08-02
30
+
31
+ ### Fixed
32
+
33
+ - [ts] correct types.
34
+
35
+ ## [1.0.0-13] - 2021-06-18
36
+
37
+ ### BREAK
38
+
39
+ - Revert area for stack area chart.
40
+ - Change data for Venn chart.
41
+
42
+ ### Changed
43
+
44
+ - Add default ticks for Axis.
45
+
46
+ ## [1.0.0-12] - 2021-06-02
47
+
48
+ ### Added
49
+
50
+ - Added Venn chart.
51
+
52
+ ## [1.0.0-11] - 2021-05-12
53
+
54
+ ### Fixed
55
+
56
+ - Fix TS type
57
+
58
+ ## [1.0.0-9] - 2021-04-26
59
+
60
+ ### Changed
61
+
62
+ - Version of dependence `@semcore/core` has been changed to `1.11`.
63
+ - Improved performance. Removed one component wrapper.
64
+ - The style processing system has been changed.
65
+ - Removed the ability to apply media styles via a plugin `babel-plugin-react-semcore`.
66
+
5
67
  ## [1.0.0-8] - 2021-04-20
6
68
 
7
69
  ### Fixed
package/lib/cjs/Area.js CHANGED
@@ -21,7 +21,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
21
21
 
22
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
23
 
24
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
24
+ var _core = require("@semcore/core");
25
25
 
26
26
  var _react = _interopRequireDefault(require("react"));
27
27
 
@@ -29,35 +29,35 @@ var _d3Shape = require("d3-shape");
29
29
 
30
30
  var _Dots = _interopRequireDefault(require("./Dots"));
31
31
 
32
- var _core = require("@semcore/core");
33
-
34
32
  var _createElement = _interopRequireDefault(require("./createElement"));
35
33
 
36
34
  var _utils = require("./utils");
37
35
 
36
+ var _ClipPath = _interopRequireDefault(require("./ClipPath"));
37
+
38
+ var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
39
+
38
40
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
39
41
 
40
42
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
43
 
42
44
  /*__reshadow-styles__:"./style/area.shadow.css"*/
43
- var _ref = (
45
+ var style = (
44
46
  /*__reshadow_css_start__*/
45
- (0, _core.__css__)(
47
+ _core.sstyled.insert(
46
48
  /*__inner_css_start__*/
47
- ".___SDot_1hrzl_gg_{stroke-width:2px;stroke:#fff;r:6px}.___SDot_1hrzl_gg_.__hide_1hrzl_gg_{display:none}.___SDot_1hrzl_gg_.__active_1hrzl_gg_{r:8px}.___SNull_1hrzl_gg_{fill:transparent;stroke:#bdc4c6;stroke-dasharray:4}.___SNull_1hrzl_gg_.__hide_1hrzl_gg_{display:none}"
49
+ ".___SArea_110zq_gg_{fill:var(--color_16k7jnx);fill-opacity:.4}.___SAreaLine_110zq_gg_{stroke:var(--color_16k7jnx);stroke-width:3;fill:transparent}.___SArea_110zq_gg_,.___SAreaLine_110zq_gg_{transition-property:d;transition-duration:var(--duration_16k7jnx);transition-timing-function:ease-in-out}.___SNull_110zq_gg_{fill:transparent;stroke:#bdc4c6;stroke-dasharray:4}.___SNull_110zq_gg_.__hide_110zq_gg_{display:none}"
48
50
  /*__inner_css_end__*/
49
- , "10wrq0c_gg_")
51
+ , "16k7jnx_gg_")
50
52
  /*__reshadow_css_end__*/
51
53
  , {
52
- "__SArea": "___SArea_1hrzl_gg_",
53
- "__SDot": "___SDot_1hrzl_gg_",
54
- "_hide": "__hide_1hrzl_gg_",
55
- "_active": "__active_1hrzl_gg_",
56
- "__SNull": "___SNull_1hrzl_gg_"
57
- }),
58
- style = (0, _extends2["default"])({}, _ref);
59
-
60
- var styled_c8 = (0, _core.create)([]);
54
+ "__SArea": "___SArea_110zq_gg_",
55
+ "--color": "--color_16k7jnx",
56
+ "__SAreaLine": "___SAreaLine_110zq_gg_",
57
+ "--duration": "--duration_16k7jnx",
58
+ "__SNull": "___SNull_110zq_gg_",
59
+ "_hide": "__hide_110zq_gg_"
60
+ });
61
61
 
62
62
  var AreaRoot = /*#__PURE__*/function (_Component) {
63
63
  (0, _inherits2["default"])(AreaRoot, _Component);
@@ -83,46 +83,64 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
83
83
  y: y,
84
84
  data: data,
85
85
  d3: d3Line,
86
- fill: color
86
+ color: color
87
87
  };
88
88
  }
89
89
  }, {
90
90
  key: "getNullProps",
91
91
  value: function getNullProps() {
92
92
  var _this$asProps2 = this.asProps,
93
+ x = _this$asProps2.x,
93
94
  y = _this$asProps2.y,
94
95
  color = _this$asProps2.color,
95
96
  data = _this$asProps2.data,
96
97
  d3Line = _this$asProps2.d3Line;
97
98
  return {
98
- d3Line: d3Line,
99
- data: (0, _utils.getNullData)(data, d3Line.defined(), y),
100
- fill: color
99
+ data: (0, _utils.getNullData)(data, (0, _utils.definedNullData)(x, y), y),
100
+ d3: d3Line,
101
+ color: color
101
102
  };
102
103
  }
103
104
  }, {
104
105
  key: "render",
105
106
  value: function render() {
107
+ var _ref;
108
+
106
109
  var SArea = this.Element;
110
+ var SAreaLine = 'path';
107
111
  var _this$asProps3 = this.asProps,
108
112
  styles = _this$asProps3.styles,
109
113
  hide = _this$asProps3.hide,
110
114
  d3 = _this$asProps3.d3,
111
115
  d3Line = _this$asProps3.d3Line,
112
116
  data = _this$asProps3.data,
113
- fill = _this$asProps3.fill,
114
- color = _this$asProps3.color;
115
- return (0, _core.styled)(((0, _core.set)([styled_c8, styles]), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SArea, (0, _core.map)("SArea", {
116
- render: "path",
117
- hide: hide,
118
- fill: fill,
119
- d: d3(data)
120
- })), /*#__PURE__*/_react["default"].createElement("path", (0, _core.map)("path", {
121
- stroke: color,
122
- strokeWidth: "3",
123
- fill: "transparent",
124
- d: d3Line(data)
125
- })))));
117
+ color = _this$asProps3.color,
118
+ uid = _this$asProps3.uid,
119
+ size = _this$asProps3.size,
120
+ duration = _this$asProps3.duration;
121
+ return _ref = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SAreaLine, _ref.cn("SAreaLine", {
122
+ "clipPath": "url(#".concat(uid, ")"),
123
+ "d": d3Line(data),
124
+ "color": color,
125
+ "use:duration": "".concat(duration, "ms")
126
+ })), /*#__PURE__*/_react["default"].createElement(SArea, _ref.cn("SArea", {
127
+ "clipPath": "url(#".concat(uid, ")"),
128
+ "render": "path",
129
+ "d": d3(data),
130
+ "hide": hide,
131
+ "color": color,
132
+ "use:duration": "".concat(duration, "ms")
133
+ })), duration && /*#__PURE__*/_react["default"].createElement(_ClipPath["default"], _ref.cn("ClipPath", {
134
+ "setAttributeTag": function setAttributeTag(rect) {
135
+ rect.setAttribute('width', size[0]);
136
+ },
137
+ "id": uid,
138
+ "x": "0",
139
+ "y": "0",
140
+ "width": 0,
141
+ "height": size[1],
142
+ "transition": "width ".concat(duration, "ms ease-in-out")
143
+ })));
126
144
  }
127
145
  }]);
128
146
  return AreaRoot;
@@ -130,13 +148,14 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
130
148
 
131
149
  (0, _defineProperty2["default"])(AreaRoot, "displayName", 'Area');
132
150
  (0, _defineProperty2["default"])(AreaRoot, "style", style);
133
- (0, _defineProperty2["default"])(AreaRoot, "defaultProps", function (_ref2) {
134
- var x = _ref2.x,
135
- y = _ref2.y,
136
- y0 = _ref2.y0,
137
- $rootProps = _ref2.$rootProps,
138
- _ref2$curve = _ref2.curve,
139
- curve = _ref2$curve === void 0 ? _d3Shape.curveLinear : _ref2$curve;
151
+ (0, _defineProperty2["default"])(AreaRoot, "enhance", [(0, _uniqueID["default"])()]);
152
+ (0, _defineProperty2["default"])(AreaRoot, "defaultProps", function (_ref3) {
153
+ var x = _ref3.x,
154
+ y = _ref3.y,
155
+ y0 = _ref3.y0,
156
+ $rootProps = _ref3.$rootProps,
157
+ _ref3$curve = _ref3.curve,
158
+ curve = _ref3$curve === void 0 ? _d3Shape.curveLinear : _ref3$curve;
140
159
 
141
160
  var _$rootProps$scale = (0, _slicedToArray2["default"])($rootProps.scale, 2),
142
161
  xScale = _$rootProps$scale[0],
@@ -157,22 +176,25 @@ var AreaRoot = /*#__PURE__*/function (_Component) {
157
176
  return (0, _utils.scaleOfBandwidth)(yScale, p[y]);
158
177
  }),
159
178
  color: '#50aef4',
160
- fill: '#50aef450'
179
+ duration: 500
161
180
  };
162
181
  });
163
- var styled_12c = (0, _core.create)([]);
164
182
 
165
183
  function Null(props) {
184
+ var _ref2;
185
+
166
186
  var SNull = props.Element,
167
187
  styles = props.styles,
168
- d3Line = props.d3Line,
188
+ d3 = props.d3,
169
189
  data = props.data,
170
- hide = props.hide;
171
- return (0, _core.styled)(((0, _core.set)([styled_12c, styles]), /*#__PURE__*/_react["default"].createElement(SNull, (0, _core.map)("SNull", {
172
- render: "path",
173
- d: d3Line(data),
174
- hide: hide
175
- }))));
190
+ hide = props.hide,
191
+ color = props.color;
192
+ return _ref2 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SNull, _ref2.cn("SNull", {
193
+ "render": "path",
194
+ "d": d3(data),
195
+ "hide": hide,
196
+ "color": color
197
+ }));
176
198
  }
177
199
 
178
200
  var _default = (0, _createElement["default"])(AreaRoot, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/Area.js"],"names":["AreaRoot","asProps","x","y","color","data","d3Line","d3","fill","defined","SArea","Element","styles","hide","Component","style","y0","$rootProps","curve","curveLinear","scale","xScale","yScale","yRange","range","p","y1","Null","props","SNull","Dots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;IAIMA,Q;;;;;;;;;;;;WAyBJ,wBAAe;AAAA,0BACyB,KAAKC,OAD9B;AAAA,UACLC,CADK,iBACLA,CADK;AAAA,UACFC,CADE,iBACFA,CADE;AAAA,UACCC,KADD,iBACCA,KADD;AAAA,UACQC,IADR,iBACQA,IADR;AAAA,UACcC,MADd,iBACcA,MADd;AAGb,aAAO;AACLJ,QAAAA,CAAC,EAADA,CADK;AAELC,QAAAA,CAAC,EAADA,CAFK;AAGLE,QAAAA,IAAI,EAAJA,IAHK;AAILE,QAAAA,EAAE,EAAED,MAJC;AAKLE,QAAAA,IAAI,EAAEJ;AALD,OAAP;AAOD;;;WAED,wBAAe;AAAA,2BACsB,KAAKH,OAD3B;AAAA,UACLE,CADK,kBACLA,CADK;AAAA,UACFC,KADE,kBACFA,KADE;AAAA,UACKC,IADL,kBACKA,IADL;AAAA,UACWC,MADX,kBACWA,MADX;AAEb,aAAO;AACLA,QAAAA,MAAM,EAANA,MADK;AAELD,QAAAA,IAAI,EAAE,wBAAYA,IAAZ,EAAkBC,MAAM,CAACG,OAAP,EAAlB,EAAoCN,CAApC,CAFD;AAGLK,QAAAA,IAAI,EAAEJ;AAHD,OAAP;AAKD;;;WAED,kBAAS;AACP,UAAMM,KAAK,GAAG,KAAKC,OAAnB;AADO,2BAEiD,KAAKV,OAFtD;AAAA,UAECW,MAFD,kBAECA,MAFD;AAAA,UAESC,IAFT,kBAESA,IAFT;AAAA,UAEeN,EAFf,kBAEeA,EAFf;AAAA,UAEmBD,MAFnB,kBAEmBA,MAFnB;AAAA,UAE2BD,IAF3B,kBAE2BA,IAF3B;AAAA,UAEiCG,IAFjC,kBAEiCA,IAFjC;AAAA,UAEuCJ,KAFvC,kBAEuCA,KAFvC;AAGP,aAAO,8CAAOQ,MAAP,iBACL,+EACE,gCAAC,KAAD;AAAA,gBAAc,MAAd;AAAA,cAA2BC,IAA3B;AAAA,cAAuCL,IAAvC;AAAA,WAAgDD,EAAE,CAACF,IAAD;AAAlD,SADF,eAEE;AAAA,gBAAcD,KAAd;AAAA,qBAAiC,GAAjC;AAAA,cAA0C,aAA1C;AAAA,WAA2DE,MAAM,CAACD,IAAD;AAAjE,SAFF,CADK,EAAP;AAMD;;;EAvDoBS,e;;iCAAjBd,Q,iBACiB,M;iCADjBA,Q,WAEWe,K;iCAFXf,Q,kBAIkB,iBAAmD;AAAA,MAAhDE,CAAgD,SAAhDA,CAAgD;AAAA,MAA7CC,CAA6C,SAA7CA,CAA6C;AAAA,MAA1Ca,EAA0C,SAA1CA,EAA0C;AAAA,MAAtCC,UAAsC,SAAtCA,UAAsC;AAAA,0BAA1BC,KAA0B;AAAA,MAA1BA,KAA0B,4BAAlBC,oBAAkB;;AAAA,0DAC9CF,UAAU,CAACG,KADmC;AAAA,MAChEC,MADgE;AAAA,MACxDC,MADwD;;AAEvE,MAAMC,MAAM,GAAGD,MAAM,CAACE,KAAP,EAAf;AAEA,SAAO;AACLjB,IAAAA,EAAE,EAAE,qBACDE,OADC,CACO,wBAAYP,CAAZ,EAAeC,CAAf,CADP,EAEDe,KAFC,CAEKA,KAFL,EAGDhB,CAHC,CAGC,UAACuB,CAAD;AAAA,aAAO,6BAAiBJ,MAAjB,EAAyBI,CAAC,CAACvB,CAAD,CAA1B,CAAP;AAAA,KAHD,EAIDc,EAJC,CAIE,UAACS,CAAD;AAAA,aAAQA,CAAC,CAACT,EAAD,CAAD,GAAQ,6BAAiBM,MAAjB,EAAyBG,CAAC,CAACT,EAAD,CAA1B,CAAR,GAA0CO,MAAM,CAAC,CAAD,CAAxD;AAAA,KAJF,EAKDG,EALC,CAKE,UAACD,CAAD;AAAA,aAAO,6BAAiBH,MAAjB,EAAyBG,CAAC,CAACtB,CAAD,CAA1B,CAAP;AAAA,KALF,CADC;AAOLG,IAAAA,MAAM,EAAE,qBACLG,OADK,CACG,wBAAYP,CAAZ,EAAeC,CAAf,CADH,EAELe,KAFK,CAECA,KAFD,EAGLhB,CAHK,CAGH,UAACuB,CAAD;AAAA,aAAO,6BAAiBJ,MAAjB,EAAyBI,CAAC,CAACvB,CAAD,CAA1B,CAAP;AAAA,KAHG,EAILC,CAJK,CAIH,UAACsB,CAAD;AAAA,aAAO,6BAAiBH,MAAjB,EAAyBG,CAAC,CAACtB,CAAD,CAA1B,CAAP;AAAA,KAJG,CAPH;AAYLC,IAAAA,KAAK,EAAE,SAZF;AAaLI,IAAAA,IAAI,EAAE;AAbD,GAAP;AAeD,C;;;AAmCH,SAASmB,IAAT,CAAcC,KAAd,EAAqB;AAAA,MACFC,KADE,GACoCD,KADpC,CACXjB,OADW;AAAA,MACKC,MADL,GACoCgB,KADpC,CACKhB,MADL;AAAA,MACaN,MADb,GACoCsB,KADpC,CACatB,MADb;AAAA,MACqBD,IADrB,GACoCuB,KADpC,CACqBvB,IADrB;AAAA,MAC2BQ,IAD3B,GACoCe,KADpC,CAC2Bf,IAD3B;AAEnB,SAAO,+CAAOD,MAAP,iBAAe,gCAAC,KAAD;AAAA,YAAc,MAAd;AAAA,OAAwBN,MAAM,CAACD,IAAD,CAA9B;AAAA,UAA4CQ;AAA5C,KAAf,EAAP;AACD;;eAEc,+BAAcb,QAAd,EAAwB;AACrC8B,EAAAA,IAAI,EAAJA,gBADqC;AAErCH,EAAAA,IAAI,EAAJA;AAFqC,CAAxB,C","sourcesContent":["import React from 'react';\nimport { area, curveLinear, line } from 'd3-shape';\nimport Dots from './Dots';\nimport { Component, styled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, scaleOfBandwidth, getNullData } from './utils';\n\nimport style from './style/area.shadow.css';\n\nclass AreaRoot extends Component {\n static displayName = 'Area';\n static style = style;\n\n static defaultProps = ({ x, y, y0, $rootProps, curve = curveLinear }) => {\n const [xScale, yScale] = $rootProps.scale;\n const yRange = yScale.range();\n\n return {\n d3: area()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y0((p) => (p[y0] ? scaleOfBandwidth(yScale, p[y0]) : yRange[0]))\n .y1((p) => scaleOfBandwidth(yScale, p[y])),\n d3Line: line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n color: '#50aef4',\n fill: '#50aef450',\n };\n };\n\n getDotsProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n\n return {\n x,\n y,\n data,\n d3: d3Line,\n fill: color,\n };\n }\n\n getNullProps() {\n const { y, color, data, d3Line } = this.asProps;\n return {\n d3Line,\n data: getNullData(data, d3Line.defined(), y),\n fill: color,\n };\n }\n\n render() {\n const SArea = this.Element;\n const { styles, hide, d3, d3Line, data, fill, color } = this.asProps;\n return styled(styles)(\n <>\n <SArea render=\"path\" hide={hide} fill={fill} d={d3(data)} />\n <path stroke={color} strokeWidth=\"3\" fill=\"transparent\" d={d3Line(data)} />\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3Line, data, hide } = props;\n return styled(styles)(<SNull render=\"path\" d={d3Line(data)} hide={hide} />);\n}\n\nexport default createElement(AreaRoot, {\n Dots,\n Null,\n});\n"],"file":"Area.js"}
1
+ {"version":3,"sources":["../../src/Area.js"],"names":["AreaRoot","asProps","x","y","color","data","d3Line","d3","SArea","Element","SAreaLine","styles","hide","uid","size","duration","rect","setAttribute","Component","style","y0","$rootProps","curve","curveLinear","scale","xScale","yScale","yRange","range","defined","p","y1","Null","props","SNull","Dots"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { area, curveLinear, line } from 'd3-shape';\nimport Dots from './Dots';\nimport { Component, sstyled } from '@semcore/core';\nimport createElement from './createElement';\nimport { definedData, scaleOfBandwidth, getNullData, definedNullData } from './utils';\nimport ClipPath from './ClipPath';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/area.shadow.css';\n\nclass AreaRoot extends Component {\n static displayName = 'Area';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, y0, $rootProps, curve = curveLinear }) => {\n const [xScale, yScale] = $rootProps.scale;\n const yRange = yScale.range();\n\n return {\n d3: area()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y0((p) => (p[y0] ? scaleOfBandwidth(yScale, p[y0]) : yRange[0]))\n .y1((p) => scaleOfBandwidth(yScale, p[y])),\n d3Line: line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n color: '#50aef4',\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n\n return {\n x,\n y,\n data,\n d3: d3Line,\n color,\n };\n }\n\n getNullProps() {\n const { x, y, color, data, d3Line } = this.asProps;\n return {\n data: getNullData(data, definedNullData(x, y), y),\n d3: d3Line,\n color,\n };\n }\n\n render() {\n const SArea = this.Element;\n const SAreaLine = 'path';\n const { styles, hide, d3, d3Line, data, color, uid, size, duration } = this.asProps;\n return sstyled(styles)(\n <>\n <SAreaLine\n clipPath={`url(#${uid})`}\n d={d3Line(data)}\n color={color}\n use:duration={`${duration}ms`}\n />\n <SArea\n clipPath={`url(#${uid})`}\n render=\"path\"\n d={d3(data)}\n hide={hide}\n color={color}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x=\"0\"\n y=\"0\"\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide, color } = props;\n return sstyled(styles)(<SNull render=\"path\" d={d3(data)} hide={hide} color={color} />);\n}\n\nexport default createElement(AreaRoot, {\n Dots,\n Null,\n});\n"],"file":"Area.js"}