@pie-element/number-line 11.3.4-next.0 → 12.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/configure/lib/arrows.js +68 -103
  2. package/configure/lib/arrows.js.map +1 -1
  3. package/configure/lib/card-bar.js +41 -62
  4. package/configure/lib/card-bar.js.map +1 -1
  5. package/configure/lib/defaults.js +5 -7
  6. package/configure/lib/defaults.js.map +1 -1
  7. package/configure/lib/domain.js +60 -116
  8. package/configure/lib/domain.js.map +1 -1
  9. package/configure/lib/index.js +124 -194
  10. package/configure/lib/index.js.map +1 -1
  11. package/configure/lib/main.js +585 -721
  12. package/configure/lib/main.js.map +1 -1
  13. package/configure/lib/number-text-field.js +15 -86
  14. package/configure/lib/number-text-field.js.map +1 -1
  15. package/configure/lib/point-config.js +69 -129
  16. package/configure/lib/point-config.js.map +1 -1
  17. package/configure/lib/size.js +43 -77
  18. package/configure/lib/size.js.map +1 -1
  19. package/configure/lib/ticks.js +89 -151
  20. package/configure/lib/ticks.js.map +1 -1
  21. package/configure/lib/utils.js +2 -4
  22. package/configure/lib/utils.js.map +1 -1
  23. package/configure/package.json +10 -7
  24. package/controller/lib/defaults.js +5 -6
  25. package/controller/lib/defaults.js.map +1 -1
  26. package/controller/lib/index.js +171 -286
  27. package/controller/lib/index.js.map +1 -1
  28. package/controller/lib/tickUtils.js +96 -169
  29. package/controller/lib/tickUtils.js.map +1 -1
  30. package/controller/lib/utils.js +55 -88
  31. package/controller/lib/utils.js.map +1 -1
  32. package/controller/package.json +3 -3
  33. package/lib/data-converter.js +19 -23
  34. package/lib/data-converter.js.map +1 -1
  35. package/lib/draggable/index.js +104 -43
  36. package/lib/draggable/index.js.map +1 -1
  37. package/lib/index.js +118 -205
  38. package/lib/index.js.map +1 -1
  39. package/lib/number-line/colors.js +3 -13
  40. package/lib/number-line/colors.js.map +1 -1
  41. package/lib/number-line/feedback.js +53 -69
  42. package/lib/number-line/feedback.js.map +1 -1
  43. package/lib/number-line/graph/arrow.js +19 -38
  44. package/lib/number-line/graph/arrow.js.map +1 -1
  45. package/lib/number-line/graph/elements/base.js +7 -13
  46. package/lib/number-line/graph/elements/base.js.map +1 -1
  47. package/lib/number-line/graph/elements/builder.js +6 -7
  48. package/lib/number-line/graph/elements/builder.js.map +1 -1
  49. package/lib/number-line/graph/elements/line.js +209 -265
  50. package/lib/number-line/graph/elements/line.js.map +1 -1
  51. package/lib/number-line/graph/elements/point.js +170 -201
  52. package/lib/number-line/graph/elements/point.js.map +1 -1
  53. package/lib/number-line/graph/elements/ray.js +147 -185
  54. package/lib/number-line/graph/elements/ray.js.map +1 -1
  55. package/lib/number-line/graph/index.js +217 -283
  56. package/lib/number-line/graph/index.js.map +1 -1
  57. package/lib/number-line/graph/line.js +12 -22
  58. package/lib/number-line/graph/line.js.map +1 -1
  59. package/lib/number-line/graph/stacks.js +31 -54
  60. package/lib/number-line/graph/stacks.js.map +1 -1
  61. package/lib/number-line/graph/tick-utils.js +120 -209
  62. package/lib/number-line/graph/tick-utils.js.map +1 -1
  63. package/lib/number-line/graph/ticks.js +144 -225
  64. package/lib/number-line/graph/ticks.js.map +1 -1
  65. package/lib/number-line/index.js +331 -395
  66. package/lib/number-line/index.js.map +1 -1
  67. package/lib/number-line/point-chooser/button.js +33 -58
  68. package/lib/number-line/point-chooser/button.js.map +1 -1
  69. package/lib/number-line/point-chooser/img.js +2 -3
  70. package/lib/number-line/point-chooser/img.js.map +1 -1
  71. package/lib/number-line/point-chooser/index.js +152 -148
  72. package/lib/number-line/point-chooser/index.js.map +1 -1
  73. package/lib/number-line/point-chooser/styles.js +29 -52
  74. package/lib/number-line/point-chooser/styles.js.map +1 -1
  75. package/lib/number-line/transitions/fade.js +69 -48
  76. package/lib/number-line/transitions/fade.js.map +1 -1
  77. package/lib/number-line/transitions/index.js +2 -4
  78. package/lib/number-line/transitions/index.js.map +1 -1
  79. package/package.json +14 -11
