@pie-lib/graphing 2.15.0-beta.1 → 2.15.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/package.json +9 -9
  3. package/lib/axis/arrow.js +0 -115
  4. package/lib/axis/arrow.js.map +0 -1
  5. package/lib/axis/axes.js +0 -415
  6. package/lib/axis/axes.js.map +0 -1
  7. package/lib/axis/index.js +0 -26
  8. package/lib/axis/index.js.map +0 -1
  9. package/lib/bg.js +0 -139
  10. package/lib/bg.js.map +0 -1
  11. package/lib/container/actions.js +0 -24
  12. package/lib/container/actions.js.map +0 -1
  13. package/lib/container/index.js +0 -163
  14. package/lib/container/index.js.map +0 -1
  15. package/lib/container/marks.js +0 -27
  16. package/lib/container/marks.js.map +0 -1
  17. package/lib/container/middleware.js +0 -25
  18. package/lib/container/middleware.js.map +0 -1
  19. package/lib/container/reducer.js +0 -25
  20. package/lib/container/reducer.js.map +0 -1
  21. package/lib/coordinates-label.js +0 -109
  22. package/lib/coordinates-label.js.map +0 -1
  23. package/lib/graph-with-controls.js +0 -359
  24. package/lib/graph-with-controls.js.map +0 -1
  25. package/lib/graph.js +0 -371
  26. package/lib/graph.js.map +0 -1
  27. package/lib/grid-setup.js +0 -462
  28. package/lib/grid-setup.js.map +0 -1
  29. package/lib/grid.js +0 -176
  30. package/lib/grid.js.map +0 -1
  31. package/lib/index.js +0 -59
  32. package/lib/index.js.map +0 -1
  33. package/lib/key-legend.js +0 -246
  34. package/lib/key-legend.js.map +0 -1
  35. package/lib/label-svg-icon.js +0 -56
  36. package/lib/label-svg-icon.js.map +0 -1
  37. package/lib/labels.js +0 -299
  38. package/lib/labels.js.map +0 -1
  39. package/lib/mark-label.js +0 -321
  40. package/lib/mark-label.js.map +0 -1
  41. package/lib/toggle-bar.js +0 -336
  42. package/lib/toggle-bar.js.map +0 -1
  43. package/lib/tool-menu.js +0 -112
  44. package/lib/tool-menu.js.map +0 -1
  45. package/lib/tools/absolute/component.js +0 -35
  46. package/lib/tools/absolute/component.js.map +0 -1
  47. package/lib/tools/absolute/index.js +0 -63
  48. package/lib/tools/absolute/index.js.map +0 -1
  49. package/lib/tools/circle/bg-circle.js +0 -173
  50. package/lib/tools/circle/bg-circle.js.map +0 -1
  51. package/lib/tools/circle/component.js +0 -406
  52. package/lib/tools/circle/component.js.map +0 -1
  53. package/lib/tools/circle/index.js +0 -51
  54. package/lib/tools/circle/index.js.map +0 -1
  55. package/lib/tools/exponential/component.js +0 -34
  56. package/lib/tools/exponential/component.js.map +0 -1
  57. package/lib/tools/exponential/index.js +0 -71
  58. package/lib/tools/exponential/index.js.map +0 -1
  59. package/lib/tools/index.js +0 -99
  60. package/lib/tools/index.js.map +0 -1
  61. package/lib/tools/line/component.js +0 -103
  62. package/lib/tools/line/component.js.map +0 -1
  63. package/lib/tools/line/index.js +0 -16
  64. package/lib/tools/line/index.js.map +0 -1
  65. package/lib/tools/parabola/component.js +0 -34
  66. package/lib/tools/parabola/component.js.map +0 -1
  67. package/lib/tools/parabola/index.js +0 -63
  68. package/lib/tools/parabola/index.js.map +0 -1
  69. package/lib/tools/point/component.js +0 -186
  70. package/lib/tools/point/component.js.map +0 -1
  71. package/lib/tools/point/index.js +0 -32
  72. package/lib/tools/point/index.js.map +0 -1
  73. package/lib/tools/polygon/component.js +0 -518
  74. package/lib/tools/polygon/component.js.map +0 -1
  75. package/lib/tools/polygon/index.js +0 -106
  76. package/lib/tools/polygon/index.js.map +0 -1
  77. package/lib/tools/polygon/line.js +0 -157
  78. package/lib/tools/polygon/line.js.map +0 -1
  79. package/lib/tools/polygon/polygon.js +0 -165
  80. package/lib/tools/polygon/polygon.js.map +0 -1
  81. package/lib/tools/ray/component.js +0 -102
  82. package/lib/tools/ray/component.js.map +0 -1
  83. package/lib/tools/ray/index.js +0 -16
  84. package/lib/tools/ray/index.js.map +0 -1
  85. package/lib/tools/segment/component.js +0 -75
  86. package/lib/tools/segment/component.js.map +0 -1
  87. package/lib/tools/segment/index.js +0 -16
  88. package/lib/tools/segment/index.js.map +0 -1
  89. package/lib/tools/shared/arrow-head.js +0 -70
  90. package/lib/tools/shared/arrow-head.js.map +0 -1
  91. package/lib/tools/shared/icons/CorrectSVG.js +0 -36
  92. package/lib/tools/shared/icons/CorrectSVG.js.map +0 -1
  93. package/lib/tools/shared/icons/IncorrectSVG.js +0 -36
  94. package/lib/tools/shared/icons/IncorrectSVG.js.map +0 -1
  95. package/lib/tools/shared/icons/MissingSVG.js +0 -35
  96. package/lib/tools/shared/icons/MissingSVG.js.map +0 -1
  97. package/lib/tools/shared/line/index.js +0 -599
  98. package/lib/tools/shared/line/index.js.map +0 -1
  99. package/lib/tools/shared/line/line-path.js +0 -151
  100. package/lib/tools/shared/line/line-path.js.map +0 -1
  101. package/lib/tools/shared/line/with-root-edge.js +0 -155
  102. package/lib/tools/shared/line/with-root-edge.js.map +0 -1
  103. package/lib/tools/shared/point/arrow-point.js +0 -113
  104. package/lib/tools/shared/point/arrow-point.js.map +0 -1
  105. package/lib/tools/shared/point/arrow.js +0 -96
  106. package/lib/tools/shared/point/arrow.js.map +0 -1
  107. package/lib/tools/shared/point/base-point.js +0 -175
  108. package/lib/tools/shared/point/base-point.js.map +0 -1
  109. package/lib/tools/shared/point/index.js +0 -97
  110. package/lib/tools/shared/point/index.js.map +0 -1
  111. package/lib/tools/shared/styles.js +0 -58
  112. package/lib/tools/shared/styles.js.map +0 -1
  113. package/lib/tools/shared/types.js +0 -23
  114. package/lib/tools/shared/types.js.map +0 -1
  115. package/lib/tools/sine/component.js +0 -51
  116. package/lib/tools/sine/component.js.map +0 -1
  117. package/lib/tools/sine/index.js +0 -63
  118. package/lib/tools/sine/index.js.map +0 -1
  119. package/lib/tools/vector/component.js +0 -88
  120. package/lib/tools/vector/component.js.map +0 -1
  121. package/lib/tools/vector/index.js +0 -16
  122. package/lib/tools/vector/index.js.map +0 -1
  123. package/lib/undo-redo.js +0 -123
  124. package/lib/undo-redo.js.map +0 -1
  125. package/lib/use-debounce.js +0 -32
  126. package/lib/use-debounce.js.map +0 -1
  127. package/lib/utils.js +0 -307
  128. package/lib/utils.js.map +0 -1
