@pie-lib/math-input 6.30.0 → 6.31.0-mui-update.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 (72) hide show
  1. package/CHANGELOG.md +14 -2
  2. package/lib/horizontal-keypad.js +16 -44
  3. package/lib/horizontal-keypad.js.map +1 -1
  4. package/lib/index.js +3 -25
  5. package/lib/index.js.map +1 -1
  6. package/lib/keypad/index.js +233 -314
  7. package/lib/keypad/index.js.map +1 -1
  8. package/lib/keypad/keys-layout.js +2 -12
  9. package/lib/keypad/keys-layout.js.map +1 -1
  10. package/lib/keys/basic-operators.js +5 -13
  11. package/lib/keys/basic-operators.js.map +1 -1
  12. package/lib/keys/chars.js +5 -10
  13. package/lib/keys/chars.js.map +1 -1
  14. package/lib/keys/comparison.js +6 -16
  15. package/lib/keys/comparison.js.map +1 -1
  16. package/lib/keys/constants.js +4 -10
  17. package/lib/keys/constants.js.map +1 -1
  18. package/lib/keys/digits.js +1 -7
  19. package/lib/keys/digits.js.map +1 -1
  20. package/lib/keys/edit.js +1 -4
  21. package/lib/keys/edit.js.map +1 -1
  22. package/lib/keys/exponent.js +4 -10
  23. package/lib/keys/exponent.js.map +1 -1
  24. package/lib/keys/fractions.js +3 -8
  25. package/lib/keys/fractions.js.map +1 -1
  26. package/lib/keys/geometry.js +25 -54
  27. package/lib/keys/geometry.js.map +1 -1
  28. package/lib/keys/grades.js +10 -46
  29. package/lib/keys/grades.js.map +1 -1
  30. package/lib/keys/index.js +13 -32
  31. package/lib/keys/index.js.map +1 -1
  32. package/lib/keys/log.js +3 -8
  33. package/lib/keys/log.js.map +1 -1
  34. package/lib/keys/logic.js +2 -6
  35. package/lib/keys/logic.js.map +1 -1
  36. package/lib/keys/matrices.js +2 -6
  37. package/lib/keys/matrices.js.map +1 -1
  38. package/lib/keys/misc.js +10 -22
  39. package/lib/keys/misc.js.map +1 -1
  40. package/lib/keys/navigation.js +2 -7
  41. package/lib/keys/navigation.js.map +1 -1
  42. package/lib/keys/operators.js +1 -4
  43. package/lib/keys/operators.js.map +1 -1
  44. package/lib/keys/statistics.js +5 -12
  45. package/lib/keys/statistics.js.map +1 -1
  46. package/lib/keys/sub-sup.js +2 -6
  47. package/lib/keys/sub-sup.js.map +1 -1
  48. package/lib/keys/trigonometry.js +6 -14
  49. package/lib/keys/trigonometry.js.map +1 -1
  50. package/lib/keys/utils.js +7 -40
  51. package/lib/keys/utils.js.map +1 -1
  52. package/lib/keys/vars.js +3 -8
  53. package/lib/keys/vars.js.map +1 -1
  54. package/lib/math-input.js +52 -103
  55. package/lib/math-input.js.map +1 -1
  56. package/lib/mq/common-mq-styles.js +7 -18
  57. package/lib/mq/common-mq-styles.js.map +1 -1
  58. package/lib/mq/custom-elements.js +1 -4
  59. package/lib/mq/custom-elements.js.map +1 -1
  60. package/lib/mq/index.js +0 -4
  61. package/lib/mq/index.js.map +1 -1
  62. package/lib/mq/input.js +22 -75
  63. package/lib/mq/input.js.map +1 -1
  64. package/lib/mq/static.js +31 -92
  65. package/lib/mq/static.js.map +1 -1
  66. package/lib/shared/constants.js +3 -6
  67. package/lib/updateSpans.js +1 -5
  68. package/lib/updateSpans.js.map +1 -1
  69. package/package.json +9 -7
  70. package/src/keypad/index.jsx +151 -151
  71. package/src/math-input.jsx +35 -44
  72. package/src/mq/input.jsx +9 -9
