@pie-element/math-inline 5.6.3 → 5.6.4-next.1008

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/lib/main.js CHANGED
@@ -47,18 +47,21 @@ var _simpleQuestionBlock = _interopRequireDefault(require("./simple-question-blo
47
47
 
48
48
  var _mathquill = _interopRequireDefault(require("@pie-framework/mathquill"));
49
49
 
50
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
50
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
51
51
 
52
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
52
+ 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; }
53
+
54
+ 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; }
53
55
 
54
56
  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); }; }
55
57
 
56
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
58
+ 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; } }
57
59
 
58
60
  var registered = false;
59
61
  var NEWLINE_LATEX = /\\newline/g;
60
62
  var REGEX = /{{response}}/gm;
61
63
  var DEFAULT_KEYPAD_VARIANT = 6;
64
+ var IS_SAFARI = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
62
65
 
63
66
  function generateAdditionalKeys() {
64
67
  var keyData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -85,7 +88,9 @@ function prepareForStatic(model, state) {
85
88
 
86
89
  var _ref2 = config || {},
87
90
  expression = _ref2.expression,
88
- responses = _ref2.responses;
91
+ responses = _ref2.responses,
92
+ printMode = _ref2.printMode,
93
+ alwaysShowCorrect = _ref2.alwaysShowCorrect;
89
94
 
90
95
  if (config && expression) {
91
96
  var modelExpression = expression;
@@ -100,6 +105,11 @@ function prepareForStatic(model, state) {
100
105
  return (modelExpression || '').replace(REGEX, function () {
101
106
  var answer = state.session.answers["r".concat(answerBlocks)];
102
107
 
108
+ if (printMode && !alwaysShowCorrect) {
109
+ var blankSpace = '\\ \\ '.repeat(30) + '\\newline ';
110
+ return "\\MathQuillMathField[r".concat(answerBlocks++, "]{").concat(blankSpace.repeat(3), "}");
111
+ }
112
+
103
113
  if (disabled) {
104
114
  return "\\embed{answerBlock}[r".concat(answerBlocks++, "]");
105
115
  }
@@ -211,7 +221,13 @@ var Main = /*#__PURE__*/function (_React$Component) {
211
221
  if (c.type === 'clear') {
212
222
  _this.input.clear();
213
223
  } else if (c.type === 'command') {
214
- _this.input.cmd(c.value);
224
+ if (Array.isArray(c.value)) {
225
+ c.value.forEach(function (vv) {
226
+ _this.input.cmd(vv);
227
+ });
228
+ } else {
229
+ _this.input.cmd(c.value);
230
+ }
215
231
  } else if (c.type === 'cursor') {
216
232
  _this.input.keystroke(c.value);
217
233
  } else {
@@ -233,6 +249,8 @@ var Main = /*#__PURE__*/function (_React$Component) {
233
249
  }, _this.handleAnswerBlockDomUpdate);
234
250
  });
235
251
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "subFieldChanged", function (name, subfieldValue) {
252
+ (0, _mathInput.updateSpans)();
253
+
236
254
  if (name) {
237
255
  _this.setState(function (state) {
238
256
  return {
@@ -258,11 +276,13 @@ var Main = /*#__PURE__*/function (_React$Component) {
258
276
  }
259
277
  });
260
278
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onBlur", function (e) {
279
+ var _relatedTarget$offset, _relatedTarget$offset2, _relatedTarget$offset3, _relatedTarget$offset4, _relatedTarget$offset5, _relatedTarget$offset6, _relatedTarget$offset7;
280
+
261
281
  var _ref3 = e || {},
262
282
  relatedTarget = _ref3.relatedTarget,
263
283
  currentTarget = _ref3.currentTarget;
264
284
 
265
- if (!relatedTarget || !currentTarget || !(relatedTarget.offsetParent && relatedTarget.offsetParent.children && relatedTarget.offsetParent.children[0] && relatedTarget.offsetParent.children[0].attributes && relatedTarget.offsetParent.children[0].attributes['data-keypad'])) {
285
+ if (!relatedTarget || !currentTarget || !IS_SAFARI && !(relatedTarget !== null && relatedTarget !== void 0 && (_relatedTarget$offset = relatedTarget.offsetParent) !== null && _relatedTarget$offset !== void 0 && (_relatedTarget$offset2 = _relatedTarget$offset.children[0]) !== null && _relatedTarget$offset2 !== void 0 && (_relatedTarget$offset3 = _relatedTarget$offset2.attributes) !== null && _relatedTarget$offset3 !== void 0 && _relatedTarget$offset3['data-keypad']) || IS_SAFARI && !(relatedTarget !== null && relatedTarget !== void 0 && (_relatedTarget$offset4 = relatedTarget.offsetParent) !== null && _relatedTarget$offset4 !== void 0 && (_relatedTarget$offset5 = _relatedTarget$offset4.children[0]) !== null && _relatedTarget$offset5 !== void 0 && (_relatedTarget$offset6 = _relatedTarget$offset5.children[0]) !== null && _relatedTarget$offset6 !== void 0 && (_relatedTarget$offset7 = _relatedTarget$offset6.attributes) !== null && _relatedTarget$offset7 !== void 0 && _relatedTarget$offset7['data-keypad'])) {
266
286
  _this.setState({
267
287
  activeAnswerBlock: ''
268
288
  });
@@ -287,7 +307,7 @@ var Main = /*#__PURE__*/function (_React$Component) {
287
307
  answers: _answers
288
308
  }),
289
309
  activeAnswerBlock: '',
290
- showCorrect: false
310
+ showCorrect: _this.props.model.config.alwaysShowCorrect || false
291
311
  };
292
312
  return _this;
293
313
  }
@@ -332,6 +352,18 @@ var Main = /*#__PURE__*/function (_React$Component) {
332
352
  _ref4$config = _ref4.config,
333
353
  nextConfig = _ref4$config === void 0 ? {} : _ref4$config;
334
354
 
355
+ if (config.env && config.env.mode !== 'evaluate' || nextConfig.env && nextConfig.env.mode !== 'evaluate') {
356
+ this.setState(_objectSpread(_objectSpread({}, this.state.session), {}, {
357
+ showCorrect: false
358
+ }));
359
+ }
360
+
361
+ if (nextConfig.alwaysShowCorrect) {
362
+ this.setState({
363
+ showCorrect: true
364
+ });
365
+ }
366
+
335
367
  if (config && config.responses && config.responses.length !== nextConfig.responses.length || !config && nextConfig && nextConfig.responses || config && nextConfig && config.expression !== nextConfig.expression) {
336
368
  var newAnswers = {};
337
369
  var answers = this.state.session.answers;
@@ -371,49 +403,110 @@ var Main = /*#__PURE__*/function (_React$Component) {
371
403
  return (0, _mathRendering.renderMath)(_this3.root);
372
404
  }, 100);
373
405
  }
406
+ }, {
407
+ key: "setTooltipRef",
408
+ value: function setTooltipRef(ref) {
409
+ // Safari Hack: https://stackoverflow.com/a/42764495/5757635
410
+ setTimeout(function () {
411
+ if (ref && IS_SAFARI) {
412
+ var div = document.querySelector('[role=\'tooltip\']');
413
+
414
+ if (div) {
415
+ var el = div.firstChild;
416
+ el.setAttribute('tabindex', '-1');
417
+ }
418
+ }
419
+ }, 1);
420
+ }
374
421
  }, {
375
422
  key: "render",
376
423
  value: function render() {
377
- var _cx,
378
- _this4 = this;
424
+ var _this4 = this,
425
+ _cx;
379
426
 
380
427
  var _this$props2 = this.props,
381
428
  model = _this$props2.model,
382
429
  classes = _this$props2.classes;
383
- var state = this.state;
384
- var activeAnswerBlock = state.activeAnswerBlock,
385
- showCorrect = state.showCorrect,
386
- session = state.session;
387
-
388
- if (!model.config) {
430
+ var _this$state2 = this.state,
431
+ activeAnswerBlock = _this$state2.activeAnswerBlock,
432
+ showCorrect = _this$state2.showCorrect,
433
+ session = _this$state2.session;
434
+
435
+ var _ref5 = model || {},
436
+ config = _ref5.config,
437
+ correctness = _ref5.correctness,
438
+ disabled = _ref5.disabled,
439
+ view = _ref5.view,
440
+ teacherInstructions = _ref5.teacherInstructions,
441
+ rationale = _ref5.rationale,
442
+ feedback = _ref5.feedback,
443
+ animationsDisabled = _ref5.animationsDisabled,
444
+ printMode = _ref5.printMode,
445
+ alwaysShowCorrect = _ref5.alwaysShowCorrect;
446
+
447
+ if (!config) {
389
448
  return null;
390
449
  }
391
450
 
392
- var additionalKeys = generateAdditionalKeys(model.config.customKeys);
393
- var correct = model.correctness && model.correctness.correct;
394
- var staticLatex = prepareForStatic(model, state) || '';
395
- var tooltipModeEnabled = model.disabled && model.correctness && model.config && model.config.responseType !== _utils.ResponseTypes.simple;
451
+ var _ref6 = config || {},
452
+ showNote = _ref6.showNote,
453
+ note = _ref6.note,
454
+ prompt = _ref6.prompt,
455
+ responses = _ref6.responses,
456
+ responseType = _ref6.responseType,
457
+ equationEditor = _ref6.equationEditor,
458
+ customKeys = _ref6.customKeys,
459
+ _ref6$env = _ref6.env;
460
+
461
+ _ref6$env = _ref6$env === void 0 ? {} : _ref6$env;
462
+ var mode = _ref6$env.mode,
463
+ role = _ref6$env.role;
464
+ var displayNote = (showCorrect || mode === 'view' && role === 'instructor') && showNote && note;
465
+ var emptyResponse = (0, _isEmpty["default"])(responses);
466
+ var showCorrectAnswerToggle = !emptyResponse && correctness && correctness.correctness !== 'correct';
467
+ var tooltipModeEnabled = disabled && correctness;
468
+ var additionalKeys = generateAdditionalKeys(customKeys);
469
+ var correct = correctness && correctness.correct;
470
+ var staticLatex = prepareForStatic(model, this.state) || '';
471
+ var viewMode = disabled && !correctness;
472
+ var studentPrintMode = printMode && !alwaysShowCorrect;
473
+
474
+ var printView = /*#__PURE__*/_react["default"].createElement("div", {
475
+ className: classes.printContainer
476
+ }, /*#__PURE__*/_react["default"].createElement(_mathInput.mq.Static, {
477
+ ref: function ref(mqStatic) {
478
+ return _this4.mqStatic = mqStatic || _this4.mqStatic;
479
+ },
480
+ latex: staticLatex,
481
+ onSubFieldChange: this.subFieldChanged,
482
+ getFieldName: this.getFieldName,
483
+ setInput: this.setInput,
484
+ onSubFieldFocus: this.onSubFieldFocus,
485
+ onBlur: this.onBlur
486
+ }));
396
487
 
397
488
  var midContent = /*#__PURE__*/_react["default"].createElement("div", {
398
489
  className: classes.main
399
- }, /*#__PURE__*/_react["default"].createElement("div", {
490
+ }, prompt && /*#__PURE__*/_react["default"].createElement("div", {
400
491
  className: classes.content
401
- }, /*#__PURE__*/_react["default"].createElement("div", {
402
- dangerouslySetInnerHTML: {
403
- __html: model.config.prompt
404
- }
405
- })), /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
492
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
493
+ prompt: prompt
494
+ })), studentPrintMode ? printView : /*#__PURE__*/_react["default"].createElement(_renderUi.Readable, {
406
495
  "false": true
407
496
  }, /*#__PURE__*/_react["default"].createElement("div", {
408
497
  className: classes.inputAndKeypadContainer
409
- }, model.config.responseType === _utils.ResponseTypes.simple && /*#__PURE__*/_react["default"].createElement(_simpleQuestionBlock["default"], {
498
+ }, responseType === _utils.ResponseTypes.simple && /*#__PURE__*/_react["default"].createElement(_simpleQuestionBlock["default"], {
410
499
  onSimpleResponseChange: this.onSimpleResponseChange,
411
500
  showCorrect: showCorrect,
501
+ emptyResponse: emptyResponse,
412
502
  model: model,
413
503
  session: session
414
- }), model.config.responseType === _utils.ResponseTypes.advanced && /*#__PURE__*/_react["default"].createElement("div", {
415
- className: (0, _classnames["default"])(classes.expression, (_cx = {}, (0, _defineProperty2["default"])(_cx, classes.incorrect, !correct && !showCorrect), (0, _defineProperty2["default"])(_cx, classes.correct, correct || showCorrect), (0, _defineProperty2["default"])(_cx, classes.showCorrectness, model.disabled && model.correctness && !model.view), (0, _defineProperty2["default"])(_cx, classes.correctAnswerShown, showCorrect), _cx))
504
+ }), responseType === _utils.ResponseTypes.advanced && /*#__PURE__*/_react["default"].createElement("div", {
505
+ className: (0, _classnames["default"])(classes.expression, (_cx = {}, (0, _defineProperty2["default"])(_cx, classes.incorrect, !emptyResponse && !correct && !showCorrect), (0, _defineProperty2["default"])(_cx, classes.correct, !emptyResponse && (correct || showCorrect)), (0, _defineProperty2["default"])(_cx, classes.showCorrectness, !emptyResponse && disabled && correctness && !view), (0, _defineProperty2["default"])(_cx, classes.correctAnswerShown, showCorrect), (0, _defineProperty2["default"])(_cx, classes.printCorrect, printMode && alwaysShowCorrect), _cx))
416
506
  }, /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
507
+ ref: function ref(_ref7) {
508
+ return _this4.setTooltipRef(_ref7);
509
+ },
417
510
  interactive: true,
418
511
  open: !!activeAnswerBlock,
419
512
  classes: {
@@ -421,17 +514,17 @@ var Main = /*#__PURE__*/function (_React$Component) {
421
514
  popper: classes.keypadTooltipPopper
422
515
  },
423
516
  title: Object.keys(session.answers).map(function (answerId) {
424
- return answerId === activeAnswerBlock && !(showCorrect || model.disabled) && /*#__PURE__*/_react["default"].createElement("div", {
517
+ return answerId === activeAnswerBlock && !(showCorrect || disabled) && /*#__PURE__*/_react["default"].createElement("div", {
425
518
  "data-keypad": true,
426
519
  key: answerId,
427
520
  className: classes.responseContainer,
428
521
  style: {
429
522
  // marginTop: this.mqStatic && this.mqStatic.input.offsetHeight - 20,
430
- width: getKeyPadWidth(additionalKeys, model.config.equationEditor)
523
+ width: getKeyPadWidth(additionalKeys, equationEditor)
431
524
  }
432
525
  }, /*#__PURE__*/_react["default"].createElement(_mathInput.HorizontalKeypad, {
433
526
  additionalKeys: additionalKeys,
434
- mode: model.config.equationEditor || DEFAULT_KEYPAD_VARIANT,
527
+ mode: equationEditor || DEFAULT_KEYPAD_VARIANT,
435
528
  onClick: _this4.onClick
436
529
  })) || null;
437
530
  })
@@ -445,9 +538,40 @@ var Main = /*#__PURE__*/function (_React$Component) {
445
538
  setInput: this.setInput,
446
539
  onSubFieldFocus: this.onSubFieldFocus,
447
540
  onBlur: this.onBlur
448
- }))))));
541
+ }))))), viewMode && teacherInstructions && (0, _renderUi.hasText)(teacherInstructions) && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
542
+ labels: {
543
+ hidden: 'Show Teacher Instructions',
544
+ visible: 'Hide Teacher Instructions'
545
+ }
546
+ }, /*#__PURE__*/_react["default"].createElement("div", {
547
+ dangerouslySetInnerHTML: {
548
+ __html: teacherInstructions
549
+ }
550
+ })) : /*#__PURE__*/_react["default"].createElement("div", {
551
+ dangerouslySetInnerHTML: {
552
+ __html: teacherInstructions
553
+ }
554
+ }), /*#__PURE__*/_react["default"].createElement("br", null)), viewMode && rationale && (0, _renderUi.hasText)(rationale) && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
555
+ labels: {
556
+ hidden: 'Show Rationale',
557
+ visible: 'Hide Rationale'
558
+ }
559
+ }, /*#__PURE__*/_react["default"].createElement("div", {
560
+ dangerouslySetInnerHTML: {
561
+ __html: rationale
562
+ }
563
+ })) : /*#__PURE__*/_react["default"].createElement("div", {
564
+ dangerouslySetInnerHTML: {
565
+ __html: rationale
566
+ }
567
+ })), viewMode && displayNote && /*#__PURE__*/_react["default"].createElement("div", {
568
+ className: classes.note,
569
+ dangerouslySetInnerHTML: {
570
+ __html: "<strong>Note:</strong> ".concat(note)
571
+ }
572
+ }));
449
573
 