@@ -1,235 +1,204 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports["default"] = exports.Point = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
-
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
-
7
+ exports.default = exports.Point = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
20
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
-
22
10
  var _react = _interopRequireDefault(require("react"));
23
-
24
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- var _classnames = _interopRequireDefault(require("classnames"));
27
-
28
- var _reactJss = _interopRequireDefault(require("react-jss"));
29
-
12
+ var _styles = require("@mui/material/styles");
30
13
  var _renderUi = require("@pie-lib/render-ui");
31
-
32
- var _draggable = _interopRequireDefault(require("../../../draggable"));
33
-
34
- 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); }; }
35
-
36
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
-
38
- var duration = '150ms';
39
- var style = {
40
- point: {
41
- cursor: 'pointer',
42
- transition: "r ".concat(duration, " linear, \n opacity ").concat(duration, " linear, \n fill ").concat(duration, " linear,\n stroke ").concat(duration, " linear"),
43
- stroke: _renderUi.color.primary(),
44
- fill: _renderUi.color.primary(),
45
- '&.react-draggable-dragging': {
46
- opacity: 0.25,
47
- r: '10px'
48
- },
49
- '&:hover': {
50
- stroke: _renderUi.color.primaryDark()
51
- }
14
+ var _draggable = require("../../../draggable");
15
+ const duration = '150ms';
16
+ const StyledCircle = (0, _styles.styled)('circle')(({
17
+ $selected,
18
+ $disabled,
19
+ $correct,
20
+ $empty
21
+ }) => ({
22
+ cursor: 'pointer',
23
+ transition: `r ${duration} linear,
24
+ opacity ${duration} linear,
25
+ fill ${duration} linear,
26
+ stroke ${duration} linear`,
27
+ stroke: _renderUi.color.primary(),
28
+ fill: _renderUi.color.primary(),
29
+ // was ".react-draggable-dragging"
30
+ '&.dnd-kit-dragging': {
31
+ opacity: 0.25,
32
+ r: '10px'
52
33
  },
53
- selected: {
34
+ '&:hover': {
54
35
  stroke: _renderUi.color.primaryDark()
55
36
  },
56
- disabled: {
37
+ ...($selected && {
38
+ stroke: _renderUi.color.primaryDark()
39
+ }),
40
+ ...($disabled && {
57
41
  cursor: 'not-allowed',
58
42
  opacity: 0.8
59
- },
60
- correct: {
43
+ }),
44
+ ...($correct === true && {
61
45
  cursor: 'inherit',
62
46
  stroke: _renderUi.color.correct(),
63
47
  fill: _renderUi.color.correct()
64
- },
65
- incorrect: {
48
+ }),
49
+ ...($correct === false && {
66
50
  cursor: 'inherit',
67
51
  stroke: _renderUi.color.incorrect(),
68
52
  fill: _renderUi.color.incorrect()
69
- },
70
- empty: {
53
+ }),
54
+ ...($empty && {
71
55
  fill: 'white'
72
- }
73
- };
74
-
75
- var Point = /*#__PURE__*/function (_React$Component) {
76
- (0, _inherits2["default"])(Point, _React$Component);
77
-
78
- var _super = _createSuper(Point);
79
-
80
- function Point() {
81
- (0, _classCallCheck2["default"])(this, Point);
82
- return _super.apply(this, arguments);
83
- }
84
-
85
- (0, _createClass2["default"])(Point, [{
86
- key: "render",
87
- value: function render() {
88
- var _this = this,
89
- _classNames;
90
-
91
- var _this$props = this.props,
92
- onDragStop = _this$props.onDragStop,
93
- onDragStart = _this$props.onDragStart,
94
- onDragCallback = _this$props.onDrag,
95
- onClick = _this$props.onClick,
96
- onMove = _this$props.onMove,
97
- interval = _this$props.interval,
98
- y = _this$props.y,
99
- bounds = _this$props.bounds,
100
- selected = _this$props.selected,
101
- position = _this$props.position,
102
- disabled = _this$props.disabled,
103
- correct = _this$props.correct,
104
- empty = _this$props.empty,
105
- classes = _this$props.classes;
106
- var _this$context = this.context,
107
- snapValue = _this$context.snapValue,
108
- xScale = _this$context.xScale;
109
-
110
- var dragPosition = function dragPosition(x) {
111
- var normalized = x + xScale(0);
112
- var inverted = xScale.invert(normalized);
113
- return snapValue(position + inverted);
114
- };
115
-
116
- var onStart = function onStart(e) {
117
- _this.setState({
118
- startX: e.clientX
119
- });
120
-
121
- if (onDragStart) {
122
- onDragStart();
123
- }
124
- };
125
-
126
- var onStop = function onStop(e, dd) {
127
- if (onDragStop) {
128
- onDragStop();
56
+ })
57
+ }));
58
+ class Point extends _react.default.Component {
59
+ render() {
60
+ const {
61
+ onDragStop,
62
+ onDragStart,
63
+ onDrag: onDragCallback,
64
+ onClick,
65
+ onMove,
66
+ interval,
67
+ y,
68
+ bounds,
69
+ selected,
70
+ position,
71
+ disabled,
72
+ correct,
73
+ empty
74
+ } = this.props;
75
+ const {
76
+ snapValue,
77
+ xScale
78
+ } = this.context;
79
+
80
+ // same as old `is`
81
+ const step = xScale(interval) - xScale(0);
82
+ const dragPosition = deltaX => {
83
+ const normalized = deltaX + xScale(0);
84
+ const inverted = xScale.invert(normalized);
85
+ return snapValue(position + inverted);
86
+ };
87
+
88
+ // bounds in px (same as old scaledBounds)
89
+ const scaledBounds = bounds ? {
90
+ left: bounds.left / interval * step,
91
+ right: bounds.right / interval * step
92
+ } : null;
93
+ const handleMouseDown = e => e.nativeEvent.preventDefault();
94
+
95
+ // called when drag starts (via LocalDraggableDndKit)
96
+ const handleDragStart = () => {
97
+ if (onDragStart) {
98
+ onDragStart();
99
+ }
100
+ };
101
+
102
+ // called continuously while dragging (snapped+clamped deltaX in px)
103
+ const handleDragMove = deltaX => {
104
+ const p = dragPosition(deltaX);
105
+ if (onDragCallback) {
106
+ onDragCallback(p);
107
+ }
108
+ };
109
+
110
+ // called when drag ends (snapped+clamped deltaX in px)
111
+ const handleDragEnd = deltaX => {
112
+ if (onDragStop) {
113
+ onDragStop();
114
+ }
115
+ const deltaAbs = Math.abs(deltaX);
116
+
117
+ // click vs drag, same threshold as before: is / 10
118
+ if (deltaAbs < step / 10) {
119
+ if (onClick) {
120
+ onClick();
129
121
  }
130
-
131
- var endX = e.clientX;
132
- var startX = _this.state.startX;
133
- var deltaX = Math.abs(endX - startX);
134
-
135
- if (deltaX < is / 10) {
136
- if (onClick) {
137
- onClick();
138
-
139
- _this.setState({
140
- startX: null
141
- });
142
- }
143
- } else {
144
- var newPosition = dragPosition(dd.lastX);
145
- onMove(newPosition);
146
- }
147
- }; //prevent the text select icon from rendering.
148
-
149
-
150
- var onMouseDown = function onMouseDown(e) {
151
- return e.nativeEvent.preventDefault();
152
- };
153
-
154
- var is = xScale(interval) - xScale(0);
155
- var scaledBounds = {
156
- left: bounds.left / interval * is,
157
- right: bounds.right / interval * is
158
- };
159
-
160
- var onDrag = function onDrag(e, dd) {
161
- var p = dragPosition(dd.x);
162
-
163
- if (onDragCallback) {
164
- onDragCallback(p);
165
- }
166
- };
167
-
168
- var circleClass = (0, _classnames["default"])(classes.point, (_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.disabled, disabled), (0, _defineProperty2["default"])(_classNames, classes.selected, selected), (0, _defineProperty2["default"])(_classNames, classes.correct, correct === true), (0, _defineProperty2["default"])(_classNames, classes.incorrect, correct === false), (0, _defineProperty2["default"])(_classNames, classes.empty, empty === true), _classNames));
169
- return /*#__PURE__*/_react["default"].createElement(_draggable["default"], {
170
- disabled: disabled,
171
- onMouseDown: onMouseDown,
172
- onStart: onStart,
173
- onDrag: onDrag,
174
- onStop: onStop,
175
- axis: "x",
176
- grid: [is],
177
- bounds: scaledBounds
178
- }, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("circle", {
179
- r: "20",
180
- strokeWidth: "3",
181
- style: {
182
- fill: 'transparent',
183
- pointerEvents: 'visibleStroke'
184
- },
185
- cx: xScale(position),
186
- cy: y,
187
- stroke: selected ? _renderUi.color.primaryDark() : 'none'
188
- }), /*#__PURE__*/_react["default"].createElement("circle", {
189
- r: "5",
190
- strokeWidth: "3",
191
- className: circleClass,
192
- cx: xScale(position),
193
- cy: y
194
- })));
195
- }
196
- }]);
197
- return Point;
198
- }(_react["default"].Component);
199
-
122
+ return;
123
+ }
124
+ const newPosition = dragPosition(deltaX);
125
+ onMove(newPosition);
126
+ };
127
+ const id = `point-${position}-${y}`;
128
+ return /*#__PURE__*/_react.default.createElement(_draggable.Draggable, {
129
+ id: id,
130
+ disabled: disabled,
131
+ grid: [step],
132
+ bounds: scaledBounds,
133
+ onMouseDown: handleMouseDown,
134
+ onDragStart: handleDragStart,
135
+ onDragMove: handleDragMove,
136
+ onDragEnd: handleDragEnd
137
+ }, ({
138
+ setNodeRef,
139
+ attributes,
140
+ listeners,
141
+ translateX,
142
+ isDragging,
143
+ onMouseDown
144
+ }) => /*#__PURE__*/_react.default.createElement("g", (0, _extends2.default)({
145
+ ref: setNodeRef,
146
+ onMouseDown: onMouseDown
147
+ // axis="x": only horizontal translate
148
+ ,
149
+ transform: `translate(${translateX}, 0)`
150
+ }, attributes, listeners), /*#__PURE__*/_react.default.createElement("circle", {
151
+ r: "20",
152
+ strokeWidth: "3",
153
+ style: {
154
+ fill: 'transparent',
155
+ pointerEvents: 'visibleStroke'
156
+ },
157
+ cx: xScale(position),
158
+ cy: y,
159
+ stroke: selected ? _renderUi.color.primaryDark() : 'none'
160
+ }), /*#__PURE__*/_react.default.createElement(StyledCircle, {
161
+ r: "5",
162
+ strokeWidth: "3",
163
+ cx: xScale(position),
164
+ cy: y,
165
+ $selected: selected,
166
+ $disabled: disabled,
167
+ $correct: correct,
168
+ $empty: empty,
169
+ className: isDragging ? 'dnd-kit-dragging' : undefined
170
+ })));
171
+ }
172
+ }
200
173
  exports.Point = Point;
201
- (0, _defineProperty2["default"])(Point, "defaultProps", {
174
+ (0, _defineProperty2.default)(Point, "defaultProps", {
202
175
  y: 0,
203
176
  selected: false,
204
177
  empty: false,
205
178
  disabled: false,
206
179
  correct: undefined
207
180
  });
208
- (0, _defineProperty2["default"])(Point, "propTypes", {
209
- interval: _propTypes["default"].number.isRequired,
210
- position: _propTypes["default"].number.isRequired,
211
- bounds: _propTypes["default"].shape({
212
- left: _propTypes["default"].number.isRequired,
213
- right: _propTypes["default"].number.isRequired
181
+ (0, _defineProperty2.default)(Point, "propTypes", {
182
+ interval: _propTypes.default.number.isRequired,
183
+ position: _propTypes.default.number.isRequired,
184
+ bounds: _propTypes.default.shape({
185
+ left: _propTypes.default.number.isRequired,
186
+ right: _propTypes.default.number.isRequired
214
187
  }),
215
- selected: _propTypes["default"].bool,
216
- disabled: _propTypes["default"].bool,
217
- correct: _propTypes["default"].bool,
218
- empty: _propTypes["default"].bool,
219
- y: _propTypes["default"].number,
220
- onMove: _propTypes["default"].func.isRequired,
221
- onClick: _propTypes["default"].func,
222
- onDrag: _propTypes["default"].func,
223
- onDragStop: _propTypes["default"].func,
224
- onDragStart: _propTypes["default"].func,
225
- classes: _propTypes["default"].object.isRequired
188
+ selected: _propTypes.default.bool,
189
+ disabled: _propTypes.default.bool,
190
+ correct: _propTypes.default.bool,
191
+ empty: _propTypes.default.bool,
192
+ y: _propTypes.default.number,
193
+ onMove: _propTypes.default.func.isRequired,
194
+ onClick: _propTypes.default.func,
195
+ onDrag: _propTypes.default.func,
196
+ onDragStop: _propTypes.default.func,
197
+ onDragStart: _propTypes.default.func
226
198
  });
227
- (0, _defineProperty2["default"])(Point, "contextTypes", {
228
- xScale: _propTypes["default"].func.isRequired,
229
- snapValue: _propTypes["default"].func.isRequired
199
+ (0, _defineProperty2.default)(Point, "contextTypes", {
200
+ xScale: _propTypes.default.func.isRequired,
201
+ snapValue: _propTypes.default.func.isRequired
230
202
  });
231
-
232
- var _default = (0, _reactJss["default"])(style)(Point);
233
-
234
- exports["default"] = _default;
203
+ var _default = exports.default = Point;
235
204
  //# sourceMappingURL=point.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/number-line/graph/elements/point.jsx"],"names":["duration","style","point","cursor","transition","stroke","color","primary","fill","opacity","r","primaryDark","selected","disabled","correct","incorrect","empty","Point","props","onDragStop","onDragStart","onDragCallback","onDrag","onClick","onMove","interval","y","bounds","position","classes","context","snapValue","xScale","dragPosition","x","normalized","inverted","invert","onStart","e","setState","startX","clientX","onStop","dd","endX","state","deltaX","Math","abs","is","newPosition","lastX","onMouseDown","nativeEvent","preventDefault","scaledBounds","left","right","p","circleClass","pointerEvents","React","Component","undefined","PropTypes","number","isRequired","shape","bool","func","object"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport injectSheet from 'react-jss';\nimport { color } from '@pie-lib/render-ui';\n\nimport Draggable from '../../../draggable';\n\nconst duration = '150ms';\n\nconst style = {\n point: {\n cursor: 'pointer',\n transition: `r ${duration} linear, \n opacity ${duration} linear, \n fill ${duration} linear,\n stroke ${duration} linear`,\n\n stroke: color.primary(),\n fill: color.primary(),\n '&.react-draggable-dragging': {\n opacity: 0.25,\n r: '10px',\n },\n '&:hover': {\n stroke: color.primaryDark(),\n },\n },\n selected: {\n stroke: color.primaryDark(),\n },\n disabled: {\n cursor: 'not-allowed',\n opacity: 0.8,\n },\n correct: {\n cursor: 'inherit',\n stroke: color.correct(),\n fill: color.correct(),\n },\n incorrect: {\n cursor: 'inherit',\n stroke: color.incorrect(),\n fill: color.incorrect(),\n },\n empty: {\n fill: 'white',\n },\n};\n\nexport class Point extends React.Component {\n static defaultProps = {\n y: 0,\n selected: false,\n empty: false,\n disabled: false,\n correct: undefined,\n };\n\n static propTypes = {\n interval: PropTypes.number.isRequired,\n position: PropTypes.number.isRequired,\n bounds: PropTypes.shape({\n left: PropTypes.number.isRequired,\n right: PropTypes.number.isRequired,\n }),\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n correct: PropTypes.bool,\n empty: PropTypes.bool,\n y: PropTypes.number,\n onMove: PropTypes.func.isRequired,\n onClick: PropTypes.func,\n onDrag: PropTypes.func,\n onDragStop: PropTypes.func,\n onDragStart: PropTypes.func,\n classes: PropTypes.object.isRequired,\n };\n\n static contextTypes = {\n xScale: PropTypes.func.isRequired,\n snapValue: PropTypes.func.isRequired,\n };\n\n render() {\n const {\n onDragStop,\n onDragStart,\n onDrag: onDragCallback,\n onClick,\n onMove,\n interval,\n y,\n bounds,\n selected,\n position,\n disabled,\n correct,\n empty,\n classes,\n } = this.props;\n\n const { snapValue, xScale } = this.context;\n\n const dragPosition = (x) => {\n const normalized = x + xScale(0);\n const inverted = xScale.invert(normalized);\n return snapValue(position + inverted);\n };\n\n const onStart = (e) => {\n this.setState({ startX: e.clientX });\n if (onDragStart) {\n onDragStart();\n }\n };\n\n const onStop = (e, dd) => {\n if (onDragStop) {\n onDragStop();\n }\n\n const endX = e.clientX;\n const startX = this.state.startX;\n const deltaX = Math.abs(endX - startX);\n\n if (deltaX < is / 10) {\n if (onClick) {\n onClick();\n this.setState({ startX: null });\n }\n } else {\n const newPosition = dragPosition(dd.lastX);\n onMove(newPosition);\n }\n };\n\n //prevent the text select icon from rendering.\n const onMouseDown = (e) => e.nativeEvent.preventDefault();\n\n const is = xScale(interval) - xScale(0);\n const scaledBounds = {\n left: (bounds.left / interval) * is,\n right: (bounds.right / interval) * is,\n };\n\n const onDrag = (e, dd) => {\n const p = dragPosition(dd.x);\n if (onDragCallback) {\n onDragCallback(p);\n }\n };\n\n const circleClass = classNames(classes.point, {\n [classes.disabled]: disabled,\n [classes.selected]: selected,\n [classes.correct]: correct === true,\n [classes.incorrect]: correct === false,\n [classes.empty]: empty === true,\n });\n\n return (\n <Draggable\n disabled={disabled}\n onMouseDown={onMouseDown}\n onStart={onStart}\n onDrag={onDrag}\n onStop={onStop}\n axis=\"x\"\n grid={[is]}\n bounds={scaledBounds}\n >\n <g>\n <circle\n r=\"20\"\n strokeWidth=\"3\"\n style={{ fill: 'transparent', pointerEvents: 'visibleStroke' }}\n cx={xScale(position)}\n cy={y}\n stroke={selected ? color.primaryDark() : 'none'}\n />\n <circle r=\"5\" strokeWidth=\"3\" className={circleClass} cx={xScale(position)} cy={y} />\n </g>\n </Draggable>\n );\n }\n}\n\nexport default injectSheet(style)(Point);\n"],"file":"point.js"}
1
+ {"version":3,"file":"point.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_renderUi","_draggable","duration","StyledCircle","styled","$selected","$disabled","$correct","$empty","cursor","transition","stroke","color","primary","fill","opacity","r","primaryDark","correct","incorrect","Point","React","Component","render","onDragStop","onDragStart","onDrag","onDragCallback","onClick","onMove","interval","y","bounds","selected","position","disabled","empty","props","snapValue","xScale","context","step","dragPosition","deltaX","normalized","inverted","invert","scaledBounds","left","right","handleMouseDown","e","nativeEvent","preventDefault","handleDragStart","handleDragMove","p","handleDragEnd","deltaAbs","Math","abs","newPosition","id","default","createElement","Draggable","grid","onMouseDown","onDragMove","onDragEnd","setNodeRef","attributes","listeners","translateX","isDragging","_extends2","ref","transform","strokeWidth","style","pointerEvents","cx","cy","className","undefined","exports","_defineProperty2","PropTypes","number","isRequired","shape","bool","func","_default"],"sources":["../../../../src/number-line/graph/elements/point.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { color } from '@pie-lib/render-ui';\n\nimport { Draggable } from '../../../draggable';\n\nconst duration = '150ms';\n\nconst StyledCircle = styled('circle')(({ $selected, $disabled, $correct, $empty }) => ({\n cursor: 'pointer',\n transition: `r ${duration} linear, \n opacity ${duration} linear, \n fill ${duration} linear,\n stroke ${duration} linear`,\n stroke: color.primary(),\n fill: color.primary(),\n // was \".react-draggable-dragging\"\n '&.dnd-kit-dragging': {\n opacity: 0.25,\n r: '10px',\n },\n '&:hover': {\n stroke: color.primaryDark(),\n },\n ...($selected && {\n stroke: color.primaryDark(),\n }),\n ...($disabled && {\n cursor: 'not-allowed',\n opacity: 0.8,\n }),\n ...($correct === true && {\n cursor: 'inherit',\n stroke: color.correct(),\n fill: color.correct(),\n }),\n ...($correct === false && {\n cursor: 'inherit',\n stroke: color.incorrect(),\n fill: color.incorrect(),\n }),\n ...($empty && {\n fill: 'white',\n }),\n}));\n\nexport class Point extends React.Component {\n static defaultProps = {\n y: 0,\n selected: false,\n empty: false,\n disabled: false,\n correct: undefined,\n };\n\n static propTypes = {\n interval: PropTypes.number.isRequired,\n position: PropTypes.number.isRequired,\n bounds: PropTypes.shape({\n left: PropTypes.number.isRequired,\n right: PropTypes.number.isRequired,\n }),\n selected: PropTypes.bool,\n disabled: PropTypes.bool,\n correct: PropTypes.bool,\n empty: PropTypes.bool,\n y: PropTypes.number,\n onMove: PropTypes.func.isRequired,\n onClick: PropTypes.func,\n onDrag: PropTypes.func,\n onDragStop: PropTypes.func,\n onDragStart: PropTypes.func,\n };\n\n static contextTypes = {\n xScale: PropTypes.func.isRequired,\n snapValue: PropTypes.func.isRequired,\n };\n\n render() {\n const {\n onDragStop,\n onDragStart,\n onDrag: onDragCallback,\n onClick,\n onMove,\n interval,\n y,\n bounds,\n selected,\n position,\n disabled,\n correct,\n empty,\n } = this.props;\n\n const { snapValue, xScale } = this.context;\n\n // same as old `is`\n const step = xScale(interval) - xScale(0);\n\n const dragPosition = (deltaX) => {\n const normalized = deltaX + xScale(0);\n const inverted = xScale.invert(normalized);\n return snapValue(position + inverted);\n };\n\n // bounds in px (same as old scaledBounds)\n const scaledBounds = bounds\n ? {\n left: (bounds.left / interval) * step,\n right: (bounds.right / interval) * step,\n }\n : null;\n\n const handleMouseDown = (e) => e.nativeEvent.preventDefault();\n\n // called when drag starts (via LocalDraggableDndKit)\n const handleDragStart = () => {\n if (onDragStart) {\n onDragStart();\n }\n };\n\n // called continuously while dragging (snapped+clamped deltaX in px)\n const handleDragMove = (deltaX) => {\n const p = dragPosition(deltaX);\n if (onDragCallback) {\n onDragCallback(p);\n }\n };\n\n // called when drag ends (snapped+clamped deltaX in px)\n const handleDragEnd = (deltaX) => {\n if (onDragStop) {\n onDragStop();\n }\n\n const deltaAbs = Math.abs(deltaX);\n\n // click vs drag, same threshold as before: is / 10\n if (deltaAbs < step / 10) {\n if (onClick) {\n onClick();\n }\n return;\n }\n\n const newPosition = dragPosition(deltaX);\n onMove(newPosition);\n };\n\n const id = `point-${position}-${y}`;\n\n return (\n <Draggable \n id={id}\n disabled={disabled}\n grid={[step]}\n bounds={scaledBounds}\n onMouseDown={handleMouseDown}\n onDragStart={handleDragStart}\n onDragMove={handleDragMove}\n onDragEnd={handleDragEnd}\n >\n {({\n setNodeRef,\n attributes,\n listeners,\n translateX,\n isDragging,\n onMouseDown,\n }) => (\n <g\n ref={setNodeRef}\n onMouseDown={onMouseDown}\n // axis=\"x\": only horizontal translate\n transform={`translate(${translateX}, 0)`}\n {...attributes}\n {...listeners}\n >\n <circle\n r=\"20\"\n strokeWidth=\"3\"\n style={{ fill: 'transparent', pointerEvents: 'visibleStroke' }}\n cx={xScale(position)}\n cy={y}\n stroke={selected ? color.primaryDark() : 'none'}\n />\n <StyledCircle\n r=\"5\"\n strokeWidth=\"3\"\n cx={xScale(position)}\n cy={y}\n $selected={selected}\n $disabled={disabled}\n $correct={correct}\n $empty={empty}\n className={isDragging ? 'dnd-kit-dragging' : undefined}\n />\n </g>\n )}\n </ Draggable>\n );\n }\n}\n\nexport default Point;\n"],"mappings":"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","ignoreList":[]}