package/lib/mq/input.js CHANGED
@@ -1,123 +1,88 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = exports.Input = void 0;
9
-
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
10
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
11
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
22
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
14
  var _react = _interopRequireDefault(require("react"));
25
-
26
15
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
- var _styles = require("@material-ui/core/styles");
29
-
16
+ var _styles = require("@mui/material/styles");
30
17
  var _debug = _interopRequireDefault(require("debug"));
31
-
32
- var _classnames = _interopRequireDefault(require("classnames"));
33
-
34
18
  var _customElements = require("./custom-elements");
35
-
36
19
  var _mathquill = _interopRequireDefault(require("@pie-framework/mathquill"));
37
-
38
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
39
-
40
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
-
20
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
21
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
42
22
  var MQ;
43
-
44
23
  if (typeof window !== 'undefined') {
45
24
  MQ = _mathquill["default"].getInterface(2);
46
-
47
25
  if (MQ && MQ.registerEmbed) {
48
26
  (0, _customElements.registerLineBreak)(MQ);
49
27
  }
50
28
  }
51
-
52
29
  var log = (0, _debug["default"])('math-input:mq:input');
30
+ var StyledSpan = (0, _styles.styled)('span')({
31
+ // No specific styles needed, but component is available for future styling
32
+ });
33
+
53
34
  /**
54
35
  * Wrapper for MathQuill MQ.MathField.
55
36
  */
