@pie-element/graphing-solution-set 4.3.4-next.3 → 5.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.
- package/configure/lib/configure.js +288 -376
- package/configure/lib/configure.js.map +1 -1
- package/configure/lib/correct-response.js +309 -475
- package/configure/lib/correct-response.js.map +1 -1
- package/configure/lib/defaults.js +2 -4
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/graphing-config.js +329 -363
- package/configure/lib/graphing-config.js.map +1 -1
- package/configure/lib/index.js +126 -181
- package/configure/lib/index.js.map +1 -1
- package/configure/lib/utils.js +178 -301
- package/configure/lib/utils.js.map +1 -1
- package/configure/package.json +11 -8
- package/controller/lib/defaults.js +2 -4
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +146 -218
- package/controller/lib/index.js.map +1 -1
- package/controller/lib/utils.js +85 -142
- package/controller/lib/utils.js.map +1 -1
- package/controller/package.json +3 -3
- package/lib/index.js +120 -170
- package/lib/index.js.map +1 -1
- package/lib/main.js +261 -350
- package/lib/main.js.map +1 -1
- package/lib/utils.js +142 -231
- package/lib/utils.js.map +1 -1
- package/package.json +13 -10
- package/esm/configure.js +0 -43958
- package/esm/configure.js.map +0 -1
- package/esm/controller.js +0 -22735
- package/esm/controller.js.map +0 -1
- package/esm/element.js +0 -26572
- package/esm/element.js.map +0 -1
- package/esm/package.json +0 -3
package/lib/main.js
CHANGED
|
@@ -1,444 +1,355 @@
|
|
|
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
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
7
|
+
exports.default = exports.Main = void 0;
|
|
22
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
9
|
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
|
-
var _styles = require("@material-ui/core/styles");
|
|
29
|
-
|
|
11
|
+
var _styles = require("@mui/material/styles");
|
|
30
12
|
var _graphingSolutionSet = require("@pie-lib/graphing-solution-set");
|
|
31
|
-
|
|
32
13
|
var _renderUi = require("@pie-lib/render-ui");
|
|
33
|
-
|
|
34
14
|
var _correctAnswerToggle = _interopRequireDefault(require("@pie-lib/correct-answer-toggle"));
|
|
35
|
-
|
|
36
15
|
var _utils = require("./utils");
|
|
37
|
-
|
|
38
16
|
var _configUi = require("@pie-lib/config-ui");
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
(
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
function Main() {
|
|
60
|
-
var _this;
|
|
61
|
-
|
|
62
|
-
(0, _classCallCheck2["default"])(this, Main);
|
|
63
|
-
|
|
64
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
65
|
-
args[_key] = arguments[_key];
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
69
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
|
|
17
|
+
const MainContainer = (0, _styles.styled)(_renderUi.UiLayout)({
|
|
18
|
+
color: _renderUi.color.text(),
|
|
19
|
+
backgroundColor: _renderUi.color.background()
|
|
20
|
+
});
|
|
21
|
+
const TeacherInstructions = (0, _styles.styled)(_renderUi.Collapsible)(({
|
|
22
|
+
theme
|
|
23
|
+
}) => ({
|
|
24
|
+
marginBottom: theme.spacing(2)
|
|
25
|
+
}));
|
|
26
|
+
const Graph = (0, _styles.styled)(_graphingSolutionSet.GraphContainer)(({
|
|
27
|
+
theme
|
|
28
|
+
}) => ({
|
|
29
|
+
marginTop: theme.spacing(2),
|
|
30
|
+
marginBottom: theme.spacing(2)
|
|
31
|
+
}));
|
|
32
|
+
class Main extends _react.default.Component {
|
|
33
|
+
constructor(...args) {
|
|
34
|
+
super(...args);
|
|
35
|
+
(0, _defineProperty2.default)(this, "state", {
|
|
70
36
|
showingCorrect: false,
|
|
71
37
|
dialog: {
|
|
72
38
|
open: false
|
|
73
39
|
}
|
|
74
40
|
});
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
41
|
+
/*
|
|
42
|
+
* Function to handle the AlertDialog
|
|
43
|
+
* @param {boolean} open - open state of the dialog
|
|
44
|
+
* @param {function} callback - callback function to be called after setting the state
|
|
45
|
+
* */
|
|
46
|
+
(0, _defineProperty2.default)(this, "handleAlertDialog", (open, callback) => this.setState({
|
|
47
|
+
dialog: {
|
|
48
|
+
open
|
|
49
|
+
}
|
|
50
|
+
}, callback));
|
|
51
|
+
/*
|
|
52
|
+
* Function to toggle the correct answer
|
|
53
|
+
* @param {boolean} showingCorrect - state of the correct answer
|
|
54
|
+
* */
|
|
55
|
+
(0, _defineProperty2.default)(this, "toggleCorrect", showingCorrect => this.setState({
|
|
56
|
+
showingCorrect
|
|
57
|
+
}));
|
|
58
|
+
/*
|
|
59
|
+
* Reset the graph to original state
|
|
60
|
+
* */
|
|
61
|
+
(0, _defineProperty2.default)(this, "onResetClick", () => {
|
|
62
|
+
const {
|
|
63
|
+
model,
|
|
64
|
+
session,
|
|
65
|
+
setGssData
|
|
66
|
+
} = this.props;
|
|
67
|
+
let {
|
|
68
|
+
gssData
|
|
69
|
+
} = model;
|
|
70
|
+
this.setState({
|
|
95
71
|
dialog: {
|
|
96
72
|
open: true,
|
|
97
73
|
title: 'Warning',
|
|
98
|
-
text:
|
|
99
|
-
onConfirm:
|
|
74
|
+
text: `This will remove all the elements added on the graph and reset graph to original state. Are you sure you want to continue?`,
|
|
75
|
+
onConfirm: () => {
|
|
100
76
|
// Reset the graph to original state
|
|
101
77
|
session.answer = [];
|
|
102
78
|
gssData.selectedTool = 'lineA';
|
|
103
79
|
gssData.lineA.lineType = 'Solid';
|
|
104
|
-
if (gssData.lineB) gssData.lineB.lineType = 'Solid';
|
|
105
|
-
|
|
80
|
+
if (gssData.lineB) gssData.lineB.lineType = 'Solid';
|
|
81
|
+
// Set the gssData and session
|
|
106
82
|
setGssData(gssData, session);
|
|
107
|
-
|
|
108
|
-
_this.handleAlertDialog(false);
|
|
83
|
+
this.handleAlertDialog(false);
|
|
109
84
|
},
|
|
110
|
-
onClose:
|
|
111
|
-
return _this.handleAlertDialog(false);
|
|
112
|
-
}
|
|
85
|
+
onClose: () => this.handleAlertDialog(false)
|
|
113
86
|
}
|
|
114
87
|
});
|
|
115
88
|
});
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
89
|
+
/*
|
|
90
|
+
* Function to handle the event of solution set selected
|
|
91
|
+
* @param {object} point - point selected on the graph
|
|
92
|
+
* */
|
|
93
|
+
(0, _defineProperty2.default)(this, "onSolutionSetSelected", point => {
|
|
94
|
+
const {
|
|
95
|
+
model,
|
|
96
|
+
session,
|
|
97
|
+
setGssData
|
|
98
|
+
} = this.props;
|
|
99
|
+
const {
|
|
100
|
+
gssData,
|
|
101
|
+
disabled
|
|
102
|
+
} = model;
|
|
124
103
|
if (disabled) {
|
|
125
104
|
return;
|
|
126
105
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
type: 'polygon',
|
|
140
|
-
closed: true,
|
|
141
|
-
isSolution: true
|
|
142
|
-
};
|
|
143
|
-
session.answer = session.answer.filter(function (mark) {
|
|
144
|
-
return mark.type !== 'polygon';
|
|
145
|
-
});
|
|
146
|
-
session.answer.push(polygon);
|
|
147
|
-
break;
|
|
148
|
-
}
|
|
106
|
+
for (const section of gssData.sections) {
|
|
107
|
+
if ((0, _utils.pointInsidePolygon)(point, section)) {
|
|
108
|
+
let polygon = {
|
|
109
|
+
points: section,
|
|
110
|
+
building: false,
|
|
111
|
+
type: 'polygon',
|
|
112
|
+
closed: true,
|
|
113
|
+
isSolution: true
|
|
114
|
+
};
|
|
115
|
+
session.answer = session.answer.filter(mark => mark.type !== 'polygon');
|
|
116
|
+
session.answer.push(polygon);
|
|
117
|
+
break;
|
|
149
118
|
}
|
|
150
|
-
} catch (err) {
|
|
151
|
-
_iterator.e(err);
|
|
152
|
-
} finally {
|
|
153
|
-
_iterator.f();
|
|
154
119
|
}
|
|
155
|
-
|
|
156
120
|
setGssData(gssData, session);
|
|
157
121
|
});
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
122
|
+
/*
|
|
123
|
+
* Function to handle the event of change in GSS Line Data
|
|
124
|
+
* @param {object} gssData - GSS Line Data
|
|
125
|
+
* @param {string} oldSelectedTool - old selected tool
|
|
126
|
+
* */
|
|
127
|
+
(0, _defineProperty2.default)(this, "onChangeGssLineData", (gssData, oldSelectedTool) => {
|
|
128
|
+
const {
|
|
129
|
+
model,
|
|
130
|
+
session
|
|
131
|
+
} = this.props;
|
|
132
|
+
const {
|
|
133
|
+
domain,
|
|
134
|
+
range,
|
|
135
|
+
disabled
|
|
136
|
+
} = model;
|
|
166
137
|
if (disabled) {
|
|
167
138
|
return;
|
|
168
139
|
}
|
|
169
|
-
|
|
170
140
|
if (gssData.selectedTool === 'solutionSet') {
|
|
171
|
-
|
|
172
|
-
return mark.type !== 'polygon';
|
|
173
|
-
});
|
|
174
|
-
|
|
141
|
+
let lines = session.answer.filter(mark => mark.type !== 'polygon');
|
|
175
142
|
if (!(0, _utils.checkIfLinesAreAdded)(gssData, lines)) {
|
|
176
143
|
gssData.selectedTool = oldSelectedTool;
|
|
177
|
-
|
|
178
|
-
_this.setState({
|
|
144
|
+
this.setState({
|
|
179
145
|
dialog: {
|
|
180
146
|
open: true,
|
|
181
147
|
title: 'Warning',
|
|
182
|
-
text:
|
|
183
|
-
onConfirm:
|
|
184
|
-
return _this.handleAlertDialog(false);
|
|
185
|
-
}
|
|
148
|
+
text: 'Please define the line(s) and then select a solution set for the item.',
|
|
149
|
+
onConfirm: () => this.handleAlertDialog(false)
|
|
186
150
|
}
|
|
187
151
|
});
|
|
188
152
|
} else {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
gssData = (0, _utils.findSectionsInSolutionSet)(gssData, _lines, domain, range);
|
|
153
|
+
let lines = session.answer.filter(mark => mark.type !== 'polygon');
|
|
154
|
+
gssData = (0, _utils.findSectionsInSolutionSet)(gssData, lines, domain, range);
|
|
194
155
|
}
|
|
195
|
-
|
|
196
|
-
_this.handleGssDataChange(gssData, session);
|
|
156
|
+
this.handleGssDataChange(gssData, session);
|
|
197
157
|
} else {
|
|
198
|
-
|
|
199
|
-
return mark.type === 'polygon';
|
|
200
|
-
});
|
|
201
|
-
|
|
158
|
+
let polygons = session.answer.filter(mark => mark.type === 'polygon');
|
|
202
159
|
if (oldSelectedTool === 'solutionSet' && polygons.length > 0) {
|
|
203
|
-
|
|
160
|
+
this.setState({
|
|
204
161
|
dialog: {
|
|
205
162
|
open: true,
|
|
206
163
|
title: 'Warning',
|
|
207
|
-
text:
|
|
208
|
-
onConfirm:
|
|
209
|
-
session.answer = session.answer.filter(
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
_this.handleGssDataChange(gssData, session);
|
|
214
|
-
|
|
215
|
-
_this.handleAlertDialog(false);
|
|
164
|
+
text: 'Changing a line after adding a solution set will clear your selected solution set. Click \'Clear Solution Set\' to change the line. Otherwise, click \'Cancel\'.',
|
|
165
|
+
onConfirm: () => {
|
|
166
|
+
session.answer = session.answer.filter(mark => mark.type !== 'polygon');
|
|
167
|
+
this.handleGssDataChange(gssData, session);
|
|
168
|
+
this.handleAlertDialog(false);
|
|
216
169
|
},
|
|
217
170
|
onConfirmText: 'CLEAR SOLUTION SET',
|
|
218
|
-
onClose:
|
|
171
|
+
onClose: () => {
|
|
219
172
|
gssData.selectedTool = oldSelectedTool;
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
_this.handleAlertDialog(false);
|
|
173
|
+
this.handleGssDataChange(gssData, session);
|
|
174
|
+
this.handleAlertDialog(false);
|
|
224
175
|
}
|
|
225
176
|
}
|
|
226
177
|
});
|
|
227
178
|
} else {
|
|
228
|
-
|
|
179
|
+
this.handleGssDataChange(gssData, session);
|
|
229
180
|
}
|
|
230
181
|
}
|
|
231
182
|
});
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
183
|
+
/*
|
|
184
|
+
* Function to handle the event of change in GSS Data
|
|
185
|
+
* @param {object} gssData - GSS Data
|
|
186
|
+
* @param {object} session - session data
|
|
187
|
+
* */
|
|
188
|
+
(0, _defineProperty2.default)(this, "handleGssDataChange", (gssData, session) => {
|
|
189
|
+
const {
|
|
190
|
+
setGssData
|
|
191
|
+
} = this.props;
|
|
235
192
|
if (session.answer && session.answer.length > 0 && session.answer[0] && gssData.lineA) {
|
|
236
193
|
session.answer[0].fill = gssData.lineA.lineType;
|
|
237
194
|
}
|
|
238
|
-
|
|
239
195
|
if (session.answer && session.answer.length > 1 && session.answer[1] && gssData.lineB) {
|
|
240
196
|
session.answer[1].fill = gssData.lineB.lineType;
|
|
241
197
|
}
|
|
242
|
-
|
|
243
198
|
if (gssData.selectedTool === 'lineB' && session.answer.length === 0 || gssData.selectedTool === 'lineB' && session.answer[0].building) {
|
|
244
|
-
|
|
199
|
+
this.setState({
|
|
245
200
|
dialog: {
|
|
246
201
|
open: true,
|
|
247
202
|
title: 'Warning',
|
|
248
|
-
text:
|
|
249
|
-
onConfirm:
|
|
250
|
-
return _this.handleAlertDialog(false);
|
|
251
|
-
}
|
|
203
|
+
text: 'Please add Line A to the graph before adding Line B',
|
|
204
|
+
onConfirm: () => this.handleAlertDialog(false)
|
|
252
205
|
}
|
|
253
206
|
});
|
|
254
|
-
|
|
255
207
|
gssData.selectedTool = 'lineA';
|
|
256
208
|
}
|
|
257
|
-
|
|
258
209
|
if (gssData.selectedTool === 'lineA' && session.answer.length > 1 && session.answer[1].building) {
|
|
259
|
-
|
|
210
|
+
this.setState({
|
|
260
211
|
dialog: {
|
|
261
212
|
open: true,
|
|
262
213
|
title: 'Warning',
|
|
263
|
-
text:
|
|
264
|
-
onConfirm:
|
|
265
|
-
return _this.handleAlertDialog(false);
|
|
266
|
-
}
|
|
214
|
+
text: 'Please add Line B to the graph before switching to Line A',
|
|
215
|
+
onConfirm: () => this.handleAlertDialog(false)
|
|
267
216
|
}
|
|
268
217
|
});
|
|
269
|
-
|
|
270
218
|
gssData.selectedTool = 'lineB';
|
|
271
219
|
}
|
|
272
|
-
|
|
273
220
|
setGssData(gssData, session);
|
|
274
221
|
});
|
|
275
|
-
return _this;
|
|
276
222
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
open: dialog.open,
|
|
403
|
-
title: dialog.title,
|
|
404
|
-
text: dialog.text,
|
|
405
|
-
onClose: dialog.onClose,
|
|
406
|
-
onConfirm: dialog.onConfirm,
|
|
407
|
-
onConfirmText: dialog.onConfirmText ? dialog.onConfirmText : 'OK'
|
|
408
|
-
}));
|
|
409
|
-
}
|
|
410
|
-
}]);
|
|
411
|
-
return Main;
|
|
412
|
-
}(_react["default"].Component);
|
|
413
|
-
|
|
223
|
+
/*
|
|
224
|
+
* Render the component
|
|
225
|
+
* */
|
|
226
|
+
render() {
|
|
227
|
+
const {
|
|
228
|
+
model,
|
|
229
|
+
onAnswersChange,
|
|
230
|
+
session
|
|
231
|
+
} = this.props;
|
|
232
|
+
const {
|
|
233
|
+
showingCorrect,
|
|
234
|
+
dialog
|
|
235
|
+
} = this.state;
|
|
236
|
+
const {
|
|
237
|
+
answer
|
|
238
|
+
} = session || {};
|
|
239
|
+
const {
|
|
240
|
+
answersCorrected,
|
|
241
|
+
arrows,
|
|
242
|
+
coordinatesOnHover,
|
|
243
|
+
correctResponse,
|
|
244
|
+
defaultTool,
|
|
245
|
+
disabled,
|
|
246
|
+
domain,
|
|
247
|
+
extraCSSRules,
|
|
248
|
+
labels,
|
|
249
|
+
labelsEnabled,
|
|
250
|
+
prompt,
|
|
251
|
+
range,
|
|
252
|
+
rationale,
|
|
253
|
+
size,
|
|
254
|
+
showToggle,
|
|
255
|
+
title,
|
|
256
|
+
titleEnabled,
|
|
257
|
+
teacherInstructions,
|
|
258
|
+
language,
|
|
259
|
+
gssLineData,
|
|
260
|
+
gssData
|
|
261
|
+
} = model || {};
|
|
262
|
+
const marks = answersCorrected || answer || [];
|
|
263
|
+
const showRationale = model.rationale && ((0, _renderUi.hasText)(model.rationale) || (0, _renderUi.hasMedia)(model.rationale));
|
|
264
|
+
const showTeacherInstructions = model.teacherInstructions && ((0, _renderUi.hasText)(model.teacherInstructions) || (0, _renderUi.hasMedia)(model.teacherInstructions));
|
|
265
|
+
return /*#__PURE__*/_react.default.createElement(MainContainer, {
|
|
266
|
+
extraCSSRules: extraCSSRules
|
|
267
|
+
}, showTeacherInstructions && /*#__PURE__*/_react.default.createElement(TeacherInstructions, {
|
|
268
|
+
labels: {
|
|
269
|
+
hidden: 'Show Teacher Instructions',
|
|
270
|
+
visible: 'Hide Teacher Instructions'
|
|
271
|
+
}
|
|
272
|
+
}, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
|
|
273
|
+
prompt: teacherInstructions
|
|
274
|
+
})), prompt && /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
|
|
275
|
+
className: "prompt",
|
|
276
|
+
prompt: prompt
|
|
277
|
+
}), /*#__PURE__*/_react.default.createElement(_correctAnswerToggle.default, {
|
|
278
|
+
show: showToggle,
|
|
279
|
+
toggled: showingCorrect,
|
|
280
|
+
onToggle: this.toggleCorrect,
|
|
281
|
+
language: language
|
|
282
|
+
}), showingCorrect && showToggle ? /*#__PURE__*/_react.default.createElement(Graph, {
|
|
283
|
+
axesSettings: {
|
|
284
|
+
includeArrows: arrows
|
|
285
|
+
},
|
|
286
|
+
coordinatesOnHover: coordinatesOnHover,
|
|
287
|
+
disabled: true,
|
|
288
|
+
disabledLabels: true,
|
|
289
|
+
disabledTitle: true,
|
|
290
|
+
domain: domain,
|
|
291
|
+
labels: labels,
|
|
292
|
+
marks: correctResponse.map(i => ({
|
|
293
|
+
...i,
|
|
294
|
+
correctness: 'correct'
|
|
295
|
+
})),
|
|
296
|
+
onChangeMarks: onAnswersChange,
|
|
297
|
+
range: range,
|
|
298
|
+
showLabels: labelsEnabled,
|
|
299
|
+
showTitle: titleEnabled,
|
|
300
|
+
size: size,
|
|
301
|
+
title: title,
|
|
302
|
+
language: language,
|
|
303
|
+
gssLineData: gssLineData,
|
|
304
|
+
onChangeGssLineData: this.onChangeGssLineData,
|
|
305
|
+
onSolutionSetSelected: this.onSolutionSetSelected,
|
|
306
|
+
toolbarTools: ['line', 'polygon']
|
|
307
|
+
}) : /*#__PURE__*/_react.default.createElement(Graph, {
|
|
308
|
+
axesSettings: {
|
|
309
|
+
includeArrows: arrows
|
|
310
|
+
},
|
|
311
|
+
coordinatesOnHover: coordinatesOnHover,
|
|
312
|
+
defaultTool: defaultTool,
|
|
313
|
+
disabled: disabled,
|
|
314
|
+
disabledLabels: true,
|
|
315
|
+
disabledTitle: true,
|
|
316
|
+
domain: domain,
|
|
317
|
+
labels: labels,
|
|
318
|
+
marks: marks,
|
|
319
|
+
onChangeMarks: onAnswersChange,
|
|
320
|
+
onCustomReset: this.onResetClick,
|
|
321
|
+
range: range,
|
|
322
|
+
showLabels: labelsEnabled,
|
|
323
|
+
showTitle: titleEnabled,
|
|
324
|
+
size: size,
|
|
325
|
+
title: title,
|
|
326
|
+
language: language,
|
|
327
|
+
gssLineData: gssData,
|
|
328
|
+
onChangeGssLineData: this.onChangeGssLineData,
|
|
329
|
+
onSolutionSetSelected: this.onSolutionSetSelected,
|
|
330
|
+
toolbarTools: ['line', 'polygon']
|
|
331
|
+
}), showRationale && /*#__PURE__*/_react.default.createElement(_renderUi.Collapsible, {
|
|
332
|
+
labels: {
|
|
333
|
+
hidden: 'Show Rationale',
|
|
334
|
+
visible: 'Hide Rationale'
|
|
335
|
+
}
|
|
336
|
+
}, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
|
|
337
|
+
prompt: rationale
|
|
338
|
+
})), /*#__PURE__*/_react.default.createElement(_configUi.AlertDialog, {
|
|
339
|
+
open: dialog.open,
|
|
340
|
+
title: dialog.title,
|
|
341
|
+
text: dialog.text,
|
|
342
|
+
onClose: dialog.onClose,
|
|
343
|
+
onConfirm: dialog.onConfirm,
|
|
344
|
+
onConfirmText: dialog.onConfirmText ? dialog.onConfirmText : 'OK'
|
|
345
|
+
}));
|
|
346
|
+
}
|
|
347
|
+
}
|
|
414
348
|
exports.Main = Main;
|
|
415
|
-
(0, _defineProperty2
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
onAnswersChange: _propTypes["default"].func
|
|
420
|
-
});
|
|
421
|
-
(0, _defineProperty2["default"])(Main, "defaultProps", {
|
|
422
|
-
classes: {}
|
|
349
|
+
(0, _defineProperty2.default)(Main, "propTypes", {
|
|
350
|
+
model: _propTypes.default.object.isRequired,
|
|
351
|
+
session: _propTypes.default.object.isRequired,
|
|
352
|
+
onAnswersChange: _propTypes.default.func
|
|
423
353
|
});
|
|
424
|
-
|
|
425
|
-
var styles = function styles(theme) {
|
|
426
|
-
return {
|
|
427
|
-
mainContainer: {
|
|
428
|
-
color: _renderUi.color.text(),
|
|
429
|
-
backgroundColor: _renderUi.color.background()
|
|
430
|
-
},
|
|
431
|
-
teacherInstructions: {
|
|
432
|
-
marginBottom: theme.spacing.unit * 2
|
|
433
|
-
},
|
|
434
|
-
graph: {
|
|
435
|
-
marginTop: theme.spacing.unit * 2,
|
|
436
|
-
marginBottom: theme.spacing.unit * 2
|
|
437
|
-
}
|
|
438
|
-
};
|
|
439
|
-
};
|
|
440
|
-
|
|
441
|
-
var _default = (0, _styles.withStyles)(styles)(Main);
|
|
442
|
-
|
|
443
|
-
exports["default"] = _default;
|
|
354
|
+
var _default = exports.default = Main;
|
|
444
355
|
//# sourceMappingURL=main.js.map
|