@pie-element/math-inline 7.1.0-next.1 → 7.1.1-next.8

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.
@@ -1,11 +0,0 @@
1
- {
2
- "hash": "394523898",
3
- "info": [
4
- {
5
- "pie": "@pie-element/math-inline",
6
- "version": {
7
- "requested": "latest"
8
- }
9
- }
10
- ]
11
- }
@@ -1,303 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
-
9
- var React = _interopRequireWildcard(require("react"));
10
-
11
- var _enzyme = require("enzyme");
12
-
13
- var _main = _interopRequireDefault(require("../main"));
14
-
15
- var _mathInput = require("@pie-lib/pie-toolbox/math-input");
16
-
17
- var _testUtils = require("@pie-lib/pie-toolbox/test-utils");
18
-
19
- var _renderUi = require("@pie-lib/pie-toolbox/render-ui");
20
-
21
- var _correctAnswerToggle = require("@pie-lib/pie-toolbox/correct-answer-toggle");
22
-
23
- var _simpleQuestionBlock = _interopRequireDefault(require("../simple-question-block"));
24
-
25
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
-
27
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
28
-
29
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
30
-
31
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
32
-
33
- var Mathquill = require('@pie-framework/mathquill');
34
-
35
- jest.mock('@pie-framework/mathquill', function () {
36
- return {
37
- StaticMath: jest.fn().mockReturnValue({
38
- latex: jest.fn()
39
- }),
40
- registerEmbed: jest.fn(),
41
- getInterface: jest.fn().mockReturnThis()
42
- };
43
- });
44
- describe('Math-Inline Main', function () {
45
- var defaultProps = {
46
- onSessionChange: jest.fn(),
47
- session: {},
48
- model: {
49
- id: '1',
50
- element: 'math-inline',
51
- correctness: {},
52
- config: {
53
- responseType: 'Advanced Multi',
54
- element: 'math-inline',
55
- question: '<p>The binomial <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>x</mi><mo>&#8722;</mo><mn>2</mn> </math> is a factor of the polynomial below.</p><p><span class="equation-block"><math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msup> <mi>x</mi> <mn>3</mn> </msup> <mo>+</mo><msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo><mi>n</mi><mi>x</mi><mo>+</mo><mn>10</mn> </math> </span></p><p>What is the value of <span class="variable">n</span>? Use the on-screen keyboard&#160;to type the correct answer in the box.</p>',
56
- expression: '\\text{A family sized box contains} {{response}} \\text{less than} {{response}} \\text{times the number }' + ' \\frac{3}{6}=\\frac{ {{response}} }{4} + \\frac{ {{response}} }{4}',
57
- equationEditor: 'miscellaneous',
58
- responses: [{
59
- validation: 'literal',
60
- answer: '\\frac{3}{6}=\\frac{1}{2}',
61
- alternates: {}
62
- }],
63
- feedback: {
64
- correct: {
65
- type: 'none',
66
- "default": 'Correct'
67
- },
68
- partial: {
69
- type: 'none',
70
- "default": 'Nearly'
71
- },
72
- incorrect: {
73
- type: 'none',
74
- "default": 'Incorrect'
75
- }
76
- },
77
- note: 'The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct.',
78
- customKeys: ['\\left(\\right)', '\\frac{}{}', 'x\\frac{}{}']
79
- }
80
- }
81
- };
82
- var wrapper;
83
- var component;
84
- beforeEach(function () {
85
- wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_main["default"], defaultProps));
86
- component = (0, _testUtils.shallowChild)(_main["default"], defaultProps, 1);
87
- });
88
- describe('render', function () {
89
- it('renders correctly with snapshot', function () {
90
- expect(wrapper).toMatchSnapshot();
91
- });
92
- it('renders correctly', function () {
93
- expect(wrapper.find(_correctAnswerToggle.CorrectAnswerToggle).length).toEqual(0);
94
- expect(wrapper.find(_renderUi.Feedback).length).toEqual(0);
95
- expect(wrapper.dive().state()).toEqual({
96
- activeAnswerBlock: '',
97
- session: {
98
- answers: {
99
- r1: {
100
- value: ''
101
- },
102
- r2: {
103
- value: ''
104
- },
105
- r3: {
106
- value: ''
107
- },
108
- r4: {
109
- value: ''
110
- }
111
- }
112
- },
113
- showCorrect: false
114
- });
115
- expect(Mathquill.getInterface().registerEmbed).toHaveBeenCalled();
116
- });
117
- });
118
- describe('logic', function () {
119
- it('prepares latex correctly and answer blocks and turns them into inputs', function () {
120
- expect(wrapper.dive().find(_mathInput.mq.Static).length).toEqual(1);
121
- expect(wrapper.dive().find(_mathInput.mq.Static).props().latex).toEqual('\\text{A family sized box contains} \\MathQuillMathField[r1]{} \\text{less than} \\MathQuillMathField[r2]{} \\text{times the number } \\frac{3}{6}=\\frac{ \\MathQuillMathField[r3]{} }{4} + \\frac{ \\MathQuillMathField[r4]{} }{4}');
122
- });
123
- it('correctly renders simple interaction in case of simple mode', function () {
124
- expect(wrapper.dive().find(_mathInput.mq.Static).length).toEqual(1);
125
- expect(wrapper.dive().find(_simpleQuestionBlock["default"]).length).toEqual(0);
126
-
127
- var simpleProps = _objectSpread({}, defaultProps);
128
-
129
- simpleProps.model.config.responseType = 'Simple';
130
- wrapper.setProps(simpleProps);
131
- expect(wrapper.dive().find(_mathInput.mq.Static).length).toEqual(0);
132
- expect(wrapper.dive().find(_simpleQuestionBlock["default"]).length).toEqual(1);
133
- });
134
- it('correctly shows the keypad', function () {
135
- wrapper = component();
136
- expect(wrapper.find(_mathInput.HorizontalKeypad).length).toEqual(0);
137
- wrapper.instance().onSubFieldFocus('r1');
138
- expect(wrapper.state()).toEqual({
139
- activeAnswerBlock: 'r1',
140
- session: {
141
- answers: {
142
- r1: {
143
- value: ''
144
- },
145
- r2: {
146
- value: ''
147
- },
148
- r3: {
149
- value: ''
150
- },
151
- r4: {
152
- value: ''
153
- }
154
- }
155
- },
156
- showCorrect: false
157
- });
158
- });
159
- it('correctly keeps the keypad open', function () {
160
- wrapper = component();
161
- expect(wrapper.find(_mathInput.HorizontalKeypad).length).toEqual(0);
162
- wrapper.instance().onSubFieldFocus('r1');
163
- wrapper.instance().onBlur({
164
- relatedTarget: {
165
- offsetParent: {
166
- children: [{
167
- attributes: {
168
- 'data-keypad': true
169
- }
170
- }]
171
- }
172
- },
173
- currentTarget: {
174
- offsetParent: 'editor1'
175
- }
176
- });
177
- expect(wrapper.state().activeAnswerBlock).toEqual('r1');
178
- });
179
- it('correctly hides the keypad', function () {
180
- wrapper = component();
181
- expect(wrapper.find(_mathInput.HorizontalKeypad).length).toEqual(0);
182
- wrapper.instance().onBlur({
183
- relatedTarget: {
184
- offsetParent: {
185
- children: [{
186
- attributes: {
187
- 'data-keypad': false
188
- }
189
- }]
190
- }
191
- },
192
- currentTarget: {
193
- offsetParent: 'editor2'
194
- }
195
- });
196
- expect(wrapper.state().activeAnswerBlock).toEqual('');
197
- });
198
- it('correctly pre-populates answers from session', function () {
199
- wrapper = component({
200
- session: {
201
- answers: {
202
- r1: {
203
- value: '\\frac{n-5}{6}'
204
- }
205
- }
206
- }
207
- });
208
- expect(wrapper.state()).toEqual({
209
- activeAnswerBlock: '',
210
- session: {
211
- answers: {
212
- r1: {
213
- value: '\\frac{n-5}{6}'
214
- },
215
- r2: {
216
- value: ''
217
- },
218
- r3: {
219
- value: ''
220
- },
221
- r4: {
222
- value: ''
223
- }
224
- }
225
- },
226
- showCorrect: false
227
- });
228
- });
229
- it('correctly updates session in case of model change', function () {
230
- wrapper = component();
231
- wrapper.instance().subFieldChanged('r1', 'value');
232
- expect(wrapper.state()).toEqual({
233
- activeAnswerBlock: '',
234
- session: {
235
- answers: {
236
- r1: {
237
- value: 'value'
238
- },
239
- r2: {
240
- value: ''
241
- },
242
- r3: {
243
- value: ''
244
- },
245
- r4: {
246
- value: ''
247
- }
248
- }
249
- },
250
- showCorrect: false
251
- });
252
- });
253
- it('correctly updates session in case of subfield change', function () {
254
- wrapper = component();
255
- expect(wrapper.state()).toEqual({
256
- activeAnswerBlock: '',
257
- session: {
258
- answers: {
259
- r1: {
260
- value: ''
261
- },
262
- r2: {
263
- value: ''
264
- },
265
- r3: {
266
- value: ''
267
- },
268
- r4: {
269
- value: ''
270
- }
271
- }
272
- },
273
- showCorrect: false
274
- });
275
-
276
- var newProps = _objectSpread({}, defaultProps);
277
-
278
- newProps.model.config.expression = defaultProps.model.config.expression + ' {{response}}';
279
- wrapper.setProps(newProps);
280
- expect(wrapper.state()).toEqual({
281
- activeAnswerBlock: '',
282
- session: {
283
- answers: {
284
- r1: {
285
- value: ''
286
- },
287
- r2: {
288
- value: ''
289
- },
290
- r3: {
291
- value: ''
292
- },
293
- r4: {
294
- value: ''
295
- }
296
- }
297
- },
298
- showCorrect: false
299
- });
300
- });
301
- });
302
- });
303
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vbWFpbi50ZXN0LmpzIl0sIm5hbWVzIjpbIk1hdGhxdWlsbCIsInJlcXVpcmUiLCJqZXN0IiwibW9jayIsIlN0YXRpY01hdGgiLCJmbiIsIm1vY2tSZXR1cm5WYWx1ZSIsImxhdGV4IiwicmVnaXN0ZXJFbWJlZCIsImdldEludGVyZmFjZSIsIm1vY2tSZXR1cm5UaGlzIiwiZGVzY3JpYmUiLCJkZWZhdWx0UHJvcHMiLCJvblNlc3Npb25DaGFuZ2UiLCJzZXNzaW9uIiwibW9kZWwiLCJpZCIsImVsZW1lbnQiLCJjb3JyZWN0bmVzcyIsImNvbmZpZyIsInJlc3BvbnNlVHlwZSIsInF1ZXN0aW9uIiwiZXhwcmVzc2lvbiIsImVxdWF0aW9uRWRpdG9yIiwicmVzcG9uc2VzIiwidmFsaWRhdGlvbiIsImFuc3dlciIsImFsdGVybmF0ZXMiLCJmZWVkYmFjayIsImNvcnJlY3QiLCJ0eXBlIiwicGFydGlhbCIsImluY29ycmVjdCIsIm5vdGUiLCJjdXN0b21LZXlzIiwid3JhcHBlciIsImNvbXBvbmVudCIsImJlZm9yZUVhY2giLCJNYWluIiwiaXQiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiLCJmaW5kIiwiQ29ycmVjdEFuc3dlclRvZ2dsZSIsImxlbmd0aCIsInRvRXF1YWwiLCJGZWVkYmFjayIsImRpdmUiLCJzdGF0ZSIsImFjdGl2ZUFuc3dlckJsb2NrIiwiYW5zd2VycyIsInIxIiwidmFsdWUiLCJyMiIsInIzIiwicjQiLCJzaG93Q29ycmVjdCIsInRvSGF2ZUJlZW5DYWxsZWQiLCJtcSIsIlN0YXRpYyIsInByb3BzIiwiU2ltcGxlUXVlc3Rpb25CbG9jayIsInNpbXBsZVByb3BzIiwic2V0UHJvcHMiLCJIb3Jpem9udGFsS2V5cGFkIiwiaW5zdGFuY2UiLCJvblN1YkZpZWxkRm9jdXMiLCJvbkJsdXIiLCJyZWxhdGVkVGFyZ2V0Iiwib2Zmc2V0UGFyZW50IiwiY2hpbGRyZW4iLCJhdHRyaWJ1dGVzIiwiY3VycmVudFRh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RztBQUlQQyxZQUFBQSxFQUFFLEVBQUU7QUFDRkQsY0FBQUEsS0FBSyxFQUFFO0FBREwsYUFKRztBQU9QRSxZQUFBQSxFQUFFLEVBQUU7QUFDRkYsY0FBQUEsS0FBSyxFQUFFO0FBREwsYUFQRztBQVVQRyxZQUFBQSxFQUFFLEVBQUU7QUFDRkgsY0FBQUEsS0FBSyxFQUFFO0FBREw7QUFWRztBQURGLFNBRnFCO0FBa0I5QkksUUFBQUEsV0FBVyxFQUFFO0FBbEJpQixPQUFoQztBQW9CRCxLQWxEQyxDQUFGO0FBbURELEdBcExPLENBQVI7QUFxTEQsQ0EzUU8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHNoYWxsb3cgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IE1haW4gZnJvbSAnLi4vbWFpbic7XG5pbXBvcnQgeyBtcSwgSG9yaXpvbnRhbEtleXBhZCB9IGZyb20gJ0BwaWUtbGliL3BpZS10b29sYm94L21hdGgtaW5wdXQnO1xuaW1wb3J0IHsgc2hhbGxvd0NoaWxkIH0gZnJvbSAnQHBpZS1saWIvcGllLXRvb2xib3gvdGVzdC11dGlscyc7XG5pbXBvcnQgeyBGZWVkYmFjayB9IGZyb20gJ0BwaWUtbGliL3BpZS10b29sYm94L3JlbmRlci11aSc7XG5pbXBvcnQge0NvcnJlY3RBbnN3ZXJUb2dnbGV9IGZyb20gJ0BwaWUtbGliL3BpZS10b29sYm94L2NvcnJlY3QtYW5zd2VyLXRvZ2dsZSc7XG5pbXBvcnQgU2ltcGxlUXVlc3Rpb25CbG9jayBmcm9tICcuLi9zaW1wbGUtcXVlc3Rpb24tYmxvY2snO1xuXG5jb25zdCBNYXRocXVpbGwgPSByZXF1aXJlKCdAcGllLWZyYW1ld29yay9tYXRocXVpbGwnKTtcblxuamVzdC5tb2NrKCdAcGllLWZyYW1ld29yay9tYXRocXVpbGwnLCAoKSA9PiAoe1xuICBTdGF0aWNNYXRoOiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKHtcbiAgICBsYXRleDogamVzdC5mbigpLFxuICB9KSxcbiAgcmVnaXN0ZXJFbWJlZDogamVzdC5mbigpLFxuICBnZXRJbnRlcmZhY2U6IGplc3QuZm4oKS5tb2NrUmV0dXJuVGhpcygpLFxufSkpO1xuXG5kZXNjcmliZSgnTWF0aC1JbmxpbmUgTWFpbicsICgpID0+IHtcbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIG9uU2Vzc2lvbkNoYW5nZTogamVzdC5mbigpLFxuICAgIHNlc3Npb246IHt9LFxuICAgIG1vZGVsOiB7XG4gICAgICBpZDogJzEnLFxuICAgICAgZWxlbWVudDogJ21hdGgtaW5saW5lJyxcbiAgICAgIGNvcnJlY3RuZXNzOiB7fSxcbiAgICAgIGNvbmZpZzoge1xuICAgICAgICByZXNwb25zZVR5cGU6ICdBZHZhbmNlZCBNdWx0aScsXG4gICAgICAgIGVsZW1lbnQ6ICdtYXRoLWlubGluZScsXG4gICAgICAgIHF1ZXN0aW9uOlxuICAgICAgICAgICc8cD5UaGUgYmlub21pYWwgPG1hdGggeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MXCI+IDxtaT54PC9taT48bW8+JiM4NzIyOzwvbW8+PG1uPjI8L21uPiA8L21hdGg+IGlzIGEgZmFjdG9yIG9mIHRoZSBwb2x5bm9taWFsIGJlbG93LjwvcD48cD48c3BhbiBjbGFzcz1cImVxdWF0aW9uLWJsb2NrXCI+PG1hdGggeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MXCI+IDxtaT5mPC9taT48bW8gc3RyZXRjaHk9XCJmYWxzZVwiPig8L21vPjxtaT54PC9taT48bW8gc3RyZXRjaHk9XCJmYWxzZVwiPik8L21vPjxtbz49PC9tbz48bXN1cD4gPG1pPng8L21pPiA8bW4+MzwvbW4+IDwvbXN1cD4gPG1vPis8L21vPjxtc3VwPiA8bWk+eDwvbWk+IDxtbj4yPC9tbj4gPC9tc3VwPiA8bW8+KzwvbW8+PG1pPm48L21pPjxtaT54PC9taT48bW8+KzwvbW8+PG1uPjEwPC9tbj4gPC9tYXRoPiA8L3NwYW4+PC9wPjxwPldoYXQgaXMgdGhlIHZhbHVlIG9mIDxzcGFuIGNsYXNzPVwidmFyaWFibGVcIj5uPC9zcGFuPj8gVXNlIHRoZSBvbi1zY3JlZW4ga2V5Ym9hcmQmIzE2MDt0byB0eXBlIHRoZSBjb3JyZWN0IGFuc3dlciBpbiB0aGUgYm94LjwvcD4nLFxuICAgICAgICBleHByZXNzaW9uOlxuICAgICAgICAgICdcXFxcdGV4dHtBIGZhbWlseSBzaXplZCBib3ggY29udGFpbnN9IHt7cmVzcG9uc2V9fSBcXFxcdGV4dHtsZXNzIHRoYW59IHt7cmVzcG9uc2V9fSBcXFxcdGV4dHt0aW1lcyB0aGUgbnVtYmVyICB9JyArXG4gICAgICAgICAgJyAgXFxcXGZyYWN7M317Nn09XFxcXGZyYWN7IHt7cmVzcG9uc2V9fSB9ezR9ICsgXFxcXGZyYWN7IHt7cmVzcG9uc2V9fSB9ezR9JyxcbiAgICAgICAgZXF1YXRpb25FZGl0b3I6ICdtaXNjZWxsYW5lb3VzJyxcbiAgICAgICAgcmVzcG9uc2VzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdmFsaWRhdGlvbjogJ2xpdGVyYWwnLFxuICAgICAgICAgICAgYW5zd2VyOiAnXFxcXGZyYWN7M317Nn09XFxcXGZyYWN7MX17Mn0nLFxuICAgICAgICAgICAgYWx0ZXJuYXRlczoge30sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZmVlZGJhY2s6IHtcbiAgICAgICAgICBjb3JyZWN0OiB7XG4gICAgICAgICAgICB0eXBlOiAnbm9uZScsXG4gICAgICAgICAgICBkZWZhdWx0OiAnQ29ycmVjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwYXJ0aWFsOiB7XG4gICAgICAgICAgICB0eXBlOiAnbm9uZScsXG4gICAgICAgICAgICBkZWZhdWx0OiAnTmVhcmx5JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGluY29ycmVjdDoge1xuICAgICAgICAgICAgdHlwZTogJ25vbmUnLFxuICAgICAgICAgICAgZGVmYXVsdDogJ0luY29ycmVjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbm90ZTogJ1RoZSBhbnN3ZXIgc2hvd24gYWJvdmUgaXMgdGhlIHByaW1hcnkgY29ycmVjdCBhbnN3ZXIgc3BlY2lmaWVkIGJ5IHRoZSBhdXRob3IgZm9yIHRoaXMgaXRlbSwgYnV0IG90aGVyIGFuc3dlcnMgbWF5IGFsc28gYmUgcmVjb2duaXplZCBhcyBjb3JyZWN0LicsXG4gICAgICAgIGN1c3RvbUtleXM6IFsnXFxcXGxlZnQoXFxcXHJpZ2h0KScsICdcXFxcZnJhY3t9e30nLCAneFxcXFxmcmFje317fSddLFxuICAgICAgfSxcbiAgICB9LFxuICB9O1xuXG4gIGxldCB3cmFwcGVyO1xuICBsZXQgY29tcG9uZW50O1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIHdyYXBwZXIgPSBzaGFsbG93KDxNYWluIHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBjb21wb25lbnQgPSBzaGFsbG93Q2hpbGQoTWFpbiwgZGVmYXVsdFByb3BzLCAxKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBzbmFwc2hvdCcsICgpID0+IHtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseScsICgpID0+IHtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLmZpbmQoQ29ycmVjdEFuc3dlclRvZ2dsZSkubGVuZ3RoKS50b0VxdWFsKDApO1xuICAgICAgZXhwZWN0KHdyYXBwZXIuZmluZChGZWVkYmFjaykubGVuZ3RoKS50b0VxdWFsKDApO1xuXG4gICAgICBleHBlY3Qod3JhcHBlci5kaXZlKCkuc3RhdGUoKSkudG9FcXVhbCh7XG4gICAgICAgIGFjdGl2ZUFuc3dlckJsb2NrOiAnJyxcbiAgICAgICAgc2Vzc2lvbjoge1xuICAgICAgICAgIGFuc3dlcnM6IHtcbiAgICAgICAgICAgIHIxOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByMjoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjM6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHI0OiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0NvcnJlY3Q6IGZhbHNlLFxuICAgICAgfSk7XG5cbiAgICAgIGV4cGVjdChNYXRocXVpbGwuZ2V0SW50ZXJmYWNlKCkucmVnaXN0ZXJFbWJlZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnbG9naWMnLCAoKSA9PiB7XG4gICAgaXQoJ3ByZXBhcmVzIGxhdGV4IGNvcnJlY3RseSBhbmQgYW5zd2VyIGJsb2NrcyBhbmQgdHVybnMgdGhlbSBpbnRvIGlucHV0cycsICgpID0+IHtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLmRpdmUoKS5maW5kKG1xLlN0YXRpYykubGVuZ3RoKS50b0VxdWFsKDEpO1xuICAgICAgZXhwZWN0KHdyYXBwZXIuZGl2ZSgpLmZpbmQobXEuU3RhdGljKS5wcm9wcygpLmxhdGV4KS50b0VxdWFsKFxuICAgICAgICAnXFxcXHRleHR7QSBmYW1pbHkgc2l6ZWQgYm94IGNvbnRhaW5zfSBcXFxcTWF0aFF1aWxsTWF0aEZpZWxkW3IxXXt9IFxcXFx0ZXh0e2xlc3MgdGhhbn0gXFxcXE1hdGhRdWlsbE1hdGhGaWVsZFtyMl17fSBcXFxcdGV4dHt0aW1lcyB0aGUgbnVtYmVyICB9ICBcXFxcZnJhY3szfXs2fT1cXFxcZnJhY3sgXFxcXE1hdGhRdWlsbE1hdGhGaWVsZFtyM117fSB9ezR9ICsgXFxcXGZyYWN7IFxcXFxNYXRoUXVpbGxNYXRoRmllbGRbcjRde30gfXs0fScsXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NvcnJlY3RseSByZW5kZXJzIHNpbXBsZSBpbnRlcmFjdGlvbiBpbiBjYXNlIG9mIHNpbXBsZSBtb2RlJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIuZGl2ZSgpLmZpbmQobXEuU3RhdGljKS5sZW5ndGgpLnRvRXF1YWwoMSk7XG4gICAgICBleHBlY3Qod3JhcHBlci5kaXZlKCkuZmluZChTaW1wbGVRdWVzdGlvbkJsb2NrKS5sZW5ndGgpLnRvRXF1YWwoMCk7XG5cbiAgICAgIGNvbnN0IHNpbXBsZVByb3BzID0geyAuLi5kZWZhdWx0UHJvcHMgfTtcbiAgICAgIHNpbXBsZVByb3BzLm1vZGVsLmNvbmZpZy5yZXNwb25zZVR5cGUgPSAnU2ltcGxlJztcblxuICAgICAgd3JhcHBlci5zZXRQcm9wcyhzaW1wbGVQcm9wcyk7XG5cbiAgICAgIGV4cGVjdCh3cmFwcGVyLmRpdmUoKS5maW5kKG1xLlN0YXRpYykubGVuZ3RoKS50b0VxdWFsKDApO1xuICAgICAgZXhwZWN0KHdyYXBwZXIuZGl2ZSgpLmZpbmQoU2ltcGxlUXVlc3Rpb25CbG9jaykubGVuZ3RoKS50b0VxdWFsKDEpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NvcnJlY3RseSBzaG93cyB0aGUga2V5cGFkJywgKCkgPT4ge1xuICAgICAgd3JhcHBlciA9IGNvbXBvbmVudCgpO1xuXG4gICAgICBleHBlY3Qod3JhcHBlci5maW5kKEhvcml6b250YWxLZXlwYWQpLmxlbmd0aCkudG9FcXVhbCgwKTtcbiAgICAgIHdyYXBwZXIuaW5zdGFuY2UoKS5vblN1YkZpZWxkRm9jdXMoJ3IxJyk7XG4gICAgICBleHBlY3Qod3JhcHBlci5zdGF0ZSgpKS50b0VxdWFsKHtcbiAgICAgICAgYWN0aXZlQW5zd2VyQmxvY2s6ICdyMScsXG4gICAgICAgIHNlc3Npb246IHtcbiAgICAgICAgICBhbnN3ZXJzOiB7XG4gICAgICAgICAgICByMToge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjI6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHIzOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByNDoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHNob3dDb3JyZWN0OiBmYWxzZSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NvcnJlY3RseSBrZWVwcyB0aGUga2V5cGFkIG9wZW4nLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyID0gY29tcG9uZW50KCk7XG5cbiAgICAgIGV4cGVjdCh3cmFwcGVyLmZpbmQoSG9yaXpvbnRhbEtleXBhZCkubGVuZ3RoKS50b0VxdWFsKDApO1xuICAgICAgd3JhcHBlci5pbnN0YW5jZSgpLm9uU3ViRmllbGRGb2N1cygncjEnKTtcbiAgICAgIHdyYXBwZXIuaW5zdGFuY2UoKS5vbkJsdXIoe1xuICAgICAgICByZWxhdGVkVGFyZ2V0OiB7IG9mZnNldFBhcmVudDogeyBjaGlsZHJlbjogW3sgYXR0cmlidXRlczogeyAnZGF0YS1rZXlwYWQnOiB0cnVlIH0gfV0gfSB9LFxuICAgICAgICBjdXJyZW50VGFyZ2V0OiB7IG9mZnNldFBhcmVudDogJ2VkaXRvcjEnIH0sXG4gICAgICB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLnN0YXRlKCkuYWN0aXZlQW5zd2VyQmxvY2spLnRvRXF1YWwoJ3IxJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnY29ycmVjdGx5IGhpZGVzIHRoZSBrZXlwYWQnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyID0gY29tcG9uZW50KCk7XG5cbiAgICAgIGV4cGVjdCh3cmFwcGVyLmZpbmQoSG9yaXpvbnRhbEtleXBhZCkubGVuZ3RoKS50b0VxdWFsKDApO1xuICAgICAgd3JhcHBlci5pbnN0YW5jZSgpLm9uQmx1cih7XG4gICAgICAgIHJlbGF0ZWRUYXJnZXQ6IHsgb2Zmc2V0UGFyZW50OiB7IGNoaWxkcmVuOiBbeyBhdHRyaWJ1dGVzOiB7ICdkYXRhLWtleXBhZCc6IGZhbHNlIH0gfV0gfSB9LFxuICAgICAgICBjdXJyZW50VGFyZ2V0OiB7IG9mZnNldFBhcmVudDogJ2VkaXRvcjInIH0sXG4gICAgICB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLnN0YXRlKCkuYWN0aXZlQW5zd2VyQmxvY2spLnRvRXF1YWwoJycpO1xuICAgIH0pO1xuXG4gICAgaXQoJ2NvcnJlY3RseSBwcmUtcG9wdWxhdGVzIGFuc3dlcnMgZnJvbSBzZXNzaW9uJywgKCkgPT4ge1xuICAgICAgd3JhcHBlciA9IGNvbXBvbmVudCh7XG4gICAgICAgIHNlc3Npb246IHtcbiAgICAgICAgICBhbnN3ZXJzOiB7XG4gICAgICAgICAgICByMToge1xuICAgICAgICAgICAgICB2YWx1ZTogJ1xcXFxmcmFje24tNX17Nn0nLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBleHBlY3Qod3JhcHBlci5zdGF0ZSgpKS50b0VxdWFsKHtcbiAgICAgICAgYWN0aXZlQW5zd2VyQmxvY2s6ICcnLFxuICAgICAgICBzZXNzaW9uOiB7XG4gICAgICAgICAgYW5zd2Vyczoge1xuICAgICAgICAgICAgcjE6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICdcXFxcZnJhY3tuLTV9ezZ9JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByMjoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjM6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHI0OiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0NvcnJlY3Q6IGZhbHNlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnY29ycmVjdGx5IHVwZGF0ZXMgc2Vzc2lvbiBpbiBjYXNlIG9mIG1vZGVsIGNoYW5nZScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIgPSBjb21wb25lbnQoKTtcblxuICAgICAgd3JhcHBlci5pbnN0YW5jZSgpLnN1YkZpZWxkQ2hhbmdlZCgncjEnLCAndmFsdWUnKTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyLnN0YXRlKCkpLnRvRXF1YWwoe1xuICAgICAgICBhY3RpdmVBbnN3ZXJCbG9jazogJycsXG4gICAgICAgIHNlc3Npb246IHtcbiAgICAgICAgICBhbnN3ZXJzOiB7XG4gICAgICAgICAgICByMToge1xuICAgICAgICAgICAgICB2YWx1ZTogJ3ZhbHVlJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByMjoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjM6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHI0OiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0NvcnJlY3Q6IGZhbHNlLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnY29ycmVjdGx5IHVwZGF0ZXMgc2Vzc2lvbiBpbiBjYXNlIG9mIHN1YmZpZWxkIGNoYW5nZScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIgPSBjb21wb25lbnQoKTtcblxuICAgICAgZXhwZWN0KHdyYXBwZXIuc3RhdGUoKSkudG9FcXVhbCh7XG4gICAgICAgIGFjdGl2ZUFuc3dlckJsb2NrOiAnJyxcbiAgICAgICAgc2Vzc2lvbjoge1xuICAgICAgICAgIGFuc3dlcnM6IHtcbiAgICAgICAgICAgIHIxOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByMjoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjM6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHI0OiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgc2hvd0NvcnJlY3Q6IGZhbHNlLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IG5ld1Byb3BzID0geyAuLi5kZWZhdWx0UHJvcHMgfTtcblxuICAgICAgbmV3UHJvcHMubW9kZWwuY29uZmlnLmV4cHJlc3Npb24gPSBkZWZhdWx0UHJvcHMubW9kZWwuY29uZmlnLmV4cHJlc3Npb24gKyAnIHt7cmVzcG9uc2V9fSc7XG5cbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMobmV3UHJvcHMpO1xuXG4gICAgICBleHBlY3Qod3JhcHBlci5zdGF0ZSgpKS50b0VxdWFsKHtcbiAgICAgICAgYWN0aXZlQW5zd2VyQmxvY2s6ICcnLFxuICAgICAgICBzZXNzaW9uOiB7XG4gICAgICAgICAgYW5zd2Vyczoge1xuICAgICAgICAgICAgcjE6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHIyOiB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByMzoge1xuICAgICAgICAgICAgICB2YWx1ZTogJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcjQ6IHtcbiAgICAgICAgICAgICAgdmFsdWU6ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBzaG93Q29ycmVjdDogZmFsc2UsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
@@ -1,115 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
-
9
- var React = _interopRequireWildcard(require("react"));
10
-
11
- var _mathInput = require("@pie-lib/pie-toolbox/math-input");
12
-
13
- var _testUtils = require("@pie-lib/pie-toolbox/test-utils");
14
-
15
- var _mathToolbar = require("@pie-lib/pie-toolbox/math-toolbar");
16
-
17
- var _simpleQuestionBlock = _interopRequireDefault(require("../simple-question-block"));
18
-
19
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
20
-
21
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
-
23
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
24
-
25
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
26
-
27
- describe('SimpleQuestionBlock', function () {
28
- var defaultProps = {
29
- model: {
30
- config: {
31
- mode: 'advanced',
32
- feedback: {
33
- correct: {
34
- "default": 'Correct',
35
- type: 'none'
36
- },
37
- incorrect: {
38
- "default": 'Incorrect',
39
- type: 'none'
40
- },
41
- partial: {
42
- "default": 'Nearly',
43
- type: 'none'
44
- }
45
- },
46
- equationEditor: 'miscellaneous',
47
- expression: 'n = {\\embed{answerBlock}[answerBlock1]}',
48
- question: '<p>The binomial <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>x</mi><mo>&#8722;</mo><mn>2</mn> </math> is a factor of the polynomial below.</p><p><span class="equation-block"><math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msup> <mi>x</mi> <mn>3</mn> </msup> <mo>+</mo><msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo><mi>n</mi><mi>x</mi><mo>+</mo><mn>10</mn> </math> </span></p><p>What is the value of <span class="variable">n</span>? Use the on-screen keyboard&#160;to type the correct answer in the box.</p>',
49
- note: 'The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct.',
50
- responses: [{
51
- answer: 'n=-11',
52
- id: 'answerBlock1',
53
- alternates: {},
54
- validation: 'literal'
55
- }],
56
- response: {
57
- answer: 'n=-11',
58
- id: 'answerBlock1',
59
- alternates: {},
60
- validation: 'literal'
61
- }
62
- }
63
- },
64
- correctness: {},
65
- showCorrect: false,
66
- session: {
67
- response: 'sessionResponse'
68
- },
69
- onSimpleResponseChange: jest.fn()
70
- };
71
- var wrapper;
72
- var component;
73
- beforeEach(function () {
74
- wrapper = (0, _testUtils.shallowChild)(_simpleQuestionBlock["default"], defaultProps, 1);
75
- });
76
- it('renders correctly for not showing correct mode', function () {
77
- component = wrapper();
78
- expect(component.find(_mathInput.mq.Static).length).toEqual(0);
79
- expect(component.find(_mathToolbar.MathToolbar).length).toEqual(1);
80
- expect(component.find(_mathToolbar.MathToolbar).props().latex).toEqual('sessionResponse');
81
- });
82
- it('renders correctly for showing correct mode', function () {
83
- component = wrapper(_objectSpread(_objectSpread({}, defaultProps), {}, {
84
- showCorrect: true
85
- }));
86
- expect(component.find(_mathInput.mq.Static).length).toEqual(1);
87
- expect(component.find(_mathToolbar.MathToolbar).length).toEqual(0);
88
- expect(component.find(_mathInput.mq.Static).props().latex).toEqual('n=-11');
89
- });
90
- it('correctly keeps the keypad open', function () {
91
- component = wrapper();
92
- component.instance().onFocus();
93
- expect(component.state().showKeypad).toEqual(true); // hardcoded
94
-
95
- component.instance().mathToolBarContainsTarget = function () {
96
- return true;
97
- };
98
-
99
- component.instance().handleClick();
100
- expect(component.state().showKeypad).toEqual(true);
101
- });
102
- it('correctly hides the keypad', function () {
103
- component = wrapper();
104
- component.instance().onFocus();
105
- expect(component.state().showKeypad).toEqual(true); // hardcoded
106
-
107
- component.instance().mathToolBarContainsTarget = function () {
108
- return false;
109
- };
110
-
111
- component.instance().handleClick();
112
- expect(component.state().showKeypad).toEqual(false);
113
- });
114
- });
115
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vc2ltcGxlLXF1ZXN0aW9uLWJsb2NrLnRlc3QuanMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJkZWZhdWx0UHJvcHMiLCJtb2RlbCIsImNvbmZpZyIsIm1vZGUiLCJmZWVkYmFjayIsImNvcnJlY3QiLCJ0eXBlIiwiaW5jb3JyZWN0IiwicGFydGlhbCIsImVxdWF0aW9uRWRpdG9yIiwiZXhwcmVzc2lvbiIsInF1ZXN0aW9uIiwibm90ZSIsInJlc3BvbnNlcyIsImFuc3dlciIsImlkIiwiYWx0ZXJuYXRlcyIsInZhbGlkYXRpb24iLCJyZXNwb25zZSIsImNvcnJlY3RuZXNzIiwic2hvd0NvcnJlY3QiLCJzZXNzaW9uIiwib25TaW1wbGVSZXNwb25zZUNoYW5nZSIsImplc3QiLCJmbiIsIndyYXBwZXIiLCJjb21wb25lbnQiLCJiZWZvcmVFYWNoIiwiU2ltcGxlUXVlc3Rpb25CbG9jayIsIml0IiwiZXhwZWN0IiwiZmluZCIsIm1xIiwiU3RhdGljIiwibGVuZ3RoIiwidG9FcXVhbCIsIk1hdGhUb29sYmFyIiwicHJvcHMiLCJsYXRleCIsImluc3RhbmNlIiwib25Gb2N1cyIsInN0YXRlIiwic2hvd0tleXBhZCIsIm1hdGhUb29sQmFyQ29udGFpbnNUYXJnZXQiLCJoYW5kbGVDbGljayJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQUVBQSxRQUFRLENBQUMscUJBQUQsRUFBd0IsWUFBTTtBQUNwQyxNQUFNQyxZQUFZLEdBQUc7QUFDbkJDLElBQUFBLEtBQUssRUFBRTtBQUNMQyxNQUFBQSxNQUFNLEVBQUU7QUFDTkMsUUFBQUEsSUFBSSxFQUFFLFVBREE7QUFFTkMsUUFBQUEsUUFBUSxFQUFFO0FBQ1JDLFVBQUFBLE9BQU8sRUFBRTtBQUNQLHVCQUFTLFNBREY7QUFFUEMsWUFBQUEsSUFBSSxFQUFFO0FBRkMsV0FERDtBQUtSQyxVQUFBQSxTQUFTLEVBQUU7QUFDVCx1QkFBUyxXQURBO0FBRVRELFlBQUFBLElBQUksRUFBRTtBQUZHLFdBTEg7QUFTUkUsVUFBQUEsT0FBTyxFQUFFO0FBQ1AsdUJBQVMsUUFERjtBQUVQRixZQUFBQSxJQUFJLEVBQUU7QUFGQztBQVRELFNBRko7QUFnQk5HLFFBQUFBLGNBQWMsRUFBRSxlQWhCVjtBQWlCTkMsUUFBQUEsVUFBVSxFQUFFLDBDQWpCTjtBQWtCTkMsUUFBQUEsUUFBUSxFQUNOLDZsQkFuQkk7QUFvQk5DLFFBQUFBLElBQUksRUFBRSxrSkFwQkE7QUFxQk5DLFFBQUFBLFNBQVMsRUFBRSxDQUNUO0FBQ0VDLFVBQUFBLE1BQU0sRUFBRSxPQURWO0FBRUVDLFVBQUFBLEVBQUUsRUFBRSxjQUZOO0FBR0VDLFVBQUFBLFVBQVUsRUFBRSxFQUhkO0FBSUVDLFVBQUFBLFVBQVUsRUFBRTtBQUpkLFNBRFMsQ0FyQkw7QUE2Qk5DLFFBQUFBLFFBQVEsRUFBRTtBQUNSSixVQUFBQSxNQUFNLEVBQUUsT0FEQTtBQUVSQyxVQUFBQSxFQUFFLEVBQUUsY0FGSTtBQUdSQyxVQUFBQSxVQUFVLEVBQUUsRUFISjtBQUlSQyxVQUFBQSxVQUFVLEVBQUU7QUFKSjtBQTdCSjtBQURILEtBRFk7QUF1Q25CRSxJQUFBQSxXQUFXLEVBQUUsRUF2Q007QUF3Q25CQyxJQUFBQSxXQUFXLEVBQUUsS0F4Q007QUF5Q25CQyxJQUFBQSxPQUFPLEVBQUU7QUFDUEgsTUFBQUEsUUFBUSxFQUFFO0FBREgsS0F6Q1U7QUE0Q25CSSxJQUFBQSxzQkFBc0IsRUFBRUMsSUFBSSxDQUFDQyxFQUFMO0FBNUNMLEdBQXJCO0FBK0NBLE1BQUlDLE9BQUo7QUFDQSxNQUFJQyxTQUFKO0FBRUFDLEVBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2ZGLElBQUFBLE9BQU8sR0FBRyw2QkFBYUcsK0JBQWIsRUFBa0M1QixZQUFsQyxFQUFnRCxDQUFoRCxDQUFWO0FBQ0QsR0FGUyxDQUFWO0FBSUE2QixFQUFBQSxFQUFFLENBQUMsZ0RBQUQsRUFBbUQsWUFBTTtBQUN6REgsSUFBQUEsU0FBUyxHQUFHRCxPQUFPLEVBQW5CO0FBRUFLLElBQUFBLE1BQU0sQ0FBQ0osU0FBUyxDQUFDSyxJQUFWLENBQWVDLGNBQUdDLE1BQWxCLEVBQTBCQyxNQUEzQixDQUFOLENBQXlDQyxPQUF6QyxDQUFpRCxDQUFqRDtBQUNBTCxJQUFBQSxNQUFNLENBQUNKLFNBQVMsQ0FBQ0ssSUFBVixDQUFlSyx3QkFBZixFQUE0QkYsTUFBN0IsQ0FBTixDQUEyQ0MsT0FBM0MsQ0FBbUQsQ0FBbkQ7QUFDQUwsSUFBQUEsTUFBTSxDQUFDSixTQUFTLENBQUNLLElBQVYsQ0FBZUssd0JBQWYsRUFBNEJDLEtBQTVCLEdBQW9DQyxLQUFyQyxDQUFOLENBQWtESCxPQUFsRCxDQUEwRCxpQkFBMUQ7QUFDRCxHQU5DLENBQUY7QUFRQU4sRUFBQUEsRUFBRSxDQUFDLDRDQUFELEVBQStDLFlBQU07QUFDckRILElBQUFBLFNBQVMsR0FBR0QsT0FBTyxpQ0FBTXpCLFlBQU47QUFBb0JvQixNQUFBQSxXQUFXLEVBQUU7QUFBakMsT0FBbkI7QUFFQVUsSUFBQUEsTUFBTSxDQUFDSixTQUFTLENBQUNLLElBQVYsQ0FBZUMsY0FBR0MsTUFBbEIsRUFBMEJDLE1BQTNCLENBQU4sQ0FBeUNDLE9BQXpDLENBQWlELENBQWpEO0FBQ0FMLElBQUFBLE1BQU0sQ0FBQ0osU0FBUyxDQUFDSyxJQUFWLENBQWVLLHdCQUFmLEVBQTRCRixNQUE3QixDQUFOLENBQTJDQyxPQUEzQyxDQUFtRCxDQUFuRDtBQUNBTCxJQUFBQSxNQUFNLENBQUNKLFNBQVMsQ0FBQ0ssSUFBVixDQUFlQyxjQUFHQyxNQUFsQixFQUEwQkksS0FBMUIsR0FBa0NDLEtBQW5DLENBQU4sQ0FBZ0RILE9BQWhELENBQXdELE9BQXhEO0FBQ0QsR0FOQyxDQUFGO0FBUUFOLEVBQUFBLEVBQUUsQ0FBQyxpQ0FBRCxFQUFvQyxZQUFNO0FBQzFDSCxJQUFBQSxTQUFTLEdBQUdELE9BQU8sRUFBbkI7QUFFQUMsSUFBQUEsU0FBUyxDQUFDYSxRQUFWLEdBQXFCQyxPQUFyQjtBQUNBVixJQUFBQSxNQUFNLENBQUNKLFNBQVMsQ0FBQ2UsS0FBVixHQUFrQkMsVUFBbkIsQ0FBTixDQUFxQ1AsT0FBckMsQ0FBNkMsSUFBN0MsRUFKMEMsQ0FNMUM7O0FBQ0FULElBQUFBLFNBQVMsQ0FBQ2EsUUFBVixHQUFxQkkseUJBQXJCLEdBQWlEO0FBQUEsYUFBTSxJQUFOO0FBQUEsS0FBakQ7O0FBQ0FqQixJQUFBQSxTQUFTLENBQUNhLFFBQVYsR0FBcUJLLFdBQXJCO0FBRUFkLElBQUFBLE1BQU0sQ0FBQ0osU0FBUyxDQUFDZSxLQUFWLEdBQWtCQyxVQUFuQixDQUFOLENBQXFDUCxPQUFyQyxDQUE2QyxJQUE3QztBQUNELEdBWEMsQ0FBRjtBQWFBTixFQUFBQSxFQUFFLENBQUMsNEJBQUQsRUFBK0IsWUFBTTtBQUNyQ0gsSUFBQUEsU0FBUyxHQUFHRCxPQUFPLEVBQW5CO0FBRUFDLElBQUFBLFNBQVMsQ0FBQ2EsUUFBVixHQUFxQkMsT0FBckI7QUFDQVYsSUFBQUEsTUFBTSxDQUFDSixTQUFTLENBQUNlLEtBQVYsR0FBa0JDLFVBQW5CLENBQU4sQ0FBcUNQLE9BQXJDLENBQTZDLElBQTdDLEVBSnFDLENBTXJDOztBQUNBVCxJQUFBQSxTQUFTLENBQUNhLFFBQVYsR0FBcUJJLHlCQUFyQixHQUFpRDtBQUFBLGFBQU0sS0FBTjtBQUFBLEtBQWpEOztBQUNBakIsSUFBQUEsU0FBUyxDQUFDYSxRQUFWLEdBQXFCSyxXQUFyQjtBQUVBZCxJQUFBQSxNQUFNLENBQUNKLFNBQVMsQ0FBQ2UsS0FBVixHQUFrQkMsVUFBbkIsQ0FBTixDQUFxQ1AsT0FBckMsQ0FBNkMsS0FBN0M7QUFDRCxHQVhDLENBQUY7QUFZRCxDQWhHTyxDQUFSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgbXEgfSBmcm9tICdAcGllLWxpYi9waWUtdG9vbGJveC9tYXRoLWlucHV0JztcbmltcG9ydCB7IHNoYWxsb3dDaGlsZCB9IGZyb20gJ0BwaWUtbGliL3BpZS10b29sYm94L3Rlc3QtdXRpbHMnO1xuaW1wb3J0IHsgTWF0aFRvb2xiYXIgfSBmcm9tICdAcGllLWxpYi9waWUtdG9vbGJveC9tYXRoLXRvb2xiYXInO1xuaW1wb3J0IFNpbXBsZVF1ZXN0aW9uQmxvY2sgZnJvbSAnLi4vc2ltcGxlLXF1ZXN0aW9uLWJsb2NrJztcblxuZGVzY3JpYmUoJ1NpbXBsZVF1ZXN0aW9uQmxvY2snLCAoKSA9PiB7XG4gIGNvbnN0IGRlZmF1bHRQcm9wcyA9IHtcbiAgICBtb2RlbDoge1xuICAgICAgY29uZmlnOiB7XG4gICAgICAgIG1vZGU6ICdhZHZhbmNlZCcsXG4gICAgICAgIGZlZWRiYWNrOiB7XG4gICAgICAgICAgY29ycmVjdDoge1xuICAgICAgICAgICAgZGVmYXVsdDogJ0NvcnJlY3QnLFxuICAgICAgICAgICAgdHlwZTogJ25vbmUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgaW5jb3JyZWN0OiB7XG4gICAgICAgICAgICBkZWZhdWx0OiAnSW5jb3JyZWN0JyxcbiAgICAgICAgICAgIHR5cGU6ICdub25lJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBhcnRpYWw6IHtcbiAgICAgICAgICAgIGRlZmF1bHQ6ICdOZWFybHknLFxuICAgICAgICAgICAgdHlwZTogJ25vbmUnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGVxdWF0aW9uRWRpdG9yOiAnbWlzY2VsbGFuZW91cycsXG4gICAgICAgIGV4cHJlc3Npb246ICduID0ge1xcXFxlbWJlZHthbnN3ZXJCbG9ja31bYW5zd2VyQmxvY2sxXX0nLFxuICAgICAgICBxdWVzdGlvbjpcbiAgICAgICAgICAnPHA+VGhlIGJpbm9taWFsIDxtYXRoIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTFwiPiA8bWk+eDwvbWk+PG1vPiYjODcyMjs8L21vPjxtbj4yPC9tbj4gPC9tYXRoPiBpcyBhIGZhY3RvciBvZiB0aGUgcG9seW5vbWlhbCBiZWxvdy48L3A+PHA+PHNwYW4gY2xhc3M9XCJlcXVhdGlvbi1ibG9ja1wiPjxtYXRoIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTFwiPiA8bWk+ZjwvbWk+PG1vIHN0cmV0Y2h5PVwiZmFsc2VcIj4oPC9tbz48bWk+eDwvbWk+PG1vIHN0cmV0Y2h5PVwiZmFsc2VcIj4pPC9tbz48bW8+PTwvbW8+PG1zdXA+IDxtaT54PC9taT4gPG1uPjM8L21uPiA8L21zdXA+IDxtbz4rPC9tbz48bXN1cD4gPG1pPng8L21pPiA8bW4+MjwvbW4+IDwvbXN1cD4gPG1vPis8L21vPjxtaT5uPC9taT48bWk+eDwvbWk+PG1vPis8L21vPjxtbj4xMDwvbW4+IDwvbWF0aD4gPC9zcGFuPjwvcD48cD5XaGF0IGlzIHRoZSB2YWx1ZSBvZiA8c3BhbiBjbGFzcz1cInZhcmlhYmxlXCI+bjwvc3Bhbj4/IFVzZSB0aGUgb24tc2NyZWVuIGtleWJvYXJkJiMxNjA7dG8gdHlwZSB0aGUgY29ycmVjdCBhbnN3ZXIgaW4gdGhlIGJveC48L3A+JyxcbiAgICAgICAgbm90ZTogJ1RoZSBhbnN3ZXIgc2hvd24gYWJvdmUgaXMgdGhlIHByaW1hcnkgY29ycmVjdCBhbnN3ZXIgc3BlY2lmaWVkIGJ5IHRoZSBhdXRob3IgZm9yIHRoaXMgaXRlbSwgYnV0IG90aGVyIGFuc3dlcnMgbWF5IGFsc28gYmUgcmVjb2duaXplZCBhcyBjb3JyZWN0LicsXG4gICAgICAgIHJlc3BvbnNlczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGFuc3dlcjogJ249LTExJyxcbiAgICAgICAgICAgIGlkOiAnYW5zd2VyQmxvY2sxJyxcbiAgICAgICAgICAgIGFsdGVybmF0ZXM6IHt9LFxuICAgICAgICAgICAgdmFsaWRhdGlvbjogJ2xpdGVyYWwnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIHJlc3BvbnNlOiB7XG4gICAgICAgICAgYW5zd2VyOiAnbj0tMTEnLFxuICAgICAgICAgIGlkOiAnYW5zd2VyQmxvY2sxJyxcbiAgICAgICAgICBhbHRlcm5hdGVzOiB7fSxcbiAgICAgICAgICB2YWxpZGF0aW9uOiAnbGl0ZXJhbCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgY29ycmVjdG5lc3M6IHt9LFxuICAgIHNob3dDb3JyZWN0OiBmYWxzZSxcbiAgICBzZXNzaW9uOiB7XG4gICAgICByZXNwb25zZTogJ3Nlc3Npb25SZXNwb25zZScsXG4gICAgfSxcbiAgICBvblNpbXBsZVJlc3BvbnNlQ2hhbmdlOiBqZXN0LmZuKCksXG4gIH07XG5cbiAgbGV0IHdyYXBwZXI7XG4gIGxldCBjb21wb25lbnQ7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgd3JhcHBlciA9IHNoYWxsb3dDaGlsZChTaW1wbGVRdWVzdGlvbkJsb2NrLCBkZWZhdWx0UHJvcHMsIDEpO1xuICB9KTtcblxuICBpdCgncmVuZGVycyBjb3JyZWN0bHkgZm9yIG5vdCBzaG93aW5nIGNvcnJlY3QgbW9kZScsICgpID0+IHtcbiAgICBjb21wb25lbnQgPSB3cmFwcGVyKCk7XG5cbiAgICBleHBlY3QoY29tcG9uZW50LmZpbmQobXEuU3RhdGljKS5sZW5ndGgpLnRvRXF1YWwoMCk7XG4gICAgZXhwZWN0KGNvbXBvbmVudC5maW5kKE1hdGhUb29sYmFyKS5sZW5ndGgpLnRvRXF1YWwoMSk7XG4gICAgZXhwZWN0KGNvbXBvbmVudC5maW5kKE1hdGhUb29sYmFyKS5wcm9wcygpLmxhdGV4KS50b0VxdWFsKCdzZXNzaW9uUmVzcG9uc2UnKTtcbiAgfSk7XG5cbiAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IGZvciBzaG93aW5nIGNvcnJlY3QgbW9kZScsICgpID0+IHtcbiAgICBjb21wb25lbnQgPSB3cmFwcGVyKHsgLi4uZGVmYXVsdFByb3BzLCBzaG93Q29ycmVjdDogdHJ1ZSB9KTtcblxuICAgIGV4cGVjdChjb21wb25lbnQuZmluZChtcS5TdGF0aWMpLmxlbmd0aCkudG9FcXVhbCgxKTtcbiAgICBleHBlY3QoY29tcG9uZW50LmZpbmQoTWF0aFRvb2xiYXIpLmxlbmd0aCkudG9FcXVhbCgwKTtcbiAgICBleHBlY3QoY29tcG9uZW50LmZpbmQobXEuU3RhdGljKS5wcm9wcygpLmxhdGV4KS50b0VxdWFsKCduPS0xMScpO1xuICB9KTtcblxuICBpdCgnY29ycmVjdGx5IGtlZXBzIHRoZSBrZXlwYWQgb3BlbicsICgpID0+IHtcbiAgICBjb21wb25lbnQgPSB3cmFwcGVyKCk7XG5cbiAgICBjb21wb25lbnQuaW5zdGFuY2UoKS5vbkZvY3VzKCk7XG4gICAgZXhwZWN0KGNvbXBvbmVudC5zdGF0ZSgpLnNob3dLZXlwYWQpLnRvRXF1YWwodHJ1ZSk7XG5cbiAgICAvLyBoYXJkY29kZWRcbiAgICBjb21wb25lbnQuaW5zdGFuY2UoKS5tYXRoVG9vbEJhckNvbnRhaW5zVGFyZ2V0ID0gKCkgPT4gdHJ1ZTtcbiAgICBjb21wb25lbnQuaW5zdGFuY2UoKS5oYW5kbGVDbGljaygpO1xuXG4gICAgZXhwZWN0KGNvbXBvbmVudC5zdGF0ZSgpLnNob3dLZXlwYWQpLnRvRXF1YWwodHJ1ZSk7XG4gIH0pO1xuXG4gIGl0KCdjb3JyZWN0bHkgaGlkZXMgdGhlIGtleXBhZCcsICgpID0+IHtcbiAgICBjb21wb25lbnQgPSB3cmFwcGVyKCk7XG5cbiAgICBjb21wb25lbnQuaW5zdGFuY2UoKS5vbkZvY3VzKCk7XG4gICAgZXhwZWN0KGNvbXBvbmVudC5zdGF0ZSgpLnNob3dLZXlwYWQpLnRvRXF1YWwodHJ1ZSk7XG5cbiAgICAvLyBoYXJkY29kZWRcbiAgICBjb21wb25lbnQuaW5zdGFuY2UoKS5tYXRoVG9vbEJhckNvbnRhaW5zVGFyZ2V0ID0gKCkgPT4gZmFsc2U7XG4gICAgY29tcG9uZW50Lmluc3RhbmNlKCkuaGFuZGxlQ2xpY2soKTtcblxuICAgIGV4cGVjdChjb21wb25lbnQuc3RhdGUoKS5zaG93S2V5cGFkKS50b0VxdWFsKGZhbHNlKTtcbiAgfSk7XG59KTtcbiJdfQ==
package/module/demo.js DELETED
@@ -1,66 +0,0 @@
1
- import Configure from './configure.js';
2
- import Element from './element.js';
3
- import * as controller from './controller.js';
4
-
5
- var generate = {};
6
-
7
- /* const initialModel = {
8
- customKeys: [],
9
- equationEditor: 'geometry',
10
- responseType: 'Advanced Multi',
11
- expression: '{{response}}',
12
- responses: [
13
- {
14
- answer: 'r=\\sqrt{\\frac{V}{7\\pi}}',
15
- id: '1',
16
- alternates: {},
17
- validation: 'literal',
18
- },
19
- ],
20
- note: 'The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct.',
21
- rationale:
22
- '<p>The correct answer is:</p><ul><li><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>r</mi><mo>=</mo><msqrt><mfrac><mi>V</mi><mrow><mn>7</mn><mi>&#960;</mi></mrow></mfrac></msqrt></math></li></ul>',
23
- }; */
24
-
25
- const E262456 = {
26
- equationEditor: 3,
27
- toolbarEditorPosition: 'bottom',
28
- prompt:
29
- '<p><strong>B.</strong> Find the value of the expression that you wrote in part A to find how much money the band members made.</p>\n\n<p>Use the on-screen keyboard to type your answer in the box below.</p>\n',
30
- expression: '${{response}}',
31
- responses: [
32
- {
33
- allowSpaces: true,
34
- // 'validation': 'symbolic',
35
- answer: '$410',
36
- id: '1',
37
- },
38
- ],
39
- responseType: 'Advanced Multi',
40
- };
41
-
42
- generate.model = (id, element) => ({
43
- id,
44
- element,
45
- ...E262456,
46
- rubricEnabled: false,
47
- });
48
-
49
- const { model } = generate;
50
-
51
- var config = {
52
- elements: {
53
- 'math-inline': '../..',
54
- },
55
- models: [model('1', 'math-inline')],
56
- };
57
-
58
- //Note: demo-el is a custom element loaded in the markup.
59
- customElements.whenDefined("demo-el").then(() => {
60
- config.models.forEach((m) => {
61
- const de = document.createElement("demo-el");
62
- document.body.appendChild(de);
63
- de.def = { tagName: m.element, Element, Configure, controller };
64
- de.model = m;
65
- });
66
- });