@pie-lib/math-input 6.13.0-beta.0 → 6.13.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 (45) hide show
  1. package/CHANGELOG.json +6 -1536
  2. package/CHANGELOG.md +128 -125
  3. package/package.json +4 -2
  4. package/src/__tests__/math-input-test.jsx +1 -1
  5. package/src/index.jsx +1 -1
  6. package/src/keypad/index.jsx +3 -3
  7. package/lib/__tests__/math-input-test.js +0 -109
  8. package/lib/horizontal-keypad.js +0 -124
  9. package/lib/index.js +0 -76
  10. package/lib/keypad/__tests__/index.test.js +0 -41
  11. package/lib/keypad/__tests__/keys-layout.test.js +0 -15
  12. package/lib/keypad/index.js +0 -512
  13. package/lib/keypad/keys-layout.js +0 -34
  14. package/lib/keys/__tests__/utils.test.js +0 -60
  15. package/lib/keys/basic-operators.js +0 -41
  16. package/lib/keys/chars.js +0 -17
  17. package/lib/keys/comparison.js +0 -49
  18. package/lib/keys/constants.js +0 -43
  19. package/lib/keys/digits.js +0 -53
  20. package/lib/keys/edit.js +0 -17
  21. package/lib/keys/exponent.js +0 -36
  22. package/lib/keys/fractions.js +0 -34
  23. package/lib/keys/geometry.js +0 -169
  24. package/lib/keys/grades.js +0 -295
  25. package/lib/keys/index.js +0 -54
  26. package/lib/keys/log.js +0 -32
  27. package/lib/keys/logic.js +0 -23
  28. package/lib/keys/matrices.js +0 -23
  29. package/lib/keys/misc.js +0 -74
  30. package/lib/keys/navigation.js +0 -25
  31. package/lib/keys/operators.js +0 -18
  32. package/lib/keys/statistics.js +0 -47
  33. package/lib/keys/sub-sup.js +0 -23
  34. package/lib/keys/trigonometry.js +0 -53
  35. package/lib/keys/utils.js +0 -120
  36. package/lib/keys/vars.js +0 -29
  37. package/lib/math-input.js +0 -192
  38. package/lib/mq/__tests__/input.test.js +0 -119
  39. package/lib/mq/__tests__/static.test.js +0 -74
  40. package/lib/mq/common-mq-styles.js +0 -110
  41. package/lib/mq/custom-elements.js +0 -23
  42. package/lib/mq/index.js +0 -32
  43. package/lib/mq/input.js +0 -247
  44. package/lib/mq/static.js +0 -356
  45. package/lib/updateSpans.js +0 -23
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _enzyme = require("enzyme");
6
-
7
- var _react = _interopRequireDefault(require("react"));
8
-
9
- var _static = _interopRequireDefault(require("../static"));
10
-
11
- var Mathquill = require('@pie-framework/mathquill');
12
-
13
- jest.mock('@pie-framework/mathquill', function () {
14
- return {
15
- StaticMath: jest.fn().mockReturnValue({
16
- latex: jest.fn(),
17
- parseLatex: jest.fn()
18
- }),
19
- getInterface: jest.fn().mockReturnThis()
20
- };
21
- });
22
- describe('static', function () {
23
- var w;
24
- describe('mount', function () {
25
- beforeEach(function () {
26
- w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_static["default"], {
27
- latex: "foo"
28
- }), {
29
- disableLifecycleMethods: true
30
- });
31
- w.instance().input = {};
32
- w.instance().componentDidMount();
33
- });
34
- it('set the html', function () {
35
- expect(Mathquill.getInterface().StaticMath().latex).toBeCalledWith('foo');
36
- });
37
- it('calls MQ.StaticMath', function () {
38
- expect(Mathquill.getInterface().StaticMath).toHaveBeenCalled();
39
- });
40
- });
41
- describe('shouldComponentUpdate', function () {
42
- it('returns false if there is an error', function () {
43
- w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_static["default"], {
44
- latex: "foo"
45
- }), {
46
- disableLifecycleMethods: true
47
- });
48
- w.instance().mathField = {
49
- parseLatex: jest.fn(function (e) {
50
- throw new Error('boom');
51
- })
52
- };
53
- expect(w.instance().shouldComponentUpdate({
54
- latex: '\\abs{}'
55
- })).toEqual(false);
56
- });
57
- it('returns true if ??', function () {
58
- w = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_static["default"], {
59
- latex: "foo"
60
- }), {
61
- disableLifecycleMethods: true
62
- });
63
- w.instance().mathField = {
64
- latex: jest.fn().mockReturnValue('foo'),
65
- parseLatex: jest.fn().mockReturnValue('foo'),
66
- innerFields: ['field1', 'field2']
67
- };
68
- expect(w.instance().shouldComponentUpdate({
69
- latex: '\\abs{}'
70
- })).toEqual(true);
71
- });
72
- });
73
- });
74
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tcS9fX3Rlc3RzX18vc3RhdGljLnRlc3QuanN4Il0sIm5hbWVzIjpbIk1hdGhxdWlsbCIsInJlcXVpcmUiLCJqZXN0IiwibW9jayIsIlN0YXRpY01hdGgiLCJmbiIsIm1vY2tSZXR1cm5WYWx1ZSIsImxhdGV4IiwicGFyc2VMYXRleCIsImdldEludGVyZmFjZSIsIm1vY2tSZXR1cm5UaGlzIiwiZGVzY3JpYmUiLCJ3IiwiYmVmb3JlRWFjaCIsImRpc2FibGVMaWZlY3ljbGVNZXRob2RzIiwiaW5zdGFuY2UiLCJpbnB1dCIsImNvbXBvbmVudERpZE1vdW50IiwiaXQiLCJleHBlY3QiLCJ0b0JlQ2FsbGVkV2l0aCIsInRvSGF2ZUJlZW5DYWxsZWQiLCJtYXRoRmllbGQiLCJlIiwiRXJyb3IiLCJzaG91bGRDb21wb25lbnRVcGRhdGUiLCJ0b0VxdWFsIiwiaW5uZXJGaWVsZHMiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQSxJQUFNQSxTQUFTLEdBQUdDLE9BQU8sQ0FBQywwQkFBRCxDQUF6Qjs7QUFFQUMsSUFBSSxDQUFDQyxJQUFMLENBQVUsMEJBQVYsRUFBc0M7QUFBQSxTQUFPO0FBQzNDQyxJQUFBQSxVQUFVLEVBQUVGLElBQUksQ0FBQ0csRUFBTCxHQUFVQyxlQUFWLENBQTBCO0FBQ3BDQyxNQUFBQSxLQUFLLEVBQUVMLElBQUksQ0FBQ0csRUFBTCxFQUQ2QjtBQUVwQ0csTUFBQUEsVUFBVSxFQUFFTixJQUFJLENBQUNHLEVBQUw7QUFGd0IsS0FBMUIsQ0FEK0I7QUFLM0NJLElBQUFBLFlBQVksRUFBRVAsSUFBSSxDQUFDRyxFQUFMLEdBQVVLLGNBQVY7QUFMNkIsR0FBUDtBQUFBLENBQXRDO0FBUUFDLFFBQVEsQ0FBQyxRQUFELEVBQVcsWUFBTTtBQUN2QixNQUFJQyxDQUFKO0FBQ0FELEVBQUFBLFFBQVEsQ0FBQyxPQUFELEVBQVUsWUFBTTtBQUN0QkUsSUFBQUEsVUFBVSxDQUFDLFlBQU07QUFDZkQsTUFBQUEsQ0FBQyxHQUFHLG1DQUFRLGdDQUFDLGtCQUFEO0FBQVEsUUFBQSxLQUFLLEVBQUM7QUFBZCxRQUFSLEVBQWdDO0FBQ2xDRSxRQUFBQSx1QkFBdUIsRUFBRTtBQURTLE9BQWhDLENBQUo7QUFJQUYsTUFBQUEsQ0FBQyxDQUFDRyxRQUFGLEdBQWFDLEtBQWIsR0FBcUIsRUFBckI7QUFDQUosTUFBQUEsQ0FBQyxDQUFDRyxRQUFGLEdBQWFFLGlCQUFiO0FBQ0QsS0FQUyxDQUFWO0FBU0FDLElBQUFBLEVBQUUsQ0FBQyxjQUFELEVBQWlCLFlBQU07QUFDdkJDLE1BQUFBLE1BQU0sQ0FBQ25CLFNBQVMsQ0FBQ1MsWUFBVixHQUF5QkwsVUFBekIsR0FBc0NHLEtBQXZDLENBQU4sQ0FBb0RhLGNBQXBELENBQW1FLEtBQW5FO0FBQ0QsS0FGQyxDQUFGO0FBSUFGLElBQUFBLEVBQUUsQ0FBQyxxQkFBRCxFQUF3QixZQUFNO0FBQzlCQyxNQUFBQSxNQUFNLENBQUNuQixTQUFTLENBQUNTLFlBQVYsR0FBeUJMLFVBQTFCLENBQU4sQ0FBNENpQixnQkFBNUM7QUFDRCxLQUZDLENBQUY7QUFHRCxHQWpCTyxDQUFSO0FBbUJBVixFQUFBQSxRQUFRLENBQUMsdUJBQUQsRUFBMEIsWUFBTTtBQUN0Q08sSUFBQUEsRUFBRSxDQUFDLG9DQUFELEVBQXVDLFlBQU07QUFDN0NOLE1BQUFBLENBQUMsR0FBRyxtQ0FBUSxnQ0FBQyxrQkFBRDtBQUFRLFFBQUEsS0FBSyxFQUFDO0FBQWQsUUFBUixFQUFnQztBQUFFRSxRQUFBQSx1QkFBdUIsRUFBRTtBQUEzQixPQUFoQyxDQUFKO0FBQ0FGLE1BQUFBLENBQUMsQ0FBQ0csUUFBRixHQUFhTyxTQUFiLEdBQXlCO0FBQ3ZCZCxRQUFBQSxVQUFVLEVBQUVOLElBQUksQ0FBQ0csRUFBTCxDQUFRLFVBQUNrQixDQUFELEVBQU87QUFDekIsZ0JBQU0sSUFBSUMsS0FBSixDQUFVLE1BQVYsQ0FBTjtBQUNELFNBRlc7QUFEVyxPQUF6QjtBQUtBTCxNQUFBQSxNQUFNLENBQUNQLENBQUMsQ0FBQ0csUUFBRixHQUFhVSxxQkFBYixDQUFtQztBQUFFbEIsUUFBQUEsS0FBSyxFQUFFO0FBQVQsT0FBbkMsQ0FBRCxDQUFOLENBQWlFbUIsT0FBakUsQ0FBeUUsS0FBekU7QUFDRCxLQVJDLENBQUY7QUFVQVIsSUFBQUEsRUFBRSxDQUFDLG9CQUFELEVBQXVCLFlBQU07QUFDN0JOLE1BQUFBLENBQUMsR0FBRyxtQ0FBUSxnQ0FBQyxrQkFBRDtBQUFRLFFBQUEsS0FBSyxFQUFDO0FBQWQsUUFBUixFQUFnQztBQUFFRSxRQUFBQSx1QkFBdUIsRUFBRTtBQUEzQixPQUFoQyxDQUFKO0FBQ0FGLE1BQUFBLENBQUMsQ0FBQ0csUUFBRixHQUFhTyxTQUFiLEdBQXlCO0FBQ3ZCZixRQUFBQSxLQUFLLEVBQUVMLElBQUksQ0FBQ0csRUFBTCxHQUFVQyxlQUFWLENBQTBCLEtBQTFCLENBRGdCO0FBRXZCRSxRQUFBQSxVQUFVLEVBQUVOLElBQUksQ0FBQ0csRUFBTCxHQUFVQyxlQUFWLENBQTBCLEtBQTFCLENBRlc7QUFHdkJxQixRQUFBQSxXQUFXLEVBQUUsQ0FBQyxRQUFELEVBQVcsUUFBWDtBQUhVLE9BQXpCO0FBS0FSLE1BQUFBLE1BQU0sQ0FBQ1AsQ0FBQyxDQUFDRyxRQUFGLEdBQWFVLHFCQUFiLENBQW1DO0FBQUVsQixRQUFBQSxLQUFLLEVBQUU7QUFBVCxPQUFuQyxDQUFELENBQU4sQ0FBaUVtQixPQUFqRSxDQUF5RSxJQUF6RTtBQUNELEtBUkMsQ0FBRjtBQVNELEdBcEJPLENBQVI7QUFxQkQsQ0ExQ08sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNoYWxsb3cgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTdGF0aWMgZnJvbSAnLi4vc3RhdGljJztcblxuY29uc3QgTWF0aHF1aWxsID0gcmVxdWlyZSgnQHBpZS1mcmFtZXdvcmsvbWF0aHF1aWxsJyk7XG5cbmplc3QubW9jaygnQHBpZS1mcmFtZXdvcmsvbWF0aHF1aWxsJywgKCkgPT4gKHtcbiAgU3RhdGljTWF0aDogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7XG4gICAgbGF0ZXg6IGplc3QuZm4oKSxcbiAgICBwYXJzZUxhdGV4OiBqZXN0LmZuKCksXG4gIH0pLFxuICBnZXRJbnRlcmZhY2U6IGplc3QuZm4oKS5tb2NrUmV0dXJuVGhpcygpLFxufSkpO1xuXG5kZXNjcmliZSgnc3RhdGljJywgKCkgPT4ge1xuICBsZXQgdztcbiAgZGVzY3JpYmUoJ21vdW50JywgKCkgPT4ge1xuICAgIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgICAgdyA9IHNoYWxsb3coPFN0YXRpYyBsYXRleD1cImZvb1wiIC8+LCB7XG4gICAgICAgIGRpc2FibGVMaWZlY3ljbGVNZXRob2RzOiB0cnVlLFxuICAgICAgfSk7XG5cbiAgICAgIHcuaW5zdGFuY2UoKS5pbnB1dCA9IHt9O1xuICAgICAgdy5pbnN0YW5jZSgpLmNvbXBvbmVudERpZE1vdW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2V0IHRoZSBodG1sJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KE1hdGhxdWlsbC5nZXRJbnRlcmZhY2UoKS5TdGF0aWNNYXRoKCkubGF0ZXgpLnRvQmVDYWxsZWRXaXRoKCdmb28nKTtcbiAgICB9KTtcblxuICAgIGl0KCdjYWxscyBNUS5TdGF0aWNNYXRoJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KE1hdGhxdWlsbC5nZXRJbnRlcmZhY2UoKS5TdGF0aWNNYXRoKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdzaG91bGRDb21wb25lbnRVcGRhdGUnLCAoKSA9PiB7XG4gICAgaXQoJ3JldHVybnMgZmFsc2UgaWYgdGhlcmUgaXMgYW4gZXJyb3InLCAoKSA9PiB7XG4gICAgICB3ID0gc2hhbGxvdyg8U3RhdGljIGxhdGV4PVwiZm9vXCIgLz4sIHsgZGlzYWJsZUxpZmVjeWNsZU1ldGhvZHM6IHRydWUgfSk7XG4gICAgICB3Lmluc3RhbmNlKCkubWF0aEZpZWxkID0ge1xuICAgICAgICBwYXJzZUxhdGV4OiBqZXN0LmZuKChlKSA9PiB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdib29tJyk7XG4gICAgICAgIH0pLFxuICAgICAgfTtcbiAgICAgIGV4cGVjdCh3Lmluc3RhbmNlKCkuc2hvdWxkQ29tcG9uZW50VXBkYXRlKHsgbGF0ZXg6ICdcXFxcYWJze30nIH0pKS50b0VxdWFsKGZhbHNlKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZXR1cm5zIHRydWUgaWYgPz8nLCAoKSA9PiB7XG4gICAgICB3ID0gc2hhbGxvdyg8U3RhdGljIGxhdGV4PVwiZm9vXCIgLz4sIHsgZGlzYWJsZUxpZmVjeWNsZU1ldGhvZHM6IHRydWUgfSk7XG4gICAgICB3Lmluc3RhbmNlKCkubWF0aEZpZWxkID0ge1xuICAgICAgICBsYXRleDogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSgnZm9vJyksXG4gICAgICAgIHBhcnNlTGF0ZXg6IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoJ2ZvbycpLFxuICAgICAgICBpbm5lckZpZWxkczogWydmaWVsZDEnLCAnZmllbGQyJ10sXG4gICAgICB9O1xuICAgICAgZXhwZWN0KHcuaW5zdGFuY2UoKS5zaG91bGRDb21wb25lbnRVcGRhdGUoeyBsYXRleDogJ1xcXFxhYnN7fScgfSkpLnRvRXF1YWwodHJ1ZSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -1,110 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.supsubStyles = exports.longdivStyles = exports["default"] = exports.commonMqKeyboardStyles = exports.commonMqFontStyles = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
13
-
14
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
15
-
16
- var commonMqFontStyles = {
17
- fontFamily: 'MJXZERO, MJXTEX !important',
18
- '-webkit-font-smoothing': 'antialiased !important',
19
- '& .mq-math-mode > span > var': {
20
- fontFamily: 'MJXZERO, MJXTEX-I !important'
21
- },
22
- '& .mq-math-mode span var': {
23
- fontFamily: 'MJXZERO, MJXTEX-I !important'
24
- },
25
- '& .mq-math-mode .mq-nonSymbola': {
26
- fontFamily: 'MJXZERO, MJXTEX-I !important'
27
- },
28
- '& .mq-math-mode > span > var.mq-operator-name': {
29
- fontFamily: 'MJXZERO, MJXTEX !important'
30
- }
31
- };
32
- exports.commonMqFontStyles = commonMqFontStyles;
33
- var longdivStyles = {
34
- '& .mq-longdiv-inner': {
35
- marginTop: '-1px',
36
- marginLeft: '5px !important;',
37
- '& > .mq-empty': {
38
- padding: '0 !important',
39
- marginLeft: '0px !important',
40
- marginTop: '2px'
41
- }
42
- },
43
- '& .mq-math-mode .mq-longdiv': {
44
- display: 'inline-flex !important'
45
- }
46
- };
47
- exports.longdivStyles = longdivStyles;
48
- var supsubStyles = {
49
- '& .mq-math-mode sup.mq-nthroot': {
50
- fontSize: '70% !important',
51
- verticalAlign: '0.5em !important',
52
- paddingRight: '0.15em'
53
- },
54
- '& .mq-math-mode .mq-supsub': {
55
- fontSize: '70.7% !important'
56
- },
57
- '& .mq-supsub ': {
58
- fontSize: '70.7%'
59
- },
60
- '& .mq-math-mode .mq-supsub.mq-sup-only': {
61
- verticalAlign: '-0.1em !important',
62
- '& .mq-sup': {
63
- marginBottom: '0px !important'
64
- }
65
- },
66
-
67
- /* But when the base is a fraction, move it higher */
68
- '& .mq-math-mode .mq-fraction + .mq-supsub.mq-sup-only': {
69
- verticalAlign: '0.4em !important'
70
- },
71
- '& .mq-math-mode .mq-supsub.mq-sup-only.mq-after-fraction-group': {
72
- verticalAlign: '0.4em !important'
73
- }
74
- };
75
- exports.supsubStyles = supsubStyles;
76
- var commonMqKeyboardStyles = {
77
- '& *': _objectSpread(_objectSpread(_objectSpread({}, commonMqFontStyles), longdivStyles), {}, {
78
- '& .mq-math-mode .mq-sqrt-prefix': {
79
- top: '0 !important'
80
- },
81
- '& .mq-math-mode .mq-empty': {
82
- padding: '9px 1px !important'
83
- },
84
- '& .mq-math-mode .mq-supsub': {
85
- fontSize: '70.7% !important'
86
- },
87
- '& .mq-math-mode .mq-sqrt-stem': {
88
- marginTop: '-5px',
89
- paddingTop: '4px'
90
- },
91
- '& .mq-math-mode .mq-paren': {
92
- verticalAlign: 'middle !important'
93
- },
94
- '& .mq-math-mode .mq-overarrow .mq-overarrow-inner .mq-empty': {
95
- padding: '0 !important'
96
- },
97
- '& .mq-math-mode .mq-overline .mq-overline-inner .mq-empty ': {
98
- padding: '0 !important'
99
- }
100
- })
101
- };
102
- exports.commonMqKeyboardStyles = commonMqKeyboardStyles;
103
- var _default = {
104
- commonMqFontStyles: commonMqFontStyles,
105
- longdivStyles: longdivStyles,
106
- supsubStyles: supsubStyles,
107
- commonMqKeyboardStyles: commonMqKeyboardStyles
108
- };
109
- exports["default"] = _default;
110
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tcS9jb21tb24tbXEtc3R5bGVzLmpzIl0sIm5hbWVzIjpbImNvbW1vbk1xRm9udFN0eWxlcyIsImZvbnRGYW1pbHkiLCJsb25nZGl2U3R5bGVzIiwibWFyZ2luVG9wIiwibWFyZ2luTGVmdCIsInBhZGRpbmciLCJkaXNwbGF5Iiwic3Vwc3ViU3R5bGVzIiwiZm9udFNpemUiLCJ2ZXJ0aWNhbEFsaWduIiwicGFkZGluZ1JpZ2h0IiwibWFyZ2luQm90dG9tIiwiY29tbW9uTXFLZXlib2FyZFN0eWxlcyIsInRvcCIsInBhZGRpbmdUb3AiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFPLElBQU1BLGtCQUFrQixHQUFHO0FBQ2hDQyxFQUFBQSxVQUFVLEVBQUUsNEJBRG9CO0FBRWhDLDRCQUEwQix3QkFGTTtBQUloQyxrQ0FBZ0M7QUFDOUJBLElBQUFBLFVBQVUsRUFBRTtBQURrQixHQUpBO0FBT2hDLDhCQUE0QjtBQUMxQkEsSUFBQUEsVUFBVSxFQUFFO0FBRGMsR0FQSTtBQVVoQyxvQ0FBa0M7QUFDaENBLElBQUFBLFVBQVUsRUFBRTtBQURvQixHQVZGO0FBYWhDLG1EQUFpRDtBQUMvQ0EsSUFBQUEsVUFBVSxFQUFFO0FBRG1DO0FBYmpCLENBQTNCOztBQWtCQSxJQUFNQyxhQUFhLEdBQUc7QUFDM0IseUJBQXVCO0FBQ3JCQyxJQUFBQSxTQUFTLEVBQUUsTUFEVTtBQUVyQkMsSUFBQUEsVUFBVSxFQUFFLGlCQUZTO0FBSXJCLHFCQUFpQjtBQUNmQyxNQUFBQSxPQUFPLEVBQUUsY0FETTtBQUVmRCxNQUFBQSxVQUFVLEVBQUUsZ0JBRkc7QUFHZkQsTUFBQUEsU0FBUyxFQUFFO0FBSEk7QUFKSSxHQURJO0FBWTNCLGlDQUErQjtBQUM3QkcsSUFBQUEsT0FBTyxFQUFFO0FBRG9CO0FBWkosQ0FBdEI7O0FBaUJBLElBQU1DLFlBQVksR0FBRztBQUMxQixvQ0FBa0M7QUFDaENDLElBQUFBLFFBQVEsRUFBRSxnQkFEc0I7QUFFaENDLElBQUFBLGFBQWEsRUFBRSxrQkFGaUI7QUFHaENDLElBQUFBLFlBQVksRUFBRTtBQUhrQixHQURSO0FBTTFCLGdDQUE4QjtBQUM1QkYsSUFBQUEsUUFBUSxFQUFFO0FBRGtCLEdBTko7QUFTMUIsbUJBQWlCO0FBQ2ZBLElBQUFBLFFBQVEsRUFBRTtBQURLLEdBVFM7QUFZMUIsNENBQTBDO0FBQ3hDQyxJQUFBQSxhQUFhLEVBQUUsbUJBRHlCO0FBR3hDLGlCQUFhO0FBQ1hFLE1BQUFBLFlBQVksRUFBRTtBQURIO0FBSDJCLEdBWmhCOztBQW1CMUI7QUFDQSwyREFBeUQ7QUFDdkRGLElBQUFBLGFBQWEsRUFBRTtBQUR3QyxHQXBCL0I7QUF3QjFCLG9FQUFrRTtBQUNoRUEsSUFBQUEsYUFBYSxFQUFFO0FBRGlEO0FBeEJ4QyxDQUFyQjs7QUE2QkEsSUFBTUcsc0JBQXNCLEdBQUc7QUFDcEMsdURBQ0taLGtCQURMLEdBRUtFLGFBRkw7QUFHRSx1Q0FBbUM7QUFDakNXLE1BQUFBLEdBQUcsRUFBRTtBQUQ0QixLQUhyQztBQU9FLGlDQUE2QjtBQUMzQlIsTUFBQUEsT0FBTyxFQUFFO0FBRGtCLEtBUC9CO0FBV0Usa0NBQThCO0FBQzVCRyxNQUFBQSxRQUFRLEVBQUU7QUFEa0IsS0FYaEM7QUFlRSxxQ0FBaUM7QUFDL0JMLE1BQUFBLFNBQVMsRUFBRSxNQURvQjtBQUUvQlcsTUFBQUEsVUFBVSxFQUFFO0FBRm1CLEtBZm5DO0FBb0JFLGlDQUE2QjtBQUMzQkwsTUFBQUEsYUFBYSxFQUFFO0FBRFksS0FwQi9CO0FBd0JFLG1FQUErRDtBQUM3REosTUFBQUEsT0FBTyxFQUFFO0FBRG9ELEtBeEJqRTtBQTRCRSxrRUFBOEQ7QUFDNURBLE1BQUFBLE9BQU8sRUFBRTtBQURtRDtBQTVCaEU7QUFEb0MsQ0FBL0I7O2VBbUNRO0FBQ2JMLEVBQUFBLGtCQUFrQixFQUFsQkEsa0JBRGE7QUFFYkUsRUFBQUEsYUFBYSxFQUFiQSxhQUZhO0FBR2JLLEVBQUFBLFlBQVksRUFBWkEsWUFIYTtBQUliSyxFQUFBQSxzQkFBc0IsRUFBdEJBO0FBSmEsQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBjb21tb25NcUZvbnRTdHlsZXMgPSB7XG4gIGZvbnRGYW1pbHk6ICdNSlhaRVJPLCBNSlhURVggIWltcG9ydGFudCcsXG4gICctd2Via2l0LWZvbnQtc21vb3RoaW5nJzogJ2FudGlhbGlhc2VkICFpbXBvcnRhbnQnLFxuXG4gICcmIC5tcS1tYXRoLW1vZGUgPiBzcGFuID4gdmFyJzoge1xuICAgIGZvbnRGYW1pbHk6ICdNSlhaRVJPLCBNSlhURVgtSSAhaW1wb3J0YW50JyxcbiAgfSxcbiAgJyYgLm1xLW1hdGgtbW9kZSBzcGFuIHZhcic6IHtcbiAgICBmb250RmFtaWx5OiAnTUpYWkVSTywgTUpYVEVYLUkgIWltcG9ydGFudCcsXG4gIH0sXG4gICcmIC5tcS1tYXRoLW1vZGUgLm1xLW5vblN5bWJvbGEnOiB7XG4gICAgZm9udEZhbWlseTogJ01KWFpFUk8sIE1KWFRFWC1JICFpbXBvcnRhbnQnLFxuICB9LFxuICAnJiAubXEtbWF0aC1tb2RlID4gc3BhbiA+IHZhci5tcS1vcGVyYXRvci1uYW1lJzoge1xuICAgIGZvbnRGYW1pbHk6ICdNSlhaRVJPLCBNSlhURVggIWltcG9ydGFudCcsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgbG9uZ2RpdlN0eWxlcyA9IHtcbiAgJyYgLm1xLWxvbmdkaXYtaW5uZXInOiB7XG4gICAgbWFyZ2luVG9wOiAnLTFweCcsXG4gICAgbWFyZ2luTGVmdDogJzVweCAhaW1wb3J0YW50OycsXG5cbiAgICAnJiA+IC5tcS1lbXB0eSc6IHtcbiAgICAgIHBhZGRpbmc6ICcwICFpbXBvcnRhbnQnLFxuICAgICAgbWFyZ2luTGVmdDogJzBweCAhaW1wb3J0YW50JyxcbiAgICAgIG1hcmdpblRvcDogJzJweCcsXG4gICAgfSxcbiAgfSxcblxuICAnJiAubXEtbWF0aC1tb2RlIC5tcS1sb25nZGl2Jzoge1xuICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCAhaW1wb3J0YW50JyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBzdXBzdWJTdHlsZXMgPSB7XG4gICcmIC5tcS1tYXRoLW1vZGUgc3VwLm1xLW50aHJvb3QnOiB7XG4gICAgZm9udFNpemU6ICc3MCUgIWltcG9ydGFudCcsXG4gICAgdmVydGljYWxBbGlnbjogJzAuNWVtICFpbXBvcnRhbnQnLFxuICAgIHBhZGRpbmdSaWdodDogJzAuMTVlbScsXG4gIH0sXG4gICcmIC5tcS1tYXRoLW1vZGUgLm1xLXN1cHN1Yic6IHtcbiAgICBmb250U2l6ZTogJzcwLjclICFpbXBvcnRhbnQnLFxuICB9LFxuICAnJiAubXEtc3Vwc3ViICc6IHtcbiAgICBmb250U2l6ZTogJzcwLjclJyxcbiAgfSxcbiAgJyYgLm1xLW1hdGgtbW9kZSAubXEtc3Vwc3ViLm1xLXN1cC1vbmx5Jzoge1xuICAgIHZlcnRpY2FsQWxpZ246ICctMC4xZW0gIWltcG9ydGFudCcsXG5cbiAgICAnJiAubXEtc3VwJzoge1xuICAgICAgbWFyZ2luQm90dG9tOiAnMHB4ICFpbXBvcnRhbnQnLFxuICAgIH0sXG4gIH0sXG4gIC8qIEJ1dCB3aGVuIHRoZSBiYXNlIGlzIGEgZnJhY3Rpb24sIG1vdmUgaXQgaGlnaGVyICovXG4gICcmIC5tcS1tYXRoLW1vZGUgLm1xLWZyYWN0aW9uICsgLm1xLXN1cHN1Yi5tcS1zdXAtb25seSc6IHtcbiAgICB2ZXJ0aWNhbEFsaWduOiAnMC40ZW0gIWltcG9ydGFudCcsXG4gIH0sXG5cbiAgJyYgLm1xLW1hdGgtbW9kZSAubXEtc3Vwc3ViLm1xLXN1cC1vbmx5Lm1xLWFmdGVyLWZyYWN0aW9uLWdyb3VwJzoge1xuICAgIHZlcnRpY2FsQWxpZ246ICcwLjRlbSAhaW1wb3J0YW50JyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBjb21tb25NcUtleWJvYXJkU3R5bGVzID0ge1xuICAnJiAqJzoge1xuICAgIC4uLmNvbW1vbk1xRm9udFN0eWxlcyxcbiAgICAuLi5sb25nZGl2U3R5bGVzLFxuICAgICcmIC5tcS1tYXRoLW1vZGUgLm1xLXNxcnQtcHJlZml4Jzoge1xuICAgICAgdG9wOiAnMCAhaW1wb3J0YW50JyxcbiAgICB9LFxuXG4gICAgJyYgLm1xLW1hdGgtbW9kZSAubXEtZW1wdHknOiB7XG4gICAgICBwYWRkaW5nOiAnOXB4IDFweCAhaW1wb3J0YW50JyxcbiAgICB9LFxuXG4gICAgJyYgLm1xLW1hdGgtbW9kZSAubXEtc3Vwc3ViJzoge1xuICAgICAgZm9udFNpemU6ICc3MC43JSAhaW1wb3J0YW50JyxcbiAgICB9LFxuXG4gICAgJyYgLm1xLW1hdGgtbW9kZSAubXEtc3FydC1zdGVtJzoge1xuICAgICAgbWFyZ2luVG9wOiAnLTVweCcsXG4gICAgICBwYWRkaW5nVG9wOiAnNHB4JyxcbiAgICB9LFxuXG4gICAgJyYgLm1xLW1hdGgtbW9kZSAubXEtcGFyZW4nOiB7XG4gICAgICB2ZXJ0aWNhbEFsaWduOiAnbWlkZGxlICFpbXBvcnRhbnQnLFxuICAgIH0sXG5cbiAgICAnJiAubXEtbWF0aC1tb2RlIC5tcS1vdmVyYXJyb3cgLm1xLW92ZXJhcnJvdy1pbm5lciAubXEtZW1wdHknOiB7XG4gICAgICBwYWRkaW5nOiAnMCAhaW1wb3J0YW50JyxcbiAgICB9LFxuXG4gICAgJyYgLm1xLW1hdGgtbW9kZSAubXEtb3ZlcmxpbmUgLm1xLW92ZXJsaW5lLWlubmVyIC5tcS1lbXB0eSAnOiB7XG4gICAgICBwYWRkaW5nOiAnMCAhaW1wb3J0YW50JyxcbiAgICB9LFxuICB9LFxufTtcblxuZXhwb3J0IGRlZmF1bHQge1xuICBjb21tb25NcUZvbnRTdHlsZXMsXG4gIGxvbmdkaXZTdHlsZXMsXG4gIHN1cHN1YlN0eWxlcyxcbiAgY29tbW9uTXFLZXlib2FyZFN0eWxlcyxcbn07XG4iXX0=
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.registerLineBreak = void 0;
7
-
8
- var registerLineBreak = function registerLineBreak(MQ) {
9
- MQ.registerEmbed('newLine', function () {
10
- return {
11
- htmlString: '<div class="newLine"></div>',
12
- text: function text() {
13
- return 'testText';
14
- },
15
- latex: function latex() {
16
- return '\\embed{newLine}[]';
17
- }
18
- };
19
- });
20
- };
21
-
22
- exports.registerLineBreak = registerLineBreak;
23
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tcS9jdXN0b20tZWxlbWVudHMuanMiXSwibmFtZXMiOlsicmVnaXN0ZXJMaW5lQnJlYWsiLCJNUSIsInJlZ2lzdGVyRW1iZWQiLCJodG1sU3RyaW5nIiwidGV4dCIsImxhdGV4Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBTUEsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFvQixDQUFTQyxFQUFULEVBQWE7QUFDckNBLEVBQUFBLEVBQUUsQ0FBQ0MsYUFBSCxDQUFpQixTQUFqQixFQUE0QixZQUFNO0FBQ2hDLFdBQU87QUFDTEMsTUFBQUEsVUFBVSxFQUFFLDZCQURQO0FBRUxDLE1BQUFBLElBQUksRUFBRTtBQUFBLGVBQU0sVUFBTjtBQUFBLE9BRkQ7QUFHTEMsTUFBQUEsS0FBSyxFQUFFO0FBQUEsZUFBTSxvQkFBTjtBQUFBO0FBSEYsS0FBUDtBQUtELEdBTkQ7QUFPRCxDQVJEIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgcmVnaXN0ZXJMaW5lQnJlYWsgPSBmdW5jdGlvbihNUSkge1xuICBNUS5yZWdpc3RlckVtYmVkKCduZXdMaW5lJywgKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBodG1sU3RyaW5nOiAnPGRpdiBjbGFzcz1cIm5ld0xpbmVcIj48L2Rpdj4nLFxuICAgICAgdGV4dDogKCkgPT4gJ3Rlc3RUZXh0JyxcbiAgICAgIGxhdGV4OiAoKSA9PiAnXFxcXGVtYmVke25ld0xpbmV9W10nLFxuICAgIH07XG4gIH0pO1xufTtcblxuZXhwb3J0IHsgcmVnaXN0ZXJMaW5lQnJlYWsgfTtcbiJdfQ==
package/lib/mq/index.js DELETED
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- Object.defineProperty(exports, "CommonMqStyles", {
9
- enumerable: true,
10
- get: function get() {
11
- return _commonMqStyles["default"];
12
- }
13
- });
14
- Object.defineProperty(exports, "Input", {
15
- enumerable: true,
16
- get: function get() {
17
- return _input["default"];
18
- }
19
- });
20
- Object.defineProperty(exports, "Static", {
21
- enumerable: true,
22
- get: function get() {
23
- return _static["default"];
24
- }
25
- });
26
-
27
- var _input = _interopRequireDefault(require("./input"));
28
-
29
- var _static = _interopRequireDefault(require("./static"));
30
-
31
- var _commonMqStyles = _interopRequireDefault(require("./common-mq-styles"));
32
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tcS9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IElucHV0IGZyb20gJy4vaW5wdXQnO1xuaW1wb3J0IFN0YXRpYyBmcm9tICcuL3N0YXRpYyc7XG5pbXBvcnQgQ29tbW9uTXFTdHlsZXMgZnJvbSAnLi9jb21tb24tbXEtc3R5bGVzJztcblxuZXhwb3J0IHsgSW5wdXQsIFN0YXRpYywgQ29tbW9uTXFTdHlsZXMgfTtcbiJdfQ==
package/lib/mq/input.js DELETED
@@ -1,247 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.Input = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- 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
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
- var _react = _interopRequireDefault(require("react"));
25
-
26
- var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
- var _styles = require("@material-ui/core/styles");
29
-
30
- var _debug = _interopRequireDefault(require("debug"));
31
-
32
- var _classnames = _interopRequireDefault(require("classnames"));
33
-
34
- var _customElements = require("./custom-elements");
35
-
36
- 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
-
42
- var MQ;
43
-
44
- if (typeof window !== 'undefined') {
45
- MQ = _mathquill["default"].getInterface(2);
46
-
47
- if (MQ && MQ.registerEmbed) {
48
- (0, _customElements.registerLineBreak)(MQ);
49
- }
50
- }
51
-
52
- var log = (0, _debug["default"])('math-input:mq:input');
53
- /**
54
- * Wrapper for MathQuill MQ.MathField.
55
- */
56
-
57
- var Input = /*#__PURE__*/function (_React$Component) {
58
- (0, _inherits2["default"])(Input, _React$Component);
59
-
60
- var _super = _createSuper(Input);
61
-
62
- function Input() {
63
- var _this;
64
-
65
- (0, _classCallCheck2["default"])(this, Input);
66
-
67
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
68
- args[_key] = arguments[_key];
69
- }
70
-
71
- _this = _super.call.apply(_super, [this].concat(args));
72
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onInputEdit", function () {
73
- log('[onInputEdit] ...');
74
- var onChange = _this.props.onChange;
75
-
76
- if (!_this.mathField) {
77
- return;
78
- }
79
-
80
- if (onChange) {
81
- onChange(_this.mathField.latex());
82
- }
83
- });
84
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "refresh", function () {
85
- _this.blur();
86
-
87
- _this.focus();
88
- });
89
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onKeyPress", function (event) {
90
- var keys = Object.keys(_this.mathField.__controller.options);
91
-
92
- if (keys.indexOf('ignoreNextMousedown') < 0) {
93
- // It seems like the controller has the above handler as an option
94
- // when all the right events are set and everything works fine
95
- // this seems to work in all cases
96
- _this.refresh();
97
- }
98
-
99
- if (event.charCode === 13) {
100
- event.preventDefault();
101
- return;
102
- }
103
- });
104
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onClick", function (event) {
105
- var onClick = _this.props.onClick;
106
-
107
- _this.refresh();
108
-
109
- onClick && onClick(event);
110
- });
111
- return _this;
112
- }
113
-
114
- (0, _createClass2["default"])(Input, [{
115
- key: "componentDidMount",
116
- value: function componentDidMount() {
117
- if (!MQ) {
118
- throw new Error('MQ is not defined - but component has mounted?');
119
- }
120
-
121
- this.mathField = MQ.MathField(this.input, {
122
- handlers: {
123
- edit: this.onInputEdit.bind(this)
124
- }
125
- });
126
- this.updateLatex();
127
- }
128
- }, {
129
- key: "componentDidUpdate",
130
- value: function componentDidUpdate() {
131
- this.updateLatex();
132
- }
133
- }, {
134
- key: "updateLatex",
135
- value: function updateLatex() {
136
- if (!this.mathField) {
137
- return;
138
- }
139
-
140
- var latex = this.props.latex;
141
-
142
- if (latex !== undefined && latex !== null) {
143
- this.mathField.latex(latex);
144
- }
145
- }
146
- }, {
147
- key: "clear",
148
- value: function clear() {
149
- this.mathField.latex('');
150
- return '';
151
- }
152
- }, {
153
- key: "blur",
154
- value: function blur() {
155
- log('blur mathfield');
156
- this.mathField.blur();
157
- }
158
- }, {
159
- key: "focus",
160
- value: function focus() {
161
- log('focus mathfield...');
162
- this.mathField.focus();
163
- }
164
- }, {
165
- key: "command",
166
- value: function command(v) {
167
- var _this2 = this;
168
-
169
- log('command: ', v);
170
-
171
- if (Array.isArray(v)) {
172
- v.forEach(function (vv) {
173
- _this2.mathField.cmd(vv);
174
- });
175
- } else {
176
- this.mathField.cmd(v);
177
- }
178
-
179
- this.mathField.focus();
180
- return this.mathField.latex();
181
- }
182
- }, {
183
- key: "keystroke",
184
- value: function keystroke(v) {
185
- this.mathField.keystroke(v);
186
- this.mathField.focus();
187
- return this.mathField.latex();
188
- }
189
- }, {
190
- key: "write",
191
- value: function write(v) {
192
- log('write: ', v);
193
- this.mathField.write(v);
194
- this.mathField.focus();
195
- return this.mathField.latex();
196
- }
197
- }, {
198
- key: "shouldComponentUpdate",
199
- value: function shouldComponentUpdate(nextProps) {
200
- log('next: ', nextProps.latex);
201
- log('current: ', this.mathField.latex());
202
- return nextProps.latex !== this.mathField.latex();
203
- }
204
- }, {
205
- key: "render",
206
- value: function render() {
207
- var _this3 = this;
208
-
209
- 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),
216
- onKeyDown: this.onKeyPress,
217
- onClick: this.onClick,
218
- onFocus: onFocus,
219
- onBlur: onBlur,
220
- ref: function ref(r) {
221
- return _this3.input = r;
222
- }
223
- });
224
- }
225
- }]);
226
- return Input;
227
- }(_react["default"].Component);
228
-
229
- exports.Input = Input;
230
- (0, _defineProperty2["default"])(Input, "propTypes", {
231
- className: _propTypes["default"].string,
232
- classes: _propTypes["default"].object.isRequired,
233
- onClick: _propTypes["default"].func,
234
- onChange: _propTypes["default"].func,
235
- latex: _propTypes["default"].string,
236
- onFocus: _propTypes["default"].func,
237
- onBlur: _propTypes["default"].func
238
- });
239
-
240
- var styles = function styles() {
241
- return {};
242
- };
243
-
244
- var _default = (0, _styles.withStyles)(styles)(Input);
245
-
246
- exports["default"] = _default;
247
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tcS9pbnB1dC5qc3giXSwibmFtZXMiOlsiTVEiLCJ3aW5kb3ciLCJNYXRoUXVpbGwiLCJnZXRJbnRlcmZhY2UiLCJyZWdpc3RlckVtYmVkIiwibG9nIiwiSW5wdXQiLCJvbkNoYW5nZSIsInByb3BzIiwibWF0aEZpZWxkIiwibGF0ZXgiLCJibHVyIiwiZm9jdXMiLCJldmVudCIsImtleXMiLCJPYmplY3QiLCJfX2NvbnRyb2xsZXIiLCJvcHRpb25zIiwiaW5kZXhPZiIsInJlZnJlc2giLCJjaGFyQ29kZSIsInByZXZlbnREZWZhdWx0Iiwib25DbGljayIsIkVycm9yIiwiTWF0aEZpZWxkIiwiaW5wdXQiLCJoYW5kbGVycyIsImVkaXQiLCJvbklucHV0RWRpdCIsImJpbmQiLCJ1cGRhdGVMYXRleCIsInVuZGVmaW5lZCIsInYiLCJBcnJheSIsImlzQXJyYXkiLCJmb3JFYWNoIiwidnYiLCJjbWQiLCJrZXlzdHJva2UiLCJ3cml0ZSIsIm5leHRQcm9wcyIsIm9uRm9jdXMiLCJvbkJsdXIiLCJjbGFzc2VzIiwiY2xhc3NOYW1lIiwib25LZXlQcmVzcyIsInIiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsInN0cmluZyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJmdW5jIiwic3R5bGVzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFJQSxFQUFKOztBQUNBLElBQUksT0FBT0MsTUFBUCxLQUFrQixXQUF0QixFQUFtQztBQUNqQ0QsRUFBQUEsRUFBRSxHQUFHRSxzQkFBVUMsWUFBVixDQUF1QixDQUF2QixDQUFMOztBQUVBLE1BQUlILEVBQUUsSUFBSUEsRUFBRSxDQUFDSSxhQUFiLEVBQTRCO0FBQzFCLDJDQUFrQkosRUFBbEI7QUFDRDtBQUNGOztBQUVELElBQU1LLEdBQUcsR0FBRyx1QkFBTSxxQkFBTixDQUFa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QUt2QixPQUhoQjtBQUlFLFFBQUEsT0FBTyxFQUFFbUIsT0FKWDtBQUtFLFFBQUEsTUFBTSxFQUFFQyxNQUxWO0FBTUUsUUFBQSxHQUFHLEVBQUUsYUFBQ0ksQ0FBRDtBQUFBLGlCQUFRLE1BQUksQ0FBQ3JCLEtBQUwsR0FBYXFCLENBQXJCO0FBQUE7QUFOUCxRQURGO0FBVUQ7OztFQXBKd0JDLGtCQUFNQyxTOzs7aUNBQXBCMUMsSyxlQUNRO0FBQ2pCc0MsRUFBQUEsU0FBUyxFQUFFSyxzQkFBVUMsTUFESjtBQUVqQlAsRUFBQUEsT0FBTyxFQUFFTSxzQkFBVUUsTUFBVixDQUFpQkMsVUFGVDtBQUdqQjlCLEVBQUFBLE9BQU8sRUFBRTJCLHNCQUFVSSxJQUhGO0FBSWpCOUMsRUFBQUEsUUFBUSxFQUFFMEMsc0JBQVVJLElBSkg7QUFLakIzQyxFQUFBQSxLQUFLLEVBQUV1QyxzQkFBVUMsTUFMQTtBQU1qQlQsRUFBQUEsT0FBTyxFQUFFUSxzQkFBVUksSUFORjtBQU9qQlgsRUFBQUEsTUFBTSxFQUFFTyxzQkFBVUk7QUFQRCxDOztBQXNKckIsSUFBTUMsTUFBTSxHQUFHLFNBQVRBLE1BQVM7QUFBQSxTQUFPLEVBQVA7QUFBQSxDQUFmOztlQUVlLHdCQUFXQSxNQUFYLEVBQW1CaEQsS0FBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyByZWdpc3RlckxpbmVCcmVhayB9IGZyb20gJy4vY3VzdG9tLWVsZW1lbnRzJztcbmltcG9ydCBNYXRoUXVpbGwgZnJvbSAnQHBpZS1mcmFtZXdvcmsvbWF0aHF1aWxsJztcblxubGV0IE1RO1xuaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gIE1RID0gTWF0aFF1aWxsLmdldEludGVyZmFjZSgyKTtcblxuICBpZiAoTVEgJiYgTVEucmVnaXN0ZXJFbWJlZCkge1xuICAgIHJlZ2lzdGVyTGluZUJyZWFrKE1RKTtcbiAgfVxufVxuXG5jb25zdCBsb2cgPSBkZWJ1ZygnbWF0aC1pbnB1dDptcTppbnB1dCcpO1xuXG4vKipcbiAqIFdyYXBwZXIgZm9yIE1hdGhRdWlsbCBNUS5NYXRoRmllbGQuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnB1dCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbiAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgbGF0ZXg6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25Gb2N1czogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25CbHVyOiBQcm9wVHlwZXMuZnVuYyxcbiAgfTtcblxuICBjb21wb25lbnREaWRNb3VudCgpIHtcbiAgICBpZiAoIU1RKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01RIGlzIG5vdCBkZWZpbmVkIC0gYnV0IGNvbXBvbmVudCBoYXMgbW91bnRlZD8nKTtcbiAgICB9XG5cbiAgICB0aGlzLm1hdGhGaWVsZCA9IE1RLk1hdGhGaWVsZCh0aGlzLmlucHV0LCB7XG4gICAgICBoYW5kbGVyczoge1xuICAgICAgICBlZGl0OiB0aGlzLm9uSW5wdXRFZGl0LmJpbmQodGhpcyksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy51cGRhdGVMYXRleCgpO1xuICB9XG5cbiAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgIHRoaXMudXBkYXRlTGF0ZXgoKTtcbiAgfVxuXG4gIHVwZGF0ZUxhdGV4KCkge1xuICAgIGlmICghdGhpcy5tYXRoRmllbGQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGxhdGV4IH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKGxhdGV4ICE9PSB1bmRlZmluZWQgJiYgbGF0ZXggIT09IG51bGwpIHtcbiAgICAgIHRoaXMubWF0aEZpZWxkLmxhdGV4KGxhdGV4KTtcbiAgICB9XG4gIH1cblxuICBjbGVhcigpIHtcbiAgICB0aGlzLm1hdGhGaWVsZC5sYXRleCgnJyk7XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBibHVyKCkge1xuICAgIGxvZygnYmx1ciBtYXRoZmllbGQnKTtcbiAgICB0aGlzLm1hdGhGaWVsZC5ibHVyKCk7XG4gIH1cblxuICBmb2N1cygpIHtcbiAgICBsb2coJ2ZvY3VzIG1hdGhmaWVsZC4uLicpO1xuICAgIHRoaXMubWF0aEZpZWxkLmZvY3VzKCk7XG4gIH1cblxuICBjb21tYW5kKHYpIHtcbiAgICBsb2coJ2NvbW1hbmQ6ICcsIHYpO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHYpKSB7XG4gICAgICB2LmZvckVhY2goKHZ2KSA9PiB7XG4gICAgICAgIHRoaXMubWF0aEZpZWxkLmNtZCh2dik7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXRoRmllbGQuY21kKHYpO1xuICAgIH1cblxuICAgIHRoaXMubWF0aEZpZWxkLmZvY3VzKCk7XG5cbiAgICByZXR1cm4gdGhpcy5tYXRoRmllbGQubGF0ZXgoKTtcbiAgfVxuXG4gIGtleXN0cm9rZSh2KSB7XG4gICAgdGhpcy5tYXRoRmllbGQua2V5c3Ryb2tlKHYpO1xuICAgIHRoaXMubWF0aEZpZWxkLmZvY3VzKCk7XG5cbiAgICByZXR1cm4gdGhpcy5tYXRoRmllbGQubGF0ZXgoKTtcbiAgfVxuXG4gIHdyaXRlKHYpIHtcbiAgICBsb2coJ3dyaXRlOiAnLCB2KTtcbiAgICB0aGlzLm1hdGhGaWVsZC53cml0ZSh2KTtcbiAgICB0aGlzLm1hdGhGaWVsZC5mb2N1cygpO1xuXG4gICAgcmV0dXJuIHRoaXMubWF0aEZpZWxkLmxhdGV4KCk7XG4gIH1cblxuICBvbklucHV0RWRpdCA9ICgpID0+IHtcbiAgICBsb2coJ1tvbklucHV0RWRpdF0gLi4uJyk7XG4gICAgY29uc3QgeyBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcblxuICAgIGlmICghdGhpcy5tYXRoRmllbGQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAob25DaGFuZ2UpIHtcbiAgICAgIG9uQ2hhbmdlKHRoaXMubWF0aEZpZWxkLmxhdGV4KCkpO1xuICAgIH1cbiAgfTtcblxuICByZWZyZXNoID0gKCkgPT4ge1xuICAgIHRoaXMuYmx1cigpO1xuICAgIHRoaXMuZm9jdXMoKTtcbiAgfTtcblxuICBvbktleVByZXNzID0gKGV2ZW50KSA9PiB7XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKHRoaXMubWF0aEZpZWxkLl9fY29udHJvbGxlci5vcHRpb25zKTtcblxuICAgIGlmIChrZXlzLmluZGV4T2YoJ2lnbm9yZU5leHRNb3VzZWRvd24nKSA8IDApIHtcbiAgICAgIC8vIEl0IHNlZW1zIGxpa2UgdGhlIGNvbnRyb2xsZXIgaGFzIHRoZSBhYm92ZSBoYW5kbGVyIGFzIGFuIG9wdGlvblxuICAgICAgLy8gd2hlbiBhbGwgdGhlIHJpZ2h0IGV2ZW50cyBhcmUgc2V0IGFuZCBldmVyeXRoaW5nIHdvcmtzIGZpbmVcbiAgICAgIC8vIHRoaXMgc2VlbXMgdG8gd29yayBpbiBhbGwgY2FzZXNcbiAgICAgIHRoaXMucmVmcmVzaCgpO1xuICAgIH1cblxuICAgIGlmIChldmVudC5jaGFyQ29kZSA9PT0gMTMpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9O1xuXG4gIG9uQ2xpY2sgPSAoZXZlbnQpID0+IHtcbiAgICBjb25zdCB7IG9uQ2xpY2sgfSA9IHRoaXMucHJvcHM7XG5cbiAgICB0aGlzLnJlZnJlc2goKTtcbiAgICBvbkNsaWNrICYmIG9uQ2xpY2soZXZlbnQpO1xuICB9O1xuXG4gIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICBsb2coJ25leHQ6ICcsIG5leHRQcm9wcy5sYXRleCk7XG4gICAgbG9nKCdjdXJyZW50OiAnLCB0aGlzLm1hdGhGaWVsZC5sYXRleCgpKTtcblxuICAgIHJldHVybiBuZXh0UHJvcHMubGF0ZXggIT09IHRoaXMubWF0aEZpZWxkLmxhdGV4KCk7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBvbkZvY3VzLCBvbkJsdXIsIGNsYXNzZXMsIGNsYXNzTmFtZSB9ID0gdGhpcy5wcm9wcztcblxuICAgIHJldHVybiAoXG4gICAgICA8c3BhblxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlcy5pbnB1dCwgY2xhc3NOYW1lKX1cbiAgICAgICAgb25LZXlEb3duPXt0aGlzLm9uS2V5UHJlc3N9XG4gICAgICAgIG9uQ2xpY2s9e3RoaXMub25DbGlja31cbiAgICAgICAgb25Gb2N1cz17b25Gb2N1c31cbiAgICAgICAgb25CbHVyPXtvbkJsdXJ9XG4gICAgICAgIHJlZj17KHIpID0+ICh0aGlzLmlucHV0ID0gcil9XG4gICAgICAvPlxuICAgICk7XG4gIH1cbn1cblxuY29uc3Qgc3R5bGVzID0gKCkgPT4gKHt9KTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlcyhzdHlsZXMpKElucHV0KTtcbiJdfQ==