56
-
57
- var Input = /*#__PURE__*/function (_React$Component) {
58
- (0, _inherits2["default"])(Input, _React$Component);
59
-
60
- var _super = _createSuper(Input);
61
-
37
+ var Input = exports.Input = /*#__PURE__*/function (_React$Component) {
62
38
  function Input() {
63
39
  var _this;
64
-
65
40
  (0, _classCallCheck2["default"])(this, Input);
66
-
67
41
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
68
42
  args[_key] = arguments[_key];
69
43
  }
70
-
71
- _this = _super.call.apply(_super, [this].concat(args));
72
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onInputEdit", function () {
44
+ _this = _callSuper(this, Input, [].concat(args));
45
+ (0, _defineProperty2["default"])(_this, "onInputEdit", function () {
73
46
  log('[onInputEdit] ...');
74
47
  var onChange = _this.props.onChange;
75
-
76
48
  if (!_this.mathField) {
77
49
  return;
78
50
  }
79
-
80
51
  if (onChange) {
81
52
  onChange(_this.mathField.latex());
82
53
  }
83
54
  });
84
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "refresh", function () {
55
+ (0, _defineProperty2["default"])(_this, "refresh", function () {
85
56
  _this.blur();
86
-
87
57
  _this.focus();
88
58
  });
89
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onKeyPress", function (event) {
59
+ (0, _defineProperty2["default"])(_this, "onKeyPress", function (event) {
90
60
  var keys = Object.keys(_this.mathField.__controller.options);
91
-
92
61
  if (keys.indexOf('ignoreNextMousedown') < 0) {
93
62
  // It seems like the controller has the above handler as an option
94
63
  // when all the right events are set and everything works fine
95
64
  // this seems to work in all cases
96
65
  _this.refresh();
97
66
  }
98
-
99
67
  if (event.charCode === 13) {
100
68
  event.preventDefault();
101
69
  return;
102
70
  }
103
71
  });
104
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onClick", function (event) {
72
+ (0, _defineProperty2["default"])(_this, "onClick", function (event) {
105
73
  var onClick = _this.props.onClick;
106
-
107
74
  _this.refresh();
108
-
109
75
  onClick && onClick(event);
110
76
  });
111
77
  return _this;
112
78
  }
113
-
114
- (0, _createClass2["default"])(Input, [{
79
+ (0, _inherits2["default"])(Input, _React$Component);
80
+ return (0, _createClass2["default"])(Input, [{
115
81
  key: "componentDidMount",
116
82
  value: function componentDidMount() {
117
83
  if (!MQ) {
118
84
  throw new Error('MQ is not defined - but component has mounted?');
119
85
  }
120
-
121
86
  this.mathField = MQ.MathField(this.input, {
122
87
  handlers: {
123
88
  edit: this.onInputEdit.bind(this)
@@ -136,9 +101,7 @@ var Input = /*#__PURE__*/function (_React$Component) {
136
101
  if (!this.mathField) {
137
102
  return;
138
103
  }
139
-
140
104
  var latex = this.props.latex;
141
-
142
105
  if (latex !== undefined && latex !== null) {
143
106
  this.mathField.latex(latex);
144
107
  }
@@ -165,9 +128,7 @@ var Input = /*#__PURE__*/function (_React$Component) {
165
128
  key: "command",
166
129
  value: function command(v) {
167
130
  var _this2 = this;
168
-
169
131
  log('command: ', v);
170
-
171
132
  if (Array.isArray(v)) {
172
133
  v.forEach(function (vv) {
173
134
  _this2.mathField.cmd(vv);
@@ -175,7 +136,6 @@ var Input = /*#__PURE__*/function (_React$Component) {
175
136
  } else {
176
137
  this.mathField.cmd(v);
177
138
  }
178
-
179
139
  this.mathField.focus();
180
140
  return this.mathField.latex();
181
141
  }
@@ -205,14 +165,12 @@ var Input = /*#__PURE__*/function (_React$Component) {
205
165
  key: "render",
206
166
  value: function render() {
207
167
  var _this3 = this;
208
-
209
168
  var _this$props = this.props,
210
- onFocus = _this$props.onFocus,
211
- onBlur = _this$props.onBlur,
212
- classes = _this$props.classes,
213
- className = _this$props.className;
214
- return /*#__PURE__*/_react["default"].createElement("span", {
215
- className: (0, _classnames["default"])(classes.input, className),
169
+ onFocus = _this$props.onFocus,
170
+ onBlur = _this$props.onBlur,
171
+ className = _this$props.className;
172
+ return /*#__PURE__*/_react["default"].createElement(StyledSpan, {
173
+ className: className,
216
174
  onKeyDown: this.onKeyPress,
217
175
  onClick: this.onClick,
218
176
  onFocus: onFocus,
@@ -223,25 +181,14 @@ var Input = /*#__PURE__*/function (_React$Component) {
223
181
  });
224
182
  }
225
183
  }]);
226
- return Input;
227
184
  }(_react["default"].Component);
228
-
229
- exports.Input = Input;
230
185
  (0, _defineProperty2["default"])(Input, "propTypes", {
231
186
  className: _propTypes["default"].string,
232
- classes: _propTypes["default"].object.isRequired,
233
187
  onClick: _propTypes["default"].func,
234
188
  onChange: _propTypes["default"].func,
235
189
  latex: _propTypes["default"].string,
236
190
  onFocus: _propTypes["default"].func,
237
191
  onBlur: _propTypes["default"].func
238
192
  });
239
-
240
- var styles = function styles() {
241
- return {};
242
- };
243
-
244
- var _default = (0, _styles.withStyles)(styles)(Input);
245
-
246
- exports["default"] = _default;
193
+ var _default = exports["default"] = Input;
247
194
  //# sourceMappingURL=input.js.map
@@ -1 +1 @@
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","preventDefault","onClick","Error","MathField","input","handlers","edit","onInputEdit","bind","updateLatex","undefined","v","Array","isArray","forEach","vv","cmd","keystroke","write","nextProps","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\n const { latex } = this.props;\n\n if (latex !== undefined && latex !== null) {\n this.mathField.latex(latex);\n }\n }\n\n clear() {\n this.mathField.latex('');\n\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\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n keystroke(v) {\n this.mathField.keystroke(v);\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n write(v) {\n log('write: ', v);\n this.mathField.write(v);\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n onInputEdit = () => {\n log('[onInputEdit] ...');\n const { onChange } = this.props;\n\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 event.preventDefault();\n return;\n }\n };\n\n onClick = (event) => {\n const { onClick } = this.props;\n\n this.refresh();\n onClick && onClick(event);\n };\n\n shouldComponentUpdate(nextProps) {\n log('next: ', nextProps.latex);\n log('current: ', this.mathField.latex());\n\n return nextProps.latex !== this.mathField.latex();\n }\n\n render() {\n const { onFocus, onBlur, classes, className } = this.props;\n\n return (\n <span\n className={classNames(classes.input, className)}\n onKeyDown={this.onKeyPress}\n onClick={this.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
+ {"version":3,"file":"input.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_debug","_customElements","_mathquill","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","MQ","window","MathQuill","getInterface","registerEmbed","registerLineBreak","log","debug","StyledSpan","styled","Input","exports","_React$Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","onChange","props","mathField","latex","blur","focus","event","keys","Object","__controller","options","indexOf","refresh","charCode","preventDefault","onClick","_inherits2","_createClass2","key","value","componentDidMount","Error","MathField","input","handlers","edit","onInputEdit","bind","updateLatex","componentDidUpdate","undefined","clear","command","v","_this2","isArray","forEach","vv","cmd","keystroke","write","shouldComponentUpdate","nextProps","render","_this3","_this$props","onFocus","onBlur","className","createElement","onKeyDown","onKeyPress","ref","r","React","Component","PropTypes","string","func","_default"],"sources":["../../src/mq/input.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport debug from 'debug';\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\nconst StyledSpan = styled('span')({\n // No specific styles needed, but component is available for future styling\n});\n\n/**\n * Wrapper for MathQuill MQ.MathField.\n */\nexport class Input extends React.Component {\n static propTypes = {\n className: PropTypes.string,\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\n const { latex } = this.props;\n\n if (latex !== undefined && latex !== null) {\n this.mathField.latex(latex);\n }\n }\n\n clear() {\n this.mathField.latex('');\n\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\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n keystroke(v) {\n this.mathField.keystroke(v);\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n write(v) {\n log('write: ', v);\n this.mathField.write(v);\n this.mathField.focus();\n\n return this.mathField.latex();\n }\n\n onInputEdit = () => {\n log('[onInputEdit] ...');\n const { onChange } = this.props;\n\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 event.preventDefault();\n return;\n }\n };\n\n onClick = (event) => {\n const { onClick } = this.props;\n\n this.refresh();\n onClick && onClick(event);\n };\n\n shouldComponentUpdate(nextProps) {\n log('next: ', nextProps.latex);\n log('current: ', this.mathField.latex());\n\n return nextProps.latex !== this.mathField.latex();\n }\n\n render() {\n const { onFocus, onBlur, className } = this.props;\n\n return (\n <StyledSpan\n className={className}\n onKeyDown={this.onKeyPress}\n onClick={this.onClick}\n onFocus={onFocus}\n onBlur={onBlur}\n ref={(r) => (this.input = r)}\n />\n );\n }\n}\n\nexport default Input;\n"],"mappings":"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","ignoreList":[]}
package/lib/mq/static.js CHANGED
@@ -1,82 +1,53 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
10
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
11
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
22
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
15
  var _react = _interopRequireDefault(require("react"));
27
-
28
16
  var _debug = _interopRequireDefault(require("debug"));
29
-
30
17
  var _mathquill = _interopRequireDefault(require("@pie-framework/mathquill"));
31
-
32
18
  var _updateSpans = require("../updateSpans");
33
-
34
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
35
-
36
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
37
-
19
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
20
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
38
21
  var MQ;
39
-
40
22
  if (typeof window !== 'undefined') {
41
23
  MQ = _mathquill["default"].getInterface(2);
42
24
  }
43
-
44
25
  var log = (0, _debug["default"])('pie-lib:math-input:mq:static');
45
26
  var REGEX = /\\MathQuillMathField\[r\d*\]\{(.*?)\}/g;
46
27
  var WHITESPACE_REGEX = / /g;
47
-
48
28
  function stripSpaces() {
49
29
  var string = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
50
30
  return string.replace(WHITESPACE_REGEX, '');
51
31
  }
52
-
53
32
  function countBraces(latex) {
54
33
  var count = 0;
55
-
56
34
  for (var i = 0; i < (latex || '').length; i++) {
57
35
  if (latex[i] === '{') {
58
36
  count++;
59
37
  }
60
38
  }
61
-
62
39
  return count;
63
40
  }
41
+
64
42
  /**
65
43
  * Wrapper for MathQuill MQ.MathField.
66
44
  */
67
-
68
-
69
- var Static = /*#__PURE__*/function (_React$Component) {
70
- (0, _inherits2["default"])(Static, _React$Component);
71
-
72
- var _super = _createSuper(Static);
73
-
45
+ var Static = exports["default"] = /*#__PURE__*/function (_React$Component) {
74
46
  function Static(props) {
75
47
  var _this;
76
-
77
48
  (0, _classCallCheck2["default"])(this, Static);
78
- _this = _super.call(this, props);
79
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "createLiveRegion", function () {
49
+ _this = _callSuper(this, Static, [props]);
50
+ (0, _defineProperty2["default"])(_this, "createLiveRegion", function () {
80
51
  _this.liveRegion = document.createElement('div');
81
52
  _this.liveRegion.style.position = 'absolute';
82
53
  _this.liveRegion.style.width = '1px';
@@ -84,68 +55,57 @@ var Static = /*#__PURE__*/function (_React$Component) {
84
55
  _this.liveRegion.style.marginTop = '-1px';
85
56
  _this.liveRegion.style.clip = 'rect(1px, 1px, 1px, 1px)';
86
57
  _this.liveRegion.style.overflow = 'hidden';
87
-
88
58
  _this.liveRegion.setAttribute('aria-live', 'polite');
89
-
90
59
  _this.liveRegion.setAttribute('aria-atomic', 'true');
91
-
92
60
  document.body.appendChild(_this.liveRegion);
93
61
  });
94
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "addEventListeners", function () {
62
+ (0, _defineProperty2["default"])(_this, "addEventListeners", function () {
95
63
  var input = _this.inputRef.current;
96
-
97
64
  if (input) {
98
65
  input.addEventListener('keydown', _this.handleKeyDown);
99
66
  input.addEventListener('click', _this.handleMathKeyboardClick);
100
67
  }
101
68
  });
102
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "removeEventListeners", function () {
69
+ (0, _defineProperty2["default"])(_this, "removeEventListeners", function () {
103
70
  var input = _this.inputRef.current;
104
-
105
71
  if (input) {
106
72
  input.removeEventListener('keydown', _this.handleKeyDown);
107
73
  input.removeEventListener('click', _this.handleMathKeyboardClick);
108
74
  }
109
75
  });
110
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "removeLiveRegion", function () {
76
+ (0, _defineProperty2["default"])(_this, "removeLiveRegion", function () {
111
77
  if (_this.liveRegion) {
112
78
  document.body.removeChild(_this.liveRegion);
113
79
  _this.liveRegion = null;
114
80
  }
115
81
  });
116
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleKeyDown", function (event) {
82
+ (0, _defineProperty2["default"])(_this, "handleKeyDown", function (event) {
117
83
  if ((event === null || event === void 0 ? void 0 : event.key) === 'Backspace' || (event === null || event === void 0 ? void 0 : event.key) === 'Delete') {
118
84
  _this.setState({
119
85
  isDeleteKeyPressed: true
120
86
  });
121
87
  }
122
-
123
88
  _this.setState({
124
89
  inputSource: 'keyboard'
125
90
  });
126
91
  });
127
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleMathKeyboardClick", function () {
92
+ (0, _defineProperty2["default"])(_this, "handleMathKeyboardClick", function () {
128
93
  _this.setState({
129
94
  inputSource: 'mathKeyboard'
130
95
  });
131
96
  });
132
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onInputEdit", function (field) {
97
+ (0, _defineProperty2["default"])(_this, "onInputEdit", function (field) {
133
98
  if (!_this.mathField) {
134
99
  return;
135
100
  }
136
-
137
101
  var name = _this.props.getFieldName(field, _this.mathField.innerFields);
138
-
139
102
  if (_this.props.onSubFieldChange) {
140
103
  var _this$inputRef;
141
-
142
104
  // eslint-disable-next-line no-useless-escape
143
105
  var regexMatch = field.latex().match(/[0-9]\\ \\frac\{[^\{]*\}\{ \}/);
144
-
145
106
  if ((_this$inputRef = _this.inputRef) !== null && _this$inputRef !== void 0 && _this$inputRef.current && regexMatch && regexMatch !== null && regexMatch !== void 0 && regexMatch.length) {
146
107
  try {
147
108
  field.__controller.cursor.insLeftOf(field.__controller.cursor.parent[-1].parent);
148
-
149
109
  field.el().dispatchEvent(new KeyboardEvent('keydown', {
150
110
  keyCode: 8
151
111
  }));
@@ -157,33 +117,27 @@ var Static = /*#__PURE__*/function (_React$Component) {
157
117
  _this.props.onSubFieldChange(name, field.latex());
158
118
  }
159
119
  }
160
-
161
120
  _this.announceLatexConversion(field.latex());
162
121
  });
163
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "announceLatexConversion", function (newLatex) {
122
+ (0, _defineProperty2["default"])(_this, "announceLatexConversion", function (newLatex) {
164
123
  if (!_this.state) {
165
124
  console.error('State is not initialized');
166
125
  return;
167
126
  }
168
-
169
127
  var _this$state = _this.state,
170
- previousLatex = _this$state.previousLatex,
171
- inputSource = _this$state.inputSource,
172
- isDeleteKeyPressed = _this$state.isDeleteKeyPressed;
128
+ previousLatex = _this$state.previousLatex,
129
+ inputSource = _this$state.inputSource,
130
+ isDeleteKeyPressed = _this$state.isDeleteKeyPressed;
173
131
  var announcement = 'Converted to math symbol';
174
-
175
132
  if (inputSource === 'keyboard' && !isDeleteKeyPressed) {
176
133
  var newBraces = countBraces(newLatex);
177
134
  var oldBraces = countBraces(previousLatex);
178
-
179
135
  if (newBraces > oldBraces) {
180
136
  _this.announceMessage(announcement);
181
137
  } else {
182
138
  try {
183
139
  _this.mathField.parseLatex(previousLatex);
184
-
185
140
  _this.mathField.parseLatex(newLatex);
186
-
187
141
  if (newLatex == previousLatex) {
188
142
  _this.announceMessage(announcement);
189
143
  }
@@ -193,80 +147,68 @@ var Static = /*#__PURE__*/function (_React$Component) {
193
147
  }
194
148
  }
195
149
  }
196
-
197
150
  _this.setState({
198
151
  previousLatex: newLatex,
199
152
  isDeleteKeyPressed: false
200
153
  });
201
154
  });
202
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "announceMessage", function (message) {
155
+ (0, _defineProperty2["default"])(_this, "announceMessage", function (message) {
203
156
  _this.setState({
204
157
  previousLatex: ''
205
158
  });
206
-
207
159
  if (_this.liveRegion) {
208
- _this.liveRegion.textContent = message; // Clear the message after it is announced
160
+ _this.liveRegion.textContent = message;
209
161
 
162
+ // Clear the message after it is announced
210
163
  setTimeout(function () {
211
164
  _this.liveRegion.textContent = '';
212
165
  }, 500);
213
166
  }
214
167
  });
215
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "update", function () {
168
+ (0, _defineProperty2["default"])(_this, "update", function () {
216
169
  if (!MQ) {
217
170
  throw new Error('MQ is not defined - but component has mounted?');
218
171
  }
219
-
220
172
  if (!_this.mathField) {
221
173
  var _this$inputRef2;
222
-
223
174
  _this.mathField = MQ.StaticMath((_this$inputRef2 = _this.inputRef) === null || _this$inputRef2 === void 0 ? void 0 : _this$inputRef2.current, {
224
175
  handlers: {
225
- edit: _this.onInputEdit.bind((0, _assertThisInitialized2["default"])(_this))
176
+ edit: _this.onInputEdit.bind(_this)
226
177
  }
227
178
  });
228
179
  }
229
-
230
180
  try {
231
181
  _this.mathField.parseLatex(_this.props.latex);
232
-
233
182
  _this.mathField.latex(_this.props.latex);
234
183
  } catch (e) {
235
184
  // default latex if received has errors
236
185
  _this.mathField.latex('\\MathQuillMathField[r1]{}');
237
186
  }
238
187
  });
239
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "blur", function () {
188
+ (0, _defineProperty2["default"])(_this, "blur", function () {
240
189
  log('blur mathfield');
241
-
242
190
  _this.mathField.blur();
243
191
  });
244
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "focus", function () {
192
+ (0, _defineProperty2["default"])(_this, "focus", function () {
245
193
  log('focus mathfield...');
246
-
247
194
  _this.mathField.focus();
248
195
  });
249
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onFocus", function (e) {
196
+ (0, _defineProperty2["default"])(_this, "onFocus", function (e) {
250
197
  try {
251
198
  var rootBlock = e.target.parentElement.nextSibling;
252
199
  var id = parseInt(rootBlock.getAttribute('mathquill-block-id'), 10);
253
-
254
200
  if (!id) {
255
201
  rootBlock = rootBlock.parentElement;
256
202
  id = parseInt(rootBlock.getAttribute('mathquill-block-id'), 10);
257
203
  }
258
-
259
204
  var innerField = _this.mathField.innerFields.find(function (f) {
260
205
  return f.id === id;
261
206
  });
262
-
263
207
  if (innerField) {
264
208
  var name = _this.props.getFieldName(innerField, _this.mathField.innerFields);
265
-
266
209
  if (_this.props.setInput) {
267
210
  _this.props.setInput(innerField);
268
211
  }
269
-
270
212
  _this.props.onSubFieldFocus(name, innerField);
271
213
  }
272
214
  } catch (err) {
@@ -283,8 +225,8 @@ var Static = /*#__PURE__*/function (_React$Component) {
283
225
  _this.inputRef = /*#__PURE__*/_react["default"].createRef();
284
226
  return _this;
285
227
  }
286
-
287
- (0, _createClass2["default"])(Static, [{
228
+ (0, _inherits2["default"])(Static, _React$Component);
229
+ return (0, _createClass2["default"])(Static, [{
288
230
  key: "componentDidMount",
289
231
  value: function componentDidMount() {
290
232
  this.update();
@@ -316,8 +258,8 @@ var Static = /*#__PURE__*/function (_React$Component) {
316
258
  return out;
317
259
  } catch (e) {
318
260
  // eslint-disable-next-line no-console
319
- console.warn('Error parsing latex:', e.message, 'skip update'); // eslint-disable-next-line no-console
320
-
261
+ console.warn('Error parsing latex:', e.message, 'skip update');
262
+ // eslint-disable-next-line no-console
321
263
  console.warn(e);
322
264
  return false;
323
265
  }
@@ -326,8 +268,8 @@ var Static = /*#__PURE__*/function (_React$Component) {
326
268
  key: "render",
327
269
  value: function render() {
328
270
  var _this$props = this.props,
329
- onBlur = _this$props.onBlur,
330
- className = _this$props.className;
271
+ onBlur = _this$props.onBlur,
272
+ className = _this$props.className;
331
273
  return /*#__PURE__*/_react["default"].createElement("span", {
332
274
  className: className,
333
275
  onFocus: this.onFocus,
@@ -336,10 +278,7 @@ var Static = /*#__PURE__*/function (_React$Component) {
336
278
  });
337
279
  }
338
280
  }]);
339
- return Static;
340
281
  }(_react["default"].Component);
341
-
342
- exports["default"] = Static;
343
282
  (0, _defineProperty2["default"])(Static, "propTypes", {
344
283
  latex: _propTypes["default"].string.isRequired,
345
284
  onFocus: _propTypes["default"].func,