@pie-lib/math-input 6.11.4 → 6.13.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/NEXT.CHANGELOG.json +1 -0
  3. package/lib/__tests__/math-input-test.js +109 -0
  4. package/lib/horizontal-keypad.js +10 -4
  5. package/lib/index.js +11 -15
  6. package/lib/keypad/__tests__/index.test.js +41 -0
  7. package/lib/keypad/__tests__/keys-layout.test.js +15 -0
  8. package/lib/keypad/index.js +96 -25
  9. package/lib/keypad/keys-layout.js +1 -1
  10. package/lib/keys/__tests__/utils.test.js +60 -0
  11. package/lib/keys/basic-operators.js +1 -1
  12. package/lib/keys/chars.js +1 -1
  13. package/lib/keys/comparison.js +1 -1
  14. package/lib/keys/constants.js +1 -1
  15. package/lib/keys/digits.js +1 -1
  16. package/lib/keys/edit.js +1 -1
  17. package/lib/keys/exponent.js +1 -1
  18. package/lib/keys/fractions.js +1 -1
  19. package/lib/keys/geometry.js +5 -3
  20. package/lib/keys/grades.js +13 -1
  21. package/lib/keys/index.js +1 -1
  22. package/lib/keys/log.js +2 -2
  23. package/lib/keys/logic.js +1 -1
  24. package/lib/keys/matrices.js +1 -1
  25. package/lib/keys/misc.js +1 -1
  26. package/lib/keys/navigation.js +1 -1
  27. package/lib/keys/operators.js +1 -1
  28. package/lib/keys/statistics.js +1 -1
  29. package/lib/keys/sub-sup.js +1 -1
  30. package/lib/keys/trigonometry.js +1 -1
  31. package/lib/keys/utils.js +1 -1
  32. package/lib/keys/vars.js +1 -1
  33. package/lib/math-input.js +1 -1
  34. package/lib/mq/__tests__/input.test.js +119 -0
  35. package/lib/mq/__tests__/static.test.js +74 -0
  36. package/lib/mq/common-mq-styles.js +110 -0
  37. package/lib/mq/custom-elements.js +1 -1
  38. package/lib/mq/index.js +9 -1
  39. package/lib/mq/input.js +13 -11
  40. package/lib/mq/static.js +199 -76
  41. package/lib/updateSpans.js +23 -0
  42. package/package.json +2 -2
  43. package/src/__tests__/__snapshots__/math-input-test.jsx.snap +152 -0
  44. package/src/__tests__/math-input-test.jsx +85 -0
  45. package/src/horizontal-keypad.jsx +14 -1
  46. package/src/index.jsx +1 -10
  47. package/src/keypad/__tests__/__snapshots__/index.test.jsx.snap +193 -0
  48. package/src/keypad/__tests__/index.test.jsx +24 -0
  49. package/src/keypad/__tests__/keys-layout.test.js +15 -0
  50. package/src/keypad/index.jsx +99 -15
  51. package/src/keys/__tests__/utils.test.js +57 -0
  52. package/src/keys/geometry.js +6 -2
  53. package/src/keys/grades.js +11 -0
  54. package/src/keys/log.js +1 -1
  55. package/src/mq/__tests__/__snapshots__/input.test.jsx.snap +9 -0
  56. package/src/mq/__tests__/input.test.jsx +92 -0
  57. package/src/mq/__tests__/static.test.jsx +57 -0
  58. package/src/mq/common-mq-styles.js +105 -0
  59. package/src/mq/index.js +2 -1
  60. package/src/mq/input.jsx +22 -9
  61. package/src/mq/static.jsx +142 -13
  62. package/src/updateSpans.js +15 -0
  63. package/README.md +0 -27
  64. package/lib/horizontal-keypad.js.map +0 -1
  65. package/lib/index.js.map +0 -1
  66. package/lib/keypad/index.js.map +0 -1
  67. package/lib/keypad/keys-layout.js.map +0 -1
  68. package/lib/keys/basic-operators.js.map +0 -1
  69. package/lib/keys/chars.js.map +0 -1
  70. package/lib/keys/comparison.js.map +0 -1
  71. package/lib/keys/constants.js.map +0 -1
  72. package/lib/keys/digits.js.map +0 -1
  73. package/lib/keys/edit.js.map +0 -1
  74. package/lib/keys/exponent.js.map +0 -1
  75. package/lib/keys/fractions.js.map +0 -1
  76. package/lib/keys/geometry.js.map +0 -1
  77. package/lib/keys/grades.js.map +0 -1
  78. package/lib/keys/index.js.map +0 -1
  79. package/lib/keys/log.js.map +0 -1
  80. package/lib/keys/logic.js.map +0 -1
  81. package/lib/keys/matrices.js.map +0 -1
  82. package/lib/keys/misc.js.map +0 -1
  83. package/lib/keys/navigation.js.map +0 -1
  84. package/lib/keys/operators.js.map +0 -1
  85. package/lib/keys/statistics.js.map +0 -1
  86. package/lib/keys/sub-sup.js.map +0 -1
  87. package/lib/keys/trigonometry.js.map +0 -1
  88. package/lib/keys/utils.js.map +0 -1
  89. package/lib/keys/vars.js.map +0 -1
  90. package/lib/math-input.js.map +0 -1
  91. package/lib/mq/custom-elements.js.map +0 -1
  92. package/lib/mq/index.js.map +0 -1
  93. package/lib/mq/input.js.map +0 -1
  94. package/lib/mq/static.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keypad/index.jsx"],"names":["log","LatexButton","theme","root","textTransform","padding","margin","fontSize","latexButton","pointerEvents","transform","marginBottom","backgroundColor","palette","secondary","main","borderTop","width","marginTop","fontFamily","top","lineHeight","left","right","minHeight","border","display","paddingTop","parallelButton","fontStyle","leftRightArrowButton","position","props","buttonClass","latex","classes","mqClassName","MQ","MathQuill","getInterface","span","document","createElement","innerHTML","mathField","StaticMath","parseLatex","e","className","onClick","ariaLabel","createCustomLayout","layoutObj","gridTemplateColumns","columns","gridTemplateRows","rows","gridAutoFlow","KeyPad","key","onPress","base","extras","transposed","_","flatten","noDecimal","write","label","baseSet","additionalKeys","layoutForKeyPad","onFocus","mode","noBaseSet","keysWithoutBaseSet","includes","allKeys","flowKeys","shift","length","style","Math","floor","keys","map","k","index","buttonClick","bind","common","labelButton","category","extraClass","comma","dot","disabled","keyIsNotAllowed","command","actions","extraProps","name","Icon","icon","React","Component","PropTypes","object","isRequired","string","array","func","bool","styles","gridRowGap","gridColumnGap","character","language","holder","height","borderRadius","spacing","unit","minWidth","primary","light","operators","comparison","green"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport IconButton from '@material-ui/core/IconButton';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { lighten, fade } from '@material-ui/core/styles/colorManipulator';\nimport green from '@material-ui/core/colors/green';\nimport { sortKeys } from './keys-layout';\nimport * as mq from '../mq';\nimport { baseSet } from '../keys';\nimport debug from 'debug';\nimport _ from 'lodash';\nimport MathQuill from '@pie-framework/mathquill';\n\nconst log = debug('pie-lib:math-inline:keypad');\n\nconst LatexButton = withStyles((theme) => ({\n root: {\n textTransform: 'none',\n padding: 0,\n margin: 0,\n fontSize: '110% !important',\n },\n latexButton: {\n pointerEvents: 'none',\n textTransform: 'none !important',\n '& .mq-scaled.mq-sqrt-prefix': {\n transform: 'scale(1, 0.9) !important',\n },\n '& .mq-sup-only .mq-sup': {\n marginBottom: '0.9px !important',\n },\n '& .mq-empty': {\n backgroundColor: `${fade(theme.palette.secondary.main, 0.4)} !important`,\n },\n '& .mq-overline .mq-overline-inner': {\n borderTop: '2px solid black',\n },\n '& .mq-overarrow': {\n width: '30px',\n marginTop: '0 !important',\n borderTop: '2px solid black',\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n\n '&.mq-arrow-both': {\n top: '0px !important',\n '& *': {\n lineHeight: '1 !important',\n },\n '&:before': {\n fontSize: '80%',\n left: 'calc(-13%)',\n top: '-0.31em',\n },\n '&:after': {\n fontSize: '80% !important',\n right: 'calc(-13%) !important',\n top: '-1.5em',\n },\n '&.mq-empty:before': {\n fontSize: '80%',\n left: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty:after': {\n fontSize: '80%',\n right: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty': {\n minHeight: '1.4em',\n },\n },\n '&.mq-arrow-right:before': {\n fontSize: '80%',\n right: 'calc(-13%)',\n top: '-0.26em',\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n },\n '& .mq-overarrow-inner .mq-overarrow-inner-right': {\n display: 'none !important',\n },\n },\n '& .mq-root-block': {\n padding: '5px !important',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:after': {\n right: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-right.mq-empty:before': {\n right: '-5px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:before': {\n left: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important',\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85,\n },\n '& .mq-overarc': {\n borderTop: '2px solid black !important',\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n },\n },\n parallelButton: {\n fontStyle: 'italic',\n },\n leftRightArrowButton: {\n '& .mq-overarrow.mq-arrow-both': {\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n '&:after': {\n position: 'absolute !important',\n top: '0px !important',\n },\n },\n },\n}))((props) => {\n let buttonClass;\n\n if (props.latex === '\\\\parallel') {\n buttonClass = classNames(props.classes.latexButton, props.mqClassName, props.classes.parallelButton);\n } else if (props.latex === '\\\\overleftrightarrow{\\\\overline{}}') {\n buttonClass = classNames(props.classes.latexButton, props.mqClassName, props.classes.leftRightArrowButton);\n } else {\n buttonClass = classNames(props.classes.latexButton, props.mqClassName);\n }\n\n try {\n const MQ = MathQuill.getInterface(2);\n const span = document.createElement('span');\n span.innerHTML = '';\n const mathField = MQ.StaticMath(span);\n\n mathField.parseLatex(props.latex);\n mathField.latex(props.latex);\n } catch (e) {\n // received latex has errors - do not create button\n return <></>;\n }\n\n return (\n <Button\n className={classNames(props.classes.root, props.className)}\n onClick={props.onClick}\n aria-label={props.ariaLabel}\n >\n <mq.Static className={buttonClass} latex={props.latex} />\n </Button>\n );\n});\n\nconst createCustomLayout = (layoutObj) => {\n if (layoutObj) {\n return {\n gridTemplateColumns: `repeat(${layoutObj.columns}, minmax(min-content, 150px))`,\n gridTemplateRows: `repeat(${layoutObj.rows}, minmax(40px, 60px))`,\n gridAutoFlow: 'initial',\n };\n }\n\n return {};\n};\n\nexport class KeyPad extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n baseSet: PropTypes.array,\n additionalKeys: PropTypes.array,\n layoutForKeyPad: PropTypes.object,\n onPress: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n noDecimal: PropTypes.bool,\n mode: PropTypes.string,\n };\n static defaultProps = {\n baseSet: baseSet,\n noDecimal: false,\n };\n\n buttonClick = (key) => {\n log('[buttonClick]', key);\n const { onPress } = this.props;\n onPress(key);\n };\n\n flowKeys = (base, extras) => {\n const transposed = [...sortKeys(base), ...sortKeys(extras)];\n return _.flatten(transposed);\n };\n\n keyIsNotAllowed = (key) => {\n const { noDecimal } = this.props;\n\n if (((key.write === '.' && key.label === '.') || (key.write === ',' && key.label === ',')) && noDecimal) {\n return true;\n }\n\n return false;\n };\n\n render() {\n const { classes, className, baseSet, additionalKeys, layoutForKeyPad, onFocus, mode } = this.props;\n\n const noBaseSet = ['non-negative-integers', 'integers', 'decimals', 'fractions', 'item-authoring', 'language'];\n\n const keysWithoutBaseSet = noBaseSet.includes(mode);\n const allKeys = keysWithoutBaseSet\n ? this.flowKeys([], additionalKeys || [])\n : this.flowKeys(baseSet, additionalKeys || []); //, ...sortKeys(additionalKeys)];\n\n const shift = allKeys.length % 5 ? 1 : 0;\n const style = {\n gridTemplateColumns: `repeat(${Math.floor(allKeys.length / 5) + shift}, minmax(min-content, 150px))`,\n ...createCustomLayout(layoutForKeyPad),\n };\n\n return (\n <div className={classNames(classes.keys, className, classes[mode])} style={style} onFocus={onFocus}>\n {allKeys.map((k, index) => {\n const onClick = this.buttonClick.bind(this, k);\n\n if (!k) {\n return <span key={`empty-${index}`} />;\n }\n\n const common = {\n onClick,\n className: classNames(\n classes.labelButton,\n !keysWithoutBaseSet && classes[k.category],\n classes[k.extraClass],\n k.label === ',' && classes.comma,\n k.label === '.' && classes.dot,\n ),\n disabled: this.keyIsNotAllowed(k),\n key: `${k.label || k.latex || k.command}-${index}`,\n ...(k.actions || {}),\n ...(k.extraProps || {}),\n };\n\n if (k.latex) {\n return (\n <LatexButton\n latex={k.latex}\n key={index}\n {...common}\n className={classes.latexButton}\n ariaLabel={k.ariaLabel ? k.ariaLabel : k.name || k.label}\n />\n );\n }\n\n if (k.label) {\n return (\n <Button key={index} {...common} aria-label={k.ariaLabel ? k.ariaLabel : k.name || k.label}>\n {k.label}\n </Button>\n );\n } else {\n const Icon = k.icon ? k.icon : 'div';\n\n return (\n <IconButton tabIndex={'-1'} {...common} key={index}>\n <Icon className={classes.icon} />\n </IconButton>\n );\n }\n })}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n keys: {\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n width: '100%',\n display: 'grid',\n gridTemplateRows: 'repeat(5, minmax(40px, 60px))',\n gridRowGap: '0px',\n gridColumnGap: '0px',\n gridAutoFlow: 'column',\n },\n character: {\n textTransform: 'initial !important',\n gridTemplateRows: 'repeat(5, minmax(40px, 50px)) !important',\n },\n language: {\n gridTemplateRows: 'repeat(5, minmax(40px, 50px)) !important',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n },\n holder: {\n position: 'relative',\n width: '100%',\n height: '100%',\n backgroundColor: '#cef',\n borderRadius: 0,\n padding: `${theme.spacing.unit}px 0 ${theme.spacing.unit}px 0`,\n },\n labelButton: {\n minWidth: 'auto',\n fontSize: '140% !important',\n backgroundColor: lighten(theme.palette.primary.light, 0.5),\n '&:hover': {\n backgroundColor: lighten(theme.palette.primary.light, 0.7),\n },\n borderRadius: 0,\n },\n latexButton: {\n minWidth: 'auto',\n borderRadius: 0,\n backgroundColor: lighten(theme.palette.primary.light, 0.5),\n '&:hover': {\n backgroundColor: lighten(theme.palette.primary.light, 0.7),\n },\n },\n base: {},\n operators: {\n backgroundColor: lighten(theme.palette.secondary.light, 0.5),\n '&:hover': {\n backgroundColor: lighten(theme.palette.secondary.light, 0.7),\n },\n },\n comparison: {\n backgroundColor: lighten(green[500], 0.5),\n '&:hover': {\n backgroundColor: lighten(green[500], 0.7),\n },\n },\n comma: {\n fontSize: '200% !important',\n lineHeight: '100%',\n },\n dot: {\n fontSize: '200% !important',\n lineHeight: '100%',\n },\n icon: {\n height: '30px',\n },\n});\n\nexport default withStyles(styles)(KeyPad);\n"],"file":"index.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keypad/keys-layout.js"],"names":["sortKeys","keys","_","times","length","push","out","zip","apply"],"mappings":";;;;;;;;;AAAA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,IAAD,EAAU;AAChC;AACAC,EAAAA,CAAC,CAACC,KAAF,CAAQ,IAAIF,IAAI,CAACG,MAAjB,EAAyB,YAAM;AAC7BH,IAAAA,IAAI,CAACI,IAAL,CAAU,EAAV;AACD,GAFD;;AAIA,MAAMC,GAAG,GAAGJ,CAAC,CAACK,GAAF,CAAMC,KAAN,CAAY,IAAZ,EAAkBP,IAAlB,CAAZ;;AACA,SAAOK,GAAP;AACD,CARM","sourcesContent":["import * as _ from 'lodash';\n\n/**\n * Sort additional keys.\n *\n * Expects an array of rows.\n * @param {} keys\n */\nexport const sortKeys = (keys) => {\n // add any missing rows\n _.times(5 - keys.length, () => {\n keys.push([]);\n });\n\n const out = _.zip.apply(null, keys);\n return out;\n};\n"],"file":"keys-layout.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/basic-operators.js"],"names":["set","equals","write","label","plus","minus","divide","name","DIVIDE","command","otherNotation","multiply","MULTIPLY"],"mappings":";;;;;;;AAAA;;AACA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,WAAN,CAAZ;AAEO,IAAMC,MAAM,GAAGD,GAAG,CAAC;AACxBE,EAAAA,KAAK,EAAE,GADiB;AAExBC,EAAAA,KAAK,EAAE;AAFiB,CAAD,CAAlB;;AAKA,IAAMC,IAAI,GAAGJ,GAAG,CAAC;AACtBE,EAAAA,KAAK,EAAE,GADe;AAEtBC,EAAAA,KAAK,EAAE;AAFe,CAAD,CAAhB;;AAKA,IAAME,KAAK,GAAGL,GAAG,CAAC;AACvBE,EAAAA,KAAK,EAAE,GADgB;AAEvBC,EAAAA,KAAK,EAAE;AAFgB,CAAD,CAAjB;;AAKA,IAAMG,MAAM,GAAGN,GAAG,CAAC;AACxBO,EAAAA,IAAI,EAAE,QADkB;AAExBJ,EAAAA,KAAK,EAAEK,aAFiB;AAGxBC,EAAAA,OAAO,EAAE,UAHe;AAIxBC,EAAAA,aAAa,EAAE;AAJS,CAAD,CAAlB;;AAOA,IAAMC,QAAQ,GAAGX,GAAG,CAAC;AAC1BO,EAAAA,IAAI,EAAE,UADoB;AAE1BJ,EAAAA,KAAK,EAAES,eAFmB;AAG1BH,EAAAA,OAAO,EAAE;AAHiB,CAAD,CAApB","sourcesContent":["import { DIVIDE, MULTIPLY } from './chars';\nimport { mkSet } from './utils';\n\nconst set = mkSet('operators');\n\nexport const equals = set({\n write: '=',\n label: '=',\n});\n\nexport const plus = set({\n write: '+',\n label: '+',\n});\n\nexport const minus = set({\n write: '−',\n label: '−',\n});\n\nexport const divide = set({\n name: 'divide',\n label: DIVIDE,\n command: '\\\\divide',\n otherNotation: '\\\\div',\n});\n\nexport const multiply = set({\n name: 'multiply',\n label: MULTIPLY,\n command: '\\\\times',\n});\n"],"file":"basic-operators.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/chars.js"],"names":["DELETE","LEFT_ARROW","RIGHT_ARROW","DIVIDE","MULTIPLY"],"mappings":";;;;;;AAAO,IAAMA,MAAM,GAAG,QAAf;;AACA,IAAMC,UAAU,GAAG,GAAnB;;AACA,IAAMC,WAAW,GAAG,GAApB;;AACA,IAAMC,MAAM,GAAG,MAAf;;AACA,IAAMC,QAAQ,GAAG,MAAjB","sourcesContent":["export const DELETE = '\\u232B';\nexport const LEFT_ARROW = '◀';\nexport const RIGHT_ARROW = '▶';\nexport const DIVIDE = '\\u00F7';\nexport const MULTIPLY = '\\u00D7';\n"],"file":"chars.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/comparison.js"],"names":["set","o","category","lessThan","name","latex","command","greaterThan","lessThanEqual","symbol","ariaLabel","greaterThanEqual"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAMA,GAAG,GAAG,SAANA,GAAM,CAACC,CAAD;AAAA,yCAAaA,CAAb;AAAgBC,IAAAA,QAAQ,EAAE;AAA1B;AAAA,CAAZ;;AAEO,IAAMC,QAAQ,GAAGH,GAAG,CAAC;AAC1BI,EAAAA,IAAI,EAAE,WADoB;AAE1BC,EAAAA,KAAK,EAAE,GAFmB;AAG1BC,EAAAA,OAAO,EAAE;AAHiB,CAAD,CAApB;;AAMA,IAAMC,WAAW,GAAGP,GAAG,CAAC;AAC7BI,EAAAA,IAAI,EAAE,cADuB;AAE7BC,EAAAA,KAAK,EAAE,GAFsB;AAG7BC,EAAAA,OAAO,EAAE;AAHoB,CAAD,CAAvB;;AAMA,IAAME,aAAa,GAAGR,GAAG,CAAC;AAC/BI,EAAAA,IAAI,EAAE,oBADyB;AAE/BC,EAAAA,KAAK,EAAE,MAFwB;AAG/BI,EAAAA,MAAM,EAAE,IAHuB;AAI/BH,EAAAA,OAAO,EAAE,MAJsB;AAK/BI,EAAAA,SAAS,EAAE;AALoB,CAAD,CAAzB;;AAQA,IAAMC,gBAAgB,GAAGX,GAAG,CAAC;AAClCI,EAAAA,IAAI,EAAE,uBAD4B;AAElCK,EAAAA,MAAM,EAAE,IAF0B;AAGlCH,EAAAA,OAAO,EAAE,MAHyB;AAIlCD,EAAAA,KAAK,EAAE;AAJ2B,CAAD,CAA5B","sourcesContent":["const set = (o) => ({ ...o, category: 'comparison' });\n\nexport const lessThan = set({\n name: 'Less than',\n latex: '<',\n command: '\\\\lt',\n});\n\nexport const greaterThan = set({\n name: 'Greater than',\n latex: '>',\n command: '\\\\gt',\n});\n\nexport const lessThanEqual = set({\n name: 'Less than or equal',\n latex: '\\\\le',\n symbol: '<=',\n command: '\\\\le',\n ariaLabel: 'less than or equal to',\n});\n\nexport const greaterThanEqual = set({\n name: 'Greater than or equal',\n symbol: '>=',\n command: '\\\\ge',\n latex: '\\\\ge',\n});\n"],"file":"comparison.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/constants.js"],"names":["set","pi","name","label","latex","command","category","eulers","infinity","halfInfinity"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,WAAN,CAAZ;AAEO,IAAMC,EAAE,GAAGD,GAAG,CAAC;AACpBE,EAAAA,IAAI,EAAE,IADc;AAEpBC,EAAAA,KAAK,EAAE,GAFa;AAGpBC,EAAAA,KAAK,EAAE,MAHa;AAIpBC,EAAAA,OAAO,EAAE,MAJW;AAKpBC,EAAAA,QAAQ,EAAE;AALU,CAAD,CAAd;;AAQA,IAAMC,MAAM,GAAGP,GAAG,CAAC;AACxBE,EAAAA,IAAI,EAAE,QADkB;AAExBC,EAAAA,KAAK,EAAE,GAFiB;AAGxBC,EAAAA,KAAK,EAAE,GAHiB;AAIxBC,EAAAA,OAAO,EAAE,GAJe;AAKxBC,EAAAA,QAAQ,EAAE;AALc,CAAD,CAAlB;;AAQA,IAAME,QAAQ,GAAGR,GAAG,CAAC;AAC1BE,EAAAA,IAAI,EAAE,UADoB;AAE1BC,EAAAA,KAAK,EAAE,SAFmB;AAG1BC,EAAAA,KAAK,EAAE,SAHmB;AAI1BC,EAAAA,OAAO,EAAE,SAJiB;AAK1BC,EAAAA,QAAQ,EAAE;AALgB,CAAD,CAApB;;AAQA,IAAMG,YAAY,GAAGT,GAAG,CAAC;AAC9BE,EAAAA,IAAI,EAAE,eADwB;AAE9BC,EAAAA,KAAK,EAAE,UAFuB;AAG9BC,EAAAA,KAAK,EAAE,UAHuB;AAI9BC,EAAAA,OAAO,EAAE,UAJqB;AAK9BC,EAAAA,QAAQ,EAAE;AALoB,CAAD,CAAxB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('constants');\n\nexport const pi = set({\n name: 'Pi',\n label: 'π',\n latex: '\\\\pi',\n command: '\\\\pi',\n category: 'constants',\n});\n\nexport const eulers = set({\n name: 'Eulers',\n label: 'e',\n latex: 'e',\n command: 'e',\n category: 'constants',\n});\n\nexport const infinity = set({\n name: 'Infinity',\n label: '\\\\infty',\n latex: '\\\\infty',\n command: '\\\\infty',\n category: 'constants',\n});\n\nexport const halfInfinity = set({\n name: 'Half Infinity',\n label: '\\\\propto',\n latex: '\\\\propto',\n command: '\\\\propto',\n category: 'constants',\n});\n"],"file":"constants.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/digits.js"],"names":["digitMap","comma","name","label","write","category","decimalPoint","String","map","n","reduce","acc","o"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,QAAQ,GAAG;AACf,KAAG,MADY;AAEf,KAAG,KAFY;AAGf,KAAG,KAHY;AAIf,KAAG,OAJY;AAKf,KAAG,MALY;AAMf,KAAG,MANY;AAOf,KAAG,KAPY;AAQf,KAAG,OARY;AASf,KAAG,OATY;AAUf,KAAG;AAVY,CAAjB;AAaA,IAAMC,KAAK,GAAG;AAAEC,EAAAA,IAAI,EAAE,OAAR;AAAiBC,EAAAA,KAAK,EAAE,GAAxB;AAA6BC,EAAAA,KAAK,EAAE,GAApC;AAAyCC,EAAAA,QAAQ,EAAE;AAAnD,CAAd;AAEA,IAAMC,YAAY,GAAG;AACnBJ,EAAAA,IAAI,EAAE,eADa;AAEnBC,EAAAA,KAAK,EAAE,GAFY;AAGnBC,EAAAA,KAAK,EAAE,GAHY;AAInBC,EAAAA,QAAQ,EAAE;AAJS,CAArB;;eAOe,uBAAM,EAAN,EAAUE,MAAV,EACZC,GADY,CACR,UAACC,CAAD,EAAO;AACV,SAAO;AACLP,IAAAA,IAAI,EAAEF,QAAQ,CAACS,CAAD,CADT;AAELL,IAAAA,KAAK,EAAEK,CAFF;AAGLN,IAAAA,KAAK,EAAEM,CAHF;AAILJ,IAAAA,QAAQ,EAAE;AAJL,GAAP;AAMD,CARY,EASZK,MATY,CAUX,UAACC,GAAD,EAAMC,CAAN,EAAY;AACVD,EAAAA,GAAG,CAACC,CAAC,CAACV,IAAH,CAAH,GAAcU,CAAd;AACA,SAAOD,GAAP;AACD,CAbU,EAcX;AAAEV,EAAAA,KAAK,EAALA,KAAF;AAASK,EAAAA,YAAY,EAAZA;AAAT,CAdW,C","sourcesContent":["import times from 'lodash/times';\n\nconst digitMap = {\n 0: 'zero',\n 1: 'one',\n 2: 'two',\n 3: 'three',\n 4: 'four',\n 5: 'five',\n 6: 'six',\n 7: 'seven',\n 8: 'eight',\n 9: 'nine',\n};\n\nconst comma = { name: 'comma', label: ',', write: ',', category: 'digit' };\n\nconst decimalPoint = {\n name: 'decimal-point',\n label: '.',\n write: '.',\n category: 'digit',\n};\n\nexport default times(10, String)\n .map((n) => {\n return {\n name: digitMap[n],\n write: n,\n label: n,\n category: 'digit',\n };\n })\n .reduce(\n (acc, o) => {\n acc[o.name] = o;\n return acc;\n },\n { comma, decimalPoint },\n );\n"],"file":"digits.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/edit.js"],"names":["del","label","DELETE","category","keystroke","ariaLabel"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,GAAG,GAAG;AAAEC,EAAAA,KAAK,EAAEC,aAAT;AAAiBC,EAAAA,QAAQ,EAAE,MAA3B;AAAmCC,EAAAA,SAAS,EAAE,WAA9C;AAA2DC,EAAAA,SAAS,EAAE;AAAtE,CAAZ","sourcesContent":["import { DELETE } from './chars';\n\nexport const del = { label: DELETE, category: 'edit', keystroke: 'Backspace', ariaLabel: 'Delete' };\n"],"file":"edit.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/exponent.js"],"names":["set","squared","name","latex","write","xToPowerOfN","command","ariaLabel","squareRoot","nthRoot"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,UAAN,CAAZ;AAEO,IAAMC,OAAO,GAAGD,GAAG,CAAC;AACzBE,EAAAA,IAAI,EAAE,SADmB;AAEzBC,EAAAA,KAAK,EAAE,KAFkB;AAGzBC,EAAAA,KAAK,EAAE;AAHkB,CAAD,CAAnB;;AAMA,IAAMC,WAAW,GAAGL,GAAG,CAAC;AAC7BE,EAAAA,IAAI,EAAE,qBADuB;AAE7BC,EAAAA,KAAK,EAAE,MAFsB;AAG7BG,EAAAA,OAAO,EAAE,GAHoB;AAI7BC,EAAAA,SAAS,EAAE;AAJkB,CAAD,CAAvB;;AAOA,IAAMC,UAAU,GAAGR,GAAG,CAAC;AAC5BE,EAAAA,IAAI,EAAE,aADsB;AAE5BC,EAAAA,KAAK,EAAE,UAFqB;AAG5BG,EAAAA,OAAO,EAAE;AAHmB,CAAD,CAAtB;;AAMA,IAAMG,OAAO,GAAGT,GAAG,CAAC;AACzBE,EAAAA,IAAI,EAAE,UADmB;AAEzBC,EAAAA,KAAK,EAAE,cAFkB;AAGzBG,EAAAA,OAAO,EAAE;AAHgB,CAAD,CAAnB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('exponent');\n\nexport const squared = set({\n name: 'Squared',\n latex: 'x^2',\n write: '^2',\n});\n\nexport const xToPowerOfN = set({\n name: 'X to the power of n',\n latex: 'x^{}',\n command: '^',\n ariaLabel: 'exponent',\n});\n\nexport const squareRoot = set({\n name: 'Square root',\n latex: '\\\\sqrt{}',\n command: '\\\\sqrt',\n});\n\nexport const nthRoot = set({\n name: 'Nth root',\n latex: '\\\\sqrt[{}]{}',\n command: '\\\\nthroot',\n});\n"],"file":"exponent.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/fractions.js"],"names":["set","blankOverBlank","name","latex","command","ariaLabel","xOverBlank","label","xBlankBlank"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,WAAN,CAAZ;AAEO,IAAMC,cAAc,GAAGD,GAAG,CAAC;AAChCE,EAAAA,IAAI,EAAE,aAD0B;AAEhCC,EAAAA,KAAK,EAAE,YAFyB;AAGhCC,EAAAA,OAAO,EAAE,QAHuB;AAIhCC,EAAAA,SAAS,EAAE;AAJqB,CAAD,CAA1B;;AAOA,IAAMC,UAAU,GAAGN,GAAG,CAAC;AAC5BG,EAAAA,KAAK,EAAE,cADqB;AAE5BD,EAAAA,IAAI,EAAE,SAFsB;AAG5BK,EAAAA,KAAK,EAAE,MAHqB;AAI5BH,EAAAA,OAAO,EAAE,GAJmB;AAK5BC,EAAAA,SAAS,EAAE;AALiB,CAAD,CAAtB;;AAQA,IAAMG,WAAW,GAAGR,GAAG,CAAC;AAC7BE,EAAAA,IAAI,EAAE,iBADuB;AAE7BC,EAAAA,KAAK,EAAE,aAFsB;AAG7BI,EAAAA,KAAK,EAAE,UAHsB;AAI7BH,EAAAA,OAAO,EAAE,QAJoB;AAK7BC,EAAAA,SAAS,EAAE;AALkB,CAAD,CAAvB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('fractions');\n\nexport const blankOverBlank = set({\n name: 'blank/blank',\n latex: '\\\\frac{}{}',\n command: '\\\\frac',\n ariaLabel: 'fraction',\n});\n\nexport const xOverBlank = set({\n latex: '\\\\frac{x}{ }',\n name: 'X/blank',\n label: 'x/[]',\n command: '/',\n ariaLabel: 'x over blank fraction',\n});\n\nexport const xBlankBlank = set({\n name: 'X (blank/blank)',\n latex: 'x\\\\frac{}{}',\n label: 'x([]/[])',\n command: '\\\\frac',\n ariaLabel: 'mixed number',\n});\n"],"file":"fractions.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/geometry.js"],"names":["set","o","category","overline","name","latex","command","overRightArrow","overLeftRightArrow","symbol","segment","write","label","parallel","notParallel","perpindicular","angle","overArc","measureOfAngle","triangle","square","parallelogram","circledDot","degree","similarTo","congruentTo","notCongruentTo","primeArcminute","doublePrimeArcSecond","leftArrow","rightArrow","leftrightArrow"],"mappings":"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","sourcesContent":["const set = (o) => ({ ...o, category: 'geometry' });\n\nexport const overline = set({\n name: 'Line',\n latex: '\\\\overline{}',\n command: '\\\\overline',\n});\n\nexport const overRightArrow = set({\n name: 'Ray',\n latex: '\\\\overrightarrow{}',\n command: '\\\\overrightarrow',\n});\n\nexport const overLeftRightArrow = set({\n name: 'Segment',\n latex: '\\\\overleftrightarrow{\\\\overline{}}', // used this notation to display the pink box\n symbol: 'AB',\n command: '\\\\overleftrightarrow',\n});\n\nexport const segment = set({\n name: 'Segment',\n latex: '\\\\overleftrightarrow{AB}',\n write: '\\\\overleftrightarrow{AB}',\n label: 'AB',\n});\n\nexport const parallel = set({\n name: 'Parallel',\n latex: '\\\\parallel',\n command: '\\\\parallel',\n});\n\nexport const notParallel = set({\n name: 'Not Parallel',\n latex: '\\\\nparallel',\n command: '\\\\nparallel',\n});\n\nexport const perpindicular = set({\n name: 'Perpendicular',\n latex: '\\\\perp',\n command: '\\\\perpendicular',\n});\n\nexport const angle = set({\n name: 'Angle',\n latex: '\\\\angle',\n command: '\\\\angle',\n});\nexport const overArc = set({\n name: 'Over arc',\n latex: '\\\\overarc{\\\\overline{}}', // used this notation to display the pink box\n command: '\\\\overarc',\n});\nexport const measureOfAngle = set({\n name: 'Measured Angle',\n latex: '\\\\measuredangle',\n command: ['m', '\\\\angle'],\n});\n\nexport const triangle = set({\n name: 'Triangle',\n latex: '\\\\triangle',\n command: '\\\\triangle',\n});\n\nexport const square = set({\n name: 'Square',\n latex: '\\\\square',\n command: '\\\\square',\n});\n\nexport const parallelogram = set({\n name: 'Parallelogram',\n latex: '\\\\parallelogram',\n command: '\\\\parallelogram',\n});\n\nexport const circledDot = set({\n name: 'Circled Dot',\n latex: '\\\\odot',\n command: '\\\\odot',\n});\n\nexport const degree = set({\n name: 'Degree',\n latex: '\\\\degree',\n command: '\\\\degree',\n});\n\nexport const similarTo = set({\n name: 'Similar',\n command: '\\\\sim',\n latex: '\\\\sim',\n});\n\nexport const congruentTo = set({\n name: 'Congruent To',\n command: '\\\\cong',\n latex: '\\\\cong',\n});\nexport const notCongruentTo = set({\n name: 'Not Congruent To',\n command: '\\\\ncong',\n latex: '\\\\ncong',\n});\n\nexport const primeArcminute = set({\n name: 'Prime',\n label: 'pam',\n // eslint-disable-next-line\n latex: \"'\",\n // eslint-disable-next-line\n write: \"'\",\n});\nexport const doublePrimeArcSecond = set({\n name: 'Double Prime',\n latex: '\"',\n write: '\"',\n});\n\nexport const leftArrow = set({\n name: 'Left Arrow',\n latex: '\\\\leftarrow',\n command: '\\\\leftarrow',\n});\n\nexport const rightArrow = set({\n name: 'Right Arrow',\n latex: '\\\\rightarrow',\n command: '\\\\rightarrow',\n});\n\nexport const leftrightArrow = set({\n name: 'Left and Right Arrow',\n latex: '\\\\leftrightarrow',\n command: '\\\\leftrightarrow',\n});\n"],"file":"geometry.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/grades.js"],"names":["hs","fractions","blankOverBlank","misc","percentage","vars","x","exponent","squared","squareRoot","operators","circleDot","y","subSup","subscript","xToPowerOfN","nthRoot","plusMinus","comparison","lessThan","greaterThan","lessThanEqual","greaterThanEqual","constants","pi","theta","parenthesis","brackets","absValue","notEqual","trigonometry","sin","cos","tan","geometry","degree","advancedAlgebra","out","map","arr","push","name","latex","write","log","logSubscript","ln","eulers","statisticsSet","statistics","mu","xBar","yBar","sigma","smallSigma","gradeSets","predicate","n","set","xOverBlank","xBlankBlank","logic","longDivision","digits","seven","eight","nine","four","five","six","one","two","three","zero","nav","left","right","edit","del","basicOperators","minus","decimalPoint","primeArcminute","doublePrimeArcSecond","congruentTo","similarTo","angle","measureOfAngle","triangle","notCongruentTo","notSimilar","csc","sec","cot","overline","overRightArrow","overLeftRightArrow","overArc","perpindicular","parallel","divide","halfInfinity","multiply","leftArrow","rightArrow","square","therefore","leftrightArrow","infinity","keysForGrade","number","parseInt","isNaN","match","find","gs","ALL_KEYS","Object","values","matrices","normalizeAdditionalKeys","additionalKeys","additionalkey","predefinedKey","key","command","otherNotation"],"mappings":"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","sourcesContent":["import * as comparison from './comparison';\nimport * as vars from './vars';\nimport * as fractions from './fractions';\nimport * as exponent from './exponent';\nimport * as misc from './misc';\nimport * as constants from './constants';\nimport * as trigonometry from './trigonometry';\nimport * as geometry from './geometry';\nimport * as operators from './operators';\nimport * as log from './log';\nimport * as subSup from './sub-sup';\nimport * as statistics from './statistics';\nimport * as basicOperators from './basic-operators';\nimport * as matrices from './matrices';\nimport digits from './digits';\nimport * as logic from './logic';\nimport * as nav from './navigation';\nimport * as edit from './edit';\n\nconst hs = [\n [fractions.blankOverBlank, misc.percentage, vars.x, exponent.squared, exponent.squareRoot],\n [operators.circleDot, vars.y, subSup.subscript, exponent.xToPowerOfN, exponent.nthRoot],\n [misc.plusMinus, comparison.lessThan, comparison.greaterThan, comparison.lessThanEqual, comparison.greaterThanEqual],\n [constants.pi, vars.theta, misc.parenthesis, misc.brackets, misc.absValue],\n [misc.notEqual, trigonometry.sin, trigonometry.cos, trigonometry.tan, geometry.degree],\n];\n\nconst advancedAlgebra = (() => {\n const out = [...hs.map((arr) => [...arr])];\n\n out[0].push({ name: 'i', latex: 'i', write: 'i' });\n out[1].push(log.log);\n out[2].push(log.logSubscript);\n out[3].push(log.ln);\n out[4].push(constants.eulers);\n return out;\n})();\n\nconst statisticsSet = (() => {\n const out = [...hs.map((arr) => [...arr])];\n out[0].push(statistics.mu);\n out[1].push(statistics.xBar);\n out[2].push(statistics.yBar);\n out[3].push(statistics.sigma);\n out[4].push(statistics.smallSigma);\n return out;\n})();\n\nexport const gradeSets = [\n {\n predicate: (n) => n >= 3 && n <= 5,\n set: [\n [comparison.lessThan, comparison.greaterThan],\n [fractions.xOverBlank, fractions.xBlankBlank],\n [vars.x, logic.longDivision],\n [exponent.squared, exponent.xToPowerOfN],\n ],\n },\n {\n predicate: (n) => n >= 6 && n <= 7,\n set: [\n [geometry.degree, comparison.lessThan, comparison.greaterThan],\n [operators.circleDot, comparison.lessThanEqual, comparison.greaterThanEqual],\n [vars.x, vars.y, exponent.squared, exponent.xToPowerOfN],\n [misc.plusMinus, fractions.xOverBlank, fractions.xBlankBlank, exponent.squareRoot],\n [constants.pi, misc.parenthesis, misc.absValue, exponent.nthRoot],\n ],\n },\n {\n predicate: (n) => n >= 8 || n === 'HS',\n set: hs,\n },\n {\n predicate: 'non-negative-integers',\n set: [\n [digits.seven, digits.eight, digits.nine],\n [digits.four, digits.five, digits.six],\n [digits.one, digits.two, digits.three],\n [digits.zero, { name: '', latex: '', write: '' }, { name: '', latex: '', write: '' }],\n [nav.left, nav.right, edit.del],\n ],\n },\n {\n predicate: 'integers',\n set: [\n [digits.seven, digits.eight, digits.nine],\n [digits.four, digits.five, digits.six],\n [digits.one, digits.two, digits.three],\n [digits.zero, { name: '', latex: '', write: '' }, basicOperators.minus],\n [nav.left, nav.right, edit.del],\n ],\n },\n {\n predicate: 'decimals',\n set: [\n [digits.seven, digits.eight, digits.nine],\n [digits.four, digits.five, digits.six],\n [digits.one, digits.two, digits.three],\n [digits.zero, digits.decimalPoint, basicOperators.minus],\n [nav.left, nav.right, edit.del],\n ],\n },\n {\n predicate: 'fractions',\n set: [\n [digits.seven, digits.eight, digits.nine],\n [digits.four, digits.five, digits.six],\n [digits.one, digits.two, digits.three],\n [digits.zero, fractions.blankOverBlank, basicOperators.minus],\n [nav.left, nav.right, edit.del],\n ],\n },\n {\n predicate: 'geometry',\n set: [\n [\n fractions.blankOverBlank,\n geometry.degree,\n geometry.primeArcminute,\n geometry.doublePrimeArcSecond,\n geometry.congruentTo,\n geometry.similarTo,\n ],\n [\n operators.circleDot,\n geometry.angle,\n geometry.measureOfAngle,\n geometry.triangle,\n geometry.notCongruentTo,\n misc.notSimilar,\n ],\n [trigonometry.sin, trigonometry.cos, trigonometry.tan, constants.pi, exponent.squareRoot, exponent.nthRoot],\n [trigonometry.csc, trigonometry.sec, trigonometry.cot, vars.theta, subSup.subscript, exponent.xToPowerOfN],\n [\n geometry.overline,\n geometry.overRightArrow,\n geometry.overLeftRightArrow,\n geometry.overArc,\n geometry.perpindicular,\n geometry.parallel,\n ],\n ],\n },\n // {\n // predicate: 'miscellaneous',\n // set: [\n // [\n // subSup.superscript,\n // subSup.subscript,\n // fractions.blankOverBlank,\n // misc.percentage,\n // geometry.segment,\n // geometry.parallel\n // ],\n // [\n // exponent.squareRoot,\n // exponent.nthRoot,\n // misc.absValue,\n // misc.parenthesis,\n // geometry.perpindicular,\n // geometry.angle\n // ],\n // [\n // comparison.lessThan,\n // comparison.greaterThan,\n // geometry.degree,\n // misc.approx,\n // geometry.measureOfAngle,\n // geometry.triangle\n // ],\n // [\n // misc.nApprox,\n // misc.notEqual,\n // geometry.congruentTo,\n // geometry.notCongruentTo,\n // geometry.parallelogram,\n // geometry.circledDot\n // ],\n // [\n // misc.similar,\n // misc.notSimilar,\n // comparison.lessThanEqual,\n // comparison.greaterThanEqual,\n // vars.x,\n // vars.y\n // ]\n // ]\n // },\n // {\n // predicate: 'everything',\n // set: [\n // [\n // subSup.superscript,\n // subSup.subscript,\n // fractions.blankOverBlank,\n // misc.percentage,\n // geometry.segment,\n // geometry.parallel\n // ],\n // [\n // exponent.squareRoot,\n // exponent.nthRoot,\n // misc.absValue,\n // misc.parenthesis,\n // geometry.perpindicular,\n // geometry.angle\n // ],\n // [\n // comparison.lessThan,\n // comparison.greaterThan,\n // geometry.degree,\n // misc.approx,\n // geometry.measureOfAngle,\n // geometry.triangle\n // ],\n // [\n // misc.nApprox,\n // misc.notEqual,\n // geometry.congruentTo,\n // geometry.notCongruentTo,\n // geometry.parallelogram,\n // geometry.circledDot\n // ],\n // [\n // misc.similar,\n // misc.notSimilar,\n // comparison.lessThanEqual,\n // comparison.greaterThanEqual,\n // vars.x,\n // vars.y\n // ]\n // ]\n // },\n {\n predicate: 'advanced-algebra',\n set: advancedAlgebra,\n },\n {\n predicate: 'statistics',\n set: statisticsSet,\n },\n {\n predicate: 'item-authoring',\n set: [\n [\n basicOperators.divide,\n fractions.blankOverBlank,\n logic.longDivision,\n constants.halfInfinity,\n exponent.squared,\n exponent.squareRoot,\n geometry.overline,\n geometry.overRightArrow,\n geometry.overLeftRightArrow,\n log.log,\n ],\n [\n basicOperators.multiply,\n operators.circleDot,\n { name: '', latex: '', write: '' },\n subSup.subscript,\n exponent.xToPowerOfN,\n exponent.nthRoot,\n geometry.perpindicular,\n geometry.parallel,\n geometry.overArc,\n log.logSubscript,\n ],\n [\n misc.plusMinus,\n constants.pi,\n vars.theta,\n geometry.degree,\n geometry.angle,\n geometry.leftArrow,\n geometry.rightArrow,\n geometry.triangle,\n geometry.square,\n log.ln,\n ],\n [\n misc.notEqual,\n misc.absValue,\n statistics.smallSigma,\n statistics.mu,\n logic.therefore,\n statistics.sigma,\n geometry.leftrightArrow,\n trigonometry.sin,\n trigonometry.cos,\n trigonometry.tan,\n ],\n [\n comparison.lessThanEqual,\n comparison.greaterThanEqual,\n { name: '', latex: '', write: '' },\n { name: '', latex: '', write: '' },\n constants.infinity,\n { name: '', latex: '', write: '' },\n { name: '', latex: '', write: '' },\n trigonometry.csc,\n trigonometry.sec,\n trigonometry.cot,\n ],\n ],\n },\n];\n\nexport const keysForGrade = (n) => {\n const number = parseInt(n, 10);\n n = isNaN(number) ? n : number;\n if (!n) {\n return [];\n }\n\n const match = gradeSets.find((gs) => {\n if (typeof gs.predicate === 'string') {\n return gs.predicate === n;\n } else {\n return gs.predicate(n);\n }\n });\n\n if (match) {\n return match.set || [];\n }\n};\n\nconst ALL_KEYS = [\n ...Object.values(basicOperators),\n ...Object.values(comparison),\n ...Object.values(constants),\n ...Object.values(digits),\n ...Object.values(exponent),\n ...Object.values(fractions),\n ...Object.values(geometry),\n ...Object.values(log),\n ...Object.values(matrices),\n ...Object.values(misc),\n ...Object.values(operators),\n ...Object.values(statistics),\n ...Object.values(subSup),\n ...Object.values(trigonometry),\n ...Object.values(vars),\n];\n\nexport const normalizeAdditionalKeys = (additionalKeys) => {\n return (additionalKeys || []).map((additionalkey) => {\n const { latex } = additionalkey;\n const predefinedKey = (ALL_KEYS || []).find(\n (key) => latex === key.latex || latex === key.write || latex === key.command || latex === key.otherNotation,\n );\n\n return !latex ? additionalkey : predefinedKey || additionalkey;\n });\n};\n"],"file":"grades.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/index.js"],"names":["one","digits","two","three","four","five","six","seven","eight","nine","zero","comma","decimalPoint","baseSet","divide","multiply","minus","plus","nav","left","right","edit","del","equals"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAYA;;;;AACA;;;;AACA;;;;AACA;;;;;;;;AAbA,IAAQA,GAAR,GAA4FC,kBAA5F,CAAQD,GAAR;AAAA,IAAaE,GAAb,GAA4FD,kBAA5F,CAAaC,GAAb;AAAA,IAAkBC,KAAlB,GAA4FF,kBAA5F,CAAkBE,KAAlB;AAAA,IAAyBC,IAAzB,GAA4FH,kBAA5F,CAAyBG,IAAzB;AAAA,IAA+BC,IAA/B,GAA4FJ,kBAA5F,CAA+BI,IAA/B;AAAA,IAAqCC,GAArC,GAA4FL,kBAA5F,CAAqCK,GAArC;AAAA,IAA0CC,KAA1C,GAA4FN,kBAA5F,CAA0CM,KAA1C;AAAA,IAAiDC,KAAjD,GAA4FP,kBAA5F,CAAiDO,KAAjD;AAAA,IAAwDC,IAAxD,GAA4FR,kBAA5F,CAAwDQ,IAAxD;AAAA,IAA8DC,IAA9D,GAA4FT,kBAA5F,CAA8DS,IAA9D;AAAA,IAAoEC,KAApE,GAA4FV,kBAA5F,CAAoEU,KAApE;AAAA,IAA2EC,YAA3E,GAA4FX,kBAA5F,CAA2EW,YAA3E;AAEO,IAAMC,OAAO,GAAG,CACrB,CAACN,KAAD,EAAQC,KAAR,EAAeC,IAAf,EAAqBK,sBAArB,CADqB,EAErB,CAACV,IAAD,EAAOC,IAAP,EAAaC,GAAb,EAAkBS,wBAAlB,CAFqB,EAGrB,CAACf,GAAD,EAAME,GAAN,EAAWC,KAAX,EAAkBa,qBAAlB,CAHqB,EAIrB,CAACN,IAAD,EAAOE,YAAP,EAAqBD,KAArB,EAA4BM,oBAA5B,CAJqB,EAKrB,CAACC,GAAG,CAACC,IAAL,EAAWD,GAAG,CAACE,KAAf,EAAsBC,IAAI,CAACC,GAA3B,EAAgCC,sBAAhC,CALqB,CAAhB","sourcesContent":["import digits from './digits';\nimport * as nav from './navigation';\nimport * as edit from './edit';\nimport { divide, multiply, plus, minus, equals } from './basic-operators';\n\nconst { one, two, three, four, five, six, seven, eight, nine, zero, comma, decimalPoint } = digits;\n\nexport const baseSet = [\n [seven, eight, nine, divide],\n [four, five, six, multiply],\n [one, two, three, minus],\n [zero, decimalPoint, comma, plus],\n [nav.left, nav.right, edit.del, equals],\n];\n\nimport * as comparison from './comparison';\nimport * as fractions from './fractions';\nimport * as exponent from './exponent';\nimport * as misc from './misc';\n\nexport { comparison, fractions, exponent, misc };\n"],"file":"index.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/log.js"],"names":["set","log","name","label","command","latex","logSubscript","ln"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,KAAN,CAAZ;AAEO,IAAMC,GAAG,GAAGD,GAAG,CAAC;AACrBE,EAAAA,IAAI,EAAE,KADe;AAErBC,EAAAA,KAAK,EAAE,KAFc;AAGrBC,EAAAA,OAAO,EAAE,OAHY;AAIrBC,EAAAA,KAAK,EAAE;AAJc,CAAD,CAAf;;AAMA,IAAMC,YAAY,GAAGN,GAAG,CAAC;AAC9BE,EAAAA,IAAI,EAAE,YADwB;AAE9BC,EAAAA,KAAK,EAAE,OAFuB;AAG9BE,EAAAA,KAAK,EAAE,UAHuB;AAI9BD,EAAAA,OAAO,EAAE,CAAC,OAAD,EAAU,GAAV,EAAe,GAAf;AAJqB,CAAD,CAAxB;;AAMA,IAAMG,EAAE,GAAGP,GAAG,CAAC;AACpBE,EAAAA,IAAI,EAAE,aADc;AAEpBC,EAAAA,KAAK,EAAE,IAFa;AAGpBC,EAAAA,OAAO,EAAE,MAHW;AAIpBC,EAAAA,KAAK,EAAE;AAJa,CAAD,CAAd","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('log');\n\nexport const log = set({\n name: 'Log',\n label: 'log',\n command: '\\\\log',\n latex: '\\\\log',\n});\nexport const logSubscript = set({\n name: 'log base n',\n label: 'log s',\n latex: '\\\\log_{}',\n command: ['\\\\log', '_', ' '],\n});\nexport const ln = set({\n name: 'natural log',\n label: 'ln',\n command: '\\\\ln',\n latex: '\\\\ln',\n});\n"],"file":"log.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/logic.js"],"names":["set","therefore","name","label","write","longDivision","latex","command"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,OAAN,CAAZ;AAEO,IAAMC,SAAS,GAAGD,GAAG,CAAC;AAC3BE,EAAAA,IAAI,EAAE,WADqB;AAE3BC,EAAAA,KAAK,EAAE,GAFoB;AAG3BC,EAAAA,KAAK,EAAE;AAHoB,CAAD,CAArB;;AAMA,IAAMC,YAAY,GAAGL,GAAG,CAAC;AAC9BE,EAAAA,IAAI,EAAE,eADwB;AAE9BI,EAAAA,KAAK,EAAE,aAFuB;AAG9BC,EAAAA,OAAO,EAAE;AAHqB,CAAD,CAAxB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('logic');\n\nexport const therefore = set({\n name: 'Therefore',\n label: '∴',\n write: '∴',\n});\n\nexport const longDivision = set({\n name: 'Long division',\n latex: '\\\\longdiv{}',\n command: '\\\\longdiv',\n});\n"],"file":"logic.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/matrices.js"],"names":["set","singleCellMatrix","name","label","write","doubleCellMatrix"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,UAAN,CAAZ;AAEO,IAAMC,gBAAgB,GAAGD,GAAG,CAAC;AAClCE,EAAAA,IAAI,EAAE,oBAD4B;AAElCC,EAAAA,KAAK,EAAE,KAF2B;AAGlCC,EAAAA,KAAK,EAAE;AAH2B,CAAD,CAA5B;;AAMA,IAAMC,gBAAgB,GAAGL,GAAG,CAAC;AAClCE,EAAAA,IAAI,EAAE,oBAD4B;AAElCC,EAAAA,KAAK,EAAE,6BAF2B;AAGlCC,EAAAA,KAAK,EAAE;AAH2B,CAAD,CAA5B","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('matrices');\n\nexport const singleCellMatrix = set({\n name: 'Single Cell Matrix',\n label: '[ ]',\n write: '\\\\begin{pmatrix}\\\\end{pmatrix}',\n});\n\nexport const doubleCellMatrix = set({\n name: 'Double Cell Matrix',\n label: '[ ] [ ] \\\\\\\\newline [ ] [ ]',\n write: '\\\\begin{bmatrix}&\\\\\\\\&\\\\end{bmatrix}',\n});\n"],"file":"matrices.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/misc.js"],"names":["set","plusMinus","name","latex","write","absValue","symbol","command","parenthesis","brackets","percentage","approx","ariaLabel","nApprox","notEqual","similar","notSimilar"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,MAAN,CAAZ;AAEO,IAAMC,SAAS,GAAGD,GAAG,CAAC;AAC3BE,EAAAA,IAAI,EAAE,eADqB;AAE3BC,EAAAA,KAAK,EAAE,MAFoB;AAG3BC,EAAAA,KAAK,EAAE;AAHoB,CAAD,CAArB;;AAMA,IAAMC,QAAQ,GAAGL,GAAG,CAAC;AAC1BE,EAAAA,IAAI,EAAE,gBADoB;AAE1BC,EAAAA,KAAK,EAAE,SAFmB;AAG1BG,EAAAA,MAAM,EAAE,KAHkB;AAI1BC,EAAAA,OAAO,EAAE;AAJiB,CAAD,CAApB;;AAOA,IAAMC,WAAW,GAAGR,GAAG,CAAC;AAC7BE,EAAAA,IAAI,EAAE,aADuB;AAE7BC,EAAAA,KAAK,EAAE,iBAFsB;AAG7BG,EAAAA,MAAM,EAAE,KAHqB;AAI7BC,EAAAA,OAAO,EAAE;AAJoB,CAAD,CAAvB;;AAOA,IAAME,QAAQ,GAAGT,GAAG,CAAC;AAC1BE,EAAAA,IAAI,EAAE,UADoB;AAE1BC,EAAAA,KAAK,EAAE,iBAFmB;AAG1BG,EAAAA,MAAM,EAAE,KAHkB;AAI1BC,EAAAA,OAAO,EAAE;AAJiB,CAAD,CAApB;;AAOA,IAAMG,UAAU,GAAGV,GAAG,CAAC;AAC5BE,EAAAA,IAAI,EAAE,SADsB;AAE5BC,EAAAA,KAAK,EAAE,GAFqB;AAG5BI,EAAAA,OAAO,EAAE;AAHmB,CAAD,CAAtB;;AAMA,IAAMI,MAAM,GAAGX,GAAG,CAAC;AACxBG,EAAAA,KAAK,EAAE,UADiB;AAExBI,EAAAA,OAAO,EAAE,UAFe;AAGxBK,EAAAA,SAAS,EAAE;AAHa,CAAD,CAAlB;;AAMA,IAAMC,OAAO,GAAGb,GAAG,CAAC;AACzBG,EAAAA,KAAK,EAAE,WADkB;AAEzBI,EAAAA,OAAO,EAAE,WAFgB;AAGzBK,EAAAA,SAAS,EAAE;AAHc,CAAD,CAAnB;;AAMA,IAAME,QAAQ,GAAGd,GAAG,CAAC;AAC1BG,EAAAA,KAAK,EAAE,OADmB;AAE1BI,EAAAA,OAAO,EAAE,OAFiB;AAG1BK,EAAAA,SAAS,EAAE;AAHe,CAAD,CAApB;;AAMA,IAAMG,OAAO,GAAGf,GAAG,CAAC;AACzBG,EAAAA,KAAK,EAAE,OADkB;AAEzBI,EAAAA,OAAO,EAAE,OAFgB;AAGzBK,EAAAA,SAAS,EAAE;AAHc,CAAD,CAAnB;;AAKA,IAAMI,UAAU,GAAGhB,GAAG,CAAC;AAC5BG,EAAAA,KAAK,EAAE,QADqB;AAE5BI,EAAAA,OAAO,EAAE,QAFmB;AAG5BK,EAAAA,SAAS,EAAE;AAHiB,CAAD,CAAtB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('misc');\n\nexport const plusMinus = set({\n name: 'Plus or Minus',\n latex: '\\\\pm',\n write: '\\\\pm',\n});\n\nexport const absValue = set({\n name: 'Absolute Value',\n latex: '\\\\abs{}',\n symbol: '| |',\n command: '|',\n});\n\nexport const parenthesis = set({\n name: 'Parenthesis',\n latex: '\\\\left(\\\\right)',\n symbol: '( )',\n command: '(',\n});\n\nexport const brackets = set({\n name: 'Brackets',\n latex: '\\\\left[\\\\right]',\n symbol: '[ ]',\n command: '[',\n});\n\nexport const percentage = set({\n name: 'Percent',\n latex: '%',\n command: '%',\n});\n\nexport const approx = set({\n latex: '\\\\approx',\n command: '\\\\approx',\n ariaLabel: 'Approximately equal to',\n});\n\nexport const nApprox = set({\n latex: '\\\\napprox',\n command: '\\\\napprox',\n ariaLabel: 'Not pproximately equal to',\n});\n\nexport const notEqual = set({\n latex: '\\\\neq',\n command: '\\\\neq',\n ariaLabel: 'Not equals',\n});\n\nexport const similar = set({\n latex: '\\\\sim',\n command: '\\\\sim',\n ariaLabel: 'Similar',\n});\nexport const notSimilar = set({\n latex: '\\\\nsim',\n command: '\\\\nsim',\n ariaLabel: 'Not similar',\n});\n"],"file":"misc.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/navigation.js"],"names":["set","left","label","LEFT_ARROW","keystroke","ariaLabel","right","RIGHT_ARROW"],"mappings":";;;;;;;AAAA;;AACA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,YAAN,CAAZ;AAEO,IAAMC,IAAI,GAAGD,GAAG,CAAC;AAAEE,EAAAA,KAAK,EAAEC,iBAAT;AAAqBC,EAAAA,SAAS,EAAE,MAAhC;AAAwCC,EAAAA,SAAS,EAAE;AAAnD,CAAD,CAAhB;;AAEA,IAAMC,KAAK,GAAGN,GAAG,CAAC;AAAEE,EAAAA,KAAK,EAAEK,kBAAT;AAAsBH,EAAAA,SAAS,EAAE,OAAjC;AAA0CC,EAAAA,SAAS,EAAE;AAArD,CAAD,CAAjB","sourcesContent":["import { LEFT_ARROW, RIGHT_ARROW } from './chars';\nimport { mkSet } from './utils';\n\nconst set = mkSet('navigation');\n\nexport const left = set({ label: LEFT_ARROW, keystroke: 'Left', ariaLabel: 'Move cursor left' });\n\nexport const right = set({ label: RIGHT_ARROW, keystroke: 'Right', ariaLabel: 'Move cursor right' });\n"],"file":"navigation.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/operators.js"],"names":["set","circleDot","name","label","write","ariaLabel"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,WAAN,CAAZ;AAEO,IAAMC,SAAS,GAAGD,GAAG,CAAC;AAC3BE,EAAAA,IAAI,EAAE,WADqB;AAE3BC,EAAAA,KAAK,EAAE,GAFoB;AAG3BC,EAAAA,KAAK,EAAE,QAHoB;AAI3BC,EAAAA,SAAS,EAAE;AAJgB,CAAD,CAArB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('operators');\n\nexport const circleDot = set({\n name: 'CircleDot',\n label: '⋅',\n write: '\\\\cdot',\n ariaLabel: 'Dot multiplier',\n});\n"],"file":"operators.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/statistics.js"],"names":["set","xBar","name","label","latex","write","yBar","mu","sigma","ariaLabel","smallSigma"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,YAAN,CAAZ;AACO,IAAMC,IAAI,GAAGD,GAAG,CAAC;AACtBE,EAAAA,IAAI,EAAE,OADgB;AAEtBC,EAAAA,KAAK,EAAE,IAFe;AAGtBC,EAAAA,KAAK,EAAE,eAHe;AAItBC,EAAAA,KAAK,EAAE;AAJe,CAAD,CAAhB;;AAOA,IAAMC,IAAI,GAAGN,GAAG,CAAC;AACtBE,EAAAA,IAAI,EAAE,OADgB;AAEtBE,EAAAA,KAAK,EAAE,eAFe;AAGtBC,EAAAA,KAAK,EAAE;AAHe,CAAD,CAAhB;;AAMA,IAAME,EAAE,GAAGP,GAAG,CAAC;AACpBE,EAAAA,IAAI,EAAE,IADc;AAEpBC,EAAAA,KAAK,EAAE,IAFa;AAGpBC,EAAAA,KAAK,EAAE,MAHa;AAIpBC,EAAAA,KAAK,EAAE;AAJa,CAAD,CAAd;;AAOA,IAAMG,KAAK,GAAGR,GAAG,CAAC;AACvBE,EAAAA,IAAI,EAAE,OADiB;AAEvBO,EAAAA,SAAS,EAAE,iBAFY;AAGvBN,EAAAA,KAAK,EAAE,SAHgB;AAIvBC,EAAAA,KAAK,EAAE,SAJgB;AAKvBC,EAAAA,KAAK,EAAE;AALgB,CAAD,CAAjB;;AAQA,IAAMK,UAAU,GAAGV,GAAG,CAAC;AAC5BE,EAAAA,IAAI,EAAE,OADsB;AAE5BO,EAAAA,SAAS,EAAE,iBAFiB;AAG5BN,EAAAA,KAAK,EAAE,SAHqB;AAI5BC,EAAAA,KAAK,EAAE,SAJqB;AAK5BC,EAAAA,KAAK,EAAE;AALqB,CAAD,CAAtB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('statistics');\nexport const xBar = set({\n name: 'X Bar',\n label: 'x̄',\n latex: '\\\\overline{x}',\n write: '\\\\overline{x}',\n});\n\nexport const yBar = set({\n name: 'Y Bar',\n latex: '\\\\overline{y}',\n write: '\\\\overline{y}',\n});\n\nexport const mu = set({\n name: 'mu',\n label: 'mu',\n latex: '\\\\mu',\n write: '\\\\mu',\n});\n\nexport const sigma = set({\n name: 'Sigma',\n ariaLabel: 'Uppercase Sigma',\n label: '\\\\Sigma',\n latex: '\\\\Sigma',\n write: '\\\\Sigma',\n});\n\nexport const smallSigma = set({\n name: 'sigma',\n ariaLabel: 'Lowercase Sigma',\n label: '\\\\sigma',\n latex: '\\\\sigma',\n write: '\\\\sigma',\n});\n"],"file":"statistics.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/sub-sup.js"],"names":["set","superscript","name","latex","command","subscript"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,SAAN,CAAZ;AAEO,IAAMC,WAAW,GAAGD,GAAG,CAAC;AAC7BE,EAAAA,IAAI,EAAE,aADuB;AAE7BC,EAAAA,KAAK,EAAE,MAFsB;AAG7BC,EAAAA,OAAO,EAAE;AAHoB,CAAD,CAAvB;;AAMA,IAAMC,SAAS,GAAGL,GAAG,CAAC;AAC3BE,EAAAA,IAAI,EAAE,WADqB;AAE3BC,EAAAA,KAAK,EAAE,MAFoB;AAG3BC,EAAAA,OAAO,EAAE;AAHkB,CAAD,CAArB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('sub-sup');\n\nexport const superscript = set({\n name: 'Superscript',\n latex: 'x^{}',\n command: '^',\n});\n\nexport const subscript = set({\n name: 'Subscript',\n latex: 'x_{}',\n command: '_',\n});\n"],"file":"sub-sup.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/trigonometry.js"],"names":["set","sin","name","label","command","latex","cos","tan","sec","csc","cot"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,cAAN,CAAZ;AAEO,IAAMC,GAAG,GAAGD,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,MAAR;AAAgBC,EAAAA,KAAK,EAAE,KAAvB;AAA8BC,EAAAA,OAAO,EAAE,OAAvC;AAAgDC,EAAAA,KAAK,EAAE;AAAvD,CAAD,CAAf;;AAEA,IAAMC,GAAG,GAAGN,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,QAAR;AAAkBC,EAAAA,KAAK,EAAE,KAAzB;AAAgCC,EAAAA,OAAO,EAAE,OAAzC;AAAkDC,EAAAA,KAAK,EAAE;AAAzD,CAAD,CAAf;;AAEA,IAAME,GAAG,GAAGP,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,QAAR;AAAkBC,EAAAA,KAAK,EAAE,KAAzB;AAAgCC,EAAAA,OAAO,EAAE,OAAzC;AAAkDC,EAAAA,KAAK,EAAE;AAAzD,CAAD,CAAf;;AAEA,IAAMG,GAAG,GAAGR,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,QAAR;AAAkBC,EAAAA,KAAK,EAAE,KAAzB;AAAgCC,EAAAA,OAAO,EAAE,OAAzC;AAAkDC,EAAAA,KAAK,EAAE;AAAzD,CAAD,CAAf;;AAEA,IAAMI,GAAG,GAAGT,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,UAAR;AAAoBC,EAAAA,KAAK,EAAE,KAA3B;AAAkCC,EAAAA,OAAO,EAAE,OAA3C;AAAoDC,EAAAA,KAAK,EAAE;AAA3D,CAAD,CAAf;;AAEA,IAAMK,GAAG,GAAGV,GAAG,CAAC;AAAEE,EAAAA,IAAI,EAAE,WAAR;AAAqBC,EAAAA,KAAK,EAAE,KAA5B;AAAmCC,EAAAA,OAAO,EAAE,OAA5C;AAAqDC,EAAAA,KAAK,EAAE;AAA5D,CAAD,CAAf","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('trigonometry');\n\nexport const sin = set({ name: 'sine', label: 'sin', command: '\\\\sin', latex: '\\\\sin' });\n\nexport const cos = set({ name: 'cosine', label: 'cos', command: '\\\\cos', latex: '\\\\cos' });\n\nexport const tan = set({ name: 'tanget', label: 'tan', command: '\\\\tan', latex: '\\\\tan' });\n\nexport const sec = set({ name: 'secant', label: 'sec', command: '\\\\sec', latex: '\\\\sec' });\n\nexport const csc = set({ name: 'cosecant', label: 'csc', command: '\\\\csc', latex: '\\\\csc' });\n\nexport const cot = set({ name: 'cotangent', label: 'cot', command: '\\\\cot', latex: '\\\\cot' });\n"],"file":"trigonometry.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/utils.js"],"names":["mkSet","category","o","toArray","Object","keys","map","k","toKey","v","name","label","write","transformToKeySetStructure","data","structure","_","times","push","ln","length","i","j","latexAndNameDontExist","base","flattened","flatten","latexExists","some","b","latex","nameExists","extendKeySet","keySetData","filter","final","extra"],"mappings":"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","sourcesContent":["import _ from 'lodash';\n\nexport const mkSet = (category) => (o) => ({ ...o, category });\n\nexport const toArray = (o) => Object.keys(o).map((k) => o[k]);\n\nexport const toKey = (category) => (v) => {\n if (typeof v === 'string') {\n return {\n name: v,\n label: v,\n category,\n write: v,\n };\n } else {\n return {\n ...v,\n category,\n };\n }\n};\n\nexport const transformToKeySetStructure = (data = []) => {\n const structure = [];\n\n _.times(5, () => {\n structure.push([]);\n });\n\n let ln = data.length;\n let i = 0;\n let j = 0;\n\n while (j < ln) {\n structure[i++].push(data[j++]);\n\n if (i === 5) {\n i = 0;\n }\n }\n\n return structure;\n};\n\nconst latexAndNameDontExist = (base) => (k) => {\n const flattened = _.flatten(base);\n const latexExists = flattened.some((b) => b.latex === k.latex);\n const nameExists = flattened.some((b) => b.name === k.name);\n return !latexExists && !nameExists;\n};\n\nexport const extendKeySet = (base = [], keySetData = []) => {\n keySetData = keySetData.filter(latexAndNameDontExist(base));\n\n const final = [];\n\n _.times(5 - base.length, () => {\n base.push([]);\n });\n _.times(5, () => {\n final.push([]);\n });\n\n const extra = transformToKeySetStructure(keySetData);\n\n for (let i = 0; i < 5; i++) {\n final[i] = [...base[i], ...extra[i]];\n }\n\n return final;\n};\n"],"file":"utils.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/keys/vars.js"],"names":["set","x","name","latex","write","y","theta"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,GAAG,GAAG,kBAAM,MAAN,CAAZ;AAEO,IAAMC,CAAC,GAAGD,GAAG,CAAC;AACnBE,EAAAA,IAAI,EAAE,GADa;AAEnBC,EAAAA,KAAK,EAAE,GAFY;AAGnBC,EAAAA,KAAK,EAAE;AAHY,CAAD,CAAb;;AAKA,IAAMC,CAAC,GAAGL,GAAG,CAAC;AACnBE,EAAAA,IAAI,EAAE,GADa;AAEnBC,EAAAA,KAAK,EAAE,GAFY;AAGnBC,EAAAA,KAAK,EAAE;AAHY,CAAD,CAAb;;AAKA,IAAME,KAAK,GAAGN,GAAG,CAAC;AACvBE,EAAAA,IAAI,EAAE,OADiB;AAEvBC,EAAAA,KAAK,EAAE,SAFgB;AAGvBC,EAAAA,KAAK,EAAE;AAHgB,CAAD,CAAjB","sourcesContent":["import { mkSet } from './utils';\n\nconst set = mkSet('vars');\n\nexport const x = set({\n name: 'X',\n latex: 'x',\n write: 'x',\n});\nexport const y = set({\n name: 'Y',\n latex: 'y',\n write: 'y',\n});\nexport const theta = set({\n name: 'Theta',\n latex: '\\\\theta',\n write: '\\\\theta',\n});\n"],"file":"vars.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/math-input.jsx"],"names":["log","MathInput","props","key","input","latex","command","write","keystroke","setState","focused","l","onChange","state","classes","className","keyset","showKeypad","mathInput","mqInput","r","inputFocus","inputBlur","changeLatex","pad","baseSet","keypadPress","React","Component","PropTypes","object","isRequired","string","array","displayMode","oneOf","func","grey","styles","theme","formGroup","display","textAlign","width","borderRadius","border","marginTop","spacing","unit","marginBottom","transition","palette","primary","main","light","padding","outline","boxShadow","dark"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,oBAAN,CAAZ;;IAEaC,S;;;;;AAeX,qBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,oGAOL,UAACC,GAAD,EAAS;AACrBH,MAAAA,GAAG,CAAC,oBAAD,EAAuBG,GAAvB,CAAH;;AAEA,UAAI,CAAC,MAAKC,KAAV,EAAiB;AACf;AACD;;AAED,UAAID,GAAG,CAACE,KAAJ,IAAa,CAACF,GAAG,CAACG,OAAtB,EAA+B;AAC7B,cAAKF,KAAL,CAAWG,KAAX,CAAiBJ,GAAG,CAACE,KAArB;AACD,OAFD,MAEO,IAAIF,GAAG,CAACI,KAAR,EAAe;AACpB,cAAKH,KAAL,CAAWG,KAAX,CAAiBJ,GAAG,CAACI,KAArB;AACD,OAFM,MAEA,IAAIJ,GAAG,CAACG,OAAR,EAAiB;AACtB,cAAKF,KAAL,CAAWE,OAAX,CAAmBH,GAAG,CAACG,OAAvB;AACD,OAFM,MAEA,IAAIH,GAAG,CAACK,SAAR,EAAmB;AACxB,cAAKJ,KAAL,CAAWI,SAAX,CAAqBL,GAAG,CAACK,SAAzB;AACD;AACF,KAvBkB;AAAA,mGAyBN,YAAM;AACjB,YAAKC,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;AACD,KA3BkB;AAAA,kGA6BP,YAAM;AAChB,YAAKD,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;AACD,KA/BkB;AAAA,oGAiCL,UAACC,CAAD,EAAO;AACnB,UAAQC,QAAR,GAAqB,MAAKV,KAA1B,CAAQU,QAAR;;AAEA,UAAIA,QAAQ,IAAID,CAAC,KAAK,MAAKT,KAAL,CAAWG,KAAjC,EAAwC;AACtCL,QAAAA,GAAG,CAAC,eAAD,EAAkBW,CAAlB,EAAqB,MAAKT,KAAL,CAAWG,KAAhC,CAAH;AACAO,QAAAA,QAAQ,CAACD,CAAD,CAAR;AACD;AACF,KAxCkB;AAEjB,UAAKE,KAAL,GAAa;AACXH,MAAAA,OAAO,EAAE;AADE,KAAb;AAFiB;AAKlB;;;;WAqCD,kBAAS;AAAA;;AACP,wBAA8C,KAAKR,KAAnD;AAAA,UAAQY,OAAR,eAAQA,OAAR;AAAA,UAAiBC,SAAjB,eAAiBA,SAAjB;AAAA,UAA4BC,MAA5B,eAA4BA,MAA5B;AAAA,UAAoCX,KAApC,eAAoCA,KAApC;AACA,UAAQK,OAAR,GAAoB,KAAKG,KAAzB,CAAQH,OAAR;AAEA,UAAMO,UAAU,GAAG,IAAnB,CAJO,CAIkB;;AAEzB,0BACE;AAAK,QAAA,SAAS,EAAE,4BAAWH,OAAO,CAACI,SAAnB,EAA8BH,SAA9B,EAAyCL,OAAO,IAAII,OAAO,CAACJ,OAA5D;AAAhB,sBACE,gCAAC,EAAD,CAAI,KAAJ;AACE,QAAA,SAAS,EAAEI,OAAO,CAACK,OADrB;AAEE,QAAA,QAAQ,EAAE,kBAACC,CAAD;AAAA,iBAAQ,MAAI,CAAChB,KAAL,GAAagB,CAArB;AAAA,SAFZ;AAGE,QAAA,OAAO,EAAE,KAAKC,UAHhB;AAIE,QAAA,MAAM,EAAE,KAAKC,SAJf;AAKE,QAAA,KAAK,EAAEjB,KALT;AAME,QAAA,QAAQ,EAAE,KAAKkB;AANjB,QADF,EASGN,UAAU,iBACT;AAAK,QAAA,SAAS,EAAEH,OAAO,CAACU;AAAxB,sBACE,gCAAC,kBAAD;AAAQ,QAAA,OAAO,EAAEC,aAAjB;AAA0B,QAAA,cAAc,EAAET,MAA1C;AAAkD,QAAA,OAAO,EAAE,KAAKU;AAAhE,QADF,CAVJ,CADF;AAiBD;;;EAhF4BC,kBAAMC,S;;;iCAAxB3B,S,eACQ;AACjBa,EAAAA,OAAO,EAAEe,sBAAUC,MAAV,CAAiBC,UADT;AAEjBhB,EAAAA,SAAS,EAAEc,sBAAUG,MAFJ;AAGjBhB,EAAAA,MAAM,EAAEa,sBAAUI,KAHD;AAIjBC,EAAAA,WAAW,EAAEL,sBAAUM,KAAV,CAAgB,CAAC,OAAD,EAAU,gBAAV,CAAhB,CAJI;AAKjB9B,EAAAA,KAAK,EAAEwB,sBAAUG,MALA;AAMjBpB,EAAAA,QAAQ,EAAEiB,sBAAUO;AANH,C;iCADRnC,S,kBAUW;AACpBe,EAAAA,MAAM,EAAE,EADY;AAEpBkB,EAAAA,WAAW,EAAE;AAFO,C;AAyExB,IAAMG,IAAI,GAAG,qBAAb;;AACA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBC,IAAAA,SAAS,EAAE;AACTC,MAAAA,OAAO,EAAE,MADA;AAETC,MAAAA,SAAS,EAAE,OAFF;AAGT,eAAO;AAHE,KADc;AAMzBlB,IAAAA,GAAG,EAAE;AACHmB,MAAAA,KAAK,EAAE,MADJ;AAEHF,MAAAA,OAAO,EAAE;AAFN,KANoB;AAUzBvB,IAAAA,SAAS,EAAE;AACT0B,MAAAA,YAAY,EAAE,KADL;AAETC,MAAAA,MAAM,sBAAeR,IAAf,CAFG;AAGTS,MAAAA,SAAS,EAAEP,KAAK,CAACQ,OAAN,CAAcC,IAHhB;AAITC,MAAAA,YAAY,EAAEV,KAAK,CAACQ,OAAN,CAAcC,IAJnB;AAKTE,MAAAA,UAAU,EAAE;AALH,KAVc;AAiBzBxC,IAAAA,OAAO,EAAE;AACPmC,MAAAA,MAAM,sBAAeN,KAAK,CAACY,OAAN,CAAcC,OAAd,CAAsBC,IAArC;AADC,KAjBgB;AAoBzBlC,IAAAA,OAAO,EAAE;AACPwB,MAAAA,KAAK,EAAE,MADA;AAEPE,MAAAA,MAAM,sBAAeN,KAAK,CAACY,OAAN,CAAcC,OAAd,CAAsBE,KAArC,CAFC;AAGPJ,MAAAA,UAAU,EAAE,qBAHL;AAIPK,MAAAA,OAAO,EAAEhB,KAAK,CAACQ,OAAN,CAAcC,IAJhB;AAKP,sBAAgB;AACdQ,QAAAA,OAAO,EAAE,MADK;AAEdC,QAAAA,SAAS,EAAE,MAFG;AAGdZ,QAAAA,MAAM,sBAAeN,KAAK,CAACY,OAAN,CAAcC,OAAd,CAAsBM,IAArC;AAHQ;AALT;AApBgB,GAAZ;AAAA,CAAf;;eAgCe,wBAAWpB,MAAX,EAAmBrC,SAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport * as mq from './mq';\nimport { baseSet } from './keys';\nimport KeyPad from './keypad';\nimport debug from 'debug';\n\nconst log = debug('pie-lib:math-input');\n\nexport class MathInput extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n keyset: PropTypes.array,\n displayMode: PropTypes.oneOf(['block', 'block-on-focus']),\n latex: PropTypes.string,\n onChange: PropTypes.func,\n };\n\n static defaultProps = {\n keyset: [],\n displayMode: 'block',\n };\n\n constructor(props) {\n super(props);\n this.state = {\n focused: false,\n };\n }\n\n keypadPress = (key) => {\n log('[keypadPress] key:', key);\n\n if (!this.input) {\n return;\n }\n\n if (key.latex && !key.command) {\n this.input.write(key.latex);\n } else if (key.write) {\n this.input.write(key.write);\n } else if (key.command) {\n this.input.command(key.command);\n } else if (key.keystroke) {\n this.input.keystroke(key.keystroke);\n }\n };\n\n inputFocus = () => {\n this.setState({ focused: true });\n };\n\n inputBlur = () => {\n this.setState({ focused: false });\n };\n\n changeLatex = (l) => {\n const { onChange } = this.props;\n\n if (onChange && l !== this.props.latex) {\n log('[changeLatex]', l, this.props.latex);\n onChange(l);\n }\n };\n\n render() {\n const { classes, className, keyset, latex } = this.props;\n const { focused } = this.state;\n\n const showKeypad = true; // TODO: add support for different displayModes - displayMode === 'block' || focused;\n\n return (\n <div className={classNames(classes.mathInput, className, focused && classes.focused)}>\n <mq.Input\n className={classes.mqInput}\n innerRef={(r) => (this.input = r)}\n onFocus={this.inputFocus}\n onBlur={this.inputBlur}\n latex={latex}\n onChange={this.changeLatex}\n />\n {showKeypad && (\n <div className={classes.pad}>\n <KeyPad baseSet={baseSet} additionalKeys={keyset} onPress={this.keypadPress} />\n </div>\n )}\n </div>\n );\n }\n}\n\nconst grey = 'rgba(0, 0, 0, 0.23)';\nconst styles = (theme) => ({\n formGroup: {\n display: 'flex',\n textAlign: 'right',\n float: 'right',\n },\n pad: {\n width: '100%',\n display: 'flex',\n },\n mathInput: {\n borderRadius: '4px',\n border: `solid 1px ${grey}`,\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit,\n transition: 'border 200ms linear',\n },\n focused: {\n border: `solid 1px ${theme.palette.primary.main}`,\n },\n mqInput: {\n width: '100%',\n border: `solid 0px ${theme.palette.primary.light}`,\n transition: 'border 200ms linear',\n padding: theme.spacing.unit,\n '&.mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: `solid 0px ${theme.palette.primary.dark}`,\n },\n },\n});\nexport default withStyles(styles)(MathInput);\n"],"file":"math-input.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/mq/custom-elements.js"],"names":["registerLineBreak","MQ","registerEmbed","htmlString","text","latex"],"mappings":";;;;;;;AAAA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAASC,EAAT,EAAa;AACrCA,EAAAA,EAAE,CAACC,aAAH,CAAiB,SAAjB,EAA4B,YAAM;AAChC,WAAO;AACLC,MAAAA,UAAU,EAAE,6BADP;AAELC,MAAAA,IAAI,EAAE;AAAA,eAAM,UAAN;AAAA,OAFD;AAGLC,MAAAA,KAAK,EAAE;AAAA,eAAM,oBAAN;AAAA;AAHF,KAAP;AAKD,GAND;AAOD,CARD","sourcesContent":["const registerLineBreak = function(MQ) {\n MQ.registerEmbed('newLine', () => {\n return {\n htmlString: '<div class=\"newLine\"></div>',\n text: () => 'testText',\n latex: () => '\\\\embed{newLine}[]',\n };\n });\n};\n\nexport { registerLineBreak };\n"],"file":"custom-elements.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/mq/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;;AACA","sourcesContent":["import Input from './input';\nimport Static from './static';\n\nexport { Input, Static };\n"],"file":"index.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/mq/input.jsx"],"names":["MQ","window","MathQuill","getInterface","registerEmbed","log","Input","onChange","props","mathField","latex","blur","focus","event","keys","Object","__controller","options","indexOf","refresh","charCode","write","onInputEdit","Error","MathField","input","handlers","edit","bind","updateLatex","v","Array","isArray","forEach","vv","cmd","keystroke","nextProps","onClick","onFocus","onBlur","classes","className","onKeyPress","r","React","Component","PropTypes","string","object","isRequired","func","styles"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport debug from 'debug';\nimport classNames from 'classnames';\nimport { registerLineBreak } from './custom-elements';\nimport MathQuill from '@pie-framework/mathquill';\n\nlet MQ;\nif (typeof window !== 'undefined') {\n MQ = MathQuill.getInterface(2);\n\n if (MQ && MQ.registerEmbed) {\n registerLineBreak(MQ);\n }\n}\n\nconst log = debug('math-input:mq:input');\n\n/**\n * Wrapper for MathQuill MQ.MathField.\n */\nexport class Input extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n classes: PropTypes.object.isRequired,\n onClick: PropTypes.func,\n onChange: PropTypes.func,\n latex: PropTypes.string,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n };\n\n componentDidMount() {\n if (!MQ) {\n throw new Error('MQ is not defined - but component has mounted?');\n }\n\n this.mathField = MQ.MathField(this.input, {\n handlers: {\n edit: this.onInputEdit.bind(this),\n },\n });\n\n this.updateLatex();\n }\n\n componentDidUpdate() {\n this.updateLatex();\n }\n\n updateLatex() {\n if (!this.mathField) {\n return;\n }\n const { latex } = this.props;\n if (latex) {\n this.mathField.latex(latex);\n }\n }\n\n clear() {\n this.mathField.latex('');\n return '';\n }\n\n blur() {\n log('blur mathfield');\n this.mathField.blur();\n }\n\n focus() {\n log('focus mathfield...');\n this.mathField.focus();\n }\n\n command(v) {\n log('command: ', v);\n if (Array.isArray(v)) {\n v.forEach((vv) => {\n this.mathField.cmd(vv);\n });\n } else {\n this.mathField.cmd(v);\n }\n this.mathField.focus();\n return this.mathField.latex();\n }\n\n keystroke(v) {\n this.mathField.keystroke(v);\n this.mathField.focus();\n return this.mathField.latex();\n }\n\n write(v) {\n log('write: ', v);\n this.mathField.write(v);\n this.mathField.focus();\n return this.mathField.latex();\n }\n\n onInputEdit = () => {\n log('[onInputEdit] ...');\n const { onChange } = this.props;\n if (!this.mathField) {\n return;\n }\n\n if (onChange) {\n onChange(this.mathField.latex());\n }\n };\n\n refresh = () => {\n this.blur();\n this.focus();\n };\n\n onKeyPress = (event) => {\n const keys = Object.keys(this.mathField.__controller.options);\n\n if (keys.indexOf('ignoreNextMousedown') < 0) {\n // It seems like the controller has the above handler as an option\n // when all the right events are set and everything works fine\n // this seems to work in all cases\n this.refresh();\n }\n\n if (event.charCode === 13) {\n // if enter's pressed, we're going for a custom embedded element that'll\n // have a block display (empty div) - for a hacked line break using ccs\n // all because mathquill doesn't support a line break\n this.write('\\\\embed{newLine}[]');\n this.onInputEdit();\n }\n };\n\n shouldComponentUpdate(nextProps) {\n log('next: ', nextProps.latex);\n log('current: ', this.mathField.latex());\n return nextProps.latex !== this.mathField.latex();\n }\n\n render() {\n const { onClick, onFocus, onBlur, classes, className } = this.props;\n\n return (\n <span\n className={classNames(classes.input, className)}\n onKeyPress={this.onKeyPress}\n onClick={onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n ref={(r) => (this.input = r)}\n />\n );\n }\n}\n\nconst styles = () => ({});\n\nexport default withStyles(styles)(Input);\n"],"file":"input.js"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/mq/static.jsx"],"names":["MQ","window","MathQuill","getInterface","log","REGEX","WHITESPACE_REGEX","stripSpaces","string","replace","Static","e","rootBlock","target","parentElement","nextSibling","id","parseInt","getAttribute","innerField","mathField","innerFields","find","f","name","props","getFieldName","setInput","onSubFieldFocus","err","console","error","message","update","field","onSubFieldChange","regexMatch","latex","match","input","length","__controller","cursor","insLeftOf","parent","el","dispatchEvent","KeyboardEvent","keyCode","toString","Error","StaticMath","handlers","edit","onInputEdit","bind","parseLatex","blur","focus","nextProps","parsedLatex","stripped","newFieldCount","out","trim","Object","keys","warn","onBlur","className","onFocus","r","React","Component","PropTypes","isRequired","func"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport debug from 'debug';\nimport MathQuill from '@pie-framework/mathquill';\nimport { updateSpans } from '../index';\n\nlet MQ;\nif (typeof window !== 'undefined') {\n MQ = MathQuill.getInterface(2);\n}\n\nconst log = debug('pie-lib:math-input:mq:static');\nconst REGEX = /\\\\MathQuillMathField\\[r\\d*\\]\\{(.*?)\\}/g;\nconst WHITESPACE_REGEX = / /g;\n\nfunction stripSpaces(string = '') {\n return string.replace(WHITESPACE_REGEX, '');\n}\n\n/**\n * Wrapper for MathQuill MQ.MathField.\n */\nexport default class Static extends React.Component {\n static propTypes = {\n latex: PropTypes.string.isRequired,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n className: PropTypes.string,\n getFieldName: PropTypes.func,\n onSubFieldChange: PropTypes.func,\n onSubFieldFocus: PropTypes.func,\n setInput: PropTypes.func,\n };\n\n static defaultProps = {\n getFieldName: () => {},\n };\n\n componentDidMount() {\n this.update();\n updateSpans();\n }\n\n componentDidUpdate() {\n this.update();\n updateSpans();\n }\n\n onInputEdit(field) {\n if (!this.mathField) {\n return;\n }\n const name = this.props.getFieldName(field, this.mathField.innerFields);\n\n if (this.props.onSubFieldChange) {\n // eslint-disable-next-line no-useless-escape\n const regexMatch = field.latex().match(/[0-9]\\\\ \\\\frac\\{[^\\{]*\\}\\{ \\}/);\n\n if (this.input && regexMatch && regexMatch?.length) {\n try {\n field.__controller.cursor.insLeftOf(field.__controller.cursor.parent[-1].parent);\n field.el().dispatchEvent(new KeyboardEvent('keydown', { keyCode: 8 }));\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error(e.toString());\n }\n } else {\n this.props.onSubFieldChange(name, field.latex());\n }\n }\n }\n\n update() {\n if (!MQ) {\n throw new Error('MQ is not defined - but component has mounted?');\n }\n // this.input.innerHTML = this.props.latex;\n if (!this.mathField) {\n this.mathField = MQ.StaticMath(this.input, {\n handlers: {\n edit: this.onInputEdit.bind(this),\n },\n });\n }\n\n try {\n this.mathField.parseLatex(this.props.latex);\n this.mathField.latex(this.props.latex);\n } catch (e) {\n // default latex if received has errors\n this.mathField.latex('\\\\MathQuillMathField[r1]{}');\n }\n }\n\n blur() {\n log('blur mathfield');\n this.mathField.blur();\n }\n\n focus() {\n log('focus mathfield...');\n this.mathField.focus();\n }\n\n shouldComponentUpdate(nextProps) {\n try {\n const parsedLatex = this.mathField.parseLatex(nextProps.latex);\n const stripped = stripSpaces(parsedLatex);\n const newFieldCount = (nextProps.latex.match(REGEX) || []).length;\n\n const out =\n stripped !== stripSpaces(this.mathField.latex().trim()) ||\n newFieldCount !== Object.keys(this.mathField.innerFields).length / 2;\n\n log('[shouldComponentUpdate] ', out);\n return out;\n } catch (e) {\n // eslint-disable-next-line no-console\n console.warn('Error parsing latex:', e.message, 'skip update');\n // eslint-disable-next-line no-console\n console.warn(e);\n return false;\n }\n }\n\n onFocus = (e) => {\n try {\n let rootBlock = e.target.parentElement.nextSibling;\n let id = parseInt(rootBlock.getAttribute('mathquill-block-id'), 10);\n\n if (!id) {\n rootBlock = rootBlock.parentElement;\n id = parseInt(rootBlock.getAttribute('mathquill-block-id'), 10);\n }\n\n const innerField = this.mathField.innerFields.find((f) => f.id === id);\n\n if (innerField) {\n const name = this.props.getFieldName(innerField, this.mathField.innerFields);\n if (this.props.setInput) {\n this.props.setInput(innerField);\n }\n this.props.onSubFieldFocus(name, innerField);\n }\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('error finding root block', err.message);\n }\n };\n\n render() {\n const { onBlur, className } = this.props;\n\n return <span className={className} onFocus={this.onFocus} onBlur={onBlur} ref={(r) => (this.input = r)} />;\n }\n}\n"],"file":"static.js"}