@pie-lib/charting 5.17.0-beta.0 → 5.18.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.
- package/CHANGELOG.json +1 -581
- package/CHANGELOG.md +141 -43
- package/lib/actions-button.js +174 -0
- package/lib/actions-button.js.map +1 -0
- package/lib/axes.js +52 -81
- package/lib/axes.js.map +1 -0
- package/lib/bars/bar.js +1 -1
- package/lib/bars/bar.js.map +1 -0
- package/lib/bars/common/bars.js +11 -13
- package/lib/bars/common/bars.js.map +1 -0
- package/lib/bars/histogram.js +1 -1
- package/lib/bars/histogram.js.map +1 -0
- package/lib/chart-setup.js +3 -3
- package/lib/chart-setup.js.map +1 -0
- package/lib/chart-type.js +1 -1
- package/lib/chart-type.js.map +1 -0
- package/lib/chart-types.js +1 -1
- package/lib/chart-types.js.map +1 -0
- package/lib/chart.js +67 -58
- package/lib/chart.js.map +1 -0
- package/lib/common/drag-handle.js +4 -4
- package/lib/common/drag-handle.js.map +1 -0
- package/lib/common/drag-icon.js +1 -1
- package/lib/common/drag-icon.js.map +1 -0
- package/lib/common/styles.js +5 -5
- package/lib/common/styles.js.map +1 -0
- package/lib/grid.js +50 -13
- package/lib/grid.js.map +1 -0
- package/lib/index.js +9 -1
- package/lib/index.js.map +1 -0
- package/lib/key-legend.js +111 -0
- package/lib/key-legend.js.map +1 -0
- package/lib/line/common/drag-handle.js +5 -11
- package/lib/line/common/drag-handle.js.map +1 -0
- package/lib/line/common/line.js +4 -8
- package/lib/line/common/line.js.map +1 -0
- package/lib/line/line-cross.js +40 -5
- package/lib/line/line-cross.js.map +1 -0
- package/lib/line/line-dot.js +32 -7
- package/lib/line/line-dot.js.map +1 -0
- package/lib/mark-label.js +11 -6
- package/lib/mark-label.js.map +1 -0
- package/lib/plot/common/plot.js +10 -9
- package/lib/plot/common/plot.js.map +1 -0
- package/lib/plot/dot.js +1 -1
- package/lib/plot/dot.js.map +1 -0
- package/lib/plot/line.js +1 -1
- package/lib/plot/line.js.map +1 -0
- package/lib/shared/index.js +136 -0
- package/lib/tool-menu.js +10 -10
- package/lib/tool-menu.js.map +1 -0
- package/lib/utils.js +1 -1
- package/lib/utils.js.map +1 -0
- package/package.json +5 -5
- package/src/__tests__/__snapshots__/axes.test.jsx.snap +1 -0
- package/src/__tests__/__snapshots__/chart.test.jsx.snap +0 -18
- package/src/__tests__/__snapshots__/grid.test.jsx.snap +61 -17
- package/src/__tests__/axes.test.jsx +0 -5
- package/src/__tests__/chart.test.jsx +8 -0
- package/src/actions-button.jsx +109 -0
- package/src/axes.jsx +5 -31
- package/src/bars/common/bars.jsx +8 -10
- package/src/chart-setup.jsx +1 -1
- package/src/chart.jsx +31 -26
- package/src/common/drag-handle.jsx +3 -3
- package/src/common/styles.js +1 -1
- package/src/grid.jsx +38 -13
- package/src/index.js +2 -1
- package/src/key-legend.jsx +75 -0
- package/src/line/common/drag-handle.jsx +3 -9
- package/src/line/common/line.jsx +2 -6
- package/src/line/line-cross.js +29 -2
- package/src/line/line-dot.js +36 -19
- package/src/mark-label.jsx +7 -2
- package/src/plot/common/plot.jsx +8 -5
- package/src/tool-menu.jsx +1 -1
- package/lib/__tests__/axes.test.js +0 -181
- package/lib/__tests__/chart-setup.test.js +0 -58
- package/lib/__tests__/chart-type.test.js +0 -42
- package/lib/__tests__/chart.test.js +0 -108
- package/lib/__tests__/grid.test.js +0 -48
- package/lib/__tests__/mark-label.test.js +0 -57
- package/lib/__tests__/utils.js +0 -56
- package/lib/__tests__/utils.test.js +0 -197
- package/lib/bars/__tests__/bar.test.js +0 -62
- package/lib/bars/__tests__/histogram.test.js +0 -64
- package/lib/bars/__tests__/utils.js +0 -56
- package/lib/bars/common/__tests__/bars.test.js +0 -100
- package/lib/bars/common/__tests__/utils.js +0 -56
- package/lib/common/__tests__/drag-handle.test.js +0 -134
- package/lib/common/__tests__/utils.js +0 -56
- package/lib/line/__tests__/line-cross.test.js +0 -64
- package/lib/line/__tests__/line-dot.test.js +0 -64
- package/lib/line/__tests__/utils.js +0 -56
- package/lib/line/common/__tests__/drag-handle.test.js +0 -134
- package/lib/line/common/__tests__/line.test.js +0 -128
- package/lib/line/common/__tests__/utils.js +0 -56
- package/lib/plot/__tests__/dot.test.js +0 -64
- package/lib/plot/__tests__/line.test.js +0 -64
- package/lib/plot/__tests__/utils.js +0 -56
- package/lib/plot/common/__tests__/plot.test.js +0 -103
- package/lib/plot/common/__tests__/utils.js +0 -56
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/line/line-cross.js"],"names":["DraggableComponent","props","classes","className","scale","x","y","r","correctness","rest","hover","setHover","squareSize","squareHalf","cx","cy","line","value","d","pointerEvents","color","defaults","BORDER_GRAY","transparentHandle","propTypes","PropTypes","object","number","string","shape","label","LineCross","data","graphProps","size","xBand","width","React","Component","array","onChange","func","types","GraphPropsType","isRequired","type","name"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAAW;AACpC,uBAA0EA,KAA1E,CAAQC,OAAR;AAAA,MAAQA,OAAR,+BAAkB,EAAlB;AAAA,MAAsBC,SAAtB,GAA0EF,KAA1E,CAAsBE,SAAtB;AAAA,MAAiCC,KAAjC,GAA0EH,KAA1E,CAAiCG,KAAjC;AAAA,MAAwCC,CAAxC,GAA0EJ,KAA1E,CAAwCI,CAAxC;AAAA,MAA2CC,CAA3C,GAA0EL,KAA1E,CAA2CK,CAA3C;AAAA,MAA8CC,CAA9C,GAA0EN,KAA1E,CAA8CM,CAA9C;AAAA,MAAiDC,WAAjD,GAA0EP,KAA1E,CAAiDO,WAAjD;AAAA,MAAiEC,IAAjE,6CAA0ER,KAA1E;;AACA,kBAA0B,qBAAS,KAAT,CAA1B;AAAA;AAAA,MAAOS,KAAP;AAAA,MAAcC,QAAd;;AAEA,MAAMC,UAAU,GAAGL,CAAC,GAAG,CAAvB;AACA,MAAMM,UAAU,GAAGD,UAAU,GAAG,CAAhC;AACA,MAAME,EAAE,GAAGV,KAAK,CAACC,CAAN,CAAQA,CAAR,CAAX;AACA,MAAMU,EAAE,GAAGX,KAAK,CAACE,CAAN,CAAQA,CAAR,CAAX;AAEA,sBACE,gCAAC,YAAD;AAAO,IAAA,SAAS,EAAE,4BAAWH,SAAX,EAAsBD,OAAO,CAACc,IAA9B,EAAoCR,WAAW,IAAIA,WAAW,CAACS,KAA/D;AAAlB,kBACE,gCAAC,eAAD;AACE,IAAA,IAAI,EAAE,CACJ;AAAEZ,MAAAA,CAAC,EAAED,KAAK,CAACC,CAAN,CAAQA,CAAR,IAAaE,CAAlB;AAAqBD,MAAAA,CAAC,EAAEF,KAAK,CAACE,CAAN,CAAQA,CAAR,IAAaC;AAArC,KADI,EAEJ;AAAEF,MAAAA,CAAC,EAAED,KAAK,CAACC,CAAN,CAAQA,CAAR,IAAaE,CAAlB;AAAqBD,MAAAA,CAAC,EAAEF,KAAK,CAACE,CAAN,CAAQA,CAAR,IAAaC;AAArC,KAFI,CADR;AAKE,IAAA,GAAG,kBAAWF,CAAX,cAAgBC,CAAhB,OALL;AAME,IAAA,CAAC,EAAE,WAACY,CAAD;AAAA,aAAOA,CAAC,CAACb,CAAT;AAAA,KANL;AAOE,IAAA,CAAC,EAAE,WAACa,CAAD;AAAA,aAAOA,CAAC,CAACZ,CAAT;AAAA,KAPL;AAQE,IAAA,WAAW,EAAE,CARf;AASE,IAAA,KAAK,EAAE;AAAEa,MAAAA,aAAa,EAAE;AAAjB;AATT,IADF,eAYE,gCAAC,eAAD;AACE,IAAA,IAAI,EAAE,CACJ;AAAEd,MAAAA,CAAC,EAAED,KAAK,CAACC,CAAN,CAAQA,CAAR,IAAaE,CAAlB;AAAqBD,MAAAA,CAAC,EAAEF,KAAK,CAACE,CAAN,CAAQA,CAAR,IAAaC;AAArC,KADI,EAEJ;AAAEF,MAAAA,CAAC,EAAED,KAAK,CAACC,CAAN,CAAQA,CAAR,IAAaE,CAAlB;AAAqBD,MAAAA,CAAC,EAAEF,KAAK,CAACE,CAAN,CAAQA,CAAR,IAAaC;AAArC,KAFI,CADR;AAKE,IAAA,GAAG,kBAAWF,CAAX,cAAgBC,CAAhB,OALL;AAME,IAAA,CAAC,EAAE,WAACY,CAAD;AAAA,aAAOA,CAAC,CAACb,CAAT;AAAA,KANL;AAOE,IAAA,CAAC,EAAE,WAACa,CAAD;AAAA,aAAOA,CAAC,CAACZ,CAAT;AAAA,KAPL;AAQE,IAAA,WAAW,EAAE,CARf;AASE,IAAA,KAAK,EAAE;AAAEa,MAAAA,aAAa,EAAE;AAAjB;AATT,IAZF,EAuBGT,KAAK,iBACJ;AACE,IAAA,CAAC,EAAEI,EAAE,GAAGD,UADV;AAEE,IAAA,CAAC,EAAEE,EAAE,GAAGF,UAFV;AAGE,IAAA,KAAK,EAAED,UAHT;AAIE,IAAA,MAAM,EAAEA,UAJV;AAKE,IAAA,MAAM,EAAEQ,aAAMC,QAAN,CAAeC,WALzB;AAME,IAAA,IAAI,EAAC,MANP;AAOE,IAAA,WAAW,EAAE,CAPf;AAQE,IAAA,aAAa,EAAC;AARhB,IAxBJ,eAmCE;AACE,IAAA,EAAE,EAAER,EADN;AAEE,IAAA,EAAE,EAAEC,EAFN;AAGE,IAAA,CAAC,EAAER,CAAC,GAAG,CAHT;AAIE,IAAA,SAAS,EAAE,4BAAWL,OAAO,CAACqB,iBAAnB,CAJb;AAKE,IAAA,YAAY,EAAE;AAAA,aAAMZ,QAAQ,CAAC,IAAD,CAAd;AAAA,KALhB;AAME,IAAA,YAAY,EAAE;AAAA,aAAMA,QAAQ,CAAC,KAAD,CAAd;AAAA;AANhB,KAOMF,IAPN,EAnCF,CADF;AA+CD,CAxDD;;AA0DAT,kBAAkB,CAACwB,SAAnB,GAA+B;AAC7BpB,EAAAA,KAAK,EAAEqB,sBAAUC,MADY;AAE7BrB,EAAAA,CAAC,EAAEoB,sBAAUE,MAFgB;AAG7BrB,EAAAA,CAAC,EAAEmB,sBAAUE,MAHgB;AAI7BpB,EAAAA,CAAC,EAAEkB,sBAAUE,MAJgB;AAK7BxB,EAAAA,SAAS,EAAEsB,sBAAUG,MALQ;AAM7B1B,EAAAA,OAAO,EAAEuB,sBAAUC,MANU;AAO7BlB,EAAAA,WAAW,EAAEiB,sBAAUI,KAAV,CAAgB;AAC3BZ,IAAAA,KAAK,EAAEQ,sBAAUG,MADU;AAE3BE,IAAAA,KAAK,EAAEL,sBAAUG;AAFU,GAAhB;AAPgB,CAA/B;;IAaaG,S;;;;;;;;;;;;WAOX,kBAAS;AACP,UAAM9B,KAAK,GAAG,KAAKA,KAAnB;AACA,UAAQ+B,IAAR,GAA6B/B,KAA7B,CAAQ+B,IAAR;AAAA,UAAcC,UAAd,GAA6BhC,KAA7B,CAAcgC,UAAd;;AACA,iBAAkCA,UAAU,IAAI,EAAhD;AAAA,4BAAQ7B,KAAR;AAAA,UAAQA,KAAR,2BAAgB,EAAhB;AAAA,2BAAoB8B,IAApB;AAAA,UAAoBA,IAApB,0BAA2B,EAA3B;;AACA,UAAMC,KAAK,GAAG,wBAAY/B,KAAK,CAACC,CAAlB,EAAqB2B,IAArB,EAA2BE,IAAI,CAACE,KAAhC,EAAuC,WAAvC,CAAd;AAEA,0BAAO,gCAAC,gBAAD,gCAAanC,KAAb;AAAoB,QAAA,KAAK,EAAEkC,KAA3B;AAAkC,QAAA,wBAAwB,EAAEnC;AAA5D,SAAP;AACD;;;EAd4BqC,kBAAMC,S;;;iCAAxBP,S,eACQ;AACjBC,EAAAA,IAAI,EAAEP,sBAAUc,KADC;AAEjBC,EAAAA,QAAQ,EAAEf,sBAAUgB,IAFH;AAGjBR,EAAAA,UAAU,EAAES,YAAMC,cAAN,CAAqBC;AAHhB,C;;eAgBN;AAAA,SAAO;AACpBC,IAAAA,IAAI,EAAE,WADc;AAEpBP,IAAAA,SAAS,EAAEP,SAFS;AAGpBe,IAAAA,IAAI,EAAE;AAHc,GAAP;AAAA,C","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { LinePath } from '@vx/shape';\nimport { Group } from '@vx/group';\nimport classNames from 'classnames';\nimport { color } from '../../../render-ui/src/index';\nimport { dataToXBand } from '../utils';\nimport RawLine from './common/line';\n\nconst DraggableComponent = (props) => {\n const { classes = {}, className, scale, x, y, r, correctness, ...rest } = props;\n const [hover, setHover] = useState(false);\n\n const squareSize = r * 4;\n const squareHalf = squareSize / 2;\n const cx = scale.x(x);\n const cy = scale.y(y);\n\n return (\n <Group className={classNames(className, classes.line, correctness && correctness.value)}>\n <LinePath\n data={[\n { x: scale.x(x) - r, y: scale.y(y) + r },\n { x: scale.x(x) + r, y: scale.y(y) - r },\n ]}\n key={`point-${x}-${y}-1`}\n x={(d) => d.x}\n y={(d) => d.y}\n strokeWidth={5}\n style={{ pointerEvents: 'none' }}\n />\n <LinePath\n data={[\n { x: scale.x(x) - r, y: scale.y(y) - r },\n { x: scale.x(x) + r, y: scale.y(y) + r },\n ]}\n key={`point-${x}-${y}-2`}\n x={(d) => d.x}\n y={(d) => d.y}\n strokeWidth={5}\n style={{ pointerEvents: 'none' }}\n />\n {hover && (\n <rect\n x={cx - squareHalf}\n y={cy - squareHalf}\n width={squareSize}\n height={squareSize}\n stroke={color.defaults.BORDER_GRAY}\n fill=\"none\"\n strokeWidth={2}\n pointerEvents=\"none\"\n />\n )}\n <circle\n cx={cx}\n cy={cy}\n r={r * 2}\n className={classNames(classes.transparentHandle)}\n onMouseEnter={() => setHover(true)}\n onMouseLeave={() => setHover(false)}\n {...rest}\n />\n </Group>\n );\n};\n\nDraggableComponent.propTypes = {\n scale: PropTypes.object,\n x: PropTypes.number,\n y: PropTypes.number,\n r: PropTypes.number,\n className: PropTypes.string,\n classes: PropTypes.object,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n};\n\nexport class LineCross extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n render() {\n const props = this.props;\n const { data, graphProps } = props;\n const { scale = {}, size = {} } = graphProps || {};\n const xBand = dataToXBand(scale.x, data, size.width, 'lineCross');\n\n return <RawLine {...props} xBand={xBand} CustomDraggableComponent={DraggableComponent} />;\n }\n}\n\nexport default () => ({\n type: 'lineCross',\n Component: LineCross,\n name: 'Line Cross',\n});\n"],"file":"line-cross.js"}
|
package/lib/line/line-dot.js
CHANGED
|
@@ -21,6 +21,8 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
21
21
|
|
|
22
22
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
23
23
|
|
|
24
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
25
|
+
|
|
24
26
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
25
27
|
|
|
26
28
|
var _react = _interopRequireDefault(require("react"));
|
|
@@ -29,13 +31,15 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
29
31
|
|
|
30
32
|
var _plot = require("@pie-lib/plot");
|
|
31
33
|
|
|
34
|
+
var _index = require("./../shared/index");
|
|
35
|
+
|
|
32
36
|
var _utils = require("../utils");
|
|
33
37
|
|
|
34
38
|
var _line = _interopRequireDefault(require("./common/line"));
|
|
35
39
|
|
|
36
40
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
37
41
|
|
|
38
|
-
var _excluded = ["scale", "x", "y", "className", "classes", "r", "correctness"];
|
|
42
|
+
var _excluded = ["scale", "x", "y", "className", "classes", "r", "correctness", "interactive"];
|
|
39
43
|
|
|
40
44
|
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); }; }
|
|
41
45
|
|
|
@@ -49,21 +53,42 @@ var DraggableComponent = function DraggableComponent(_ref) {
|
|
|
49
53
|
classes = _ref.classes,
|
|
50
54
|
r = _ref.r,
|
|
51
55
|
correctness = _ref.correctness,
|
|
56
|
+
interactive = _ref.interactive,
|
|
52
57
|
rest = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
53
|
-
|
|
58
|
+
|
|
59
|
+
var _React$useState = _react["default"].useState(false),
|
|
60
|
+
_React$useState2 = (0, _slicedToArray2["default"])(_React$useState, 2),
|
|
61
|
+
isHovered = _React$useState2[0],
|
|
62
|
+
setIsHovered = _React$useState2[1];
|
|
63
|
+
|
|
64
|
+
var allowRolloverEvent = !correctness && interactive;
|
|
65
|
+
return /*#__PURE__*/_react["default"].createElement("g", {
|
|
66
|
+
onMouseEnter: function onMouseEnter() {
|
|
67
|
+
return setIsHovered(true);
|
|
68
|
+
},
|
|
69
|
+
onMouseLeave: function onMouseLeave() {
|
|
70
|
+
return setIsHovered(false);
|
|
71
|
+
}
|
|
72
|
+
}, /*#__PURE__*/_react["default"].createElement("circle", (0, _extends2["default"])({
|
|
54
73
|
cx: scale.x(x),
|
|
55
74
|
cy: scale.y(y),
|
|
56
75
|
r: r * 3,
|
|
57
76
|
className: (0, _classnames["default"])(classes.transparentHandle, className),
|
|
58
|
-
|
|
59
|
-
pointerEvents: 'none'
|
|
60
|
-
}
|
|
77
|
+
pointerEvents: correctness ? 'none' : ''
|
|
61
78
|
}, rest)), /*#__PURE__*/_react["default"].createElement("circle", (0, _extends2["default"])({
|
|
62
79
|
cx: scale.x(x),
|
|
63
80
|
cy: scale.y(y),
|
|
64
81
|
r: r,
|
|
65
82
|
className: (0, _classnames["default"])(className, classes.handle, correctness && correctness.value)
|
|
66
|
-
}, rest))
|
|
83
|
+
}, rest)), isHovered && allowRolloverEvent && /*#__PURE__*/_react["default"].createElement("rect", {
|
|
84
|
+
x: scale.x(x) - r * 2,
|
|
85
|
+
y: scale.y(y) - r * 2,
|
|
86
|
+
width: r * 4,
|
|
87
|
+
height: r * 4,
|
|
88
|
+
stroke: _index.color.defaults.BORDER_GRAY,
|
|
89
|
+
strokeWidth: "1",
|
|
90
|
+
fill: "none"
|
|
91
|
+
}));
|
|
67
92
|
};
|
|
68
93
|
|
|
69
94
|
DraggableComponent.propTypes = {
|
|
@@ -128,4 +153,4 @@ var _default = function _default() {
|
|
|
128
153
|
};
|
|
129
154
|
|
|
130
155
|
exports["default"] = _default;
|
|
131
|
-
//# sourceMappingURL=
|
|
156
|
+
//# sourceMappingURL=line-dot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/line/line-dot.js"],"names":["DraggableComponent","scale","x","y","className","classes","r","correctness","interactive","rest","React","useState","isHovered","setIsHovered","allowRolloverEvent","transparentHandle","handle","value","color","defaults","BORDER_GRAY","propTypes","PropTypes","object","number","string","shape","label","LineDot","props","data","graphProps","size","xBand","width","Component","array","onChange","func","types","GraphPropsType","isRequired","type","name"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { color } from '../../../render-ui/src/index';\nimport { dataToXBand } from '../utils';\nimport RawLine from './common/line';\nimport classNames from 'classnames';\n\nconst DraggableComponent = ({ scale, x, y, className, classes, r, correctness, interactive, ...rest }) => {\n const [isHovered, setIsHovered] = React.useState(false);\n const allowRolloverEvent = !correctness && interactive;\n\n return (\n <g onMouseEnter={() => setIsHovered(true)} onMouseLeave={() => setIsHovered(false)}>\n <circle\n cx={scale.x(x)}\n cy={scale.y(y)}\n r={r * 3}\n className={classNames(classes.transparentHandle, className)}\n pointerEvents={correctness ? 'none' : ''}\n {...rest}\n />\n <circle\n cx={scale.x(x)}\n cy={scale.y(y)}\n r={r}\n className={classNames(className, classes.handle, correctness && correctness.value)}\n {...rest}\n />\n {isHovered && allowRolloverEvent && (\n <rect\n x={scale.x(x) - r * 2}\n y={scale.y(y) - r * 2}\n width={r * 4}\n height={r * 4}\n stroke={color.defaults.BORDER_GRAY}\n strokeWidth=\"1\"\n fill=\"none\"\n />\n )}\n </g>\n );\n};\n\nDraggableComponent.propTypes = {\n scale: PropTypes.object,\n x: PropTypes.number,\n y: PropTypes.number,\n r: PropTypes.number,\n className: PropTypes.string,\n classes: PropTypes.object,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n};\n\nexport class LineDot extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n render() {\n const props = this.props;\n const { data, graphProps } = props;\n const { scale = {}, size = {} } = graphProps || {};\n const xBand = dataToXBand(scale.x, data, size.width, 'lineDot');\n\n return <RawLine {...props} xBand={xBand} CustomDraggableComponent={DraggableComponent} />;\n }\n}\n\nexport default () => ({\n type: 'lineDot',\n Component: LineDot,\n name: 'Line Dot',\n});\n"],"file":"line-dot.js"}
|
package/lib/mark-label.js
CHANGED
|
@@ -27,7 +27,7 @@ var _plot = require("@pie-lib/plot");
|
|
|
27
27
|
|
|
28
28
|
var _styles2 = require("./common/styles");
|
|
29
29
|
|
|
30
|
-
var
|
|
30
|
+
var _index = require("./shared/index");
|
|
31
31
|
|
|
32
32
|
var _mathRendering = require("@pie-lib/math-rendering");
|
|
33
33
|
|
|
@@ -46,7 +46,6 @@ var styles = function styles(theme) {
|
|
|
46
46
|
fontFamily: theme.typography.fontFamily,
|
|
47
47
|
fontSize: theme.typography.fontSize,
|
|
48
48
|
border: 'none',
|
|
49
|
-
color: _renderUi.color.primaryDark(),
|
|
50
49
|
'&.correct': (0, _styles2.correct)('color'),
|
|
51
50
|
'&.incorrect': (0, _styles2.incorrect)('color'),
|
|
52
51
|
'&.disabled': {
|
|
@@ -61,7 +60,7 @@ var styles = function styles(theme) {
|
|
|
61
60
|
textAlign: 'center',
|
|
62
61
|
fontSize: theme.typography.fontSize + 2,
|
|
63
62
|
fontFamily: theme.typography.fontFamily,
|
|
64
|
-
color:
|
|
63
|
+
color: _index.color.primaryDark(),
|
|
65
64
|
paddingTop: theme.typography.fontSize / 2
|
|
66
65
|
},
|
|
67
66
|
disabled: _objectSpread(_objectSpread({}, (0, _styles2.disabled)('color')), {}, {
|
|
@@ -129,7 +128,8 @@ var MarkLabel = function MarkLabel(props) {
|
|
|
129
128
|
correctness = props.correctness,
|
|
130
129
|
autoFocus = props.autoFocus,
|
|
131
130
|
error = props.error,
|
|
132
|
-
isHiddenLabel = props.isHiddenLabel
|
|
131
|
+
isHiddenLabel = props.isHiddenLabel,
|
|
132
|
+
limitCharacters = props.limitCharacters;
|
|
133
133
|
|
|
134
134
|
var _useState3 = (0, _react.useState)(mark.label),
|
|
135
135
|
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
@@ -149,6 +149,10 @@ var MarkLabel = function MarkLabel(props) {
|
|
|
149
149
|
var root = (0, _react.useRef)(null);
|
|
150
150
|
|
|
151
151
|
var onChange = function onChange(e) {
|
|
152
|
+
if (limitCharacters && e.target.value && e.target.value.length > 20) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
|
|
152
156
|
setLabel(e.target.value);
|
|
153
157
|
};
|
|
154
158
|
|
|
@@ -246,10 +250,11 @@ MarkLabel.propTypes = {
|
|
|
246
250
|
value: _propTypes["default"].string,
|
|
247
251
|
label: _propTypes["default"].string
|
|
248
252
|
}),
|
|
249
|
-
isHiddenLabel: _propTypes["default"].bool
|
|
253
|
+
isHiddenLabel: _propTypes["default"].bool,
|
|
254
|
+
limitCharacters: _propTypes["default"].bool
|
|
250
255
|
};
|
|
251
256
|
|
|
252
257
|
var _default = (0, _styles.withStyles)(styles)(MarkLabel);
|
|
253
258
|
|
|
254
259
|
exports["default"] = _default;
|
|
255
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYXJrLWxhYmVsLmpzeCJdLCJuYW1lcyI6WyJzdHlsZXMiLCJ0aGVtZSIsImlucHV0IiwiZm9udEZhbWlseSIsInR5cG9ncmFwaHkiLCJmb250U2l6ZSIsImJvcmRlciIsImNvbG9yIiwicHJpbWFyeURhcmsiLCJiYWNrZ3JvdW5kQ29sb3IiLCJwYWxldHRlIiwiZXJyb3IiLCJtYWluIiwibWF0aElucHV0IiwicG9pbnRlckV2ZW50cyIsInRleHRBbGlnbiIsInBhZGRpbmdUb3AiLCJkaXNhYmxlZCIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJpc0ZyYWN0aW9uRm9ybWF0IiwibGFiZWwiLCJ0cmltbWVkTGFiZWwiLCJ0cmltIiwiZnJhY1JlZ2V4IiwiUmVnRXhwIiwidGVzdCIsImdldExhYmVsTWF0aEZvcm1hdCIsImZyYWN0aW9uIiwibWl4ZWROciIsImltcHJvcGVyRnJhY3Rpb24iLCJzcGxpdCIsImluY2x1ZGVzIiwiZm9ybWF0dGVkTExhYmVsIiwidW5kZWZpbmVkIiwiTWFya0xhYmVsIiwicHJvcHMiLCJzZXRJbnB1dCIsIl9yZWYiLCJub2RlIiwibWFyayIsImNsYXNzZXMiLCJleHRlcm5hbElucHV0UmVmIiwiaW5wdXRSZWYiLCJiYXJXaWR0aCIsInJvdGF0ZSIsImNvcnJlY3RuZXNzIiwiYXV0b0ZvY3VzIiwiaXNIaWRkZW5MYWJlbCIsInNldExhYmVsIiwibWF0aExhYmVsIiwic2V0TWF0aExhYmVsIiwiaXNFZGl0aW5nIiwic2V0SXNFZGl0aW5nIiwicm9vdCIsIm9uQ2hhbmdlIiwiZSIsInRhcmdldCIsInZhbHVlIiwiaXNNYXRoUmVuZGVyaW5nIiwib25DaGFuZ2VQcm9wIiwiZXh0cmFTdHlsZSIsIndpZHRoIiwiciIsIl9faHRtbCIsImVkaXRhYmxlIiwibWluV2lkdGgiLCJwb3NpdGlvbiIsInRyYW5zZm9ybU9yaWdpbiIsInRyYW5zZm9ybSIsInZpc2liaWxpdHkiLCJiYWNrZ3JvdW5kIiwiYm94U2l6aW5nIiwicGFkZGluZ0xlZnQiLCJwYWRkaW5nUmlnaHQiLCJ0b3AiLCJsZWZ0IiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwiYm9vbCIsImFueSIsImZ1bmMiLCJncmFwaFByb3BzIiwidHlwZXMiLCJHcmFwaFByb3BzVHlwZSIsIm9iamVjdCIsIm51bWJlciIsInNoYXBlIiwic3RyaW5nIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBLElBQU1BLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ3pCQyxJQUFBQSxLQUFLLEVBQUU7QUFDTCxlQUFPLE9BREY7QUFFTEMsTUFBQUEsVUFBVSxFQUFFRixLQUFLLENBQUNHLFVBQU4sQ0FBaUJELFVBRnhCO0FBR0xFLE1BQUFBLFFBQVEsRUFBRUosS0FBSyxDQUFDRyxVQUFOLENBQWlCQyxRQUh0QjtBQUlMQyxNQUFBQSxNQUFNLEVBQUUsTUFKSDtBQUtMQyxNQUFBQSxLQUFLLEVBQUVBLGdCQUFNQyxXQUFOLEVBTEY7QUFNTCxtQkFBYSxzQkFBUSxPQUFSLENBTlI7QUFPTCxxQkFBZSx3QkFBVSxPQUFWLENBUFY7QUFRTCxvQkFBYztBQUNaQyxRQUFBQSxlQUFlLEVBQUU7QUFETCxPQVJUO0FBV0wsaUJBQVc7QUFBRUgsUUFBQUEsTUFBTSxzQkFBZUwsS0FBSyxDQUFDUyxPQUFOLENBQWNDLEtBQWQsQ0FBb0JDLElBQW5DO0FBQVI7QUFYTixLQURrQjtBQWN6QkMsSUFBQUEsU0FBUyxFQUFFO0FBQ1RDLE1BQUFBLGFBQWEsRUFBRSxNQUROO0FBRVRDLE1BQUFBLFNBQVMsRUFBRSxRQUZGO0FBR1RWLE1BQUFBLFFBQVEsRUFBRUosS0FBSyxDQUFDRyxVQUFOLENBQWlCQyxRQUFqQixHQUE0QixDQUg3QjtBQUlURixNQUFBQSxVQUFVLEVBQUVGLEtBQUssQ0FBQ0csVUFBTixDQUFpQkQsVUFKcEI7QUFLVEksTUFBQUEsS0FB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VSxNQURVO0FBRTNCbkUsSUFBQUEsS0FBSyxFQUFFeUQsc0JBQVVVO0FBRlUsR0FBaEIsQ0FYTztBQWVwQnhDLEVBQUFBLGFBQWEsRUFBRThCLHNCQUFVQztBQWZMLENBQXRCOztlQWtCZSx3QkFBVy9FLE1BQVgsRUFBbUJtQyxTQUFuQixDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IEF1dG9zaXplSW5wdXQgZnJvbSAncmVhY3QtaW5wdXQtYXV0b3NpemUnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHR5cGVzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgeyBjb3JyZWN0LCBpbmNvcnJlY3QsIGRpc2FibGVkIH0gZnJvbSAnLi9jb21tb24vc3R5bGVzJztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCB7IHJlbmRlck1hdGggfSBmcm9tICdAcGllLWxpYi9tYXRoLXJlbmRlcmluZyc7XG5cbmNvbnN0IHN0eWxlcyA9ICh0aGVtZSkgPT4gKHtcbiAgaW5wdXQ6IHtcbiAgICBmbG9hdDogJ3JpZ2h0JyxcbiAgICBmb250RmFtaWx5OiB0aGVtZS50eXBvZ3JhcGh5LmZvbnRGYW1pbHksXG4gICAgZm9udFNpemU6IHRoZW1lLnR5cG9ncmFwaHkuZm9udFNpemUsXG4gICAgYm9yZGVyOiAnbm9uZScsXG4gICAgY29sb3I6IGNvbG9yLnByaW1hcnlEYXJrKCksXG4gICAgJyYuY29ycmVjdCc6IGNvcnJlY3QoJ2NvbG9yJyksXG4gICAgJyYuaW5jb3JyZWN0JzogaW5jb3JyZWN0KCdjb2xvcicpLFxuICAgICcmLmRpc2FibGVkJzoge1xuICAgICAgYmFja2dyb3VuZENvbG9yOiAndHJhbnNwYXJlbnQgIWltcG9ydGFudCcsXG4gICAgfSxcbiAgICAnJi5lcnJvcic6IHsgYm9yZGVyOiBgMnB4IHNvbGlkICR7dGhlbWUucGFsZXR0ZS5lcnJvci5tYWlufWAgfSxcbiAgfSxcbiAgbWF0aElucHV0OiB7XG4gICAgcG9pbnRlckV2ZW50czogJ2F1dG8nLFxuICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgZm9udFNpemU6IHRoZW1lLnR5cG9ncmFwaHkuZm9udFNpemUgKyAyLFxuICAgIGZvbnRGYW1pbHk6IHRoZW1lLnR5cG9ncmFwaHkuZm9udEZhbWlseSxcbiAgICBjb2xvcjogY29sb3IucHJpbWFyeURhcmsoKSxcbiAgICBwYWRkaW5nVG9wOiB0aGVtZS50eXBvZ3JhcGh5LmZvbnRTaXplIC8gMixcbiAgfSxcbiAgZGlzYWJsZWQ6IHtcbiAgICAuLi5kaXNhYmxlZCgnY29sb3InKSxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6ICd0cmFuc3BhcmVudCAhaW1wb3J0YW50JyxcbiAgfSxcbiAgZXJyb3I6IHtcbiAgICBib3JkZXI6IGAycHggc29saWQgJHt0aGVtZS5wYWxldHRlLmVycm9yLm1haW59YCxcbiAgfSxcbiAgY29ycmVjdDoge1xuICAgIC4uLmNvcnJlY3QoJ2NvbG9yJyksXG4gIH0sXG4gIGluY29ycmVjdDoge1xuICAgIC4uLmluY29ycmVjdCgnY29sb3InKSxcbiAgfSxcbn0pO1xuXG5mdW5jdGlvbiBpc0ZyYWN0aW9uRm9ybWF0KGxhYmVsKSB7XG4gIGNvbnN0IHRyaW1tZWRMYWJlbCA9IGxhYmVsPy50cmltKCkgfHwgJyc7XG4gIGNvbnN0IGZyYWNSZWdleCA9IG5ldyBSZWdFeHAoL15bMS05XSpbMC05XSpcXHM/WzEtOV1bMC05XSpcXC9bMS05XVswLTldKiQvKTtcbiAgcmV0dXJuIGZyYWNSZWdleC50ZXN0KHRyaW1tZWRMYWJlbCk7XG59XG5cbmZ1bmN0aW9uIGdldExhYmVsTWF0aEZvcm1hdChsYWJlbCkge1xuICBjb25zdCB0cmltbWVkTGFiZWwgPSBsYWJlbD8udHJpbSgpIHx8ICcnO1xuICBsZXQgZnJhY3Rpb247XG4gIGxldCBtaXhlZE5yID0gJyc7XG4gIGxldCBpbXByb3BlckZyYWN0aW9uID0gdHJpbW1lZExhYmVsLnNwbGl0KCcgJyk7XG4gIGlmIChpbXByb3BlckZyYWN0aW9uWzFdICYmIGltcHJvcGVyRnJhY3Rpb25bMV0uaW5jbHVkZXMoJy8nKSkge1xuICAgIGZyYWN0aW9uID0gaW1wcm9wZXJGcmFjdGlvblsxXS5zcGxpdCgnLycpIHx8ICcnO1xuICB9IGVsc2Uge1xuICAgIGZyYWN0aW9uID0gdHJpbW1lZExhYmVsPy5zcGxpdCgnLycpIHx8ICcnO1xuICB9XG5cbiAgbGV0IGZvcm1hdHRlZExMYWJlbDtcbiAgaWYgKGlzRnJhY3Rpb25Gb3JtYXQobGFiZWwpKSB7XG4gICAgaWYgKGltcHJvcGVyRnJhY3Rpb25bMF0gJiYgaW1wcm9wZXJGcmFjdGlvblsxXSkge1xuICAgICAgbWl4ZWROciA9IGltcHJvcGVyRnJhY3Rpb25bMF07XG4gICAgfVxuICAgIGZvcm1hdHRlZExMYWJlbCA9IGBcXFxcKCR7bWl4ZWROcn1cXFxcZnJhY3ske2ZyYWN0aW9uWzBdfX17JHtmcmFjdGlvblsxXX19XFxcXClgO1xuICAgIHJldHVybiBmb3JtYXR0ZWRMTGFiZWw7XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGNvbnN0IE1hcmtMYWJlbCA9IChwcm9wcykgPT4ge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW51c2VkLXZhcnNcbiAgY29uc3QgW2lucHV0LCBzZXRJbnB1dF0gPSB1c2VTdGF0ZShudWxsKTtcbiAgY29uc3QgX3JlZiA9IHVzZUNhbGxiYWNrKChub2RlKSA9PiBzZXRJbnB1dChub2RlKSwgbnVsbCk7XG5cbiAgY29uc3Qge1xuICAgIG1hcmssXG4gICAgY2xhc3NlcyxcbiAgICBkaXNhYmxlZCxcbiAgICBpbnB1dFJlZjogZXh0ZXJuYWxJbnB1dFJlZixcbiAgICBiYXJXaWR0aCxcbiAgICByb3RhdGUsXG4gICAgY29ycmVjdG5lc3MsXG4gICAgYXV0b0ZvY3VzLFxuICAgIGVycm9yLFxuICAgIGlzSGlkZGVuTGFiZWwsXG4gIH0gPSBwcm9wcztcblxuICBjb25zdCBbbGFiZWwsIHNldExhYmVsXSA9IHVzZVN0YXRlKG1hcmsubGFiZWwpO1xuICBjb25zdCBbbWF0aExhYmVsLCBzZXRNYXRoTGFiZWxdID0gdXNlU3RhdGUoZ2V0TGFiZWxNYXRoRm9ybWF0KG1hcmsubGFiZWwpKTtcbiAgY29uc3QgW2lzRWRpdGluZywgc2V0SXNFZGl0aW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgbGV0IHJvb3QgPSB1c2VSZWYobnVsbCk7XG5cbiAgY29uc3Qgb25DaGFuZ2UgPSAoZSkgPT4ge1xuICAgIHNldExhYmVsKGUudGFyZ2V0LnZhbHVlKTtcbiAgfTtcblxuICBjb25zdCBpc01hdGhSZW5kZXJpbmcgPSAoKSA9PiB7XG4gICAgcmV0dXJuIGlzRWRpdGluZyA9PT0gZmFsc2UgJiYgbWF0aExhYmVsICE9PSB1bmRlZmluZWQ7XG4gIH07XG5cbiAgY29uc3Qgb25DaGFuZ2VQcm9wID0gKGUpID0+IHtcbiAgICBzZXRNYXRoTGFiZWwoZ2V0TGFiZWxNYXRoRm9ybWF0KG1hcmsubGFiZWwpKTtcbiAgICBzZXRJc0VkaXRpbmcoZmFsc2UpO1xuICAgIHByb3BzLm9uQ2hhbmdlKGUudGFyZ2V0LnZhbHVlKTtcbiAgfTtcbiAgbGV0IGV4dHJhU3R5bGUgPSB7fTtcblxuICBpZiAocm90YXRlKSB7XG4gICAgZXh0cmFTdHlsZSA9IHtcbiAgICAgIHdpZHRoOiAndW5zZXQnLFxuICAgICAgdGV4dEFsaWduOiAnbGVmdCcsXG4gICAgfTtcbiAgfVxuXG4gIC8vIHVzZVN0YXRlIG9ubHkgc2V0cyB0aGUgdmFsdWUgb25jZSwgdG8gc3luY2ggcHJvcHMgdG8gc3RhdGUgbmVlZCB1c2VFZmZlY3RcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRMYWJlbChtYXJrLmxhYmVsKTtcbiAgfSwgW21hcmsubGFiZWxdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJlbmRlck1hdGgocm9vdCk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4gaXNNYXRoUmVuZGVyaW5nKCkgPyAoXG4gICAgPGRpdlxuICAgICAgcmVmPXsocikgPT4ge1xuICAgICAgICByb290ID0gcjtcbiAgICAgICAgZXh0ZXJuYWxJbnB1dFJlZihyKTtcbiAgICAgIH19XG4gICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17eyBfX2h0bWw6IGdldExhYmVsTWF0aEZvcm1hdChsYWJlbCkgfX1cbiAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyhjbGFzc2VzLm1hdGhJbnB1dCwge1xuICAgICAgICBbY2xhc3Nlcy5kaXNhYmxlZF06IGRpc2FibGVkLFxuICAgICAgICBbY2xhc3Nlcy5lcnJvcl06IGVycm9yLFxuICAgICAgICBbY2xhc3Nlcy5jb3JyZWN0XTogbWFyay5lZGl0YWJsZSAmJiBjb3JyZWN0bmVzcz8ubGFiZWwgPT09ICdjb3JyZWN0JyxcbiAgICAgICAgW2NsYXNzZXMuaW5jb3JyZWN0XTogbWFyay5lZGl0YWJsZSAmJiBjb3JyZWN0bmVzcz8ubGFiZWwgPT09ICdpbmNvcnJlY3QnLFxuICAgICAgfSl9XG4gICAgICBvbkNsaWNrPXsoKSA9PiBzZXRJc0VkaXRpbmcodHJ1ZSl9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBtaW5XaWR0aDogYmFyV2lkdGgsXG4gICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICB0cmFuc2Zvcm1PcmlnaW46ICdsZWZ0JyxcbiAgICAgICAgdHJhbnNmb3JtOiBgcm90YXRlKCR7cm90YXRlfWRlZylgLFxuICAgICAgICB2aXNpYmlsaXR5OiBpc0hpZGRlbkxhYmVsID8gJ2hpZGRlbicgOiAndW5zZXQnLFxuICAgICAgfX1cbiAgICA+PC9kaXY+XG4gICkgOiAoXG4gICAgPEF1dG9zaXplSW5wdXRcbiAgICAgIGlucHV0UmVmPXsocikgPT4ge1xuICAgICAgICBfcmVmKHIpO1xuICAgICAgICBleHRlcm5hbElucHV0UmVmKHIpO1xuICAgICAgfX1cbiAgICAgIGF1dG9Gb2N1cz17aXNFZGl0aW5nIHx8IGF1dG9Gb2N1c31cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgIGlucHV0Q2xhc3NOYW1lPXtjbGFzc05hbWVzKFxuICAgICAgICBjbGFzc2VzLmlucHV0LFxuICAgICAgICBjb3JyZWN0bmVzcyAmJiBtYXJrLmVkaXRhYmxlID8gY29ycmVjdG5lc3MubGFiZWwgOiBudWxsLFxuICAgICAgICBkaXNhYmxlZCAmJiAnZGlzYWJsZWQnLFxuICAgICAgICBlcnJvciAmJiAnZXJyb3InLFxuICAgICAgKX1cbiAgICAgIGlucHV0U3R5bGU9e3tcbiAgICAgICAgbWluV2lkdGg6IGJhcldpZHRoLFxuICAgICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgICAgICBiYWNrZ3JvdW5kOiAndHJhbnNwYXJlbnQnLFxuICAgICAgICBib3hTaXppbmc6ICdib3JkZXItYm94JyxcbiAgICAgICAgcGFkZGluZ0xlZnQ6IDAsXG4gICAgICAgIHBhZGRpbmdSaWdodDogMCxcbiAgICAgICAgLi4uZXh0cmFTdHlsZSxcbiAgICAgIH19XG4gICAgICB2YWx1ZT17bGFiZWx9XG4gICAgICBzdHlsZT17e1xuICAgICAgICBwb3NpdGlvbjogJ2ZpeGVkJyxcbiAgICAgICAgcG9pbnRlckV2ZW50czogJ2F1dG8nLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIGxlZnQ6IDAsXG4gICAgICAgIG1pbldpZHRoOiBiYXJXaWR0aCxcbiAgICAgICAgdHJhbnNmb3JtT3JpZ2luOiAnbGVmdCcsXG4gICAgICAgIHRyYW5zZm9ybTogYHJvdGF0ZSgke3JvdGF0ZX1kZWcpYCxcbiAgICAgICAgdmlzaWJpbGl0eTogaXNIaWRkZW5MYWJlbCA/ICdoaWRkZW4nIDogJ3Vuc2V0JyxcbiAgICAgIH19XG4gICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICBvbkJsdXI9e29uQ2hhbmdlUHJvcH1cbiAgICAvPlxuICApO1xufTtcblxuTWFya0xhYmVsLnByb3BUeXBlcyA9IHtcbiAgYXV0b0ZvY3VzOiBQcm9wVHlwZXMuYm9vbCxcbiAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICBlcnJvcjogUHJvcFR5cGVzLmFueSxcbiAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZSxcbiAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgaW5wdXRSZWY6IFByb3BUeXBlcy5mdW5jLFxuICBtYXJrOiBQcm9wVHlwZXMub2JqZWN0LFxuICBiYXJXaWR0aDogUHJvcFR5cGVzLm51bWJlcixcbiAgcm90YXRlOiBQcm9wVHlwZXMubnVtYmVyLFxuICBjb3JyZWN0bmVzczogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgfSksXG4gIGlzSGlkZGVuTGFiZWw6IFByb3BUeXBlcy5ib29sLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlcyhzdHlsZXMpKE1hcmtMYWJlbCk7XG4iXX0=
|
|
260
|
+
//# sourceMappingURL=mark-label.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mark-label.jsx"],"names":["styles","theme","input","fontFamily","typography","fontSize","border","backgroundColor","palette","error","main","mathInput","pointerEvents","textAlign","color","primaryDark","paddingTop","disabled","correct","incorrect","isFractionFormat","label","trimmedLabel","trim","fracRegex","RegExp","test","getLabelMathFormat","fraction","mixedNr","improperFraction","split","includes","formattedLLabel","undefined","MarkLabel","props","setInput","_ref","node","mark","classes","externalInputRef","inputRef","barWidth","rotate","correctness","autoFocus","isHiddenLabel","limitCharacters","setLabel","mathLabel","setMathLabel","isEditing","setIsEditing","root","onChange","e","target","value","length","isMathRendering","onChangeProp","extraStyle","width","r","__html","editable","minWidth","position","transformOrigin","transform","visibility","background","boxSizing","paddingLeft","paddingRight","top","left","propTypes","PropTypes","bool","any","func","graphProps","types","GraphPropsType","object","number","shape","string"],"mappings":"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","sourcesContent":["import React, { useState, useCallback, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport AutosizeInput from 'react-input-autosize';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { correct, incorrect, disabled } from './common/styles';\nimport { color } from '../../render-ui/src/index';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nconst styles = (theme) => ({\n input: {\n float: 'right',\n fontFamily: theme.typography.fontFamily,\n fontSize: theme.typography.fontSize,\n border: 'none',\n '&.correct': correct('color'),\n '&.incorrect': incorrect('color'),\n '&.disabled': {\n backgroundColor: 'transparent !important',\n },\n '&.error': { border: `2px solid ${theme.palette.error.main}` },\n },\n mathInput: {\n pointerEvents: 'auto',\n textAlign: 'center',\n fontSize: theme.typography.fontSize + 2,\n fontFamily: theme.typography.fontFamily,\n color: color.primaryDark(),\n paddingTop: theme.typography.fontSize / 2,\n },\n disabled: {\n ...disabled('color'),\n backgroundColor: 'transparent !important',\n },\n error: {\n border: `2px solid ${theme.palette.error.main}`,\n },\n correct: {\n ...correct('color'),\n },\n incorrect: {\n ...incorrect('color'),\n },\n});\n\nfunction isFractionFormat(label) {\n const trimmedLabel = label?.trim() || '';\n const fracRegex = new RegExp(/^[1-9]*[0-9]*\\s?[1-9][0-9]*\\/[1-9][0-9]*$/);\n return fracRegex.test(trimmedLabel);\n}\n\nfunction getLabelMathFormat(label) {\n const trimmedLabel = label?.trim() || '';\n let fraction;\n let mixedNr = '';\n let improperFraction = trimmedLabel.split(' ');\n if (improperFraction[1] && improperFraction[1].includes('/')) {\n fraction = improperFraction[1].split('/') || '';\n } else {\n fraction = trimmedLabel?.split('/') || '';\n }\n\n let formattedLLabel;\n if (isFractionFormat(label)) {\n if (improperFraction[0] && improperFraction[1]) {\n mixedNr = improperFraction[0];\n }\n formattedLLabel = `\\\\(${mixedNr}\\\\frac{${fraction[0]}}{${fraction[1]}}\\\\)`;\n return formattedLLabel;\n }\n return undefined;\n}\n\nexport const MarkLabel = (props) => {\n // eslint-disable-next-line no-unused-vars\n const [input, setInput] = useState(null);\n const _ref = useCallback((node) => setInput(node), null);\n\n const {\n mark,\n classes,\n disabled,\n inputRef: externalInputRef,\n barWidth,\n rotate,\n correctness,\n autoFocus,\n error,\n isHiddenLabel,\n limitCharacters,\n } = props;\n\n const [label, setLabel] = useState(mark.label);\n const [mathLabel, setMathLabel] = useState(getLabelMathFormat(mark.label));\n const [isEditing, setIsEditing] = useState(false);\n let root = useRef(null);\n\n const onChange = (e) => {\n if (limitCharacters && e.target.value && e.target.value.length > 20) {\n return;\n }\n\n setLabel(e.target.value);\n };\n\n const isMathRendering = () => {\n return isEditing === false && mathLabel !== undefined;\n };\n\n const onChangeProp = (e) => {\n setMathLabel(getLabelMathFormat(mark.label));\n setIsEditing(false);\n props.onChange(e.target.value);\n };\n let extraStyle = {};\n\n if (rotate) {\n extraStyle = {\n width: 'unset',\n textAlign: 'left',\n };\n }\n\n // useState only sets the value once, to synch props to state need useEffect\n useEffect(() => {\n setLabel(mark.label);\n }, [mark.label]);\n\n useEffect(() => {\n renderMath(root);\n }, []);\n\n return isMathRendering() ? (\n <div\n ref={(r) => {\n root = r;\n externalInputRef(r);\n }}\n dangerouslySetInnerHTML={{ __html: getLabelMathFormat(label) }}\n className={classNames(classes.mathInput, {\n [classes.disabled]: disabled,\n [classes.error]: error,\n [classes.correct]: mark.editable && correctness?.label === 'correct',\n [classes.incorrect]: mark.editable && correctness?.label === 'incorrect',\n })}\n onClick={() => setIsEditing(true)}\n style={{\n minWidth: barWidth,\n position: 'fixed',\n transformOrigin: 'left',\n transform: `rotate(${rotate}deg)`,\n visibility: isHiddenLabel ? 'hidden' : 'unset',\n }}\n ></div>\n ) : (\n <AutosizeInput\n inputRef={(r) => {\n _ref(r);\n externalInputRef(r);\n }}\n autoFocus={isEditing || autoFocus}\n disabled={disabled}\n inputClassName={classNames(\n classes.input,\n correctness && mark.editable ? correctness.label : null,\n disabled && 'disabled',\n error && 'error',\n )}\n inputStyle={{\n minWidth: barWidth,\n textAlign: 'center',\n background: 'transparent',\n boxSizing: 'border-box',\n paddingLeft: 0,\n paddingRight: 0,\n ...extraStyle,\n }}\n value={label}\n style={{\n position: 'fixed',\n pointerEvents: 'auto',\n top: 0,\n left: 0,\n minWidth: barWidth,\n transformOrigin: 'left',\n transform: `rotate(${rotate}deg)`,\n visibility: isHiddenLabel ? 'hidden' : 'unset',\n }}\n onChange={onChange}\n onBlur={onChangeProp}\n />\n );\n};\n\nMarkLabel.propTypes = {\n autoFocus: PropTypes.bool,\n disabled: PropTypes.bool,\n error: PropTypes.any,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType,\n classes: PropTypes.object,\n inputRef: PropTypes.func,\n mark: PropTypes.object,\n barWidth: PropTypes.number,\n rotate: PropTypes.number,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n isHiddenLabel: PropTypes.bool,\n limitCharacters: PropTypes.bool,\n};\n\nexport default withStyles(styles)(MarkLabel);\n"],"file":"mark-label.js"}
|
package/lib/plot/common/plot.js
CHANGED
|
@@ -37,7 +37,7 @@ var _dragHandle = _interopRequireWildcard(require("../../common/drag-handle"));
|
|
|
37
37
|
|
|
38
38
|
var _debug = _interopRequireDefault(require("debug"));
|
|
39
39
|
|
|
40
|
-
var
|
|
40
|
+
var _index2 = require("./../../shared/index");
|
|
41
41
|
|
|
42
42
|
var _utils = require("../../utils");
|
|
43
43
|
|
|
@@ -148,19 +148,20 @@ var RawPlot = /*#__PURE__*/function (_React$Component) {
|
|
|
148
148
|
var pointHeight = size.height / max;
|
|
149
149
|
var pointDiameter = (pointHeight > barWidth ? barWidth : pointHeight) * 0.8;
|
|
150
150
|
var Component = interactive ? _dragHandle["default"] : _dragHandle.DragHandle;
|
|
151
|
+
var allowRolloverEvent = interactive && !correctness;
|
|
151
152
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("g", {
|
|
152
153
|
onMouseEnter: this.handleMouseEnter,
|
|
153
154
|
onMouseLeave: this.handleMouseLeave,
|
|
154
155
|
onTouchStart: this.handleMouseEnter,
|
|
155
156
|
onTouchEnd: this.handleMouseLeave
|
|
156
|
-
}, isHovered && /*#__PURE__*/_react["default"].createElement("rect", {
|
|
157
|
+
}, isHovered && allowRolloverEvent && /*#__PURE__*/_react["default"].createElement("rect", {
|
|
157
158
|
x: barX,
|
|
158
159
|
y: scale.y(v),
|
|
159
160
|
width: barWidth,
|
|
160
161
|
height: values !== null && values !== void 0 && values.length ? pointHeight * values.length : 0,
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
162
|
+
stroke: _index2.color.defaults.BORDER_GRAY,
|
|
163
|
+
strokeWidth: '4px',
|
|
164
|
+
fill: 'transparent'
|
|
164
165
|
}), values.map(function (index) {
|
|
165
166
|
return CustomBarElement({
|
|
166
167
|
index: index,
|
|
@@ -186,7 +187,7 @@ var RawPlot = /*#__PURE__*/function (_React$Component) {
|
|
|
186
187
|
correctness: correctness,
|
|
187
188
|
isHovered: isHovered,
|
|
188
189
|
defineChart: defineChart,
|
|
189
|
-
color:
|
|
190
|
+
color: _index2.color.primaryDark()
|
|
190
191
|
})));
|
|
191
192
|
}
|
|
192
193
|
}]);
|
|
@@ -212,12 +213,12 @@ exports.RawPlot = RawPlot;
|
|
|
212
213
|
var Bar = (0, _index.withStyles)(function () {
|
|
213
214
|
return {
|
|
214
215
|
dot: {
|
|
215
|
-
fill:
|
|
216
|
+
fill: _index2.color.visualElementsColors.PLOT_FILL_COLOR,
|
|
216
217
|
'&.correct': (0, _styles.correct)('stroke'),
|
|
217
218
|
'&.incorrect': (0, _styles.incorrect)('stroke')
|
|
218
219
|
},
|
|
219
220
|
line: {
|
|
220
|
-
stroke:
|
|
221
|
+
stroke: _index2.color.visualElementsColors.PLOT_FILL_COLOR,
|
|
221
222
|
'&.correct': (0, _styles.correct)('stroke'),
|
|
222
223
|
'&.incorrect': (0, _styles.incorrect)('stroke')
|
|
223
224
|
}
|
|
@@ -277,4 +278,4 @@ exports.Plot = Plot;
|
|
|
277
278
|
});
|
|
278
279
|
var _default = Plot;
|
|
279
280
|
exports["default"] = _default;
|
|
280
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbG90L2NvbW1vbi9wbG90LmpzeCJdLCJuYW1lcyI6WyJsb2ciLCJSYXdQbG90IiwicHJvcHMiLCJzZXRTdGF0ZSIsImlzSG92ZXJlZCIsImRyYWdWYWx1ZSIsImxhYmVsIiwib25DaGFuZ2VDYXRlZ29yeSIsInN0YXRlIiwidW5kZWZpbmVkIiwidmFsdWUiLCJzZXREcmFnVmFsdWUiLCJleGlzdGluZyIsIm5leHQiLCJncmFwaFByb3BzIiwiY2xhc3NlcyIsInhCYW5kIiwiaW5kZXgiLCJDdXN0b21CYXJFbGVtZW50IiwiaW50ZXJhY3RpdmUiLCJjb3JyZWN0bmVzcyIsImRlZmluZUNoYXJ0Iiwic2NhbGUiLCJyYW5nZSIsInNpemUiLCJtYXgiLCJ2IiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJiYXJXaWR0aCIsImJhbmR3aWR0aCIsImJhckhlaWdodCIsInkiLCJiYXJYIiwidmFsdWVzIiwiaSIsInB1c2giLCJwb2ludEhlaWdodCIsImhlaWdodCIsInBvaW50RGlhbWV0ZXIiLCJDb21wb25lbnQiLCJEcmFnZ2FibGVIYW5kbGUiLCJEcmFnSGFuZGxlIiwiaGFuZGxlTW91c2VFbnRlciIsImhhbmRsZU1vdXNlTGVhdmUiLCJsZW5ndGgiLCJmaWxsIiwibWFwIiwiZHJhZ1N0b3AiLCJjb2xvciIsInByaW1hcnlEYXJrIiwiUmVhY3QiLCJQcm9wVHlwZXMiLCJmdW5jIiwibnVtYmVyIiwib2JqZWN0Iiwic3RyaW5nIiwiaXNSZXF1aXJlZCIsInR5cGVzIiwiR3JhcGhQcm9wc1R5cGUiLCJib29sIiwic2hhcGUiLCJCYXIiLCJkb3QiLCJwcmltYXJ5TGlnaHQiLCJsaW5lIiwic3Ryb2tlIiwiUGxvdCIsImRhdGEiLCJkIiwiY2F0ZWdvcnkiLCJhcnJheSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7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QUZYO0FBR2pCckMsRUFBQUEsS0FBSyxFQUFFb0Msc0JBQVVDLElBSEE7QUFJakJ2QyxFQUFBQSxVQUFVLEVBQUU0QyxZQUFNQyxjQUFOLENBQXFCRixVQUpoQjtBQUtqQnBDLEVBQUFBLFdBQVcsRUFBRStCLHNCQUFVUSxJQUxOO0FBTWpCMUMsRUFBQUEsZ0JBQWdCLEVBQUVrQyxzQkFBVUM7QUFOWCxDO2VBa0NOYyxJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyB0eXBlcyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuaW1wb3J0IHsgR3JvdXAgfSBmcm9tICdAdngvZ3JvdXAnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcy9pbmRleCc7XG5pbXBvcnQgRHJhZ2dhYmxlSGFuZGxlLCB7IERyYWdIYW5kbGUgfSBmcm9tICcuLi8uLi9jb21tb24vZHJhZy1oYW5kbGUnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCB7IGJhbmRLZXkgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBjb3JyZWN0LCBpbmNvcnJlY3QgfSBmcm9tICcuLi8uLi9jb21tb24vc3R5bGVzJztcblxuY29uc3QgbG9nID0gZGVidWcoJ3BpZS1saWI6Y2hhcnQ6YmFycycpO1xuXG5leHBvcnQgY2xhc3MgUmF3UGxvdCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgb25DaGFuZ2VDYXRlZ29yeTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgdmFsdWU6IFByb3BUeXBlcy5udW1iZXIsXG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBsYWJlbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB4QmFuZDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgaW5kZXg6IFByb3BUeXBlcy5udW1iZXIuaXNSZXF1aXJlZCxcbiAgICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZS5pc1JlcXVpcmVkLFxuICAgIEN1c3RvbUJhckVsZW1lbnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIGludGVyYWN0aXZlOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBjb3JyZWN0bmVzczogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgfSksXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG4gICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgIGRyYWdWYWx1ZTogdW5kZWZpbmVkLFxuICAgICAgaXNIb3ZlcmVkOiBmYWxzZSxcbiAgICB9O1xuICB9XG5cbiAgaGFuZGxlTW91c2VFbnRlciA9ICgpID0+IHtcbiAgICB0aGlzLnNldFN0YXRlKHsgaXNIb3ZlcmVkOiB0cnVlIH0pO1xuICB9O1xuXG4gIGhhbmRsZU1vdXNlTGVhdmUgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IGlzSG92ZXJlZDogZmFsc2UgfSk7XG4gIH07XG5cbiAgc2V0RHJhZ1ZhbHVlID0gKGRyYWdWYWx1ZSkgPT4gdGhpcy5zZXRTdGF0ZSh7IGRyYWdWYWx1ZSB9KTtcblxuICBkcmFnU3RvcCA9ICgpID0+IHtcbiAgICBjb25zdCB7IGxhYmVsLCBvbkNoYW5nZUNhdGVnb3J5IH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHsgZHJhZ1ZhbHVlIH0gPSB0aGlzLnN0YXRlO1xuICAgIGxvZygnW2RyYWdTdG9wXScsIGRyYWdWYWx1ZSk7XG5cbiAgICBpZiAoZHJhZ1ZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG9uQ2hhbmdlQ2F0ZWdvcnkoeyBsYWJlbCwgdmFsdWU6IGRyYWdWYWx1ZSB9KTtcbiAgICB9XG5cbiAgICB0aGlzLnNldERyYWdWYWx1ZSh1bmRlZmluZWQpO1xuICB9O1xuXG4gIGRyYWdWYWx1ZSA9IChleGlzdGluZywgbmV4dCkgPT4ge1xuICAgIGxvZygnW2RyYWdWYWx1ZV0gbmV4dDonLCBuZXh0KTtcblxuICAgIHRoaXMuc2V0RHJhZ1ZhbHVlKG5leHQpO1xuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7XG4gICAgICBncmFwaFByb3BzLFxuICAgICAgdmFsdWUsXG4gICAgICBsYWJlbCxcbiAgICAgIGNsYXNzZXMsXG4gICAgICB4QmFuZCxcbiAgICAgIGluZGV4LFxuICAgICAgQ3VzdG9tQmFyRWxlbWVudCxcbiAgICAgIGludGVyYWN0aXZlLFxuICAgICAgY29ycmVjdG5lc3MsXG4gICAgICBkZWZpbmVDaGFydCxcbiAgICB9ID0gdGhpcy5wcm9wcztcblxuICAgIGNvbnN0IHsgc2NhbGUsIHJhbmdlLCBzaXplIH0gPSBncmFwaFByb3BzO1xuICAgIGNvbnN0IHsgbWF4IH0gPSByYW5nZSB8fCB7fTtcbiAgICBjb25zdCB7IGRyYWdWYWx1ZSwgaXNIb3ZlcmVkIH0gPSB0aGlzLnN0YXRlO1xuXG4gICAgY29uc3QgdiA9IE51bWJlci5pc0Zpbml0ZShkcmFnVmFsdWUpID8gZHJhZ1ZhbHVlIDogdmFsdWU7XG4gICAgY29uc3QgYmFyV2lkdGggPSB4QmFuZC5iYW5kd2lkdGgoKTtcbiAgICBjb25zdCBiYXJIZWlnaHQgPSBzY2FsZS55KHJhbmdlLm1heCAtIHYpO1xuICAgIGNvbnN0IGJhclggPSB4QmFuZChiYW5kS2V5KHsgbGFiZWwgfSwgaW5kZXgpKTtcblxuICAgIGxvZygnbGFiZWw6JywgbGFiZWwsICdiYXJYOicsIGJhclgsICd2OiAnLCB2LCAnYmFySGVpZ2h0OicsIGJhckhlaWdodCwgJ2JhcldpZHRoOiAnLCBiYXJXaWR0aCk7XG5cbiAgICBjb25zdCB2YWx1ZXMgPSBbXTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdjsgaSsrKSB7XG4gICAgICB2YWx1ZXMucHVzaChpKTtcbiAgICB9XG5cbiAgICBjb25zdCBwb2ludEhlaWdodCA9IHNpemUuaGVpZ2h0IC8gbWF4O1xuICAgIGNvbnN0IHBvaW50RGlhbWV0ZXIgPSAocG9pbnRIZWlnaHQgPiBiYXJXaWR0aCA/IGJhcldpZHRoIDogcG9pbnRIZWlnaHQpICogMC44O1xuICAgIGNvbnN0IENvbXBvbmVudCA9IGludGVyYWN0aXZlID8gRHJhZ2dhYmxlSGFuZGxlIDogRHJhZ0hhbmRsZTtcblxuICAgIHJldHVybiAoXG4gICAgICA8UmVhY3QuRnJhZ21lbnQ+XG4gICAgICAgIDxnXG4gICAgICAgICAgb25Nb3VzZUVudGVyPXt0aGlzLmhhbmRsZU1vdXNlRW50ZXJ9XG4gICAgICAgICAgb25Nb3VzZUxlYXZlPXt0aGlzLmhhbmRsZU1vdXNlTGVhdmV9XG4gICAgICAgICAgb25Ub3VjaFN0YXJ0PXt0aGlzLmhhbmRsZU1vdXNlRW50ZXJ9XG4gICAgICAgICAgb25Ub3VjaEVuZD17dGhpcy5oYW5kbGVNb3VzZUxlYXZlfVxuICAgICAgICA+XG4gICAgICAgICAge2lzSG92ZXJlZCAmJiAoXG4gICAgICAgICAgICA8cmVjdFxuICAgICAgICAgICAgICB4PXtiYXJYfVxuICAgICAgICAgICAgICB5PXtzY2FsZS55KHYpfVxuICAgICAgICAgICAgICB3aWR0aD17YmFyV2lkdGh9XG4gICAgICAgICAgICAgIGhlaWdodD17dmFsdWVzPy5sZW5ndGggPyBwb2ludEhlaWdodCAqIHZhbHVlcy5sZW5ndGggOiAwfVxuICAgICAgICAgICAgICBzdHlsZT17eyBmaWxsOiAnI0U1RThGNScgfX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7dmFsdWVzLm1hcCgoaW5kZXgpID0+XG4gICAgICAgICAgICBDdXN0b21CYXJFbGVtZW50KHtcbiAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICAgIHBvaW50RGlhbWV0ZXIsXG4gICAgICAgICAgICAgIGJhclgsXG4gICAgICAgICAgICAgIGJhcldpZHRoLFxuICAgICAgICAgICAgICBwb2ludEhlaWdodCxcbiAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgIHZhbHVlLFxuICAgICAgICAgICAgICBjbGFzc2VzLFxuICAgICAgICAgICAgICBzY2FsZSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICl9XG4gICAgICAgICAgPENvbXBvbmVudFxuICAgICAgICAgICAgeD17YmFyWH1cbiAgICAgICAgICAgIHk9e3Z9XG4gICAgICAgICAgICBpbnRlcmFjdGl2ZT17aW50ZXJhY3RpdmV9XG4gICAgICAgICAgICB3aWR0aD17YmFyV2lkdGh9XG4gICAgICAgICAgICBvbkRyYWc9eyh2KSA9PiB0aGlzLmRyYWdWYWx1ZSh2YWx1ZSwgdil9XG4gICAgICAgICAgICBvbkRyYWdTdG9wPXt0aGlzLmRyYWdTdG9wfVxuICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgIGNvcnJlY3RuZXNzPXtjb3JyZWN0bmVzc31cbiAgICAgICAgICAgIGlzSG92ZXJlZD17aXNIb3ZlcmVkfVxuICAgICAgICAgICAgZGVmaW5lQ2hhcnQ9e2RlZmluZUNoYXJ0fVxuICAgICAgICAgICAgY29sb3I9e2NvbG9yLnByaW1hcnlEYXJrKCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgICApO1xuICB9XG59XG5cbmNvbnN0IEJhciA9IHdpdGhTdHlsZXMoKCkgPT4gKHtcbiAgZG90OiB7XG4gICAgZmlsbDogY29sb3IucHJpbWFyeUxpZ2h0KCksXG4gICAgJyYuY29ycmVjdCc6IGNvcnJlY3QoJ3N0cm9rZScpLFxuICAgICcmLmluY29ycmVjdCc6IGluY29ycmVjdCgnc3Ryb2tlJyksXG4gIH0sXG4gIGxpbmU6IHtcbiAgICBzdHJva2U6IGNvbG9yLnByaW1hcnlMaWdodCgpLFxuICAgICcmLmNvcnJlY3QnOiBjb3JyZWN0KCdzdHJva2UnKSxcbiAgICAnJi5pbmNvcnJlY3QnOiBpbmNvcnJlY3QoJ3N0cm9rZScpLFxuICB9LFxufSkpKFJhd1Bsb3QpO1xuXG5leHBvcnQgY2xhc3MgUGxvdCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgZGF0YTogUHJvcFR5cGVzLmFycmF5LFxuICAgIG9uQ2hhbmdlQ2F0ZWdvcnk6IFByb3BUeXBlcy5mdW5jLFxuICAgIHhCYW5kOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZS5pc1JlcXVpcmVkLFxuICAgIGRlZmluZUNoYXJ0OiBQcm9wVHlwZXMuYm9vbCxcbiAgICBDdXN0b21CYXJFbGVtZW50OiBQcm9wVHlwZXMuZnVuYyxcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBkYXRhLCBncmFwaFByb3BzLCB4QmFuZCwgQ3VzdG9tQmFyRWxlbWVudCwgb25DaGFuZ2VDYXRlZ29yeSwgZGVmaW5lQ2hhcnQgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPEdyb3VwPlxuICAgICAgICB7KGRhdGEgfHwgW10pLm1hcCgoZCwgaW5kZXgpID0+IChcbiAgICAgICAgICA8QmFyXG4gICAgICAgICAgICB2YWx1ZT17ZC52YWx1ZX1cbiAgICAgICAgICAgIGxhYmVsPXtkLmxhYmVsfVxuICAgICAgICAgICAgaW50ZXJhY3RpdmU9e2RlZmluZUNoYXJ0IHx8IGQuaW50ZXJhY3RpdmV9XG4gICAgICAgICAgICBkZWZpbmVDaGFydD17ZGVmaW5lQ2hhcnR9XG4gICAgICAgICAgICB4QmFuZD17eEJhbmR9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBrZXk9e2BiYXItJHtkLmxhYmVsfS0ke2QudmFsdWV9LSR7aW5kZXh9YH1cbiAgICAgICAgICAgIG9uQ2hhbmdlQ2F0ZWdvcnk9eyhjYXRlZ29yeSkgPT4gb25DaGFuZ2VDYXRlZ29yeShpbmRleCwgY2F0ZWdvcnkpfVxuICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgIEN1c3RvbUJhckVsZW1lbnQ9e0N1c3RvbUJhckVsZW1lbnR9XG4gICAgICAgICAgICBjb3JyZWN0bmVzcz17ZC5jb3JyZWN0bmVzc31cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICAgIDwvR3JvdXA+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBQbG90O1xuIl19
|
|
281
|
+
//# sourceMappingURL=plot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/plot/common/plot.jsx"],"names":["log","RawPlot","props","setState","isHovered","dragValue","label","onChangeCategory","state","undefined","value","setDragValue","existing","next","graphProps","classes","xBand","index","CustomBarElement","interactive","correctness","defineChart","scale","range","size","max","v","Number","isFinite","barWidth","bandwidth","barHeight","y","barX","values","i","push","pointHeight","height","pointDiameter","Component","DraggableHandle","DragHandle","allowRolloverEvent","handleMouseEnter","handleMouseLeave","length","color","defaults","BORDER_GRAY","map","dragStop","primaryDark","React","PropTypes","func","number","object","string","isRequired","types","GraphPropsType","bool","shape","Bar","dot","fill","visualElementsColors","PLOT_FILL_COLOR","line","stroke","Plot","data","d","category","array"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { Group } from '@vx/group';\nimport { withStyles } from '@material-ui/core/styles/index';\nimport DraggableHandle, { DragHandle } from '../../common/drag-handle';\nimport debug from 'debug';\nimport { color } from '../../../../render-ui/src/index';\nimport { bandKey } from '../../utils';\nimport { correct, incorrect } from '../../common/styles';\n\nconst log = debug('pie-lib:chart:bars');\n\nexport class RawPlot extends React.Component {\n static propTypes = {\n onChangeCategory: PropTypes.func,\n value: PropTypes.number,\n classes: PropTypes.object,\n label: PropTypes.string,\n xBand: PropTypes.func,\n index: PropTypes.number.isRequired,\n graphProps: types.GraphPropsType.isRequired,\n CustomBarElement: PropTypes.func,\n interactive: PropTypes.bool,\n correctness: PropTypes.shape({\n value: PropTypes.string,\n label: PropTypes.string,\n }),\n };\n\n constructor(props) {\n super(props);\n this.state = {\n dragValue: undefined,\n isHovered: false,\n };\n }\n\n handleMouseEnter = () => {\n this.setState({ isHovered: true });\n };\n\n handleMouseLeave = () => {\n this.setState({ isHovered: false });\n };\n\n setDragValue = (dragValue) => this.setState({ dragValue });\n\n dragStop = () => {\n const { label, onChangeCategory } = this.props;\n const { dragValue } = this.state;\n log('[dragStop]', dragValue);\n\n if (dragValue !== undefined) {\n onChangeCategory({ label, value: dragValue });\n }\n\n this.setDragValue(undefined);\n };\n\n dragValue = (existing, next) => {\n log('[dragValue] next:', next);\n\n this.setDragValue(next);\n };\n\n render() {\n const {\n graphProps,\n value,\n label,\n classes,\n xBand,\n index,\n CustomBarElement,\n interactive,\n correctness,\n defineChart,\n } = this.props;\n\n const { scale, range, size } = graphProps;\n const { max } = range || {};\n const { dragValue, isHovered } = this.state;\n\n const v = Number.isFinite(dragValue) ? dragValue : value;\n const barWidth = xBand.bandwidth();\n const barHeight = scale.y(range.max - v);\n const barX = xBand(bandKey({ label }, index));\n\n log('label:', label, 'barX:', barX, 'v: ', v, 'barHeight:', barHeight, 'barWidth: ', barWidth);\n\n const values = [];\n\n for (let i = 0; i < v; i++) {\n values.push(i);\n }\n\n const pointHeight = size.height / max;\n const pointDiameter = (pointHeight > barWidth ? barWidth : pointHeight) * 0.8;\n const Component = interactive ? DraggableHandle : DragHandle;\n const allowRolloverEvent = interactive && !correctness;\n\n return (\n <React.Fragment>\n <g\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n onTouchStart={this.handleMouseEnter}\n onTouchEnd={this.handleMouseLeave}\n >\n {isHovered && allowRolloverEvent && (\n <rect\n x={barX}\n y={scale.y(v)}\n width={barWidth}\n height={values?.length ? pointHeight * values.length : 0}\n stroke={color.defaults.BORDER_GRAY}\n strokeWidth={'4px'}\n fill={'transparent'}\n />\n )}\n {values.map((index) =>\n CustomBarElement({\n index,\n pointDiameter,\n barX,\n barWidth,\n pointHeight,\n label,\n value,\n classes,\n scale,\n }),\n )}\n <Component\n x={barX}\n y={v}\n interactive={interactive}\n width={barWidth}\n onDrag={(v) => this.dragValue(value, v)}\n onDragStop={this.dragStop}\n graphProps={graphProps}\n correctness={correctness}\n isHovered={isHovered}\n defineChart={defineChart}\n color={color.primaryDark()}\n />\n </g>\n </React.Fragment>\n );\n }\n}\n\nconst Bar = withStyles(() => ({\n dot: {\n fill: color.visualElementsColors.PLOT_FILL_COLOR,\n '&.correct': correct('stroke'),\n '&.incorrect': incorrect('stroke'),\n },\n line: {\n stroke: color.visualElementsColors.PLOT_FILL_COLOR,\n '&.correct': correct('stroke'),\n '&.incorrect': incorrect('stroke'),\n },\n}))(RawPlot);\n\nexport class Plot extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n onChangeCategory: PropTypes.func,\n xBand: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n defineChart: PropTypes.bool,\n CustomBarElement: PropTypes.func,\n };\n\n render() {\n const { data, graphProps, xBand, CustomBarElement, onChangeCategory, defineChart } = this.props;\n\n return (\n <Group>\n {(data || []).map((d, index) => (\n <Bar\n value={d.value}\n label={d.label}\n interactive={defineChart || d.interactive}\n defineChart={defineChart}\n xBand={xBand}\n index={index}\n key={`bar-${d.label}-${d.value}-${index}`}\n onChangeCategory={(category) => onChangeCategory(index, category)}\n graphProps={graphProps}\n CustomBarElement={CustomBarElement}\n correctness={d.correctness}\n />\n ))}\n </Group>\n );\n }\n}\n\nexport default Plot;\n"],"file":"plot.js"}
|
package/lib/plot/dot.js
CHANGED
|
@@ -120,4 +120,4 @@ var _default = function _default() {
|
|
|
120
120
|
};
|
|
121
121
|
|
|
122
122
|
exports["default"] = _default;
|
|
123
|
-
//# sourceMappingURL=
|
|
123
|
+
//# sourceMappingURL=dot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/plot/dot.js"],"names":["CustomBarElement","props","index","pointDiameter","barX","barWidth","pointHeight","label","value","classes","scale","r","cx","cy","y","dot","propTypes","PropTypes","number","string","object","DotPlot","data","graphProps","size","xBand","x","width","React","Component","array","onChange","func","types","GraphPropsType","isRequired","type","name"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { dataToXBand } from '../utils';\nimport Plot from './comm@pie-lib/plot';\nimport { Circle } from '@vx/shape';\n\nconst CustomBarElement = (props) => {\n const { index, pointDiameter, barX, barWidth, pointHeight, label, value, classes, scale } = props;\n\n const r = pointDiameter / 2;\n const cx = barX + (barWidth - pointDiameter) / 2 + r;\n const cy = scale.y(index) - (pointHeight - pointDiameter) / 2 - r;\n\n return <Circle key={`point-${label}-${value}-${index}`} className={classes.dot} cx={cx} cy={cy} r={r} />;\n};\n\nCustomBarElement.propTypes = {\n index: PropTypes.number,\n pointDiameter: PropTypes.number,\n barX: PropTypes.number,\n barWidth: PropTypes.number,\n pointHeight: PropTypes.number,\n value: PropTypes.number,\n label: PropTypes.string,\n classes: PropTypes.object,\n scale: PropTypes.object,\n};\n\nexport class DotPlot extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n render() {\n const props = this.props;\n const { data, graphProps } = props;\n const { scale = {}, size = {} } = graphProps || {};\n const xBand = dataToXBand(scale.x, data, size.width, 'dotPlot');\n\n return <Plot {...props} xBand={xBand} CustomBarElement={CustomBarElement} />;\n }\n}\n\nexport default () => ({\n type: 'dotPlot',\n Component: DotPlot,\n name: 'Dot Plot',\n});\n"],"file":"dot.js"}
|
package/lib/plot/line.js
CHANGED
|
@@ -149,4 +149,4 @@ var _default = function _default() {
|
|
|
149
149
|
};
|
|
150
150
|
|
|
151
151
|
exports["default"] = _default;
|
|
152
|
-
//# sourceMappingURL=
|
|
152
|
+
//# sourceMappingURL=line.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/plot/line.js"],"names":["CustomBarElement","props","index","pointDiameter","barX","barWidth","pointHeight","label","value","classes","scale","x","y","line","d","propTypes","PropTypes","number","string","object","LinePlot","data","graphProps","size","xBand","width","React","Component","array","onChange","func","types","GraphPropsType","isRequired","type","name"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAAW;AAClC,MAAQC,KAAR,GAA4FD,KAA5F,CAAQC,KAAR;AAAA,MAAeC,aAAf,GAA4FF,KAA5F,CAAeE,aAAf;AAAA,MAA8BC,IAA9B,GAA4FH,KAA5F,CAA8BG,IAA9B;AAAA,MAAoCC,QAApC,GAA4FJ,KAA5F,CAAoCI,QAApC;AAAA,MAA8CC,WAA9C,GAA4FL,KAA5F,CAA8CK,WAA9C;AAAA,MAA2DC,KAA3D,GAA4FN,KAA5F,CAA2DM,KAA3D;AAAA,MAAkEC,KAAlE,GAA4FP,KAA5F,CAAkEO,KAAlE;AAAA,MAAyEC,OAAzE,GAA4FR,KAA5F,CAAyEQ,OAAzE;AAAA,MAAkFC,KAAlF,GAA4FT,KAA5F,CAAkFS,KAAlF;AAEA,MAAMC,CAAC,GAAGP,IAAI,GAAG,CAACC,QAAQ,GAAGF,aAAZ,IAA6B,CAA9C;AACA,MAAMS,CAAC,GAAGF,KAAK,CAACE,CAAN,CAAQV,KAAR,IAAiB,CAACI,WAAW,GAAGH,aAAf,IAAgC,CAA3D;AAEA,sBACE,gCAAC,YAAD,qBACE,gCAAC,eAAD;AACE,IAAA,IAAI,EAAE,CACJ;AAAEQ,MAAAA,CAAC,EAADA,CAAF;AAAKC,MAAAA,CAAC,EAADA;AAAL,KADI,EAEJ;AAAED,MAAAA,CAAC,EAAEA,CAAC,GAAGR,aAAT;AAAwBS,MAAAA,CAAC,EAAEA,CAAC,GAAGT;AAA/B,KAFI,CADR;AAKE,IAAA,GAAG,kBAAWI,KAAX,cAAoBC,KAApB,cAA6BN,KAA7B,OALL;AAME,IAAA,SAAS,EAAEO,OAAO,CAACI,IANrB;AAOE,IAAA,CAAC,EAAE,WAACC,CAAD;AAAA,aAAOA,CAAC,CAACH,CAAT;AAAA,KAPL;AAQE,IAAA,CAAC,EAAE,WAACG,CAAD;AAAA,aAAOA,CAAC,CAACF,CAAT;AAAA,KARL;AASE,IAAA,WAAW,EAAET,aAAa,GAAG;AAT/B,IADF,eAYE,gCAAC,eAAD;AACE,IAAA,IAAI,EAAE,CACJ;AAAEQ,MAAAA,CAAC,EAADA,CAAF;AAAKC,MAAAA,CAAC,EAAEA,CAAC,GAAGT;AAAZ,KADI,EAEJ;AAAEQ,MAAAA,CAAC,EAAEA,CAAC,GAAGR,aAAT;AAAwBS,MAAAA,CAAC,EAADA;AAAxB,KAFI,CADR;AAKE,IAAA,GAAG,kBAAWL,KAAX,cAAoBC,KAApB,cAA6BN,KAA7B,OALL;AAME,IAAA,SAAS,EAAEO,OAAO,CAACI,IANrB;AAOE,IAAA,CAAC,EAAE,WAACC,CAAD;AAAA,aAAOA,CAAC,CAACH,CAAT;AAAA,KAPL;AAQE,IAAA,CAAC,EAAE,WAACG,CAAD;AAAA,aAAOA,CAAC,CAACF,CAAT;AAAA,KARL;AASE,IAAA,WAAW,EAAET,aAAa,GAAG;AAT/B,IAZF,CADF;AA0BD,CAhCD;;AAkCAH,gBAAgB,CAACe,SAAjB,GAA6B;AAC3Bb,EAAAA,KAAK,EAAEc,sBAAUC,MADU;AAE3Bd,EAAAA,aAAa,EAAEa,sBAAUC,MAFE;AAG3Bb,EAAAA,IAAI,EAAEY,sBAAUC,MAHW;AAI3BZ,EAAAA,QAAQ,EAAEW,sBAAUC,MAJO;AAK3BX,EAAAA,WAAW,EAAEU,sBAAUC,MALI;AAM3BT,EAAAA,KAAK,EAAEQ,sBAAUC,MANU;AAO3BV,EAAAA,KAAK,EAAES,sBAAUE,MAPU;AAQ3BT,EAAAA,OAAO,EAAEO,sBAAUG,MARQ;AAS3BT,EAAAA,KAAK,EAAEM,sBAAUG;AATU,CAA7B;;IAYaC,Q;;;;;;;;;;;;WAOX,kBAAS;AACP,UAAMnB,KAAK,GAAG,KAAKA,KAAnB;AACA,UAAQoB,IAAR,GAA6BpB,KAA7B,CAAQoB,IAAR;AAAA,UAAcC,UAAd,GAA6BrB,KAA7B,CAAcqB,UAAd;;AACA,iBAAkCA,UAAU,IAAI,EAAhD;AAAA,4BAAQZ,KAAR;AAAA,UAAQA,KAAR,2BAAgB,EAAhB;AAAA,2BAAoBa,IAApB;AAAA,UAAoBA,IAApB,0BAA2B,EAA3B;;AACA,UAAMC,KAAK,GAAG,wBAAYd,KAAK,CAACC,CAAlB,EAAqBU,IAArB,EAA2BE,IAAI,CAACE,KAAhC,EAAuC,UAAvC,CAAd;AAEA,0BAAO,gCAAC,iBAAD,gCAAUxB,KAAV;AAAiB,QAAA,KAAK,EAAEuB,KAAxB;AAA+B,QAAA,gBAAgB,EAAExB;AAAjD,SAAP;AACD;;;EAd2B0B,kBAAMC,S;;;iCAAvBP,Q,eACQ;AACjBC,EAAAA,IAAI,EAAEL,sBAAUY,KADC;AAEjBC,EAAAA,QAAQ,EAAEb,sBAAUc,IAFH;AAGjBR,EAAAA,UAAU,EAAES,YAAMC,cAAN,CAAqBC;AAHhB,C;;eAgBN;AAAA,SAAO;AACpBC,IAAAA,IAAI,EAAE,UADc;AAEpBP,IAAAA,SAAS,EAAEP,QAFS;AAGpBe,IAAAA,IAAI,EAAE;AAHc,GAAP;AAAA,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { types } from '@pie-lib/plot';\nimport { dataToXBand } from '../utils';\nimport Plot from './comm@pie-lib/plot';\nimport { LinePath } from '@vx/shape';\nimport { Group } from '@vx/group';\n\nconst CustomBarElement = (props) => {\n const { index, pointDiameter, barX, barWidth, pointHeight, label, value, classes, scale } = props;\n\n const x = barX + (barWidth - pointDiameter) / 2;\n const y = scale.y(index) - (pointHeight - pointDiameter) / 2;\n\n return (\n <Group>\n <LinePath\n data={[\n { x, y },\n { x: x + pointDiameter, y: y - pointDiameter },\n ]}\n key={`point-${label}-${value}-${index}-1`}\n className={classes.line}\n x={(d) => d.x}\n y={(d) => d.y}\n strokeWidth={pointDiameter / 5}\n />\n <LinePath\n data={[\n { x, y: y - pointDiameter },\n { x: x + pointDiameter, y },\n ]}\n key={`point-${label}-${value}-${index}-2`}\n className={classes.line}\n x={(d) => d.x}\n y={(d) => d.y}\n strokeWidth={pointDiameter / 5}\n />\n </Group>\n );\n};\n\nCustomBarElement.propTypes = {\n index: PropTypes.number,\n pointDiameter: PropTypes.number,\n barX: PropTypes.number,\n barWidth: PropTypes.number,\n pointHeight: PropTypes.number,\n value: PropTypes.number,\n label: PropTypes.string,\n classes: PropTypes.object,\n scale: PropTypes.object,\n};\n\nexport class LinePlot extends React.Component {\n static propTypes = {\n data: PropTypes.array,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType.isRequired,\n };\n\n render() {\n const props = this.props;\n const { data, graphProps } = props;\n const { scale = {}, size = {} } = graphProps || {};\n const xBand = dataToXBand(scale.x, data, size.width, 'linePlot');\n\n return <Plot {...props} xBand={xBand} CustomBarElement={CustomBarElement} />;\n }\n}\n\nexport default () => ({\n type: 'linePlot',\n Component: LinePlot,\n name: 'Line Plot',\n});\n"],"file":"line.js"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
Object.defineProperty(exports, "AppendCSSRules", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function get() {
|
|
13
|
+
return _appendCssRules["default"];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "Collapsible", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function get() {
|
|
19
|
+
return _collapsible["default"];
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports, "EnableAudioAutoplayImage", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function get() {
|
|
25
|
+
return _enableAudioAutoplayImage["default"];
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "Feedback", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function get() {
|
|
31
|
+
return _feedback["default"];
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "HtmlAndMath", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function get() {
|
|
37
|
+
return _htmlAndMath["default"];
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(exports, "InputContainer", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function get() {
|
|
43
|
+
return _inputContainer["default"];
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(exports, "PreviewLayout", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
get: function get() {
|
|
49
|
+
return _previewLayout["default"];
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(exports, "PreviewPrompt", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function get() {
|
|
55
|
+
return _previewPrompt["default"];
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
Object.defineProperty(exports, "Purpose", {
|
|
59
|
+
enumerable: true,
|
|
60
|
+
get: function get() {
|
|
61
|
+
return _purpose["default"];
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
Object.defineProperty(exports, "Readable", {
|
|
65
|
+
enumerable: true,
|
|
66
|
+
get: function get() {
|
|
67
|
+
return _readable["default"];
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
Object.defineProperty(exports, "UiLayout", {
|
|
71
|
+
enumerable: true,
|
|
72
|
+
get: function get() {
|
|
73
|
+
return _uiLayout["default"];
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
exports.color = void 0;
|
|
77
|
+
Object.defineProperty(exports, "hasMedia", {
|
|
78
|
+
enumerable: true,
|
|
79
|
+
get: function get() {
|
|
80
|
+
return _hasMedia.hasMedia;
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
Object.defineProperty(exports, "hasText", {
|
|
84
|
+
enumerable: true,
|
|
85
|
+
get: function get() {
|
|
86
|
+
return _hasText.hasText;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
exports.indicators = void 0;
|
|
90
|
+
Object.defineProperty(exports, "withUndoReset", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function get() {
|
|
93
|
+
return _withUndoReset["default"];
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
var indicators = _interopRequireWildcard(require("./response-indicators"));
|
|
98
|
+
|
|
99
|
+
exports.indicators = indicators;
|
|
100
|
+
|
|
101
|
+
var _feedback = _interopRequireDefault(require("./feedback"));
|
|
102
|
+
|
|
103
|
+
var _collapsible = _interopRequireDefault(require("./collapsible"));
|
|
104
|
+
|
|
105
|
+
var _withUndoReset = _interopRequireDefault(require("./withUndoReset"));
|
|
106
|
+
|
|
107
|
+
var _previewLayout = _interopRequireDefault(require("./preview-layout"));
|
|
108
|
+
|
|
109
|
+
var _uiLayout = _interopRequireDefault(require("./ui-layout"));
|
|
110
|
+
|
|
111
|
+
var _htmlAndMath = _interopRequireDefault(require("./html-and-math"));
|
|
112
|
+
|
|
113
|
+
var _inputContainer = _interopRequireDefault(require("./input-container"));
|
|
114
|
+
|
|
115
|
+
var _previewPrompt = _interopRequireDefault(require("./preview-prompt"));
|
|
116
|
+
|
|
117
|
+
var _readable = _interopRequireDefault(require("./readable"));
|
|
118
|
+
|
|
119
|
+
var _purpose = _interopRequireDefault(require("./purpose"));
|
|
120
|
+
|
|
121
|
+
var color = _interopRequireWildcard(require("./color"));
|
|
122
|
+
|
|
123
|
+
exports.color = color;
|
|
124
|
+
|
|
125
|
+
var _hasText = require("./has-text");
|
|
126
|
+
|
|
127
|
+
var _hasMedia = require("./has-media");
|
|
128
|
+
|
|
129
|
+
var _enableAudioAutoplayImage = _interopRequireDefault(require("./assets/enableAudioAutoplayImage"));
|
|
130
|
+
|
|
131
|
+
var _appendCssRules = _interopRequireDefault(require("./append-css-rules"));
|
|
132
|
+
|
|
133
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
134
|
+
|
|
135
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
136
|
+
//# sourceMappingURL=index.js.map
|