@pie-lib/math-toolbar 1.8.1-next.417 → 1.8.1-next.437

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.
@@ -108,6 +108,10 @@ var EditorAndPad = /*#__PURE__*/function (_React$Component) {
108
108
  return;
109
109
  }
110
110
 
111
+ if (!c) {
112
+ return;
113
+ }
114
+
111
115
  if (c.type === 'clear') {
112
116
  log('call clear...');
113
117
 
@@ -313,7 +317,6 @@ var EditorAndPad = /*#__PURE__*/function (_React$Component) {
313
317
  }, "+ Response Area"), /*#__PURE__*/_react["default"].createElement("hr", {
314
318
  className: classes.hr
315
319
  }), shouldShowKeypad && /*#__PURE__*/_react["default"].createElement(_mathInput.HorizontalKeypad, {
316
- className: classes.keyboard,
317
320
  layoutForKeyPad: layoutForKeyPad,
318
321
  additionalKeys: additionalKeys,
319
322
  mode: controlledKeypadMode ? this.state.equationEditor : keypadMode,
@@ -352,10 +355,7 @@ var styles = function styles(theme) {
352
355
  inputAndTypeContainer: {
353
356
  display: 'flex',
354
357
  alignItems: 'center',
355
- '& .mq-root-block': {
356
- marginTop: '8px'
357
- },
358
- '& .mq-math-mode .mq-overarrow': {
358
+ '& *': {
359
359
  fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
360
360
  },
361
361
  '& .mq-overarrow.mq-arrow-both': {
@@ -380,46 +380,6 @@ var styles = function styles(theme) {
380
380
  top: '-0.4em',
381
381
  right: '-1px'
382
382
  }
383
- },
384
- '& *': {
385
- fontFamily: 'MJXZERO, MJXTEX-I !important',
386
- '& .mq-math-mode .mq-empty': {
387
- padding: '9px 1px !important'
388
- },
389
- '& .mq-longdiv-inner': {
390
- marginTop: '-1px',
391
- marginLeft: '5px !important;',
392
- '& > .mq-empty': {
393
- padding: '0 !important',
394
- marginLeft: '0px !important',
395
- marginTop: '2px'
396
- }
397
- },
398
- '& .mq-math-mode .mq-longdiv': {
399
- display: 'flex !important'
400
- },
401
- '& .mq-math-mode .mq-supsub': {
402
- fontSize: '70.7% !important'
403
- },
404
- '& .mq-math-mode .mq-paren': {
405
- verticalAlign: 'middle !important'
406
- },
407
- '& .mq-math-mode .mq-sqrt-stem': {
408
- borderTop: '0.07em solid',
409
- marginLeft: '-1.5px',
410
- marginTop: '-2px !important',
411
- paddingTop: '5px !important'
412
- },
413
- '& .mq-supsub ': {
414
- fontSize: '70.7%'
415
- },
416
- '& .mq-math-mode .mq-supsub.mq-sup-only': {
417
- verticalAlign: '-0.1em !important',
418
- '& .mq-sup': {
419
- marginBottom: '0px !important'
420
- }
421
- },
422
- '-webkit-font-smoothing': 'antialiased !important'
423
383
  }
424
384
  },
425
385
  hide: {
@@ -432,13 +392,7 @@ var styles = function styles(theme) {
432
392
  marginLeft: '15px',
433
393
  marginTop: '5px',
434
394
  marginBottom: '5px',
435
- marginRight: '5px',
436
- '& label': {
437
- fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
438
- },
439
- '& div': {
440
- fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
441
- }
395
+ marginRight: '5px'
442
396
  },
443
397
  mathEditor: {
444
398
  maxWidth: '400px',
@@ -507,36 +461,6 @@ var styles = function styles(theme) {
507
461
  },
508
462
  error: {
509
463
  border: '2px solid red'
510
- },
511
- keyboard: {
512
- '& *': {
513
- fontFamily: 'MJXZERO, MJXTEX-I !important',
514
- '& .mq-math-mode .mq-empty': {
515
- padding: '9px 1px !important'
516
- },
517
- '& .mq-longdiv-inner': {
518
- marginTop: '-1px',
519
- marginLeft: '5px !important;',
520
- '& > .mq-empty': {
521
- padding: '0 !important',
522
- marginLeft: '0px !important',
523
- marginTop: '2px'
524
- }
525
- },
526
- '& .mq-math-mode .mq-longdiv': {
527
- display: 'flex !important'
528
- },
529
- '& .mq-math-mode .mq-supsub': {
530
- fontSize: '70.7% !important'
531
- },
532
- '& .mq-math-mode .mq-sqrt-stem': {
533
- marginTop: '-5px',
534
- paddingTop: '4px'
535
- },
536
- '& .mq-math-mode .mq-paren': {
537
- verticalAlign: 'middle !important'
538
- }
539
- }
540
464
  }
541
465
  };
542
466
  };
@@ -1 +1 @@
1
- {"version":3,"file":"editor-and-pad.js","names":["log","debug","decimalRegex","toNodeData","data","type","value","EditorAndPad","props","noDecimal","noLatexHandling","onChange","c","input","clear","command","keystroke","write","isEdit","maxResponseAreas","shouldDisable","checkResponseAreasNumber","setState","addDisabled","onAnswerBlockAdd","onClick","updateDisable","latex","updateSpans","indexOf","replace","evt","equationEditor","target","count","match","length","state","autoFocus","focus","nextProps","nextState","inputIsDifferent","mathField","isEqual","error","keypadMode","controlledKeypad","showKeypad","classNames","allowAnswerBlock","additionalKeys","controlledKeypadMode","hideInput","layoutForKeyPad","onFocus","onBlur","classes","shouldShowKeypad","cx","mathToolbar","inputAndTypeContainer","hide","selectContainer","select","onEditorTypeChange","inputContainer","event","mathEditor","editor","longMathEditor","r","onEditorChange","addAnswerBlockButton","bottom","onAnswerBlockClick","hr","keyboard","React","Component","PropTypes","object","oneOfType","string","number","bool","array","isRequired","func","styles","theme","display","alignItems","marginTop","fontFamily","minWidth","lineHeight","top","left","right","padding","marginLeft","fontSize","verticalAlign","borderTop","paddingTop","marginBottom","flex","width","marginRight","maxWidth","color","text","backgroundColor","background","spacing","unit","position","border","margin","height","borderBottom","palette","primary","main","zIndex","textAlign","outline","boxShadow","borderRadius","minHeight","withStyles"],"sources":["../src/editor-and-pad.jsx"],"sourcesContent":["import { HorizontalKeypad, mq } from '@pie-lib/math-input';\nimport React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nconst log = debug('@pie-lib:math-toolbar:editor-and-pad');\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Select from '@material-ui/core/Select';\nimport { updateSpans } from '@pie-lib/math-input';\nimport isEqual from 'lodash/isEqual';\n\nconst decimalRegex = /\\.|,/g;\n\nconst toNodeData = data => {\n if (!data) {\n return;\n }\n\n const { type, value } = data;\n\n if (type === 'command' || type === 'cursor') {\n return data;\n } else if (type === 'answer') {\n return { type: 'answer', ...data };\n } else if (value === 'clear') {\n return { type: 'clear' };\n } else {\n return { type: 'write', value };\n }\n};\n\nexport class EditorAndPad extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n showKeypad: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n noDecimal: PropTypes.bool,\n hideInput: PropTypes.bool,\n noLatexHandling: PropTypes.bool,\n layoutForKeyPad: PropTypes.object,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n this.state = { equationEditor: 'item-authoring', addDisabled: false };\n }\n\n componentDidMount() {\n if (this.input && this.props.autoFocus) {\n this.input.focus();\n }\n }\n\n onClick = data => {\n const { noDecimal, noLatexHandling, onChange } = this.props;\n const c = toNodeData(data);\n log('mathChange: ', c);\n\n if (noLatexHandling) {\n onChange(c.value);\n return;\n }\n\n // if decimals are not allowed for this response, we discard the input\n if (noDecimal && (c.value === '.' || c.value === ',')) {\n return;\n }\n\n if (c.type === 'clear') {\n log('call clear...');\n this.input.clear();\n } else if (c.type === 'command') {\n this.input.command(c.value);\n } else if (c.type === 'cursor') {\n this.input.keystroke(c.value);\n } else if (c.type === 'answer') {\n this.input.write('%response%');\n } else {\n this.input.write(c.value);\n }\n };\n\n updateDisable = isEdit => {\n const { maxResponseAreas } = this.props;\n\n if (maxResponseAreas) {\n const shouldDisable = this.checkResponseAreasNumber(maxResponseAreas, isEdit);\n\n this.setState({ addDisabled: shouldDisable });\n }\n };\n\n onAnswerBlockClick = () => {\n this.props.onAnswerBlockAdd();\n this.onClick({\n type: 'answer'\n });\n\n this.updateDisable(true);\n };\n\n onEditorChange = latex => {\n const { onChange, noDecimal } = this.props;\n\n updateSpans();\n\n this.updateDisable(true);\n\n // if no decimals are allowed and the last change is a decimal dot, discard the change\n if (noDecimal && (latex.indexOf('.') !== -1 || latex.indexOf(',') !== -1) && this.input) {\n this.input.clear();\n this.input.write(latex.replace(decimalRegex, ''));\n return;\n }\n\n onChange(latex);\n };\n\n /** Only render if the mathquill instance's latex is different\n * or the keypad state changed from one state to the other (shown / hidden) */\n shouldComponentUpdate(nextProps, nextState) {\n const inputIsDifferent = this.input.mathField.latex() !== nextProps.latex;\n log('[shouldComponentUpdate] ', 'inputIsDifferent: ', inputIsDifferent);\n\n if (!isEqual(this.props.error, nextProps.error)) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.keypadMode !== nextProps.keypadMode) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.noDecimal !== nextProps.noDecimal) {\n return true;\n }\n\n if (!inputIsDifferent && this.state.equationEditor !== nextState.equationEditor) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.controlledKeypad) {\n return this.props.showKeypad !== nextProps.showKeypad;\n }\n\n return inputIsDifferent;\n }\n\n onEditorTypeChange = evt => {\n this.setState({ equationEditor: evt.target.value });\n };\n\n checkResponseAreasNumber = (maxResponseAreas, isEdit) => {\n const { latex } = (this.input && this.input.props) || {};\n\n if (latex) {\n const count = (latex.match(/answerBlock/g) || []).length;\n\n return isEdit ? count === maxResponseAreas - 1 : count === maxResponseAreas;\n }\n\n return false;\n };\n\n render() {\n const {\n classNames,\n keypadMode,\n allowAnswerBlock,\n additionalKeys,\n controlledKeypad,\n controlledKeypadMode,\n showKeypad,\n noDecimal,\n hideInput,\n layoutForKeyPad,\n latex,\n onFocus,\n onBlur,\n classes,\n error\n } = this.props;\n const shouldShowKeypad = !controlledKeypad || (controlledKeypad && showKeypad);\n const { addDisabled } = this.state;\n\n log('[render]', latex);\n\n return (\n <div className={cx(classes.mathToolbar, classNames.mathToolbar)}>\n <div className={cx(classes.inputAndTypeContainer, { [classes.hide]: hideInput })}>\n {controlledKeypadMode && (\n <InputContainer label=\"Equation Editor\" className={classes.selectContainer}>\n <Select\n className={classes.select}\n onChange={this.onEditorTypeChange}\n value={this.state.equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n <MenuItem value={'language'}>Language</MenuItem>\n </Select>\n </InputContainer>\n )}\n <div className={cx(classes.inputContainer, error ? classes.error : '')}>\n <mq.Input\n onFocus={() => {\n onFocus && onFocus();\n this.updateDisable(false);\n }}\n onBlur={event => {\n this.updateDisable(false);\n onBlur && onBlur(event);\n }}\n className={cx(\n classes.mathEditor,\n classNames.editor,\n !controlledKeypadMode ? classes.longMathEditor : ''\n )}\n innerRef={r => (this.input = r)}\n latex={latex}\n onChange={this.onEditorChange}\n />\n </div>\n </div>\n {allowAnswerBlock && (\n <Button\n className={classes.addAnswerBlockButton}\n type=\"primary\"\n style={{ bottom: shouldShowKeypad ? '320px' : '20px' }}\n onClick={this.onAnswerBlockClick}\n disabled={addDisabled}\n >\n + Response Area\n </Button>\n )}\n <hr className={classes.hr} />\n {shouldShowKeypad && (\n <HorizontalKeypad\n className={classes.keyboard}\n layoutForKeyPad={layoutForKeyPad}\n additionalKeys={additionalKeys}\n mode={controlledKeypadMode ? this.state.equationEditor : keypadMode}\n onClick={this.onClick}\n noDecimal={noDecimal}\n />\n )}\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n inputAndTypeContainer: {\n display: 'flex',\n alignItems: 'center',\n '& .mq-root-block': {\n marginTop: '8px',\n },\n '& .mq-math-mode .mq-overarrow': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important'\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px'\n },\n '&:after': {\n top: '-2.36em',\n right: '-1px'\n },\n '&.mq-empty:after': {\n top: '-0.45em'\n }\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px'\n }\n },\n '& *': {\n fontFamily: 'MJXZERO, MJXTEX-I !important',\n\n '& .mq-math-mode .mq-empty': {\n padding: '9px 1px !important'\n },\n\n '& .mq-longdiv-inner': {\n marginTop: '-1px',\n marginLeft: '5px !important;',\n\n '& > .mq-empty': {\n padding: '0 !important',\n marginLeft: '0px !important',\n marginTop: '2px'\n }\n },\n\n '& .mq-math-mode .mq-longdiv': {\n display: 'flex !important'\n },\n\n '& .mq-math-mode .mq-supsub': {\n fontSize: '70.7% !important'\n },\n\n '& .mq-math-mode .mq-paren': {\n verticalAlign: 'middle !important'\n },\n\n '& .mq-math-mode .mq-sqrt-stem': {\n borderTop: '0.07em solid',\n marginLeft: '-1.5px',\n marginTop: '-2px !important',\n paddingTop: '5px !important'\n },\n\n '& .mq-supsub ': {\n fontSize: '70.7%'\n },\n\n '& .mq-math-mode .mq-supsub.mq-sup-only': {\n verticalAlign: '-0.1em !important',\n\n '& .mq-sup': {\n marginBottom: '0px !important'\n }\n },\n\n '-webkit-font-smoothing': 'antialiased !important'\n }\n },\n hide: {\n display: 'none'\n },\n selectContainer: {\n flex: 'initial',\n width: '25%',\n minWidth: '100px',\n marginLeft: '15px',\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px',\n\n '& label': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n\n '& div': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n }\n },\n mathEditor: {\n maxWidth: '400px',\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit\n },\n longMathEditor: {\n maxWidth: '500px'\n },\n addAnswerBlockButton: {\n position: 'absolute',\n right: '12px',\n border: '1px solid lightgrey'\n },\n hr: {\n padding: 0,\n margin: 0,\n height: '1px',\n border: 'none',\n borderBottom: `solid 1px ${theme.palette.primary.main}`\n },\n mathToolbar: {\n zIndex: 9,\n position: 'relative',\n textAlign: 'center',\n width: 'auto',\n '& > .mq-math-mode': {\n border: 'solid 1px lightgrey'\n },\n '& > .mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: `dotted 1px ${theme.palette.primary.main}`,\n borderRadius: '0px'\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n paddingTop: '0 !important'\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important'\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important'\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em'\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85\n }\n },\n inputContainer: {\n minWidth: '500px',\n maxWidth: '900px',\n minHeight: '40px',\n width: '100%',\n display: 'flex',\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit\n },\n error: {\n border: '2px solid red'\n },\n keyboard: {\n '& *': {\n fontFamily: 'MJXZERO, MJXTEX-I !important',\n\n '& .mq-math-mode .mq-empty': {\n padding: '9px 1px !important'\n },\n\n '& .mq-longdiv-inner': {\n marginTop: '-1px',\n marginLeft: '5px !important;',\n\n '& > .mq-empty': {\n padding: '0 !important',\n marginLeft: '0px !important',\n marginTop: '2px'\n }\n },\n\n '& .mq-math-mode .mq-longdiv': {\n display: 'flex !important'\n },\n\n '& .mq-math-mode .mq-supsub': {\n fontSize: '70.7% !important'\n },\n\n '& .mq-math-mode .mq-sqrt-stem': {\n marginTop: '-5px',\n paddingTop: '4px'\n },\n\n '& .mq-math-mode .mq-paren': {\n verticalAlign: 'middle !important'\n }\n }\n }\n});\n\nexport default withStyles(styles)(EditorAndPad);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AAEA;;;;;;;;;;AALA,IAAMA,GAAG,GAAG,IAAAC,iBAAA,EAAM,sCAAN,CAAZ;AAOA,IAAMC,YAAY,GAAG,OAArB;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAAAC,IAAI,EAAI;EACzB,IAAI,CAACA,IAAL,EAAW;IACT;EACD;;EAED,IAAQC,IAAR,GAAwBD,IAAxB,CAAQC,IAAR;EAAA,IAAcC,KAAd,GAAwBF,IAAxB,CAAcE,KAAd;;EAEA,IAAID,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,QAAnC,EAA6C;IAC3C,OAAOD,IAAP;EACD,CAFD,MAEO,IAAIC,IAAI,KAAK,QAAb,EAAuB;IAC5B;MAASA,IAAI,EAAE;IAAf,GAA4BD,IAA5B;EACD,CAFM,MAEA,IAAIE,KAAK,KAAK,OAAd,EAAuB;IAC5B,OAAO;MAAED,IAAI,EAAE;IAAR,CAAP;EACD,CAFM,MAEA;IACL,OAAO;MAAEA,IAAI,EAAE,OAAR;MAAiBC,KAAK,EAALA;IAAjB,CAAP;EACD;AACF,CAhBD;;IAkBaC,Y;;;;;EAsBX,sBAAYC,KAAZ,EAAmB;IAAA;;IAAA;IACjB,0BAAMA,KAAN;IADiB,4FAYT,UAAAJ,IAAI,EAAI;MAChB,kBAAiD,MAAKI,KAAtD;MAAA,IAAQC,SAAR,eAAQA,SAAR;MAAA,IAAmBC,eAAnB,eAAmBA,eAAnB;MAAA,IAAoCC,QAApC,eAAoCA,QAApC;MACA,IAAMC,CAAC,GAAGT,UAAU,CAACC,IAAD,CAApB;MACAJ,GAAG,CAAC,cAAD,EAAiBY,CAAjB,CAAH;;MAEA,IAAIF,eAAJ,EAAqB;QACnBC,QAAQ,CAACC,CAAC,CAACN,KAAH,CAAR;QACA;MACD,CARe,CAUhB;;;MACA,IAAIG,SAAS,KAAKG,CAAC,CAACN,KAAF,KAAY,GAAZ,IAAmBM,CAAC,CAACN,KAAF,KAAY,GAApC,CAAb,EAAuD;QACrD;MACD;;MAED,IAAIM,CAAC,CAACP,IAAF,KAAW,OAAf,EAAwB;QACtBL,GAAG,CAAC,eAAD,CAAH;;QACA,MAAKa,KAAL,CAAWC,KAAX;MACD,CAHD,MAGO,IAAIF,CAAC,CAACP,IAAF,KAAW,SAAf,EAA0B;QAC/B,MAAKQ,KAAL,CAAWE,OAAX,CAAmBH,CAAC,CAACN,KAArB;MACD,CAFM,MAEA,IAAIM,CAAC,CAACP,IAAF,KAAW,QAAf,EAAyB;QAC9B,MAAKQ,KAAL,CAAWG,SAAX,CAAqBJ,CAAC,CAACN,KAAvB;MACD,CAFM,MAEA,IAAIM,CAAC,CAACP,IAAF,KAAW,QAAf,EAAyB;QAC9B,MAAKQ,KAAL,CAAWI,KAAX,CAAiB,YAAjB;MACD,CAFM,MAEA;QACL,MAAKJ,KAAL,CAAWI,KAAX,CAAiBL,CAAC,CAACN,KAAnB;MACD;IACF,CAvCkB;IAAA,kGAyCH,UAAAY,MAAM,EAAI;MACxB,IAAQC,gBAAR,GAA6B,MAAKX,KAAlC,CAAQW,gBAAR;;MAEA,IAAIA,gBAAJ,EAAsB;QACpB,IAAMC,aAAa,GAAG,MAAKC,wBAAL,CAA8BF,gBAA9B,EAAgDD,MAAhD,CAAtB;;QAEA,MAAKI,QAAL,CAAc;UAAEC,WAAW,EAAEH;QAAf,CAAd;MACD;IACF,CAjDkB;IAAA,uGAmDE,YAAM;MACzB,MAAKZ,KAAL,CAAWgB,gBAAX;;MACA,MAAKC,OAAL,CAAa;QACXpB,IAAI,EAAE;MADK,CAAb;;MAIA,MAAKqB,aAAL,CAAmB,IAAnB;IACD,CA1DkB;IAAA,mGA4DF,UAAAC,KAAK,EAAI;MACxB,mBAAgC,MAAKnB,KAArC;MAAA,IAAQG,QAAR,gBAAQA,QAAR;MAAA,IAAkBF,SAAlB,gBAAkBA,SAAlB;MAEA,IAAAmB,sBAAA;;MAEA,MAAKF,aAAL,CAAmB,IAAnB,EALwB,CAOxB;;;MACA,IAAIjB,SAAS,KAAKkB,KAAK,CAACE,OAAN,CAAc,GAAd,MAAuB,CAAC,CAAxB,IAA6BF,KAAK,CAACE,OAAN,CAAc,GAAd,MAAuB,CAAC,CAA1D,CAAT,IAAyE,MAAKhB,KAAlF,EAAyF;QACvF,MAAKA,KAAL,CAAWC,KAAX;;QACA,MAAKD,KAAL,CAAWI,KAAX,CAAiBU,KAAK,CAACG,OAAN,CAAc5B,YAAd,EAA4B,EAA5B,CAAjB;;QACA;MACD;;MAEDS,QAAQ,CAACgB,KAAD,CAAR;IACD,CA3EkB;IAAA,uGA0GE,UAAAI,GAAG,EAAI;MAC1B,MAAKT,QAAL,CAAc;QAAEU,cAAc,EAAED,GAAG,CAACE,MAAJ,CAAW3B;MAA7B,CAAd;IACD,CA5GkB;IAAA,6GA8GQ,UAACa,gBAAD,EAAmBD,MAAnB,EAA8B;MACvD,WAAmB,MAAKL,KAAL,IAAc,MAAKA,KAAL,CAAWL,KAA1B,IAAoC,EAAtD;MAAA,IAAQmB,KAAR,QAAQA,KAAR;;MAEA,IAAIA,KAAJ,EAAW;QACT,IAAMO,KAAK,GAAG,CAACP,KAAK,CAACQ,KAAN,CAAY,cAAZ,KAA+B,EAAhC,EAAoCC,MAAlD;QAEA,OAAOlB,MAAM,GAAGgB,KAAK,KAAKf,gBAAgB,GAAG,CAAhC,GAAoCe,KAAK,KAAKf,gBAA3D;MACD;;MAED,OAAO,KAAP;IACD,CAxHkB;IAGjB,MAAKkB,KAAL,GAAa;MAAEL,cAAc,EAAE,gBAAlB;MAAoCT,WAAW,EAAE;IAAjD,CAAb;IAHiB;EAIlB;;;;WAED,6BAAoB;MAClB,IAAI,KAAKV,KAAL,IAAc,KAAKL,KAAL,CAAW8B,SAA7B,EAAwC;QACtC,KAAKzB,KAAL,CAAW0B,KAAX;MACD;IACF;;;;IAmED;AACF;IACE,+BAAsBC,SAAtB,EAAiCC,SAAjC,EAA4C;MAC1C,IAAMC,gBAAgB,GAAG,KAAK7B,KAAL,CAAW8B,SAAX,CAAqBhB,KAArB,OAAiCa,SAAS,CAACb,KAApE;MACA3B,GAAG,CAAC,0BAAD,EAA6B,oBAA7B,EAAmD0C,gBAAnD,CAAH;;MAEA,IAAI,CAAC,IAAAE,mBAAA,EAAQ,KAAKpC,KAAL,CAAWqC,KAAnB,EAA0BL,SAAS,CAACK,KAApC,CAAL,EAAiD;QAC/C,OAAO,IAAP;MACD;;MAED,IAAI,CAACH,gBAAD,IAAqB,KAAKlC,KAAL,CAAWsC,UAAX,KAA0BN,SAAS,CAACM,UAA7D,EAAyE;QACvE,OAAO,IAAP;MACD;;MAED,IAAI,CAACJ,gBAAD,IAAqB,KAAKlC,KAAL,CAAWC,SAAX,KAAyB+B,SAAS,CAAC/B,SAA5D,EAAuE;QACrE,OAAO,IAAP;MACD;;MAED,IAAI,CAACiC,gBAAD,IAAqB,KAAKL,KAAL,CAAWL,cAAX,KAA8BS,SAAS,CAACT,cAAjE,EAAiF;QAC/E,OAAO,IAAP;MACD;;MAED,IAAI,CAACU,gBAAD,IAAqB,KAAKlC,KAAL,CAAWuC,gBAApC,EAAsD;QACpD,OAAO,KAAKvC,KAAL,CAAWwC,UAAX,KAA0BR,SAAS,CAACQ,UAA3C;MACD;;MAED,OAAON,gBAAP;IACD;;;WAkBD,kBAAS;MAAA;;MACP,mBAgBI,KAAKlC,KAhBT;MAAA,IACEyC,UADF,gBACEA,UADF;MAAA,IAEEH,UAFF,gBAEEA,UAFF;MAAA,IAGEI,gBAHF,gBAGEA,gBAHF;MAAA,IAIEC,cAJF,gBAIEA,cAJF;MAAA,IAKEJ,gBALF,gBAKEA,gBALF;MAAA,IAMEK,oBANF,gBAMEA,oBANF;MAAA,IAOEJ,UAPF,gBAOEA,UAPF;MAAA,IAQEvC,SARF,gBAQEA,SARF;MAAA,IASE4C,SATF,gBASEA,SATF;MAAA,IAUEC,eAVF,gBAUEA,eAVF;MAAA,IAWE3B,KAXF,gBAWEA,KAXF;MAAA,IAYE4B,QAZF,gBAYEA,OAZF;MAAA,IAaEC,OAbF,gBAaEA,MAbF;MAAA,IAcEC,OAdF,gBAcEA,OAdF;MAAA,IAeEZ,KAfF,gBAeEA,KAfF;MAiBA,IAAMa,gBAAgB,GAAG,CAACX,gBAAD,IAAsBA,gBAAgB,IAAIC,UAAnE;MACA,IAAQzB,WAAR,GAAwB,KAAKc,KAA7B,CAAQd,WAAR;MAEAvB,GAAG,CAAC,UAAD,EAAa2B,KAAb,CAAH;MAEA,oBACE;QAAK,SAAS,EAAE,IAAAgC,sBAAA,EAAGF,OAAO,CAACG,WAAX,EAAwBX,UAAU,CAACW,WAAnC;MAAhB,gBACE;QAAK,SAAS,EAAE,IAAAD,sBAAA,EAAGF,OAAO,CAACI,qBAAX,uCAAqCJ,OAAO,CAACK,IAA7C,EAAoDT,SAApD;MAAhB,GACGD,oBAAoB,iBACnB,gCAAC,wBAAD;QAAgB,KAAK,EAAC,iBAAtB;QAAwC,SAAS,EAAEK,OAAO,CAACM;MAA3D,gBACE,gCAAC,kBAAD;QACE,SAAS,EAAEN,OAAO,CAACO,MADrB;QAEE,QAAQ,EAAE,KAAKC,kBAFjB;QAGE,KAAK,EAAE,KAAK5B,KAAL,CAAWL;MAHpB,gBAKE,gCAAC,oBAAD;QAAU,KAAK,EAAC;MAAhB,qCALF,eAME,gCAAC,oBAAD;QAAU,KAAK,EAAC;MAAhB,wBANF,eAOE,gCAAC,oBAAD;QAAU,KAAK,EAAC;MAAhB,wBAPF,eAQE,gCAAC,oBAAD;QAAU,KAAK,EAAC;MAAhB,yBARF,eASE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,iBATF,eAUE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,iBAVF,eAWE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,iBAXF,eAYE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,kBAZF,eAaE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,cAbF,eAcE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,sBAdF,eAeE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,gBAfF,eAgBE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,oBAhBF,eAiBE,gCAAC,oBAAD;QAAU,KAAK,EAAE;MAAjB,cAjBF,CADF,CAFJ,eAwBE;QAAK,SAAS,EAAE,IAAA2B,sBAAA,EAAGF,OAAO,CAACS,cAAX,EAA2BrB,KAAK,GAAGY,OAAO,CAACZ,KAAX,GAAmB,EAAnD;MAAhB,gBACE,gCAAC,aAAD,CAAI,KAAJ;QACE,OAAO,EAAE,mBAAM;UACbU,QAAO,IAAIA,QAAO,EAAlB;;UACA,MAAI,CAAC7B,aAAL,CAAmB,KAAnB;QACD,CAJH;QAKE,MAAM,EAAE,gBAAAyC,KAAK,EAAI;UACf,MAAI,CAACzC,aAAL,CAAmB,KAAnB;;UACA8B,OAAM,IAAIA,OAAM,CAACW,KAAD,CAAhB;QACD,CARH;QASE,SAAS,EAAE,IAAAR,sBAAA,EACTF,OAAO,CAACW,UADC,EAETnB,UAAU,CAACoB,MAFF,EAGT,CAACjB,oBAAD,GAAwBK,OAAO,CAACa,cAAhC,GAAiD,EAHxC,CATb;QAcE,QAAQ,EAAE,kBAAAC,CAAC;UAAA,OAAK,MAAI,CAAC1D,KAAL,GAAa0D,CAAlB;QAAA,CAdb;QAeE,KAAK,EAAE5C,KAfT;QAgBE,QAAQ,EAAE,KAAK6C;MAhBjB,EADF,CAxBF,CADF,EA8CGtB,gBAAgB,iBACf,gCAAC,kBAAD;QACE,SAAS,EAAEO,OAAO,CAACgB,oBADrB;QAEE,IAAI,EAAC,SAFP;QAGE,KAAK,EAAE;UAAEC,MAAM,EAAEhB,gBAAgB,GAAG,OAAH,GAAa;QAAvC,CAHT;QAIE,OAAO,EAAE,KAAKiB,kBAJhB;QAKE,QAAQ,EAAEpD;MALZ,qBA/CJ,eAyDE;QAAI,SAAS,EAAEkC,OAAO,CAACmB;MAAvB,EAzDF,EA0DGlB,gBAAgB,iBACf,gCAAC,2BAAD;QACE,SAAS,EAAED,OAAO,CAACoB,QADrB;QAEE,eAAe,EAAEvB,eAFnB;QAGE,cAAc,EAAEH,cAHlB;QAIE,IAAI,EAAEC,oBAAoB,GAAG,KAAKf,KAAL,CAAWL,cAAd,GAA+Bc,UAJ3D;QAKE,OAAO,EAAE,KAAKrB,OALhB;QAME,SAAS,EAAEhB;MANb,EA3DJ,CADF;IAuED;;;EA9O+BqE,iBAAA,CAAMC,S;;;iCAA3BxE,Y,eACQ;EACjB0C,UAAU,EAAE+B,qBAAA,CAAUC,MADL;EAEjBnC,UAAU,EAAEkC,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUI,MAA7B,CAApB,CAFK;EAGjB9C,SAAS,EAAE0C,qBAAA,CAAUK,IAHJ;EAIjBnC,gBAAgB,EAAE8B,qBAAA,CAAUK,IAJX;EAKjBrC,UAAU,EAAEgC,qBAAA,CAAUK,IALL;EAMjBtC,gBAAgB,EAAEiC,qBAAA,CAAUK,IANX;EAOjBjC,oBAAoB,EAAE4B,qBAAA,CAAUK,IAPf;EAQjB5E,SAAS,EAAEuE,qBAAA,CAAUK,IARJ;EASjBhC,SAAS,EAAE2B,qBAAA,CAAUK,IATJ;EAUjB3E,eAAe,EAAEsE,qBAAA,CAAUK,IAVV;EAWjB/B,eAAe,EAAE0B,qBAAA,CAAUC,MAXV;EAYjB9B,cAAc,EAAE6B,qBAAA,CAAUM,KAZT;EAajB3D,KAAK,EAAEqD,qBAAA,CAAUG,MAAV,CAAiBI,UAbP;EAcjB/D,gBAAgB,EAAEwD,qBAAA,CAAUQ,IAdX;EAejBjC,OAAO,EAAEyB,qBAAA,CAAUQ,IAfF;EAgBjBhC,MAAM,EAAEwB,qBAAA,CAAUQ,IAhBD;EAiBjB7E,QAAQ,EAAEqE,qBAAA,CAAUQ,IAAV,CAAeD,UAjBR;EAkBjB9B,OAAO,EAAEuB,qBAAA,CAAUC;AAlBF,C;;AAgPrB,IAAMQ,MAAM,GAAG,SAATA,MAAS,CAAAC,KAAK;EAAA,OAAK;IACvB7B,qBAAqB,EAAE;MACrB8B,OAAO,EAAE,MADY;MAErBC,UAAU,EAAE,QAFS;MAGrB,oBAAoB;QAClBC,SAAS,EAAE;MADO,CAHC;MAMrB,iCAAiC;QAC/BC,UAAU,EAAE;MADmB,CANZ;MASrB,iCAAiC;QAC/BC,QAAQ,EAAE,QADqB;QAE/B,OAAO;UACLC,UAAU,EAAE;QADP,CAFwB;QAK/B,YAAY;UACVC,GAAG,EAAE,QADK;UAEVC,IAAI,EAAE;QAFI,CALmB;QAS/B,WAAW;UACTD,GAAG,EAAE,SADI;UAETE,KAAK,EAAE;QAFE,CAToB;QAa/B,oBAAoB;UAClBF,GAAG,EAAE;QADa;MAbW,CATZ;MA0BrB,kCAAkC;QAChC,YAAY;UACVA,GAAG,EAAE,QADK;UAEVE,KAAK,EAAE;QAFG;MADoB,CA1Bb;MAgCrB,OAAO;QACLL,UAAU,EAAE,8BADP;QAGL,6BAA6B;UAC3BM,OAAO,EAAE;QADkB,CAHxB;QAOL,uBAAuB;UACrBP,SAAS,EAAE,MADU;UAErBQ,UAAU,EAAE,iBAFS;UAIrB,iBAAiB;YACfD,OAAO,EAAE,cADM;YAEfC,UAAU,EAAE,gBAFG;YAGfR,SAAS,EAAE;UAHI;QAJI,CAPlB;QAkBL,+BAA+B;UAC7BF,OAAO,EAAE;QADoB,CAlB1B;QAsBL,8BAA8B;UAC5BW,QAAQ,EAAE;QADkB,CAtBzB;QA0BL,6BAA6B;UAC3BC,aAAa,EAAE;QADY,CA1BxB;QA8BL,iCAAiC;UAC/BC,SAAS,EAAE,cADoB;UAE/BH,UAAU,EAAE,QAFmB;UAG/BR,SAAS,EAAE,iBAHoB;UAI/BY,UAAU,EAAE;QAJmB,CA9B5B;QAqCL,iBAAiB;UACfH,QAAQ,EAAE;QADK,CArCZ;QAyCL,0CAA0C;UACxCC,aAAa,EAAE,mBADyB;UAGxC,aAAa;YACXG,YAAY,EAAE;UADH;QAH2B,CAzCrC;QAiDL,0BAA0B;MAjDrB;IAhCc,CADA;IAqFvB5C,IAAI,EAAE;MACJ6B,OAAO,EAAE;IADL,CArFiB;IAwFvB5B,eAAe,EAAE;MACf4C,IAAI,EAAE,SADS;MAEfC,KAAK,EAAE,KAFQ;MAGfb,QAAQ,EAAE,OAHK;MAIfM,UAAU,EAAE,MAJG;MAKfR,SAAS,EAAE,KALI;MAMfa,YAAY,EAAE,KANC;MAOfG,WAAW,EAAE,KAPE;MASf,WAAW;QACTf,UAAU,EAAE;MADH,CATI;MAaf,SAAS;QACPA,UAAU,EAAE;MADL;IAbM,CAxFM;IAyGvB1B,UAAU,EAAE;MACV0C,QAAQ,EAAE,OADA;MAEVC,KAAK,EAAEA,eAAA,CAAMC,IAAN,EAFG;MAGVC,eAAe,EAAEF,eAAA,CAAMG,UAAN,EAHP;MAIVd,OAAO,EAAEV,KAAK,CAACyB,OAAN,CAAcC;IAJb,CAzGW;IA+GvB9C,cAAc,EAAE;MACdwC,QAAQ,EAAE;IADI,CA/GO;IAkHvBrC,oBAAoB,EAAE;MACpB4C,QAAQ,EAAE,UADU;MAEpBlB,KAAK,EAAE,MAFa;MAGpBmB,MAAM,EAAE;IAHY,CAlHC;IAuHvB1C,EAAE,EAAE;MACFwB,OAAO,EAAE,CADP;MAEFmB,MAAM,EAAE,CAFN;MAGFC,MAAM,EAAE,KAHN;MAIFF,MAAM,EAAE,MAJN;MAKFG,YAAY,sBAAe/B,KAAK,CAACgC,OAAN,CAAcC,OAAd,CAAsBC,IAArC;IALV,CAvHmB;IA8HvBhE,WAAW,EAAE;MACXiE,MAAM,EAAE,CADG;MAEXR,QAAQ,EAAE,UAFC;MAGXS,SAAS,EAAE,QAHA;MAIXlB,KAAK,EAAE,MAJI;MAKX,qBAAqB;QACnBU,MAAM,EAAE;MADW,CALV;MAQX,mBAAmB;QACjBS,OAAO,EAAE,MADQ;QAEjBC,SAAS,EAAE,MAFM;QAGjBV,MAAM,uBAAgB5B,KAAK,CAACgC,OAAN,CAAcC,OAAd,CAAsBC,IAAtC,CAHW;QAIjBK,YAAY,EAAE;MAJG,CARR;MAcX,yBAAyB;QACvBX,MAAM,EAAE,iBADe;QAEvBb,UAAU,EAAE;MAFW,CAdd;MAkBX,+BAA+B;QAC7Bd,OAAO,EAAE;MADoB,CAlBpB;MAqBX,8BAA8B;QAC5BA,OAAO,EAAE;MADmB,CArBnB;MAwBX,uBAAuB;QACrBa,SAAS,EAAE,sBADU;QAErBC,UAAU,EAAE;MAFS,CAxBZ;MA4BX,iCAAiC;QAC/BV,QAAQ,EAAE;MADqB,CA5BtB;MA+BX,uBAAuB;QACrBC,UAAU,EAAE;MADS;IA/BZ,CA9HU;IAiKvB9B,cAAc,EAAE;MACd6B,QAAQ,EAAE,OADI;MAEde,QAAQ,EAAE,OAFI;MAGdoB,SAAS,EAAE,MAHG;MAIdtB,KAAK,EAAE,MAJO;MAKdjB,OAAO,EAAE,MALK;MAMdE,SAAS,EAAEH,KAAK,CAACyB,OAAN,CAAcC,IANX;MAOdV,YAAY,EAAEhB,KAAK,CAACyB,OAAN,CAAcC;IAPd,CAjKO;IA0KvBvE,KAAK,EAAE;MACLyE,MAAM,EAAE;IADH,CA1KgB;IA6KvBzC,QAAQ,EAAE;MACR,OAAO;QACLiB,UAAU,EAAE,8BADP;QAGL,6BAA6B;UAC3BM,OAAO,EAAE;QADkB,CAHxB;QAOL,uBAAuB;UACrBP,SAAS,EAAE,MADU;UAErBQ,UAAU,EAAE,iBAFS;UAIrB,iBAAiB;YACfD,OAAO,EAAE,cADM;YAEfC,UAAU,EAAE,gBAFG;YAGfR,SAAS,EAAE;UAHI;QAJI,CAPlB;QAkBL,+BAA+B;UAC7BF,OAAO,EAAE;QADoB,CAlB1B;QAsBL,8BAA8B;UAC5BW,QAAQ,EAAE;QADkB,CAtBzB;QA0BL,iCAAiC;UAC/BT,SAAS,EAAE,MADoB;UAE/BY,UAAU,EAAE;QAFmB,CA1B5B;QA+BL,6BAA6B;UAC3BF,aAAa,EAAE;QADY;MA/BxB;IADC;EA7Ka,CAAL;AAAA,CAApB;;eAoNe,IAAA4B,kBAAA,EAAW1C,MAAX,EAAmBlF,YAAnB,C"}
1
+ {"version":3,"file":"editor-and-pad.js","names":["log","debug","decimalRegex","toNodeData","data","type","value","EditorAndPad","props","noDecimal","noLatexHandling","onChange","c","input","clear","command","keystroke","write","isEdit","maxResponseAreas","shouldDisable","checkResponseAreasNumber","setState","addDisabled","onAnswerBlockAdd","onClick","updateDisable","latex","updateSpans","indexOf","replace","evt","equationEditor","target","count","match","length","state","autoFocus","focus","nextProps","nextState","inputIsDifferent","mathField","isEqual","error","keypadMode","controlledKeypad","showKeypad","classNames","allowAnswerBlock","additionalKeys","controlledKeypadMode","hideInput","layoutForKeyPad","onFocus","onBlur","classes","shouldShowKeypad","cx","mathToolbar","inputAndTypeContainer","hide","selectContainer","select","onEditorTypeChange","inputContainer","event","mathEditor","editor","longMathEditor","r","onEditorChange","addAnswerBlockButton","bottom","onAnswerBlockClick","hr","React","Component","PropTypes","object","oneOfType","string","number","bool","array","isRequired","func","styles","theme","display","alignItems","fontFamily","minWidth","lineHeight","top","left","right","flex","width","marginLeft","marginTop","marginBottom","marginRight","maxWidth","color","text","backgroundColor","background","padding","spacing","unit","position","border","margin","height","borderBottom","palette","primary","main","zIndex","textAlign","outline","boxShadow","borderRadius","paddingTop","borderTop","minHeight","withStyles"],"sources":["../src/editor-and-pad.jsx"],"sourcesContent":["import { HorizontalKeypad, mq } from '@pie-lib/math-input';\nimport React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nconst log = debug('@pie-lib:math-toolbar:editor-and-pad');\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Select from '@material-ui/core/Select';\nimport { updateSpans } from '@pie-lib/math-input';\nimport isEqual from 'lodash/isEqual';\n\nconst decimalRegex = /\\.|,/g;\n\nconst toNodeData = data => {\n if (!data) {\n return;\n }\n\n const { type, value } = data;\n\n if (type === 'command' || type === 'cursor') {\n return data;\n } else if (type === 'answer') {\n return { type: 'answer', ...data };\n } else if (value === 'clear') {\n return { type: 'clear' };\n } else {\n return { type: 'write', value };\n }\n};\n\nexport class EditorAndPad extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n showKeypad: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n noDecimal: PropTypes.bool,\n hideInput: PropTypes.bool,\n noLatexHandling: PropTypes.bool,\n layoutForKeyPad: PropTypes.object,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n this.state = { equationEditor: 'item-authoring', addDisabled: false };\n }\n\n componentDidMount() {\n if (this.input && this.props.autoFocus) {\n this.input.focus();\n }\n }\n\n onClick = data => {\n const { noDecimal, noLatexHandling, onChange } = this.props;\n const c = toNodeData(data);\n log('mathChange: ', c);\n\n if (noLatexHandling) {\n onChange(c.value);\n return;\n }\n\n // if decimals are not allowed for this response, we discard the input\n if (noDecimal && (c.value === '.' || c.value === ',')) {\n return;\n }\n\n if (!c) {\n return;\n }\n\n if (c.type === 'clear') {\n log('call clear...');\n this.input.clear();\n } else if (c.type === 'command') {\n this.input.command(c.value);\n } else if (c.type === 'cursor') {\n this.input.keystroke(c.value);\n } else if (c.type === 'answer') {\n this.input.write('%response%');\n } else {\n this.input.write(c.value);\n }\n };\n\n updateDisable = isEdit => {\n const { maxResponseAreas } = this.props;\n\n if (maxResponseAreas) {\n const shouldDisable = this.checkResponseAreasNumber(maxResponseAreas, isEdit);\n\n this.setState({ addDisabled: shouldDisable });\n }\n };\n\n onAnswerBlockClick = () => {\n this.props.onAnswerBlockAdd();\n this.onClick({\n type: 'answer'\n });\n\n this.updateDisable(true);\n };\n\n onEditorChange = latex => {\n const { onChange, noDecimal } = this.props;\n\n updateSpans();\n\n this.updateDisable(true);\n\n // if no decimals are allowed and the last change is a decimal dot, discard the change\n if (noDecimal && (latex.indexOf('.') !== -1 || latex.indexOf(',') !== -1) && this.input) {\n this.input.clear();\n this.input.write(latex.replace(decimalRegex, ''));\n return;\n }\n\n onChange(latex);\n };\n\n /** Only render if the mathquill instance's latex is different\n * or the keypad state changed from one state to the other (shown / hidden) */\n shouldComponentUpdate(nextProps, nextState) {\n const inputIsDifferent = this.input.mathField.latex() !== nextProps.latex;\n log('[shouldComponentUpdate] ', 'inputIsDifferent: ', inputIsDifferent);\n\n if (!isEqual(this.props.error, nextProps.error)) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.keypadMode !== nextProps.keypadMode) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.noDecimal !== nextProps.noDecimal) {\n return true;\n }\n\n if (!inputIsDifferent && this.state.equationEditor !== nextState.equationEditor) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.controlledKeypad) {\n return this.props.showKeypad !== nextProps.showKeypad;\n }\n\n return inputIsDifferent;\n }\n\n onEditorTypeChange = evt => {\n this.setState({ equationEditor: evt.target.value });\n };\n\n checkResponseAreasNumber = (maxResponseAreas, isEdit) => {\n const { latex } = (this.input && this.input.props) || {};\n\n if (latex) {\n const count = (latex.match(/answerBlock/g) || []).length;\n\n return isEdit ? count === maxResponseAreas - 1 : count === maxResponseAreas;\n }\n\n return false;\n };\n\n render() {\n const {\n classNames,\n keypadMode,\n allowAnswerBlock,\n additionalKeys,\n controlledKeypad,\n controlledKeypadMode,\n showKeypad,\n noDecimal,\n hideInput,\n layoutForKeyPad,\n latex,\n onFocus,\n onBlur,\n classes,\n error\n } = this.props;\n const shouldShowKeypad = !controlledKeypad || (controlledKeypad && showKeypad);\n const { addDisabled } = this.state;\n\n log('[render]', latex);\n\n return (\n <div className={cx(classes.mathToolbar, classNames.mathToolbar)}>\n <div className={cx(classes.inputAndTypeContainer, { [classes.hide]: hideInput })}>\n {controlledKeypadMode && (\n <InputContainer label=\"Equation Editor\" className={classes.selectContainer}>\n <Select\n className={classes.select}\n onChange={this.onEditorTypeChange}\n value={this.state.equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n <MenuItem value={'language'}>Language</MenuItem>\n </Select>\n </InputContainer>\n )}\n <div className={cx(classes.inputContainer, error ? classes.error : '')}>\n <mq.Input\n onFocus={() => {\n onFocus && onFocus();\n this.updateDisable(false);\n }}\n onBlur={event => {\n this.updateDisable(false);\n onBlur && onBlur(event);\n }}\n className={cx(\n classes.mathEditor,\n classNames.editor,\n !controlledKeypadMode ? classes.longMathEditor : ''\n )}\n innerRef={r => (this.input = r)}\n latex={latex}\n onChange={this.onEditorChange}\n />\n </div>\n </div>\n {allowAnswerBlock && (\n <Button\n className={classes.addAnswerBlockButton}\n type=\"primary\"\n style={{ bottom: shouldShowKeypad ? '320px' : '20px' }}\n onClick={this.onAnswerBlockClick}\n disabled={addDisabled}\n >\n + Response Area\n </Button>\n )}\n <hr className={classes.hr} />\n {shouldShowKeypad && (\n <HorizontalKeypad\n layoutForKeyPad={layoutForKeyPad}\n additionalKeys={additionalKeys}\n mode={controlledKeypadMode ? this.state.equationEditor : keypadMode}\n onClick={this.onClick}\n noDecimal={noDecimal}\n />\n )}\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n inputAndTypeContainer: {\n display: 'flex',\n alignItems: 'center',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important'\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px'\n },\n '&:after': {\n top: '-2.36em',\n right: '-1px'\n },\n '&.mq-empty:after': {\n top: '-0.45em'\n }\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px'\n }\n }\n },\n hide: {\n display: 'none'\n },\n selectContainer: {\n flex: 'initial',\n width: '25%',\n minWidth: '100px',\n marginLeft: '15px',\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n mathEditor: {\n maxWidth: '400px',\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit\n },\n longMathEditor: {\n maxWidth: '500px'\n },\n addAnswerBlockButton: {\n position: 'absolute',\n right: '12px',\n border: '1px solid lightgrey'\n },\n hr: {\n padding: 0,\n margin: 0,\n height: '1px',\n border: 'none',\n borderBottom: `solid 1px ${theme.palette.primary.main}`\n },\n mathToolbar: {\n zIndex: 9,\n position: 'relative',\n textAlign: 'center',\n width: 'auto',\n '& > .mq-math-mode': {\n border: 'solid 1px lightgrey'\n },\n '& > .mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: `dotted 1px ${theme.palette.primary.main}`,\n borderRadius: '0px'\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n paddingTop: '0 !important'\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important'\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important'\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em'\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85\n }\n },\n inputContainer: {\n minWidth: '500px',\n maxWidth: '900px',\n minHeight: '40px',\n width: '100%',\n display: 'flex',\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit\n },\n error: {\n border: '2px solid red'\n }\n});\n\nexport default withStyles(styles)(EditorAndPad);\n"],"mappings":"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"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.8.1-next.417+1fb793c4",
6
+ "version": "1.8.1-next.437+7133506c",
7
7
  "description": "Math toolbar for editing math equations",
8
8
  "keywords": [
9
9
  "math",
@@ -19,7 +19,7 @@
19
19
  "dependencies": {
20
20
  "@material-ui/core": "^3.8.3",
21
21
  "@material-ui/icons": "^3.0.2",
22
- "@pie-lib/math-input": "^6.6.1-next.417+1fb793c4",
22
+ "@pie-lib/math-input": "^6.6.1-next.437+7133506c",
23
23
  "classnames": "^2.2.6",
24
24
  "debug": "^4.1.1",
25
25
  "keycode": "^2.2.0",
@@ -33,5 +33,5 @@
33
33
  "@pie-lib/test-utils": "^0.2.19"
34
34
  },
35
35
  "scripts": {},
36
- "gitHead": "1fb793c45638a876dd172e2816c3b545527dee77"
36
+ "gitHead": "7133506c26c247c6be91245284e61ccd14789d4f"
37
37
  }
@@ -81,6 +81,10 @@ export class EditorAndPad extends React.Component {
81
81
  return;
82
82
  }
83
83
 
84
+ if (!c) {
85
+ return;
86
+ }
87
+
84
88
  if (c.type === 'clear') {
85
89
  log('call clear...');
86
90
  this.input.clear();
@@ -260,7 +264,6 @@ export class EditorAndPad extends React.Component {
260
264
  <hr className={classes.hr} />
261
265
  {shouldShowKeypad && (
262
266
  <HorizontalKeypad
263
- className={classes.keyboard}
264
267
  layoutForKeyPad={layoutForKeyPad}
265
268
  additionalKeys={additionalKeys}
266
269
  mode={controlledKeypadMode ? this.state.equationEditor : keypadMode}
@@ -277,10 +280,7 @@ const styles = theme => ({
277
280
  inputAndTypeContainer: {
278
281
  display: 'flex',
279
282
  alignItems: 'center',
280
- '& .mq-root-block': {
281
- marginTop: '8px',
282
- },
283
- '& .mq-math-mode .mq-overarrow': {
283
+ '& *': {
284
284
  fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
285
285
  },
286
286
  '& .mq-overarrow.mq-arrow-both': {
@@ -305,57 +305,6 @@ const styles = theme => ({
305
305
  top: '-0.4em',
306
306
  right: '-1px'
307
307
  }
308
- },
309
- '& *': {
310
- fontFamily: 'MJXZERO, MJXTEX-I !important',
311
-
312
- '& .mq-math-mode .mq-empty': {
313
- padding: '9px 1px !important'
314
- },
315
-
316
- '& .mq-longdiv-inner': {
317
- marginTop: '-1px',
318
- marginLeft: '5px !important;',
319
-
320
- '& > .mq-empty': {
321
- padding: '0 !important',
322
- marginLeft: '0px !important',
323
- marginTop: '2px'
324
- }
325
- },
326
-
327
- '& .mq-math-mode .mq-longdiv': {
328
- display: 'flex !important'
329
- },
330
-
331
- '& .mq-math-mode .mq-supsub': {
332
- fontSize: '70.7% !important'
333
- },
334
-
335
- '& .mq-math-mode .mq-paren': {
336
- verticalAlign: 'middle !important'
337
- },
338
-
339
- '& .mq-math-mode .mq-sqrt-stem': {
340
- borderTop: '0.07em solid',
341
- marginLeft: '-1.5px',
342
- marginTop: '-2px !important',
343
- paddingTop: '5px !important'
344
- },
345
-
346
- '& .mq-supsub ': {
347
- fontSize: '70.7%'
348
- },
349
-
350
- '& .mq-math-mode .mq-supsub.mq-sup-only': {
351
- verticalAlign: '-0.1em !important',
352
-
353
- '& .mq-sup': {
354
- marginBottom: '0px !important'
355
- }
356
- },
357
-
358
- '-webkit-font-smoothing': 'antialiased !important'
359
308
  }
360
309
  },
361
310
  hide: {
@@ -368,15 +317,7 @@ const styles = theme => ({
368
317
  marginLeft: '15px',
369
318
  marginTop: '5px',
370
319
  marginBottom: '5px',
371
- marginRight: '5px',
372
-
373
- '& label': {
374
- fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
375
- },
376
-
377
- '& div': {
378
- fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
379
- }
320
+ marginRight: '5px'
380
321
  },
381
322
  mathEditor: {
382
323
  maxWidth: '400px',
@@ -445,43 +386,6 @@ const styles = theme => ({
445
386
  },
446
387
  error: {
447
388
  border: '2px solid red'
448
- },
449
- keyboard: {
450
- '& *': {
451
- fontFamily: 'MJXZERO, MJXTEX-I !important',
452
-
453
- '& .mq-math-mode .mq-empty': {
454
- padding: '9px 1px !important'
455
- },
456
-
457
- '& .mq-longdiv-inner': {
458
- marginTop: '-1px',
459
- marginLeft: '5px !important;',
460
-
461
- '& > .mq-empty': {
462
- padding: '0 !important',
463
- marginLeft: '0px !important',
464
- marginTop: '2px'
465
- }
466
- },
467
-
468
- '& .mq-math-mode .mq-longdiv': {
469
- display: 'flex !important'
470
- },
471
-
472
- '& .mq-math-mode .mq-supsub': {
473
- fontSize: '70.7% !important'
474
- },
475
-
476
- '& .mq-math-mode .mq-sqrt-stem': {
477
- marginTop: '-5px',
478
- paddingTop: '4px'
479
- },
480
-
481
- '& .mq-math-mode .mq-paren': {
482
- verticalAlign: 'middle !important'
483
- }
484
- }
485
389
  }
486
390
  });
487
391