@pie-element/number-line 5.10.0 → 5.10.1-beta.587
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +504 -0
- package/configure/CHANGELOG.md +429 -0
- package/configure/lib/arrows.js +3 -3
- package/configure/lib/arrows.js.map +1 -1
- package/configure/lib/card-bar.js +10 -3
- package/configure/lib/card-bar.js.map +1 -1
- package/configure/lib/defaults.js +21 -2
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/domain.js +3 -3
- package/configure/lib/domain.js.map +1 -1
- package/configure/lib/index.js +61 -8
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/main.js +212 -92
- package/configure/lib/main.js.map +1 -1
- package/configure/lib/number-text-field.js +4 -4
- package/configure/lib/number-text-field.js.map +1 -1
- package/configure/lib/point-config.js +7 -4
- package/configure/lib/point-config.js.map +1 -1
- package/configure/lib/size.js +2 -2
- package/configure/lib/size.js.map +1 -1
- package/configure/lib/ticks.js +8 -4
- package/configure/lib/ticks.js.map +1 -1
- package/configure/lib/utils.js +14 -0
- package/configure/lib/utils.js.map +1 -0
- package/configure/package.json +4 -4
- package/controller/CHANGELOG.md +90 -0
- package/controller/lib/defaults.js +36 -23
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +179 -64
- package/controller/lib/index.js.map +1 -1
- package/controller/package.json +3 -3
- package/docs/config-schema.json +16 -0
- package/docs/config-schema.json.md +12 -0
- package/docs/demo/config.js +2 -2
- package/docs/demo/generate.js +22 -26
- package/docs/demo/index.html +1 -1
- package/docs/pie-schema.json +29 -13
- package/docs/pie-schema.json.md +23 -8
- package/lib/data-converter.js +1 -1
- package/lib/data-converter.js.map +1 -1
- package/lib/draggable/index.js +1 -1
- package/lib/draggable/index.js.map +1 -1
- package/lib/index.js +16 -5
- package/lib/index.js.map +1 -1
- package/lib/number-line/colors.js +1 -1
- package/lib/number-line/feedback.js.map +1 -1
- package/lib/number-line/graph/arrow.js.map +1 -1
- package/lib/number-line/graph/elements/base.js.map +1 -1
- package/lib/number-line/graph/elements/builder.js.map +1 -1
- package/lib/number-line/graph/elements/line.js +3 -3
- package/lib/number-line/graph/elements/line.js.map +1 -1
- package/lib/number-line/graph/elements/point.js +12 -4
- package/lib/number-line/graph/elements/point.js.map +1 -1
- package/lib/number-line/graph/elements/ray.js +12 -5
- package/lib/number-line/graph/elements/ray.js.map +1 -1
- package/lib/number-line/graph/index.js +6 -4
- package/lib/number-line/graph/index.js.map +1 -1
- package/lib/number-line/graph/line.js.map +1 -1
- package/lib/number-line/graph/stacks.js +1 -1
- package/lib/number-line/graph/stacks.js.map +1 -1
- package/lib/number-line/graph/tick-utils.js +14 -10
- package/lib/number-line/graph/tick-utils.js.map +1 -1
- package/lib/number-line/graph/ticks.js +58 -14
- package/lib/number-line/graph/ticks.js.map +1 -1
- package/lib/number-line/index.js +68 -45
- package/lib/number-line/index.js.map +1 -1
- package/lib/number-line/point-chooser/button.js.map +1 -1
- package/lib/number-line/point-chooser/index.js +1 -1
- package/lib/number-line/point-chooser/index.js.map +1 -1
- package/lib/number-line/point-chooser/styles.js +1 -1
- package/lib/number-line/point-chooser/styles.js.map +1 -1
- package/lib/number-line/transitions/fade.js.map +1 -1
- package/package.json +9 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/number-line/graph/ticks.jsx"],"names":["style","text","userSelect","textAlign","fill","color","primary","line","stroke","TickValidator","PropTypes","shape","major","props","propName","minor","Error","componentName","isRequired","Tick","getBBox","width","setAttribute","x","y","type","classes","xScale","
|
|
1
|
+
{"version":3,"sources":["../../../src/number-line/graph/ticks.jsx"],"names":["style","text","userSelect","textAlign","fill","color","primary","line","stroke","TickValidator","PropTypes","shape","major","props","propName","minor","Error","componentName","isRequired","Tick","wasRendered","fraction","getBBox","width","setAttribute","forceUpdate","x","y","type","classes","xScale","displayFraction","n","d","labelTick","height","textWidth","textHeight","textX","textY","xText","Number","toFixed","s","React","Component","object","number","bool","func","string","Ticks","domain","ticks","context","tickData","map","min","max"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { buildTickData, isMultiple } from './tick-utils';\nimport injectSheet from 'react-jss';\nimport { color } from '@pie-lib/render-ui';\n\nconst style = {\n text: {\n userSelect: 'none',\n textAlign: 'center',\n fill: color.primary(),\n },\n line: {\n stroke: color.primary(),\n },\n};\n\nexport const TickValidator = PropTypes.shape({\n /** the number of major ticks (including min + max)\n * to display. cant be lower than 2.\n */\n major: (props, propName) => {\n let major = props[propName];\n let minor = props.minor;\n\n if (!isMultiple(major, minor)) {\n return new Error(`Invalid prop major. It must be a multiple of ${minor}`);\n }\n },\n /** the number of minor ticks to display between major ticks.\n * Can't be less than zero.\n */\n minor: (props, propName, componentName) => {\n let minor = props[propName];\n if (minor <= 0) {\n return new Error(`Invalid prop ${propName} must be > 0. ${componentName}`);\n }\n },\n}).isRequired;\n\nexport class Tick extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n y: PropTypes.number.isRequired,\n x: PropTypes.number.isRequired,\n major: PropTypes.bool,\n fraction: PropTypes.bool,\n xScale: PropTypes.func,\n type: PropTypes.string,\n };\n\n static defaultProps = {\n major: false,\n };\n\n constructor(props) {\n super(props);\n this.wasRendered = false;\n }\n\n componentDidMount() {\n //center align the tick text\n if (this.text) {\n const { fraction } = this.props;\n let { width } = this.text.getBBox();\n this.text.setAttribute('x', (width / 2) * -1);\n\n if (fraction && !this.wasRendered) {\n // used for rendering the line fraction\n this.wasRendered = true;\n this.forceUpdate();\n }\n }\n }\n\n render() {\n //the domain value\n let { x, y, type, classes, xScale, fraction } = this.props;\n const displayFraction = fraction && x.n !== x.d && x.n !== 0 && x.d !== 1;\n const labelTick = type === 'major';\n const height = labelTick ? 20 : 10;\n const {\n width: textWidth = 0,\n height: textHeight = 0,\n x: textX = 0,\n y: textY = 0,\n } = (this.text && this.text.getBBox()) || {};\n\n const xText = !fraction ? (\n Number(x.toFixed(2))\n ) : !displayFraction ? (\n x.n * x.s\n ) : (\n <>\n <tspan x=\"0\" dy=\"0.71em\">\n {x.n * x.s}\n </tspan>\n <tspan x=\"0\" dy=\"1.11em\">\n {x.d}\n </tspan>\n </>\n );\n\n return (\n <g opacity=\"1\" transform={`translate(${xScale(x)}, ${y})`}>\n <line className={classes.line} y1={(height / 2) * -1} y2={height / 2} x1=\"0.5\" x2=\"0.5\" />\n\n {displayFraction && (\n <line\n className={classes.line}\n x1={textX}\n x2={textX + textWidth}\n y1={textY + textHeight / 2}\n y2={textY + textHeight / 2}\n />\n )}\n\n {labelTick && (\n <text\n ref={(text) => (this.text = text)}\n className={classes.text}\n y=\"14\"\n width=\"10\"\n dy=\"0.71em\"\n textAnchor={displayFraction && 'middle'}\n >\n {xText}\n </text>\n )}\n </g>\n );\n }\n}\n\nexport class Ticks extends React.Component {\n static contextTypes = {\n xScale: PropTypes.func.isRequired,\n };\n\n static propTypes = {\n classes: PropTypes.object.isRequired,\n domain: PropTypes.shape({\n min: PropTypes.number.isRequired,\n max: PropTypes.number.isRequired,\n }).isRequired,\n fraction: PropTypes.bool,\n ticks: TickValidator,\n y: PropTypes.number.isRequired,\n };\n\n render() {\n let { domain, ticks, y, classes, fraction } = this.props;\n let { xScale } = this.context;\n\n const tickData = buildTickData(domain, ticks, { fraction });\n\n return (\n <g>\n {tickData.map(({ x, type }) => {\n return (\n <Tick classes={classes} fraction={fraction} x={x} y={y} type={type} xScale={xScale} key={`${x}-${type}`} />\n );\n })}\n </g>\n );\n }\n}\n\nexport default injectSheet(style)(Ticks);\n"],"file":"ticks.js"}
|
package/lib/number-line/index.js
CHANGED
|
@@ -53,9 +53,11 @@ var _isArray = _interopRequireDefault(require("lodash/isArray"));
|
|
|
53
53
|
|
|
54
54
|
var _isNumber = _interopRequireDefault(require("lodash/isNumber"));
|
|
55
55
|
|
|
56
|
+
var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
|
|
57
|
+
|
|
56
58
|
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); }; }
|
|
57
59
|
|
|
58
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try {
|
|
60
|
+
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; } }
|
|
59
61
|
|
|
60
62
|
var styles = {
|
|
61
63
|
mainContainer: {
|
|
@@ -68,7 +70,8 @@ var styles = {
|
|
|
68
70
|
userSelect: 'none'
|
|
69
71
|
},
|
|
70
72
|
numberLine: {
|
|
71
|
-
padding: '10px'
|
|
73
|
+
padding: '10px',
|
|
74
|
+
boxSizing: 'unset'
|
|
72
75
|
},
|
|
73
76
|
black_on_rose: {
|
|
74
77
|
backgroundColor: 'mistyrose'
|
|
@@ -156,11 +159,17 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
156
159
|
|
|
157
160
|
if (elementData) {
|
|
158
161
|
var answers = this.state.answers;
|
|
159
|
-
answers.
|
|
160
|
-
|
|
161
|
-
answers: answers
|
|
162
|
+
var contains = answers.some(function (element) {
|
|
163
|
+
return (0, _isEqual["default"])(element, elementData);
|
|
162
164
|
});
|
|
163
|
-
|
|
165
|
+
|
|
166
|
+
if (!contains) {
|
|
167
|
+
answers.push(elementData);
|
|
168
|
+
this.setState({
|
|
169
|
+
answers: answers
|
|
170
|
+
});
|
|
171
|
+
this.props.onAddElement(elementData);
|
|
172
|
+
}
|
|
164
173
|
}
|
|
165
174
|
}
|
|
166
175
|
}, {
|
|
@@ -175,10 +184,13 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
175
184
|
key: "UNSAFE_componentWillReceiveProps",
|
|
176
185
|
value: function UNSAFE_componentWillReceiveProps(nextProps) {
|
|
177
186
|
var answer = nextProps.answer;
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
187
|
+
|
|
188
|
+
if (!(0, _isEqual["default"])(this.state.answers, answer)) {
|
|
189
|
+
this.setState({
|
|
190
|
+
showCorrectAnswer: false,
|
|
191
|
+
answers: answer
|
|
192
|
+
});
|
|
193
|
+
}
|
|
182
194
|
}
|
|
183
195
|
}, {
|
|
184
196
|
key: "deselectElements",
|
|
@@ -225,44 +237,59 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
225
237
|
|
|
226
238
|
var _this$props2 = this.props,
|
|
227
239
|
model = _this$props2.model,
|
|
228
|
-
classes = _this$props2.classes
|
|
240
|
+
classes = _this$props2.classes,
|
|
241
|
+
onDeleteElements = _this$props2.onDeleteElements,
|
|
242
|
+
onMoveElement = _this$props2.onMoveElement;
|
|
229
243
|
var _this$state = this.state,
|
|
230
244
|
showCorrectAnswer = _this$state.showCorrectAnswer,
|
|
231
|
-
answers = _this$state.answers
|
|
245
|
+
answers = _this$state.answers,
|
|
246
|
+
selectedElements = _this$state.selectedElements,
|
|
247
|
+
showMaxPointsWarning = _this$state.showMaxPointsWarning,
|
|
248
|
+
elementType = _this$state.elementType;
|
|
232
249
|
var _model$corrected = model.corrected,
|
|
233
250
|
corrected = _model$corrected === void 0 ? {
|
|
234
251
|
correct: [],
|
|
235
252
|
incorrect: []
|
|
236
253
|
} : _model$corrected,
|
|
237
|
-
disabled = model.disabled
|
|
254
|
+
disabled = model.disabled,
|
|
255
|
+
graph = model.graph,
|
|
256
|
+
correctResponse = model.correctResponse,
|
|
257
|
+
prompt = model.prompt,
|
|
258
|
+
emptyAnswer = model.emptyAnswer,
|
|
259
|
+
feedback = model.feedback,
|
|
260
|
+
colorContrast = model.colorContrast;
|
|
238
261
|
var addElement = this.addElement.bind(this);
|
|
239
|
-
var elementsSelected = !disabled &&
|
|
262
|
+
var elementsSelected = !disabled && selectedElements && selectedElements.length > 0;
|
|
263
|
+
var ticks = graph.ticks,
|
|
264
|
+
domain = graph.domain,
|
|
265
|
+
arrows = graph.arrows,
|
|
266
|
+
maxNumberOfPoints = graph.maxNumberOfPoints,
|
|
267
|
+
height = graph.height,
|
|
268
|
+
availableTypes = graph.availableTypes,
|
|
269
|
+
title = graph.title,
|
|
270
|
+
fraction = graph.fraction;
|
|
240
271
|
var width = this.getSize('width', 400, 1600, 600);
|
|
241
|
-
var height = this.getSize('height', 300, 800, 400);
|
|
242
|
-
var _model$graph = model.graph,
|
|
243
|
-
ticks = _model$graph.ticks,
|
|
244
|
-
domain = _model$graph.domain,
|
|
245
|
-
arrows = _model$graph.arrows;
|
|
246
272
|
var graphProps = {
|
|
247
273
|
disabled: disabled,
|
|
248
274
|
domain: domain,
|
|
249
275
|
ticks: ticks,
|
|
250
276
|
width: width,
|
|
251
|
-
height: height,
|
|
252
|
-
arrows: arrows
|
|
277
|
+
height: height || 100,
|
|
278
|
+
arrows: arrows,
|
|
279
|
+
fraction: fraction
|
|
253
280
|
};
|
|
254
281
|
|
|
255
282
|
var getAnswerElements = function getAnswerElements() {
|
|
256
283
|
return (answers || []).map(function (e, index) {
|
|
257
284
|
var out = (0, _cloneDeep["default"])(e);
|
|
258
|
-
out.selected =
|
|
285
|
+
out.selected = selectedElements.indexOf(index) !== -1;
|
|
259
286
|
out.correct = corrected.correct.includes(index) ? true : corrected.incorrect.includes(index) ? false : undefined;
|
|
260
287
|
return out;
|
|
261
288
|
});
|
|
262
289
|
};
|
|
263
290
|
|
|
264
291
|
var getCorrectAnswerElements = function getCorrectAnswerElements() {
|
|
265
|
-
return (
|
|
292
|
+
return (correctResponse || []).map(function (r) {
|
|
266
293
|
r.correct = true;
|
|
267
294
|
return r;
|
|
268
295
|
});
|
|
@@ -271,14 +298,11 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
271
298
|
var elements = showCorrectAnswer ? getCorrectAnswerElements() : getAnswerElements();
|
|
272
299
|
|
|
273
300
|
var maxPointsMessage = function maxPointsMessage() {
|
|
274
|
-
return "You can only add ".concat(
|
|
301
|
+
return "You can only add ".concat(maxNumberOfPoints, " element").concat(maxNumberOfPoints == 1 ? '' : 's');
|
|
275
302
|
};
|
|
276
303
|
|
|
277
304
|
var deleteElements = function deleteElements() {
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
_this3.props.onDeleteElements(selectedElements);
|
|
281
|
-
|
|
305
|
+
onDeleteElements(selectedElements);
|
|
282
306
|
answers = answers.filter(function (v, index) {
|
|
283
307
|
return !selectedElements.some(function (d) {
|
|
284
308
|
return d === index;
|
|
@@ -292,9 +316,9 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
292
316
|
};
|
|
293
317
|
|
|
294
318
|
var getIcons = function getIcons() {
|
|
295
|
-
if (
|
|
296
|
-
return Object.keys(
|
|
297
|
-
return
|
|
319
|
+
if (availableTypes) {
|
|
320
|
+
return Object.keys(availableTypes).filter(function (k) {
|
|
321
|
+
return availableTypes[k];
|
|
298
322
|
}).map(function (k) {
|
|
299
323
|
return k.toLowerCase();
|
|
300
324
|
});
|
|
@@ -308,28 +332,27 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
308
332
|
};
|
|
309
333
|
|
|
310
334
|
var adjustedWidth = graphProps.width - 20;
|
|
311
|
-
var names = (0, _classnames["default"])(classes.numberLine, classes.mainContainer, classes[
|
|
335
|
+
var names = (0, _classnames["default"])(classes.numberLine, classes.mainContainer, classes[colorContrast]);
|
|
312
336
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
313
337
|
className: names,
|
|
314
338
|
style: {
|
|
315
339
|
width: width
|
|
316
340
|
}
|
|
317
|
-
},
|
|
318
|
-
className: classes.prompt
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
}), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
341
|
+
}, prompt && /*#__PURE__*/_react["default"].createElement("div", {
|
|
342
|
+
className: classes.prompt
|
|
343
|
+
}, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
|
|
344
|
+
prompt: prompt
|
|
345
|
+
})), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
323
346
|
style: {
|
|
324
347
|
width: adjustedWidth
|
|
325
348
|
}
|
|
326
349
|
}, /*#__PURE__*/_react["default"].createElement(_correctAnswerToggle["default"], {
|
|
327
|
-
show: (0, _isArray["default"])(
|
|
350
|
+
show: (0, _isArray["default"])(correctResponse) && correctResponse.length && !emptyAnswer,
|
|
328
351
|
toggled: showCorrectAnswer,
|
|
329
352
|
onToggle: onShowCorrectAnswer,
|
|
330
353
|
initialValue: false
|
|
331
354
|
})), !disabled && /*#__PURE__*/_react["default"].createElement(_pointChooser["default"], {
|
|
332
|
-
elementType:
|
|
355
|
+
elementType: elementType,
|
|
333
356
|
showDeleteButton: elementsSelected,
|
|
334
357
|
onDeleteClick: deleteElements,
|
|
335
358
|
onElementType: this.elementTypeSelected.bind(this),
|
|
@@ -339,20 +362,20 @@ var NumberLine = /*#__PURE__*/function (_React$Component) {
|
|
|
339
362
|
}), /*#__PURE__*/_react["default"].createElement(_graph["default"], (0, _extends2["default"])({}, graphProps, {
|
|
340
363
|
elements: elements,
|
|
341
364
|
onAddElement: addElement,
|
|
342
|
-
onMoveElement:
|
|
365
|
+
onMoveElement: onMoveElement,
|
|
343
366
|
onToggleElement: this.toggleElement.bind(this),
|
|
344
367
|
onDeselectElements: this.deselectElements.bind(this),
|
|
345
368
|
debug: false
|
|
346
|
-
})),
|
|
369
|
+
})), title && /*#__PURE__*/_react["default"].createElement("div", {
|
|
347
370
|
className: classes.graphTitle,
|
|
348
371
|
dangerouslySetInnerHTML: {
|
|
349
|
-
__html:
|
|
372
|
+
__html: title
|
|
350
373
|
}
|
|
351
|
-
}),
|
|
374
|
+
}), showMaxPointsWarning && /*#__PURE__*/_react["default"].createElement(_feedback["default"], {
|
|
352
375
|
type: "info",
|
|
353
376
|
width: adjustedWidth,
|
|
354
377
|
message: maxPointsMessage()
|
|
355
|
-
}),
|
|
378
|
+
}), feedback && !showCorrectAnswer && /*#__PURE__*/_react["default"].createElement(_feedback["default"], (0, _extends2["default"])({}, feedback, {
|
|
356
379
|
width: adjustedWidth
|
|
357
380
|
}))));
|
|
358
381
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/number-line/index.jsx"],"names":["styles","mainContainer","color","text","backgroundColor","background","graphTitle","textAlign","pointerEvents","userSelect","numberLine","padding","black_on_rose","white_on_black","prompt","verticalAlign","marginBottom","NumberLine","props","context","initialType","model","graph","toLowerCase","PointChooser","DEFAULT_TYPE","state","selectedElements","elementType","answers","answer","index","selected","indexOf","concat","filter","e","setState","t","x","hasMaxNoOfPoints","showMaxPointsWarning","setTimeout","ticks","domain","elementData","minor","push","onAddElement","maxNumberOfPoints","length","nextProps","showCorrectAnswer","type","min","max","defaultValue","Math","onUndoElement","pop","onClearElements","classes","corrected","correct","incorrect","disabled","addElement","bind","elementsSelected","width","getSize","height","arrows","graphProps","getAnswerElements","map","out","includes","undefined","getCorrectAnswerElements","correctResponse","r","elements","maxPointsMessage","deleteElements","onDeleteElements","v","some","d","getIcons","availableTypes","Object","keys","k","onShowCorrectAnswer","show","adjustedWidth","names","colorContrast","__html","emptyAnswer","elementTypeSelected","clearAll","undo","onMoveElement","toggleElement","deselectElements","title","feedback","React","Component","PropTypes","func","isRequired","object","array"],"mappings":"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","sourcesContent":["import Feedback from './feedback';\nimport Graph from './graph';\nimport PropTypes from 'prop-types';\nimport PointChooser from './point-chooser';\nimport React from 'react';\nimport Toggle from '@pie-lib/correct-answer-toggle';\nimport { buildElementModel } from './graph/elements/builder';\nimport classNames from 'classnames';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { color } from '@pie-lib/render-ui';\nimport injectSheet from 'react-jss';\nimport isArray from 'lodash/isArray';\nimport isNumber from 'lodash/isNumber';\n\nexport { Graph };\n\nconst styles = {\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n },\n graphTitle: {\n textAlign: 'center',\n pointerEvents: 'none',\n userSelect: 'none'\n },\n numberLine: {\n padding: '10px'\n },\n black_on_rose: {\n backgroundColor: 'mistyrose'\n },\n white_on_black: {\n backgroundColor: 'black',\n '--correct-answer-toggle-label-color': 'white',\n '--tick-color': 'white',\n '--line-stroke': 'white',\n '--arrow-color': 'white',\n '--point-stroke': 'white',\n '--point-fill': 'black'\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: '16px'\n }\n};\n\nexport class NumberLine extends React.Component {\n static propTypes = {\n onMoveElement: PropTypes.func.isRequired,\n onDeleteElements: PropTypes.func.isRequired,\n onAddElement: PropTypes.func.isRequired,\n onUndoElement: PropTypes.func.isRequired,\n onClearElements: PropTypes.func.isRequired,\n model: PropTypes.object.isRequired,\n answer: PropTypes.array,\n classes: PropTypes.object.isRequired\n };\n\n constructor(props, context) {\n super(props, context);\n\n let initialType = props.model.graph ? props.model.graph.initialType : null;\n initialType = initialType\n ? initialType.toLowerCase()\n : PointChooser.DEFAULT_TYPE;\n\n this.state = {\n selectedElements: [],\n elementType: initialType,\n answers: props.answer\n };\n }\n\n toggleElement(index) {\n let selected = [];\n if (this.state.selectedElements.indexOf(index) === -1) {\n selected = this.state.selectedElements.concat([index]);\n } else {\n selected = this.state.selectedElements.filter(e => e !== index);\n }\n this.setState({ selectedElements: selected });\n }\n\n elementTypeSelected(t) {\n this.setState({ elementType: t });\n }\n\n addElement(x) {\n if (this.hasMaxNoOfPoints()) {\n this.setState({ showMaxPointsWarning: true });\n setTimeout(() => {\n this.setState({ showMaxPointsWarning: false });\n }, 2000);\n return;\n }\n\n const { ticks, domain } = this.props.model.graph;\n\n let elementData = buildElementModel(\n x,\n this.state.elementType,\n domain,\n ticks.minor\n );\n\n if (elementData) {\n const { answers } = this.state;\n answers.push(elementData);\n\n this.setState({ answers });\n this.props.onAddElement(elementData);\n }\n }\n\n hasMaxNoOfPoints() {\n let {\n answer,\n model: {\n graph: { maxNumberOfPoints }\n }\n } = this.props;\n\n return (\n isNumber(maxNumberOfPoints) &&\n maxNumberOfPoints > 0 &&\n (answer || []).length >= maxNumberOfPoints\n );\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n const { answer } = nextProps;\n this.setState({ showCorrectAnswer: false, answers: answer });\n }\n\n deselectElements() {\n this.setState({ selectedElements: [] });\n }\n\n getSize(type, min, max, defaultValue) {\n const {\n model: { graph }\n } = this.props;\n\n if (graph && graph[type]) {\n return Math.max(min, Math.min(max, graph[type]));\n } else {\n return defaultValue;\n }\n }\n\n undo() {\n const { answers } = this.state;\n const { onUndoElement } = this.props;\n\n answers.pop();\n this.setState({ answers });\n onUndoElement();\n }\n\n clearAll() {\n const { onClearElements } = this.props;\n\n this.setState({ answers: [] });\n onClearElements();\n }\n\n render() {\n let { model, classes } = this.props;\n let { showCorrectAnswer, answers } = this.state;\n let { corrected = { correct: [], incorrect: [] }, disabled } = model;\n let addElement = this.addElement.bind(this);\n let elementsSelected =\n !disabled &&\n this.state.selectedElements &&\n this.state.selectedElements.length > 0;\n const width = this.getSize('width', 400, 1600, 600);\n const height = this.getSize('height', 300, 800, 400);\n\n const { ticks, domain, arrows } = model.graph;\n\n let graphProps = {\n disabled,\n domain,\n ticks,\n width,\n height,\n arrows\n };\n\n let getAnswerElements = () => {\n return (answers || []).map((e, index) => {\n let out = cloneDeep(e);\n out.selected = this.state.selectedElements.indexOf(index) !== -1;\n out.correct = corrected.correct.includes(index)\n ? true\n : corrected.incorrect.includes(index)\n ? false\n : undefined;\n return out;\n });\n };\n\n let getCorrectAnswerElements = () => {\n return (model.correctResponse || []).map(r => {\n r.correct = true;\n return r;\n });\n };\n\n let elements = showCorrectAnswer\n ? getCorrectAnswerElements()\n : getAnswerElements();\n\n let maxPointsMessage = () =>\n `You can only add ${model.graph.maxNumberOfPoints} element${model.graph.maxNumberOfPoints == 1 ? '' : 's'}`;\n\n\n let deleteElements = () => {\n const { selectedElements } = this.state;\n this.props.onDeleteElements(selectedElements);\n\n answers = answers.filter((v, index) => {\n return !selectedElements.some(d => d === index);\n });\n\n this.setState({ selectedElements: [], answers });\n };\n\n let getIcons = () => {\n if (model.graph.availableTypes) {\n return Object.keys(model.graph.availableTypes)\n .filter(k => model.graph.availableTypes[k])\n .map(k => k.toLowerCase());\n }\n };\n\n let onShowCorrectAnswer = show => {\n this.setState({ showCorrectAnswer: show });\n };\n\n let adjustedWidth = graphProps.width - 20;\n\n const names = classNames(classes.numberLine, classes.mainContainer, classes[model.colorContrast]);\n\n return (\n <div className={names} style={{ width }}>\n {model.prompt && (\n <div\n className={classes.prompt}\n dangerouslySetInnerHTML={{ __html: model.prompt }}\n />\n )}\n <div>\n <div style={{ width: adjustedWidth }}>\n <Toggle\n show={isArray(model.correctResponse) && model.correctResponse.length && !model.emptyAnswer}\n toggled={showCorrectAnswer}\n onToggle={onShowCorrectAnswer}\n initialValue={false}\n />\n </div>\n {!disabled && (\n <PointChooser\n elementType={this.state.elementType}\n showDeleteButton={elementsSelected}\n onDeleteClick={deleteElements}\n onElementType={this.elementTypeSelected.bind(this)}\n onClearElements={this.clearAll.bind(this)}\n onUndoElement={this.undo.bind(this)}\n icons={getIcons()}\n />\n )}\n <Graph\n {...graphProps}\n elements={elements}\n onAddElement={addElement}\n onMoveElement={this.props.onMoveElement}\n onToggleElement={this.toggleElement.bind(this)}\n onDeselectElements={this.deselectElements.bind(this)}\n debug={false}\n />\n {model.graph.title && (\n <div\n className={classes.graphTitle}\n dangerouslySetInnerHTML={{ __html: model.graph.title }}\n />\n )}\n {this.state.showMaxPointsWarning && (\n <Feedback\n type=\"info\"\n width={adjustedWidth}\n message={maxPointsMessage()}\n />\n )}\n {model.feedback && (\n <Feedback {...model.feedback} width={adjustedWidth} />\n )}\n </div>\n </div>\n );\n }\n}\n\nexport default injectSheet(styles)(NumberLine);\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/number-line/index.jsx"],"names":["styles","mainContainer","color","text","backgroundColor","background","graphTitle","textAlign","pointerEvents","userSelect","numberLine","padding","boxSizing","black_on_rose","white_on_black","prompt","verticalAlign","marginBottom","NumberLine","props","context","initialType","model","graph","toLowerCase","PointChooser","DEFAULT_TYPE","state","selectedElements","elementType","answers","answer","index","selected","indexOf","concat","filter","e","setState","t","x","hasMaxNoOfPoints","showMaxPointsWarning","setTimeout","ticks","domain","elementData","minor","contains","some","element","push","onAddElement","maxNumberOfPoints","length","nextProps","showCorrectAnswer","type","min","max","defaultValue","Math","onUndoElement","pop","onClearElements","classes","onDeleteElements","onMoveElement","corrected","correct","incorrect","disabled","correctResponse","emptyAnswer","feedback","colorContrast","addElement","bind","elementsSelected","arrows","height","availableTypes","title","fraction","width","getSize","graphProps","getAnswerElements","map","out","includes","undefined","getCorrectAnswerElements","r","elements","maxPointsMessage","deleteElements","v","d","getIcons","Object","keys","k","onShowCorrectAnswer","show","adjustedWidth","names","elementTypeSelected","clearAll","undo","toggleElement","deselectElements","__html","React","Component","PropTypes","func","isRequired","object","array"],"mappings":"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","sourcesContent":["import Feedback from './feedback';\nimport Graph from './graph';\nimport PropTypes from 'prop-types';\nimport PointChooser from './point-chooser';\nimport React from 'react';\nimport Toggle from '@pie-lib/correct-answer-toggle';\nimport { buildElementModel } from './graph/elements/builder';\nimport classNames from 'classnames';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { color, PreviewPrompt } from '@pie-lib/render-ui';\nimport injectSheet from 'react-jss';\nimport isArray from 'lodash/isArray';\nimport isNumber from 'lodash/isNumber';\nimport isEqual from 'lodash/isEqual';\n\nexport { Graph };\n\nconst styles = {\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n },\n graphTitle: {\n textAlign: 'center',\n pointerEvents: 'none',\n userSelect: 'none',\n },\n numberLine: {\n padding: '10px',\n boxSizing: 'unset',\n },\n black_on_rose: {\n backgroundColor: 'mistyrose',\n },\n white_on_black: {\n backgroundColor: 'black',\n '--correct-answer-toggle-label-color': 'white',\n '--tick-color': 'white',\n '--line-stroke': 'white',\n '--arrow-color': 'white',\n '--point-stroke': 'white',\n '--point-fill': 'black',\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: '16px',\n },\n};\n\nexport class NumberLine extends React.Component {\n static propTypes = {\n onMoveElement: PropTypes.func.isRequired,\n onDeleteElements: PropTypes.func.isRequired,\n onAddElement: PropTypes.func.isRequired,\n onUndoElement: PropTypes.func.isRequired,\n onClearElements: PropTypes.func.isRequired,\n model: PropTypes.object.isRequired,\n answer: PropTypes.array,\n classes: PropTypes.object.isRequired,\n };\n\n constructor(props, context) {\n super(props, context);\n\n let initialType = props.model.graph ? props.model.graph.initialType : null;\n initialType = initialType ? initialType.toLowerCase() : PointChooser.DEFAULT_TYPE;\n\n this.state = {\n selectedElements: [],\n elementType: initialType,\n answers: props.answer,\n };\n }\n\n toggleElement(index) {\n let selected = [];\n if (this.state.selectedElements.indexOf(index) === -1) {\n selected = this.state.selectedElements.concat([index]);\n } else {\n selected = this.state.selectedElements.filter((e) => e !== index);\n }\n this.setState({ selectedElements: selected });\n }\n\n elementTypeSelected(t) {\n this.setState({ elementType: t });\n }\n\n addElement(x) {\n if (this.hasMaxNoOfPoints()) {\n this.setState({ showMaxPointsWarning: true });\n setTimeout(() => {\n this.setState({ showMaxPointsWarning: false });\n }, 2000);\n return;\n }\n\n const { ticks, domain } = this.props.model.graph;\n\n let elementData = buildElementModel(x, this.state.elementType, domain, ticks.minor);\n\n if (elementData) {\n const { answers } = this.state;\n\n const contains = answers.some((element) => {\n return isEqual(element, elementData);\n });\n\n if (!contains) {\n answers.push(elementData);\n this.setState({ answers });\n this.props.onAddElement(elementData);\n }\n }\n }\n\n hasMaxNoOfPoints() {\n let {\n answer,\n model: {\n graph: { maxNumberOfPoints },\n },\n } = this.props;\n\n return isNumber(maxNumberOfPoints) && maxNumberOfPoints > 0 && (answer || []).length >= maxNumberOfPoints;\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n const { answer } = nextProps;\n\n if (!isEqual(this.state.answers, answer)) {\n this.setState({ showCorrectAnswer: false, answers: answer });\n }\n }\n\n deselectElements() {\n this.setState({ selectedElements: [] });\n }\n\n getSize(type, min, max, defaultValue) {\n const {\n model: { graph },\n } = this.props;\n\n if (graph && graph[type]) {\n return Math.max(min, Math.min(max, graph[type]));\n } else {\n return defaultValue;\n }\n }\n\n undo() {\n const { answers } = this.state;\n const { onUndoElement } = this.props;\n\n answers.pop();\n this.setState({ answers });\n onUndoElement();\n }\n\n clearAll() {\n const { onClearElements } = this.props;\n\n this.setState({ answers: [] });\n onClearElements();\n }\n\n render() {\n let { model, classes, onDeleteElements, onMoveElement } = this.props;\n let { showCorrectAnswer, answers, selectedElements, showMaxPointsWarning, elementType } = this.state;\n let {\n corrected = { correct: [], incorrect: [] },\n disabled,\n graph,\n correctResponse,\n prompt,\n emptyAnswer,\n feedback,\n colorContrast,\n } = model;\n let addElement = this.addElement.bind(this);\n let elementsSelected = !disabled && selectedElements && selectedElements.length > 0;\n const { ticks, domain, arrows, maxNumberOfPoints, height, availableTypes, title, fraction } = graph;\n const width = this.getSize('width', 400, 1600, 600);\n const graphProps = {\n disabled,\n domain,\n ticks,\n width,\n height: height || 100,\n arrows,\n fraction,\n };\n\n let getAnswerElements = () => {\n return (answers || []).map((e, index) => {\n let out = cloneDeep(e);\n out.selected = selectedElements.indexOf(index) !== -1;\n out.correct = corrected.correct.includes(index)\n ? true\n : corrected.incorrect.includes(index)\n ? false\n : undefined;\n return out;\n });\n };\n\n let getCorrectAnswerElements = () => {\n return (correctResponse || []).map((r) => {\n r.correct = true;\n return r;\n });\n };\n\n let elements = showCorrectAnswer ? getCorrectAnswerElements() : getAnswerElements();\n\n let maxPointsMessage = () => `You can only add ${maxNumberOfPoints} element${maxNumberOfPoints == 1 ? '' : 's'}`;\n\n let deleteElements = () => {\n onDeleteElements(selectedElements);\n\n answers = answers.filter((v, index) => {\n return !selectedElements.some((d) => d === index);\n });\n\n this.setState({ selectedElements: [], answers });\n };\n\n let getIcons = () => {\n if (availableTypes) {\n return Object.keys(availableTypes)\n .filter((k) => availableTypes[k])\n .map((k) => k.toLowerCase());\n }\n };\n\n let onShowCorrectAnswer = (show) => {\n this.setState({ showCorrectAnswer: show });\n };\n\n let adjustedWidth = graphProps.width - 20;\n\n const names = classNames(classes.numberLine, classes.mainContainer, classes[colorContrast]);\n\n return (\n <div className={names} style={{ width }}>\n {prompt && (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={prompt} />\n </div>\n )}\n <div>\n <div style={{ width: adjustedWidth }}>\n <Toggle\n show={isArray(correctResponse) && correctResponse.length && !emptyAnswer}\n toggled={showCorrectAnswer}\n onToggle={onShowCorrectAnswer}\n initialValue={false}\n />\n </div>\n {!disabled && (\n <PointChooser\n elementType={elementType}\n showDeleteButton={elementsSelected}\n onDeleteClick={deleteElements}\n onElementType={this.elementTypeSelected.bind(this)}\n onClearElements={this.clearAll.bind(this)}\n onUndoElement={this.undo.bind(this)}\n icons={getIcons()}\n />\n )}\n <Graph\n {...graphProps}\n elements={elements}\n onAddElement={addElement}\n onMoveElement={onMoveElement}\n onToggleElement={this.toggleElement.bind(this)}\n onDeselectElements={this.deselectElements.bind(this)}\n debug={false}\n />\n {title && <div className={classes.graphTitle} dangerouslySetInnerHTML={{ __html: title }} />}\n {showMaxPointsWarning && <Feedback type=\"info\" width={adjustedWidth} message={maxPointsMessage()} />}\n {feedback && !showCorrectAnswer && <Feedback {...feedback} width={adjustedWidth} />}\n </div>\n </div>\n );\n }\n}\n\nexport default injectSheet(styles)(NumberLine);\n"],"file":"index.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/number-line/point-chooser/button.jsx"],"names":["RawButton","classes","className","label","onClick","disabled","title","addButton","propTypes","PropTypes","object","isRequired","string","bool","oneOfType","func","defaultProps","styles","fontSize","marginLeft","minWidth","height","width","ButtonStyled"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,SAAZ,QAAYA,SAAZ;AAAA,MAAuBC,KAAvB,QAAuBA,KAAvB;AAAA,MAA8BC,OAA9B,QAA8BA,OAA9B;AAAA,MAAuCC,QAAvC,QAAuCA,QAAvC;AAAA,MAAiDC,KAAjD,QAAiDA,KAAjD;AAAA,sBAChB,gCAAC,kBAAD;AACE,IAAA,KAAK,EAAEA,KADT;AAEE,IAAA,OAAO,EAAEF,OAFX;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAE,4BAAWJ,OAAO,CAACM,SAAnB,EAA8BL,SAA9B,CAJb;AAKE,IAAA,IAAI,EAAC,OALP;AAME,IAAA,OAAO,EAAC,WANV;AAOE,IAAA,KAAK,EAAC;AAPR,KASGC,KATH,CADgB;AAAA,CAAlB;;AAcAH,SAAS,CAACQ,SAAV,GAAsB;AACpBP,EAAAA,OAAO,EAAEQ,sBAAUC,MAAV,CAAiBC,UADN;AAEpBT,EAAAA,SAAS,EAAEO,sBAAUG,MAFD;AAGpBP,EAAAA,QAAQ,EAAEI,sBAAUI,IAHA;AAIpBV,EAAAA,KAAK,EAAEM,sBAAUK,SAAV,CAAoB,
|
|
1
|
+
{"version":3,"sources":["../../../src/number-line/point-chooser/button.jsx"],"names":["RawButton","classes","className","label","onClick","disabled","title","addButton","propTypes","PropTypes","object","isRequired","string","bool","oneOfType","func","defaultProps","styles","fontSize","marginLeft","minWidth","height","width","ButtonStyled"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,SAAS,GAAG,SAAZA,SAAY;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,SAAZ,QAAYA,SAAZ;AAAA,MAAuBC,KAAvB,QAAuBA,KAAvB;AAAA,MAA8BC,OAA9B,QAA8BA,OAA9B;AAAA,MAAuCC,QAAvC,QAAuCA,QAAvC;AAAA,MAAiDC,KAAjD,QAAiDA,KAAjD;AAAA,sBAChB,gCAAC,kBAAD;AACE,IAAA,KAAK,EAAEA,KADT;AAEE,IAAA,OAAO,EAAEF,OAFX;AAGE,IAAA,QAAQ,EAAEC,QAHZ;AAIE,IAAA,SAAS,EAAE,4BAAWJ,OAAO,CAACM,SAAnB,EAA8BL,SAA9B,CAJb;AAKE,IAAA,IAAI,EAAC,OALP;AAME,IAAA,OAAO,EAAC,WANV;AAOE,IAAA,KAAK,EAAC;AAPR,KASGC,KATH,CADgB;AAAA,CAAlB;;AAcAH,SAAS,CAACQ,SAAV,GAAsB;AACpBP,EAAAA,OAAO,EAAEQ,sBAAUC,MAAV,CAAiBC,UADN;AAEpBT,EAAAA,SAAS,EAAEO,sBAAUG,MAFD;AAGpBP,EAAAA,QAAQ,EAAEI,sBAAUI,IAHA;AAIpBV,EAAAA,KAAK,EAAEM,sBAAUK,SAAV,CAAoB,CAACL,sBAAUG,MAAX,EAAmBH,sBAAUC,MAA7B,CAApB,CAJa;AAKpBN,EAAAA,OAAO,EAAEK,sBAAUM,IALC;AAMpBT,EAAAA,KAAK,EAAEG,sBAAUG;AANG,CAAtB;AASAZ,SAAS,CAACgB,YAAV,GAAyB;AACvBd,EAAAA,SAAS,EAAE,EADY;AAEvBG,EAAAA,QAAQ,EAAE,KAFa;AAGvBF,EAAAA,KAAK,EAAE,KAHgB;AAIvBC,EAAAA,OAAO,EAAE,mBAAM,CAAE,CAJM;AAKvBE,EAAAA,KAAK,EAAE;AALgB,CAAzB;;AAQA,IAAMW,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBV,IAAAA,SAAS,EAAE;AACTW,MAAAA,QAAQ,EAAE,OADD;AAETC,MAAAA,UAAU,EAAE,CAFH;AAGTC,MAAAA,QAAQ,EAAE,EAHD;AAITC,MAAAA,MAAM,EAAE,EAJC;AAMT,gBAAU;AACR,iBAAS;AACPC,UAAAA,KAAK,EAAE,kBADA;AAEPD,UAAAA,MAAM,EAAE;AAFD;AADD;AAND;AADS,GAAP;AAAA,CAAf;;AAgBA,IAAME,YAAY,GAAG,wBAAWN,MAAX,EAAmBjB,SAAnB,CAArB;eAEeuB,Y","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Button from '@material-ui/core/Button';\n\nconst RawButton = ({ classes, className, label, onClick, disabled, title }) => (\n <Button\n title={title}\n onClick={onClick}\n disabled={disabled}\n className={classNames(classes.addButton, className)}\n size=\"small\"\n variant=\"contained\"\n color=\"default\"\n >\n {label}\n </Button>\n);\n\nRawButton.propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n onClick: PropTypes.func,\n title: PropTypes.string,\n};\n\nRawButton.defaultProps = {\n className: '',\n disabled: false,\n label: 'Add',\n onClick: () => {},\n title: '',\n};\n\nconst styles = () => ({\n addButton: {\n fontSize: '0.9em',\n marginLeft: 8,\n minWidth: 32,\n height: 32,\n\n '& span': {\n '& svg': {\n width: '1.3em !important',\n height: '1.3em !important',\n },\n },\n },\n});\n\nconst ButtonStyled = withStyles(styles)(RawButton);\n\nexport default ButtonStyled;\n"],"file":"button.js"}
|
|
@@ -33,7 +33,7 @@ var _button = _interopRequireDefault(require("./button"));
|
|
|
33
33
|
|
|
34
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
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 {
|
|
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
37
|
|
|
38
38
|
var DeleteIcon = function DeleteIcon(_ref) {
|
|
39
39
|
var classes = _ref.classes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/number-line/point-chooser/index.jsx"],"names":["DeleteIcon","classes","deleteIcon","propTypes","PropTypes","object","RawPoint","props","iconKey","active","onClick","names","string","isRequired","bool","func","Point","styles","Points","selectPoint","selected","icons","iconTags","map","key","bind","toLowerCase","elementSelector","array","PointChooser","elementType","showDeleteButton","onDeleteClick","onUndoElement","onClearElements","onElementType","pointChooser","controls","deleteIconHolder","React","Component","DEFAULT_TYPE"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAAiB;AAAA,MAAdC,OAAc,QAAdA,OAAc;AAClC,sBACE;AACE,IAAA,SAAS,EAAEA,OAAO,CAACC,UADrB;AAEE,IAAA,IAAI,EAAC,SAFP;AAGE,IAAA,MAAM,EAAC,IAHT;AAIE,IAAA,OAAO,EAAC,WAJV;AAKE,IAAA,KAAK,EAAC,IALR;AAME,IAAA,KAAK,EAAC;AANR,kBAQE;AAAM,IAAA,CAAC,EAAC;AAAR,IARF,eASE;AAAM,IAAA,CAAC,EAAC,eAAR;AAAwB,IAAA,IAAI,EAAC;AAA7B,IATF,CADF;AAaD,CAdD;;AAgBAF,UAAU,CAACG,SAAX,GAAuB;AACrBF,EAAAA,OAAO,EAAEG,sBAAUC;AADE,CAAvB;;AAIA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,
|
|
1
|
+
{"version":3,"sources":["../../../src/number-line/point-chooser/index.jsx"],"names":["DeleteIcon","classes","deleteIcon","propTypes","PropTypes","object","RawPoint","props","iconKey","active","onClick","names","string","isRequired","bool","func","Point","styles","Points","selectPoint","selected","icons","iconTags","map","key","bind","toLowerCase","elementSelector","array","PointChooser","elementType","showDeleteButton","onDeleteClick","onUndoElement","onClearElements","onElementType","pointChooser","controls","deleteIconHolder","React","Component","DEFAULT_TYPE"],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\nimport injectSheet from 'react-jss';\nimport styles from './styles';\nimport PropTypes from 'prop-types';\nimport Button from './button';\n\nconst DeleteIcon = ({ classes }) => {\n return (\n <svg\n className={classes.deleteIcon}\n fill=\"#000000\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z\" />\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n </svg>\n );\n};\n\nDeleteIcon.propTypes = {\n classes: PropTypes.object,\n};\n\nconst RawPoint = (props) => {\n const { iconKey, active, classes, onClick } = props;\n const names = classNames(classes[iconKey], { active });\n return (\n <span role=\"presentation\" key={iconKey} onClick={onClick}>\n <a className={names}> </a>\n </span>\n );\n};\n\nRawPoint.propTypes = {\n iconKey: PropTypes.string.isRequired,\n active: PropTypes.bool,\n classes: PropTypes.object,\n onClick: PropTypes.func,\n};\n\nexport const Point = injectSheet(styles)(RawPoint);\n\nconst Points = ({ selectPoint, classes, selected, icons }) => {\n const iconTags = icons.map((key) => {\n let active = key === selected;\n let onClick = active ? () => {} : selectPoint.bind(null, key);\n return <Point key={key.toLowerCase()} iconKey={key.toLowerCase()} active={active} onClick={onClick} />; //icon(key, active);\n });\n\n return <div className={classes.elementSelector}>{iconTags}</div>;\n};\n\nPoints.propTypes = {\n selectPoint: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n selected: PropTypes.string,\n icons: PropTypes.array,\n};\n\nexport class PointChooser extends React.Component {\n static defaultProps = {\n showDeleteButton: false,\n elementType: PointChooser.DEFAULT_TYPE,\n icons: ['pf', 'lff', 'lef', 'lfe', 'lee', 'rfn', 'rfp', 'ren', 'rep'],\n };\n\n static propTypes = {\n classes: PropTypes.object.isRequired,\n elementType: PropTypes.string,\n showDeleteButton: PropTypes.bool,\n onDeleteClick: PropTypes.func.isRequired,\n onElementType: PropTypes.func.isRequired,\n onUndoElement: PropTypes.func.isRequired,\n onClearElements: PropTypes.func.isRequired,\n icons: PropTypes.array,\n };\n\n render() {\n const {\n elementType,\n showDeleteButton,\n onDeleteClick,\n onUndoElement,\n onClearElements,\n icons,\n classes,\n onElementType,\n } = this.props;\n\n return (\n <div className={classes.pointChooser}>\n <Points selected={elementType} classes={classes} selectPoint={onElementType} icons={icons} />\n <div className={classes.controls}>\n {showDeleteButton && (\n <span className={classes.deleteIconHolder} onClick={onDeleteClick}>\n <DeleteIcon classes={classes} />\n </span>\n )}\n <Button onClick={onUndoElement} label=\"Undo\" />\n <Button onClick={onClearElements} label=\"Clear all\" />\n </div>\n </div>\n );\n }\n}\n\nexport default injectSheet(styles)(PointChooser);\n\nPointChooser.DEFAULT_TYPE = 'pf';\n"],"file":"index.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/number-line/point-chooser/styles.js"],"names":["iconHeight","iconWidth","noselect","styleElement","index","display","width","height","position","top","cursor","background","img","backgroundPosition","textDecoration","pointChooser","backgroundColor","justifyContent","borderRadius","padding","deleteIconHolder","deleteIcon","fill","transition","opacity","elementSelector","Object","assign","controls","paddingTop","pf","lff","lef","lfe","lee","rfn","rfp","ren","rep"],"mappings":";;;;;;;;;AAGA;;AAHA,IAAMA,UAAU,GAAG,EAAnB;AACA,IAAMC,SAAS,GAAG,EAAlB;;AAIA,IAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAO;AACtB,6BAAyB;AAAO;AADV;AAEtB,2BAAuB;AAAO;AAFR;AAGtB,0BAAsB;AAAO;AAHP;AAItB,wBAAoB;AAAO;AAJL;AAKtB,uBAAmB;AAAO;AALJ;AAMtB,
|
|
1
|
+
{"version":3,"sources":["../../../src/number-line/point-chooser/styles.js"],"names":["iconHeight","iconWidth","noselect","styleElement","index","display","width","height","position","top","cursor","background","img","backgroundPosition","textDecoration","pointChooser","backgroundColor","justifyContent","borderRadius","padding","deleteIconHolder","deleteIcon","fill","transition","opacity","elementSelector","Object","assign","controls","paddingTop","pf","lff","lef","lfe","lee","rfn","rfp","ren","rep"],"mappings":";;;;;;;;;AAGA;;AAHA,IAAMA,UAAU,GAAG,EAAnB;AACA,IAAMC,SAAS,GAAG,EAAlB;;AAIA,IAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAO;AACtB,6BAAyB;AAAO;AADV;AAEtB,2BAAuB;AAAO;AAFR;AAGtB,0BAAsB;AAAO;AAHP;AAItB,wBAAoB;AAAO;AAJL;AAKtB,uBAAmB;AAAO;AALJ;AAMtB,mBAAe;AAAO;AACxB;;AAPwB,GAAP;AAAA,CAAjB;;AAUA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,KAAD;AAAA,SAAY;AAC/BC,IAAAA,OAAO,EAAE,cADsB;AAE/BC,IAAAA,KAAK,EAAEL,SAFwB;AAG/BM,IAAAA,MAAM,EAAEP,UAHuB;AAI/BQ,IAAAA,QAAQ,EAAE,UAJqB;AAK/BC,IAAAA,GAAG,EAAE,KAL0B;AAM/BC,IAAAA,MAAM,EAAE,SANuB;AAO/BC,IAAAA,UAAU,gBAASC,eAAT,gBAAkBR,KAAK,GAAGH,SAA1B,WAPqB;AAQ/B,gCAA4B;AAC1BY,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8B,IAAID,UAAlC;AADQ,KARG;AAW/B,eAAW;AACTc,MAAAA,cAAc,EAAE,MADP;AAETD,MAAAA,kBAAkB,aAAMT,KAAK,GAAGH,SAAd,iBAA8BD,UAA9B;AAFT;AAXoB,GAAZ;AAAA,CAArB;;eAiBe;AACbe,EAAAA,YAAY,EAAE;AACZC,IAAAA,eAAe,EAAE,OADL;AAEZX,IAAAA,OAAO,EAAE,MAFG;AAGZY,IAAAA,cAAc,EAAE,eAHJ;AAIZC,IAAAA,YAAY,EAAE,KAJF;AAKZC,IAAAA,OAAO,EAAE;AALG,GADD;AAQbC,EAAAA,gBAAgB,EAAE;AAChBZ,IAAAA,QAAQ,EAAE,UADM;AAEhBC,IAAAA,GAAG,EAAE,KAFW;AAGhBH,IAAAA,KAAK,EAAE;AAHS,GARL;AAabe,EAAAA,UAAU,EAAE;AACVC,IAAAA,IAAI,EAAE,OADI;AAEVZ,IAAAA,MAAM,EAAE,SAFE;AAGVa,IAAAA,UAAU,EAAE,sBAHF;AAIV,eAAW;AACTC,MAAAA,OAAO,EAAE;AADA;AAJD,GAbC;AAqBbC,EAAAA,eAAe,EAAEC,MAAM,CAACC,MAAP,CACf;AACErB,IAAAA,KAAK,EAAE,KADT;AAEEa,IAAAA,OAAO,EAAE;AAFX,GADe,EAKfjB,QAAQ,EALO,CArBJ;AA4Bb0B,EAAAA,QAAQ,EAAE;AACRvB,IAAAA,OAAO,EAAE,MADD;AAERwB,IAAAA,UAAU,EAAE;AAFJ,GA5BG;AAgCbC,EAAAA,EAAE,EAAE3B,YAAY,CAAC,CAAD,CAhCH;AAiCb4B,EAAAA,GAAG,EAAE5B,YAAY,CAAC,CAAD,CAjCJ;AAkCb6B,EAAAA,GAAG,EAAE7B,YAAY,CAAC,CAAD,CAlCJ;AAmCb8B,EAAAA,GAAG,EAAE9B,YAAY,CAAC,CAAD,CAnCJ;AAoCb+B,EAAAA,GAAG,EAAE/B,YAAY,CAAC,CAAD,CApCJ;AAqCbgC,EAAAA,GAAG,EAAEhC,YAAY,CAAC,CAAD,CArCJ;AAsCbiC,EAAAA,GAAG,EAAEjC,YAAY,CAAC,CAAD,CAtCJ;AAuCbkC,EAAAA,GAAG,EAAElC,YAAY,CAAC,CAAD,CAvCJ;AAwCbmC,EAAAA,GAAG,EAAEnC,YAAY,CAAC,CAAD;AAxCJ,C","sourcesContent":["const iconHeight = 41;\nconst iconWidth = 42;\n\nimport img from './img';\n\nconst noselect = () => ({\n '-webkit-touch-callout': 'none' /* iOS Safari */,\n '-webkit-user-select': 'none' /* Safari */,\n '-khtml-user-select': 'none' /* Konqueror HTML */,\n '-moz-user-select': 'none' /* Firefox */,\n '-ms-user-select': 'none' /* Internet Explorer/Edge */,\n 'user-select': 'none' /* Non-prefixed version, currently\n supported by Chrome and Opera */,\n});\n\nconst styleElement = (index) => ({\n display: 'inline-block',\n width: iconWidth,\n height: iconHeight,\n position: 'relative',\n top: '1px',\n cursor: 'pointer',\n background: `url(${img}) -${index * iconWidth}px 0px`,\n '&.active, &.active:hover': {\n backgroundPosition: `-${index * iconWidth}px -${2 * iconHeight}px`,\n },\n '&:hover': {\n textDecoration: 'none',\n backgroundPosition: `-${index * iconWidth}px -${iconHeight}px`,\n },\n});\n\nexport default {\n pointChooser: {\n backgroundColor: 'white',\n display: 'flex',\n justifyContent: 'space-between',\n borderRadius: '4px',\n padding: '1px',\n },\n deleteIconHolder: {\n position: 'relative',\n top: '3px',\n width: '30px',\n },\n deleteIcon: {\n fill: 'black',\n cursor: 'pointer',\n transition: 'opacity 100ms linear',\n '&:hover': {\n opacity: '0.5',\n },\n },\n elementSelector: Object.assign(\n {\n width: '55%',\n padding: '1px',\n },\n noselect(),\n ),\n controls: {\n display: 'flex',\n paddingTop: '7px',\n },\n pf: styleElement(0),\n lff: styleElement(1),\n lef: styleElement(2),\n lfe: styleElement(3),\n lee: styleElement(4),\n rfn: styleElement(5),\n rfp: styleElement(6),\n ren: styleElement(7),\n rep: styleElement(8),\n};\n"],"file":"styles.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/number-line/transitions/fade.jsx"],"names":["duration","fade","appear","opacity","appearActive","transition","enter","enterActive","exit","exitActive","FadeTransition","props","classes","propTypes","PropTypes","object","isRequired","Fade"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,QAAQ,GAAG,GAAjB;AACA,IAAMC,IAAI,GAAG;AACXC,EAAAA,MAAM,EAAE;AACNC,IAAAA,OAAO,EAAE;AADH,GADG;AAIXC,EAAAA,YAAY,EAAE;AACZD,IAAAA,OAAO,EAAE,CADG;AAEZE,IAAAA,UAAU,oBAAaL,QAAb;AAFE,GAJH;AAQXM,EAAAA,KAAK,EAAE;AACLH,IAAAA,OAAO,EAAE;AADJ,GARI;AAWXI,EAAAA,WAAW,EAAE;AACXJ,IAAAA,OAAO,EAAE,CADE;AAEXE,IAAAA,UAAU,oBAAaL,QAAb;AAFC,GAXF;AAeXQ,EAAAA,IAAI,EAAE;AACJL,IAAAA,OAAO,EAAE;AADL,GAfK;AAkBXM,EAAAA,UAAU,EAAE;AACVN,IAAAA,OAAO,EAAE,CADC;AAEVE,IAAAA,UAAU,oBAAaL,QAAb;AAFA;AAlBD,CAAb;;AAwBA,IAAMU,cAAc,GAAG,SAAjBA,cAAiB,
|
|
1
|
+
{"version":3,"sources":["../../../src/number-line/transitions/fade.jsx"],"names":["duration","fade","appear","opacity","appearActive","transition","enter","enterActive","exit","exitActive","FadeTransition","props","classes","propTypes","PropTypes","object","isRequired","Fade"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,QAAQ,GAAG,GAAjB;AACA,IAAMC,IAAI,GAAG;AACXC,EAAAA,MAAM,EAAE;AACNC,IAAAA,OAAO,EAAE;AADH,GADG;AAIXC,EAAAA,YAAY,EAAE;AACZD,IAAAA,OAAO,EAAE,CADG;AAEZE,IAAAA,UAAU,oBAAaL,QAAb;AAFE,GAJH;AAQXM,EAAAA,KAAK,EAAE;AACLH,IAAAA,OAAO,EAAE;AADJ,GARI;AAWXI,EAAAA,WAAW,EAAE;AACXJ,IAAAA,OAAO,EAAE,CADE;AAEXE,IAAAA,UAAU,oBAAaL,QAAb;AAFC,GAXF;AAeXQ,EAAAA,IAAI,EAAE;AACJL,IAAAA,OAAO,EAAE;AADL,GAfK;AAkBXM,EAAAA,UAAU,EAAE;AACVN,IAAAA,OAAO,EAAE,CADC;AAEVE,IAAAA,UAAU,oBAAaL,QAAb;AAFA;AAlBD,CAAb;;AAwBA,IAAMU,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD,EAAW;AAChC,MAAQC,OAAR,GAAoBD,KAApB,CAAQC,OAAR;AACA,sBACE,gCAAC,mCAAD,gCACMD,KADN;AAEE,IAAA,MAAM,EAAE,IAFV;AAGE,IAAA,UAAU,EAAE;AACVL,MAAAA,KAAK,EAAEM,OAAO,CAACN,KADL;AAEVC,MAAAA,WAAW,EAAEK,OAAO,CAACL,WAFX;AAGVC,MAAAA,IAAI,EAAEI,OAAO,CAACJ,IAHJ;AAIVC,MAAAA,UAAU,EAAEG,OAAO,CAACH,UAJV;AAKVP,MAAAA,MAAM,EAAEU,OAAO,CAACV,MALN;AAMVE,MAAAA,YAAY,EAAEQ,OAAO,CAACR;AANZ,KAHd;AAWE,IAAA,OAAO,EAAEJ;AAXX,KADF;AAeD,CAjBD;;AAmBAU,cAAc,CAACG,SAAf,GAA2B;AACzBD,EAAAA,OAAO,EAAEE,sBAAUC,MAAV,CAAiBC;AADD,CAA3B;AAIA,IAAMC,IAAI,GAAG,0BAAYhB,IAAZ,EAAkBS,cAAlB,CAAb;eAEeO,I","sourcesContent":["import injectSheet from 'react-jss';\nimport React from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport PropTypes from 'prop-types';\n\nconst duration = 200;\nconst fade = {\n appear: {\n opacity: 0,\n },\n appearActive: {\n opacity: 1,\n transition: `opacity ${duration}ms ease-in`,\n },\n enter: {\n opacity: 0,\n },\n enterActive: {\n opacity: 1,\n transition: `opacity ${duration}ms ease-in`,\n },\n exit: {\n opacity: 1,\n },\n exitActive: {\n opacity: 0,\n transition: `opacity ${duration}ms ease-in`,\n },\n};\n\nconst FadeTransition = (props) => {\n const { classes } = props;\n return (\n <CSSTransition\n {...props}\n appear={true}\n classNames={{\n enter: classes.enter,\n enterActive: classes.enterActive,\n exit: classes.exit,\n exitActive: classes.exitActive,\n appear: classes.appear,\n appearActive: classes.appearActive,\n }}\n timeout={duration}\n />\n );\n};\n\nFadeTransition.propTypes = {\n classes: PropTypes.object.isRequired,\n};\n\nconst Fade = injectSheet(fade)(FadeTransition);\n\nexport default Fade;\n"],"file":"fade.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/number-line",
|
|
3
|
-
"version": "5.10.
|
|
3
|
+
"version": "5.10.1-beta.587+40df32c2f",
|
|
4
4
|
"repository": "pie-framework/pie-elements",
|
|
5
5
|
"description": "",
|
|
6
6
|
"publishConfig": {
|
|
@@ -8,16 +8,17 @@
|
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@material-ui/core": "^3.9.2",
|
|
11
|
-
"@pie-lib/correct-answer-toggle": "^2.3.
|
|
12
|
-
"@pie-lib/feedback": "^0.4.
|
|
13
|
-
"@pie-lib/icons": "^2.4.
|
|
14
|
-
"@pie-lib/math-rendering": "^2.
|
|
15
|
-
"@pie-lib/render-ui": "^4.
|
|
11
|
+
"@pie-lib/correct-answer-toggle": "^2.3.62",
|
|
12
|
+
"@pie-lib/feedback": "^0.4.42",
|
|
13
|
+
"@pie-lib/icons": "^2.4.42",
|
|
14
|
+
"@pie-lib/math-rendering": "^2.5.12",
|
|
15
|
+
"@pie-lib/render-ui": "^4.14.12",
|
|
16
16
|
"classnames": "^2.2.5",
|
|
17
17
|
"d3-scale": "^3.2.1",
|
|
18
18
|
"d3-selection": "^1.4.1",
|
|
19
|
+
"is-plain-object": "^5.0.0",
|
|
19
20
|
"lodash": "^4.17.10",
|
|
20
|
-
"mathjs": "^5.
|
|
21
|
+
"mathjs": "^7.5.1",
|
|
21
22
|
"prop-types": "^15.6.1",
|
|
22
23
|
"react": "^16.8.1",
|
|
23
24
|
"react-dom": "^16.8.1",
|
|
@@ -27,7 +28,7 @@
|
|
|
27
28
|
},
|
|
28
29
|
"author": "pie framework developers",
|
|
29
30
|
"license": "ISC",
|
|
30
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "40df32c2f78966706cb168843567c9df174f1d88",
|
|
31
32
|
"scripts": {
|
|
32
33
|
"postpublish": "../../scripts/postpublish"
|
|
33
34
|
},
|