450
- if (tooltipModeEnabled && (model.correctness && model.correctness.correctness !== 'correct' || model.teacherInstructions || model.rationale || model.feedback)) {
574
+ if (tooltipModeEnabled && (showCorrectAnswerToggle || teacherInstructions || rationale || feedback)) {
451
575
  return /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
452
576
  interactive: true,
453
577
  classes: {
@@ -456,39 +580,45 @@ var Main = /*#__PURE__*/function (_React$Component) {
456
580
  },
457
581
  title: /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
458
582
  className: classes.main
459
- }, model.correctness && model.correctness.correctness !== 'correct' && /*#__PURE__*/_react["default"].createElement(_correctAnswerToggle["default"], {
583
+ }, showCorrectAnswerToggle && /*#__PURE__*/_react["default"].createElement(_correctAnswerToggle["default"], {
460
584
  className: classes.toggle,
461
585
  show: true,
462
586
  toggled: showCorrect,
463
587
  onToggle: this.toggleShowCorrect
464
- })), model.teacherInstructions && (0, _renderUi.hasText)(model.teacherInstructions) && [/*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
588
+ })), teacherInstructions && (0, _renderUi.hasText)(teacherInstructions) && [/*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
465
589
  key: "collapsible",
466
590
  labels: {
467
591
  hidden: 'Show Teacher Instructions',
468
592
  visible: 'Hide Teacher Instructions'
469
593
  },
470
594
  className: classes.collapsible
471
- }, /*#__PURE__*/_react["default"].createElement("div", {
472
- dangerouslySetInnerHTML: {
473
- __html: model.teacherInstructions
474
- }
595
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
596
+ prompt: teacherInstructions
475
597
  })), /*#__PURE__*/_react["default"].createElement("br", {
476
598
  key: "br"
477
- })], model.rationale && (0, _renderUi.hasText)(model.rationale) && [/*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
599
+ })], rationale && (0, _renderUi.hasText)(rationale) && [/*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
478
600
  key: "collapsible",
479
601
  labels: {
480
602
  hidden: 'Show Rationale',
481
603
  visible: 'Hide Rationale'
482
604
  }
483
- }, /*#__PURE__*/_react["default"].createElement("div", {
484
- dangerouslySetInnerHTML: {
485
- __html: model.rationale
605
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
606
+ prompt: rationale
607
+ })), /*#__PURE__*/_react["default"].createElement("br", {
608
+ key: "br"
609
+ })], displayNote && (0, _renderUi.hasText)(note) && [/*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
610
+ key: "collapsible",
611
+ labels: {
612
+ hidden: 'Show Note',
613
+ visible: 'Hide Note'
486
614
  }
615
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
616
+ prompt: note
487
617
  })), /*#__PURE__*/_react["default"].createElement("br", {
488
618
  key: "br"
489
- })], model.feedback && /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
490
- correctness: model.correctness.correctness,
491
- feedback: model.feedback
619
+ })], feedback && /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
620
+ correctness: correctness.correctness,
621
+ feedback: feedback
492
622
  }))