package/lib/mark-label.js DELETED
@@ -1,321 +0,0 @@
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
- exports.position = exports["default"] = exports.coordinates = exports.MarkLabel = void 0;
11
-
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
-
16
- var _react = _interopRequireWildcard(require("react"));
17
-
18
- var _classnames = _interopRequireDefault(require("classnames"));
19
-
20
- var _propTypes = _interopRequireDefault(require("prop-types"));
21
-
22
- var _styles = require("@material-ui/core/styles");
23
-
24
- var _reactInputAutosize = _interopRequireDefault(require("react-input-autosize"));
25
-
26
- var _useDebounce = require("./use-debounce");
27
-
28
- var _plot = require("@pie-lib/plot");
29
-
30
- var _renderUi = require("@pie-lib/render-ui");
31
-
32
- var _labelSvgIcon = _interopRequireDefault(require("./label-svg-icon"));
33
-
34
- 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); }
35
-
36
- 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; }
37
-
38
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
39
-
40
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
-
42
- var inputStyles = function inputStyles(theme) {
43
- return {
44
- "float": 'right',
45
- padding: theme.spacing.unit * 0.5,
46
- borderRadius: '4px',
47
- fontSize: '10px',
48
- backgroundColor: _renderUi.color.defaults.WHITE
49
- };
50
- };
51
-
52
- var styles = function styles(theme) {
53
- return {
54
- inputStudent: _objectSpread(_objectSpread({}, inputStyles(theme)), {}, {
55
- padding: '0',
56
- border: 'none',
57
- color: 'inherit',
58
- fontWeight: 'bold'
59
- }),
60
- input: {
61
- "float": 'right',
62
- padding: theme.spacing.unit * 0.5,
63
- fontFamily: theme.typography.fontFamily,
64
- fontSize: '10px',
65
- border: "solid 1px ".concat(_renderUi.color.defaults.SECONDARY),
66
- borderRadius: '3px',
67
- color: _renderUi.color.defaults.PRIMARY_DARK,
68
- backgroundColor: _renderUi.color.defaults.WHITE
69
- },
70
- disabled: {
71
- border: "solid 1px ".concat(_renderUi.color.defaults.PRIMARY_DARK),
72
- backgroundColor: _renderUi.color.defaults.WHITE,
73
- '-webkit-opacity': '1'
74
- },
75
- disabledMark: {
76
- border: "solid 1px ".concat(_renderUi.color.disabled()),
77
- color: _renderUi.color.disabled(),
78
- '-webkit-text-fill-color': _renderUi.color.disabled()
79
- },
80
- inputCorrect: _objectSpread(_objectSpread({}, inputStyles(theme)), {}, {
81
- color: _renderUi.color.defaults.CORRECT_WITH_ICON,
82
- border: "solid 1px ".concat(_renderUi.color.defaults.CORRECT_WITH_ICON)
83
- }),
84
- inputIncorrect: _objectSpread(_objectSpread({}, inputStyles(theme)), {}, {
85
- color: _renderUi.color.defaults.INCORRECT_WITH_ICON,
86
- border: "solid 1px ".concat(_renderUi.color.defaults.INCORRECT_WITH_ICON)
87
- }),
88
- inputMissing: _objectSpread(_objectSpread({}, inputStyles(theme)), {}, {
89
- color: _renderUi.color.defaults.MISSING_WITH_ICON,
90
- border: "solid 1px ".concat(_renderUi.color.defaults.MISSING_WITH_ICON),
91
- fontWeight: 'bold'
92
- }),
93
- incorrect: _objectSpread(_objectSpread({}, inputStyles(theme)), {}, {
94
- color: _renderUi.color.defaults.INCORRECT_WITH_ICON,
95
- fontWeight: 'bold',
96
- padding: '0'
97
- })
98
- };
99
- };
100
-
101
- var position = function position(graphProps, mark) {
102
- var rect = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
103
- width: 0,
104
- height: 0
105
- };
106
- var scale = graphProps.scale,
107
- domain = graphProps.domain,
108
- range = graphProps.range;
109
- var shift = 5;
110
- var rightEdge = scale.x(mark.x) + rect.width + shift;
111
- var bottomEdge = scale.y(mark.y) + rect.height + shift;
112
- var h = rightEdge >= scale.x(domain.max) ? 'left' : 'right';
113
- var v = bottomEdge >= scale.y(range.min) ? 'top' : 'bottom';
114
- return "".concat(v, "-").concat(h);
115
- };
116
-
117
- exports.position = position;
118
-
119
- var coordinates = function coordinates(graphProps, mark) {
120
- var rect = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
121
- width: 0,
122
- height: 0
123
- };
124
- var position = arguments.length > 3 ? arguments[3] : undefined;
125
- var scale = graphProps.scale;
126
- var shift = 5;
127
-
128
- switch (position) {
129
- case 'bottom-right':
130
- return {
131
- left: scale.x(mark.x) + shift,
132
- top: scale.y(mark.y) + shift
133
- };
134
-
135
- case 'bottom-left':
136
- return {
137
- left: scale.x(mark.x) - shift - rect.width,
138
- top: scale.y(mark.y) + shift
139
- };
140
-
141
- case 'top-left':
142
- return {
143
- left: scale.x(mark.x) - shift - rect.width,
144
- top: scale.y(mark.y) - shift - rect.height
145
- };
146
-
147
- case 'top-right':
148
- return {
149
- left: scale.x(mark.x) + shift,
150
- top: scale.y(mark.y) - shift - rect.height
151
- };
152
-
153
- default:
154
- return {};
155
- }
156
- };
157
-
158
- exports.coordinates = coordinates;
159
-
160
- var LabelInput = function LabelInput(_ref2) {
161
- var _ref = _ref2._ref,
162
- externalInputRef = _ref2.externalInputRef,
163
- label = _ref2.label,
164
- disabled = _ref2.disabled,
165
- inputClassName = _ref2.inputClassName,
166
- onChange = _ref2.onChange;
167
- return /*#__PURE__*/_react["default"].createElement(_reactInputAutosize["default"], {
168
- inputRef: function inputRef(r) {
169
- _ref(r);
170
-
171
- externalInputRef(r);
172
- },
173
- disabled: disabled,
174
- inputClassName: inputClassName,
175
- value: label,
176
- onChange: onChange
177
- });
178
- };
179
-
180
- var MarkLabel = function MarkLabel(props) {
181
- var _cn;
182
-
183
- var _useState = (0, _react.useState)(null),
184
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
185
- input = _useState2[0],
186
- setInput = _useState2[1];
187
-
188
- var _ref = (0, _react.useCallback)(function (node) {
189
- return setInput(node);
190
- });
191
-
192
- var mark = props.mark,
193
- graphProps = props.graphProps,
194
- classes = props.classes,
195
- disabled = props.disabled,
196
- externalInputRef = props.inputRef,
197
- theme = props.theme;
198
-
199
- var _useState3 = (0, _react.useState)(mark.label),
200
- _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
201
- label = _useState4[0],
202
- setLabel = _useState4[1];
203
-
204
- var correctness = mark.correctness,
205
- correctnesslabel = mark.correctnesslabel,
206
- correctlabel = mark.correctlabel;
207
-
208
- var onChange = function onChange(e) {
209
- return setLabel(e.target.value);
210
- };
211
-
212
- var debouncedLabel = (0, _useDebounce.useDebounce)(label, 200); // useState only sets the value once, to synch props to state need useEffect
213
-
214
- (0, _react.useEffect)(function () {
215
- setLabel(mark.label);
216
- }, [mark.label]); // pick up the change to debouncedLabel and save it
217
-
218
- (0, _react.useEffect)(function () {
219
- if (typeof debouncedLabel === 'string' && debouncedLabel !== mark.label) {
220
- props.onChange(debouncedLabel);
221
- }
222
- }, [debouncedLabel]);
223
- var rect = input ? input.getBoundingClientRect() : {
224
- width: 0,
225
- height: 0
226
- };
227
- var pos = position(graphProps, mark, rect);
228
- var leftTop = coordinates(graphProps, mark, rect, pos);
229
-
230
- var style = _objectSpread({
231
- position: 'fixed',
232
- pointerEvents: 'auto',
233
- display: 'flex',
234
- alignItems: 'center',
235
- gap: '3px'
236
- }, leftTop);
237
-
238
- var secondLabelStyle = _objectSpread(_objectSpread({}, style), {}, {
239
- top: leftTop.top + 25
240
- });
241
-
242
- var disabledInput = disabled || mark.disabled;
243
-
244
- var renderInput = function renderInput(inputClass, labelValue) {
245
- return /*#__PURE__*/_react["default"].createElement(LabelInput, {
246
- _ref: _ref,
247
- externalInputRef: externalInputRef,
248
- label: labelValue,
249
- disabled: disabledInput,
250
- inputClassName: (0, _classnames["default"])(inputClass),
251
- onChange: onChange
252
- });
253
- };
254
-
255
- if (correctness === 'correct' && correctnesslabel === 'correct' && correctlabel) {
256
- return /*#__PURE__*/_react["default"].createElement("div", {
257
- className: classes.inputCorrect,
258
- style: style
259
- }, /*#__PURE__*/_react["default"].createElement(_labelSvgIcon["default"], {
260
- type: "correct"
261
- }), renderInput(classes.inputStudent, correctlabel));
262
- } // avoid rendering empty label when a correct point without label was provided
263
-
264
-
265
- if (correctness === 'correct' && correctnesslabel === 'correct' && !correctlabel) {
266
- return null;
267
- }
268
-
269
- if (correctness === 'correct' && correctnesslabel === 'incorrect') {
270
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
271
- className: classes.inputIncorrect,
272
- style: style
273
- }, /*#__PURE__*/_react["default"].createElement(_labelSvgIcon["default"], {
274
- type: "incorrect"
275
- }), label === '' ? /*#__PURE__*/_react["default"].createElement(_labelSvgIcon["default"], {
276
- type: "empty",
277
- style: {
278
- marginLeft: '3px'
279
- }
280
- }) : renderInput(classes.inputStudent, label)), /*#__PURE__*/_react["default"].createElement("div", {
281
- className: classes.inputMissing,
282
- style: secondLabelStyle
283
- }, renderInput(classes.inputStudent, correctlabel)));
284
- }
285
-
286
- if (correctness === 'missing') {
287
- return /*#__PURE__*/_react["default"].createElement("div", {
288
- className: classes.inputMissing,
289
- style: style
290
- }, renderInput(classes.inputStudent, label));
291
- }
292
-
293
- if (correctness === 'incorrect') {
294
- return /*#__PURE__*/_react["default"].createElement("div", {
295
- className: classes.incorrect,
296
- style: style
297
- }, renderInput(classes.inputStudent, label));
298
- }
299
-
300
- return /*#__PURE__*/_react["default"].createElement("div", {
301
- style: style
302
- }, renderInput((0, _classnames["default"])(classes.input, (_cn = {}, (0, _defineProperty2["default"])(_cn, classes.disabled, disabled), (0, _defineProperty2["default"])(_cn, classes.disabledMark, mark.disabled), _cn)), label));
303
- };
304
-
305
- exports.MarkLabel = MarkLabel;
306
- MarkLabel.propTypes = {
307
- disabled: _propTypes["default"].bool,
308
- onChange: _propTypes["default"].func,
309
- graphProps: _plot.types.GraphPropsType,
310
- classes: _propTypes["default"].object,
311
- inputRef: _propTypes["default"].func,
312
- mark: _propTypes["default"].object,
313
- theme: _propTypes["default"].object
314
- };
315
-
316
- var _default = (0, _styles.withStyles)(styles, {
317
- withTheme: true
318
- })(MarkLabel);
319
-
320
- exports["default"] = _default;
321
- //# sourceMappingURL=mark-label.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/mark-label.jsx"],"names":["inputStyles","theme","padding","spacing","unit","borderRadius","fontSize","backgroundColor","color","defaults","WHITE","styles","inputStudent","border","fontWeight","input","fontFamily","typography","SECONDARY","PRIMARY_DARK","disabled","disabledMark","inputCorrect","CORRECT_WITH_ICON","inputIncorrect","INCORRECT_WITH_ICON","inputMissing","MISSING_WITH_ICON","incorrect","position","graphProps","mark","rect","width","height","scale","domain","range","shift","rightEdge","x","bottomEdge","y","h","max","v","min","coordinates","left","top","LabelInput","_ref","externalInputRef","label","inputClassName","onChange","r","MarkLabel","props","setInput","node","classes","inputRef","setLabel","correctness","correctnesslabel","correctlabel","e","target","value","debouncedLabel","getBoundingClientRect","pos","leftTop","style","pointerEvents","display","alignItems","gap","secondLabelStyle","disabledInput","renderInput","inputClass","labelValue","marginLeft","propTypes","PropTypes","bool","func","types","GraphPropsType","object","withTheme"],"mappings":"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","sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport cn from 'classnames';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport AutosizeInput from 'react-input-autosize';\nimport { useDebounce } from './use-debounce';\nimport { types } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport SvgIcon from './label-svg-icon';\n\nconst inputStyles = (theme) => ({\n float: 'right',\n padding: theme.spacing.unit * 0.5,\n borderRadius: '4px',\n fontSize: '10px',\n backgroundColor: color.defaults.WHITE,\n});\n\nconst styles = (theme) => ({\n inputStudent: {\n ...inputStyles(theme),\n padding: '0',\n border: 'none',\n color: 'inherit',\n fontWeight: 'bold',\n },\n input: {\n float: 'right',\n padding: theme.spacing.unit * 0.5,\n fontFamily: theme.typography.fontFamily,\n fontSize: '10px',\n border: `solid 1px ${color.defaults.SECONDARY}`,\n borderRadius: '3px',\n color: color.defaults.PRIMARY_DARK,\n backgroundColor: color.defaults.WHITE,\n },\n disabled: {\n border: `solid 1px ${color.defaults.PRIMARY_DARK}`,\n backgroundColor: color.defaults.WHITE,\n '-webkit-opacity': '1',\n },\n disabledMark: {\n border: `solid 1px ${color.disabled()}`,\n color: color.disabled(),\n '-webkit-text-fill-color': color.disabled(),\n },\n inputCorrect: {\n ...inputStyles(theme),\n color: color.defaults.CORRECT_WITH_ICON,\n border: `solid 1px ${color.defaults.CORRECT_WITH_ICON}`,\n },\n inputIncorrect: {\n ...inputStyles(theme),\n color: color.defaults.INCORRECT_WITH_ICON,\n border: `solid 1px ${color.defaults.INCORRECT_WITH_ICON}`,\n },\n inputMissing: {\n ...inputStyles(theme),\n color: color.defaults.MISSING_WITH_ICON,\n border: `solid 1px ${color.defaults.MISSING_WITH_ICON}`,\n fontWeight: 'bold',\n },\n incorrect: {\n ...inputStyles(theme),\n color: color.defaults.INCORRECT_WITH_ICON,\n fontWeight: 'bold',\n padding: '0',\n },\n});\n\nexport const position = (graphProps, mark, rect = { width: 0, height: 0 }) => {\n const { scale, domain, range } = graphProps;\n const shift = 5;\n\n const rightEdge = scale.x(mark.x) + rect.width + shift;\n const bottomEdge = scale.y(mark.y) + rect.height + shift;\n\n const h = rightEdge >= scale.x(domain.max) ? 'left' : 'right';\n const v = bottomEdge >= scale.y(range.min) ? 'top' : 'bottom';\n\n return `${v}-${h}`;\n};\n\nexport const coordinates = (graphProps, mark, rect = { width: 0, height: 0 }, position) => {\n const { scale } = graphProps;\n const shift = 5;\n\n switch (position) {\n case 'bottom-right':\n return { left: scale.x(mark.x) + shift, top: scale.y(mark.y) + shift };\n case 'bottom-left':\n return { left: scale.x(mark.x) - shift - rect.width, top: scale.y(mark.y) + shift };\n case 'top-left':\n return { left: scale.x(mark.x) - shift - rect.width, top: scale.y(mark.y) - shift - rect.height };\n case 'top-right':\n return { left: scale.x(mark.x) + shift, top: scale.y(mark.y) - shift - rect.height };\n default:\n return {};\n }\n};\n\nconst LabelInput = ({ _ref, externalInputRef, label, disabled, inputClassName, onChange }) => (\n <AutosizeInput\n inputRef={(r) => {\n _ref(r);\n externalInputRef(r);\n }}\n disabled={disabled}\n inputClassName={inputClassName}\n value={label}\n onChange={onChange}\n />\n);\n\nexport const MarkLabel = (props) => {\n const [input, setInput] = useState(null);\n const _ref = useCallback((node) => setInput(node));\n\n const { mark, graphProps, classes, disabled, inputRef: externalInputRef, theme } = props;\n\n const [label, setLabel] = useState(mark.label);\n const { correctness, correctnesslabel, correctlabel } = mark;\n const onChange = (e) => setLabel(e.target.value);\n\n const debouncedLabel = useDebounce(label, 200);\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 // pick up the change to debouncedLabel and save it\n useEffect(() => {\n if (typeof debouncedLabel === 'string' && debouncedLabel !== mark.label) {\n props.onChange(debouncedLabel);\n }\n }, [debouncedLabel]);\n\n const rect = input ? input.getBoundingClientRect() : { width: 0, height: 0 };\n const pos = position(graphProps, mark, rect);\n const leftTop = coordinates(graphProps, mark, rect, pos);\n\n const style = {\n position: 'fixed',\n pointerEvents: 'auto',\n display: 'flex',\n alignItems: 'center',\n gap: '3px',\n ...leftTop,\n };\n\n const secondLabelStyle = {\n ...style,\n top: leftTop.top + 25,\n };\n\n const disabledInput = disabled || mark.disabled;\n\n const renderInput = (inputClass, labelValue) => (\n <LabelInput\n _ref={_ref}\n externalInputRef={externalInputRef}\n label={labelValue}\n disabled={disabledInput}\n inputClassName={cn(inputClass)}\n onChange={onChange}\n />\n );\n\n if (correctness === 'correct' && correctnesslabel === 'correct' && correctlabel) {\n return (\n <div className={classes.inputCorrect} style={style}>\n <SvgIcon type=\"correct\" />\n {renderInput(classes.inputStudent, correctlabel)}\n </div>\n );\n }\n\n // avoid rendering empty label when a correct point without label was provided\n if (correctness === 'correct' && correctnesslabel === 'correct' && !correctlabel) {\n return null;\n }\n\n if (correctness === 'correct' && correctnesslabel === 'incorrect') {\n return (\n <>\n <div className={classes.inputIncorrect} style={style}>\n <SvgIcon type=\"incorrect\" />\n {label === '' ? (\n <SvgIcon type=\"empty\" style={{ marginLeft: '3px' }} />\n ) : (\n renderInput(classes.inputStudent, label)\n )}\n </div>\n <div className={classes.inputMissing} style={secondLabelStyle}>\n {renderInput(classes.inputStudent, correctlabel)}\n </div>\n </>\n );\n }\n\n if (correctness === 'missing') {\n return (\n <div className={classes.inputMissing} style={style}>\n {renderInput(classes.inputStudent, label)}\n </div>\n );\n }\n\n if (correctness === 'incorrect') {\n return (\n <div className={classes.incorrect} style={style}>\n {renderInput(classes.inputStudent, label)}\n </div>\n );\n }\n\n return (\n <div style={style}>\n {renderInput(\n cn(classes.input, {\n [classes.disabled]: disabled,\n [classes.disabledMark]: mark.disabled,\n }),\n label,\n )}\n </div>\n );\n};\n\nMarkLabel.propTypes = {\n disabled: PropTypes.bool,\n onChange: PropTypes.func,\n graphProps: types.GraphPropsType,\n classes: PropTypes.object,\n inputRef: PropTypes.func,\n mark: PropTypes.object,\n theme: PropTypes.object,\n};\n\nexport default withStyles(styles, { withTheme: true })(MarkLabel);\n"],"file":"mark-label.js"}