@pie-lib/graphing 2.34.2 → 2.34.3-next.155

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