493
623
  }, /*#__PURE__*/_react["default"].createElement("div", {
494
624
  className: classes.mainContainer,
@@ -527,7 +657,12 @@ var styles = function styles(theme) {
527
657
  color: _renderUi.color.text(),
528
658
  padding: theme.spacing.unit * 2,
529
659
  border: "1px solid ".concat(_renderUi.color.secondary()),
530
- fontSize: '16px'
660
+ fontSize: '16px',
661
+ '& :not(.MathJax) > table tr': {
662
+ '&:nth-child(2n)': {
663
+ backgroundColor: 'unset !important'
664
+ }
665
+ }
531
666
  },
532
667
  tooltipPopper: {
533
668
  opacity: 1
@@ -560,6 +695,9 @@ var styles = function styles(theme) {
560
695
  content: {
561
696
  marginTop: theme.spacing.unit * 2
562
697
  },
698
+ note: {
699
+ paddingTop: '15px'
700
+ },
563
701
  collapsible: {
564
702
  marginTop: theme.spacing.unit * 2
565
703
  },
@@ -572,7 +710,6 @@ var styles = function styles(theme) {
572
710
  },
573
711
  expression: {
574
712
  maxWidth: 'fit-content',
575
- marginTop: theme.spacing.unit * 2,
576
713
  '& > .mq-math-mode': {
577
714
  '& > .mq-root-block': {
578
715
  '& > .mq-editable-field': {
@@ -589,13 +726,44 @@ var styles = function styles(theme) {
589
726
  inputAndKeypadContainer: {
590
727
  position: 'relative',
591
728
  '& .mq-overarrow-inner': {
592
- border: 'none !important'
729
+ border: 'none !important',
730
+ padding: '0 !important'
593
731
  },
594
732
  '& .mq-overarrow-inner-right': {
595
733
  display: 'none !important'
596
734
  },
597
735
  '& .mq-overarrow-inner-left': {
598
736
  display: 'none !important'
737
+ },
738
+ '& .mq-overarrow.mq-arrow-both': {
739
+ minWidth: '1.23em',
740
+ '& *': {
741
+ lineHeight: '1 !important'
742
+ },
743
+ '&:before': {
744
+ top: '-0.4em',
745
+ left: '-1px'
746
+ },
747
+ '&:after': {
748
+ top: '-2.4em',
749
+ right: '-1px'
750
+ },
751
+ '&.mq-empty:after': {
752
+ top: '-0.45em'
753
+ }
754
+ },
755
+ '& .mq-overarrow.mq-arrow-right': {
756
+ '&:before': {
757
+ top: '-0.4em',
758
+ right: '-1px'
759
+ }
760
+ },
761
+ '& .mq-longdiv-inner': {
762
+ borderTop: '1px solid !important',
763
+ paddingTop: '1.5px !important'
764
+ },
765
+ '& .mq-parallelogram': {
766
+ lineHeight: 0.85
599
767
  }
600
768
  },
601
769
  showCorrectness: {
@@ -605,6 +773,9 @@ var styles = function styles(theme) {
605
773
  padding: theme.spacing.unit,
606
774
  letterSpacing: '0.5px'
607
775
  },
776
+ printCorrect: {
777
+ border: "2px solid ".concat(_renderUi.color.correct(), " !important")
778
+ },
608
779
  correct: {
609
780
  borderColor: "".concat(_renderUi.color.correct(), " !important")
610
781
  },
@@ -612,20 +783,20 @@ var styles = function styles(theme) {
612
783
  borderColor: "".concat(_renderUi.color.incorrect(), " !important")
613
784
  },
614
785
  blockContainer: {
615
- margin: theme.spacing.unit,
786
+ margin: "".concat(theme.spacing.unit, "px !important"),
616
787
  display: 'inline-flex',
617
- border: '2px solid grey'
788
+ border: '2px solid grey !important'
618
789
  },
619
790
  blockResponse: {
620
791
  flex: 2,
621
792
  color: 'grey',
622
793
  background: 'lightgrey',
623
- fontSize: '0.8rem',
624
- padding: theme.spacing.unit / 2,
794
+ fontSize: '0.8rem !important',
795
+ padding: "".concat(theme.spacing.unit / 2, "px !important"),
625
796
  display: 'flex',
626
797
  alignItems: 'center',
627
798
  justifyContent: 'center',
628
- borderRight: "2px solid ".concat(_renderUi.color.disabled())
799
+ borderRight: "2px solid ".concat(_renderUi.color.disabled(), " !important")
629
800
  },
630
801
  toggle: {
631
802
  color: _renderUi.color.text()
@@ -633,7 +804,7 @@ var styles = function styles(theme) {
633
804
  blockMath: {
634
805
  color: _renderUi.color.text(),
635
806
  backgroundColor: _renderUi.color.background(),
636
- padding: theme.spacing.unit / 2,
807
+ padding: "".concat(theme.spacing.unit / 2, "px !important"),
637
808
  display: 'flex',
638
809
  alignItems: 'center',
639
810
  justifyContent: 'center',
@@ -645,6 +816,10 @@ var styles = function styles(theme) {
645
816
  }
646
817
  }
647
818
  }
819
+ },
820
+ printContainer: {
821
+ marginBottom: '10px',
822
+ pointerEvents: 'none'
648
823
  }
649
824
  };
650
825
  };