@pie-lib/math-input 7.1.0-next.3 → 7.1.0-next.36

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 (67) hide show
  1. package/lib/horizontal-keypad.js +99 -0
  2. package/lib/horizontal-keypad.js.map +1 -0
  3. package/lib/index.js +62 -0
  4. package/lib/index.js.map +1 -0
  5. package/lib/keypad/index.js +454 -0
  6. package/lib/keypad/index.js.map +1 -0
  7. package/lib/keypad/keys-layout.js +31 -0
  8. package/lib/keypad/keys-layout.js.map +1 -0
  9. package/lib/keys/basic-operators.js +34 -0
  10. package/lib/keys/basic-operators.js.map +1 -0
  11. package/lib/keys/chars.js +13 -0
  12. package/lib/keys/chars.js.map +1 -0
  13. package/lib/keys/comparison.js +49 -0
  14. package/lib/keys/comparison.js.map +1 -0
  15. package/lib/keys/constants.js +38 -0
  16. package/lib/keys/constants.js.map +1 -0
  17. package/lib/keys/digits.js +52 -0
  18. package/lib/keys/digits.js.map +1 -0
  19. package/lib/keys/edit.js +15 -0
  20. package/lib/keys/edit.js.map +1 -0
  21. package/lib/keys/exponent.js +31 -0
  22. package/lib/keys/exponent.js.map +1 -0
  23. package/lib/keys/fractions.js +30 -0
  24. package/lib/keys/fractions.js.map +1 -0
  25. package/lib/keys/geometry.js +150 -0
  26. package/lib/keys/geometry.js.map +1 -0
  27. package/lib/keys/grades.js +271 -0
  28. package/lib/keys/grades.js.map +1 -0
  29. package/lib/keys/index.js +42 -0
  30. package/lib/keys/index.js.map +1 -0
  31. package/lib/keys/log.js +28 -0
  32. package/lib/keys/log.js.map +1 -0
  33. package/lib/keys/logic.js +20 -0
  34. package/lib/keys/logic.js.map +1 -0
  35. package/lib/keys/matrices.js +20 -0
  36. package/lib/keys/matrices.js.map +1 -0
  37. package/lib/keys/misc.js +63 -0
  38. package/lib/keys/misc.js.map +1 -0
  39. package/lib/keys/navigation.js +21 -0
  40. package/lib/keys/navigation.js.map +1 -0
  41. package/lib/keys/operators.js +16 -0
  42. package/lib/keys/operators.js.map +1 -0
  43. package/lib/keys/statistics.js +41 -0
  44. package/lib/keys/statistics.js.map +1 -0
  45. package/lib/keys/sub-sup.js +20 -0
  46. package/lib/keys/sub-sup.js.map +1 -0
  47. package/lib/keys/trigonometry.js +46 -0
  48. package/lib/keys/trigonometry.js.map +1 -0
  49. package/lib/keys/utils.js +102 -0
  50. package/lib/keys/utils.js.map +1 -0
  51. package/lib/keys/vars.js +25 -0
  52. package/lib/keys/vars.js.map +1 -0
  53. package/lib/math-input.js +149 -0
  54. package/lib/math-input.js.map +1 -0
  55. package/lib/mq/common-mq-styles.js +109 -0
  56. package/lib/mq/common-mq-styles.js.map +1 -0
  57. package/lib/mq/custom-elements.js +21 -0
  58. package/lib/mq/custom-elements.js.map +1 -0
  59. package/lib/mq/index.js +29 -0
  60. package/lib/mq/index.js.map +1 -0
  61. package/lib/mq/input.js +204 -0
  62. package/lib/mq/input.js.map +1 -0
  63. package/lib/mq/static.js +312 -0
  64. package/lib/mq/static.js.map +1 -0
  65. package/lib/updateSpans.js +25 -0
  66. package/lib/updateSpans.js.map +1 -0
  67. package/package.json +3 -3
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.reflect.construct.js");
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports["default"] = void 0;
10
+ require("core-js/modules/es.array.concat.js");
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
+ var _react = _interopRequireDefault(require("react"));
18
+ var _propTypes = _interopRequireDefault(require("prop-types"));
19
+ var _grades = require("./keys/grades");
20
+ var _utils = require("./keys/utils");
21
+ var _keypad = _interopRequireDefault(require("./keypad"));
22
+ 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)); }
23
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
24
+ var toOldModel = function toOldModel(d) {
25
+ if (d.command) {
26
+ return {
27
+ value: d.command,
28
+ type: 'command'
29
+ };
30
+ } else if (d.write) {
31
+ return {
32
+ value: d.write
33
+ };
34
+ } else if (d.keystroke) {
35
+ return {
36
+ type: 'cursor',
37
+ value: d.keystroke
38
+ };
39
+ }
40
+ };
41
+ var HorizontalKeypad = exports["default"] = /*#__PURE__*/function (_React$Component) {
42
+ function HorizontalKeypad() {
43
+ var _this;
44
+ (0, _classCallCheck2["default"])(this, HorizontalKeypad);
45
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
46
+ args[_key] = arguments[_key];
47
+ }
48
+ _this = _callSuper(this, HorizontalKeypad, [].concat(args));
49
+ (0, _defineProperty2["default"])(_this, "keypadPress", function (data) {
50
+ var onClick = _this.props.onClick;
51
+ onClick(toOldModel(data));
52
+ });
53
+ return _this;
54
+ }
55
+ (0, _inherits2["default"])(HorizontalKeypad, _React$Component);
56
+ return (0, _createClass2["default"])(HorizontalKeypad, [{
57
+ key: "render",
58
+ value: function render() {
59
+ var _this$props = this.props,
60
+ mode = _this$props.mode,
61
+ onFocus = _this$props.onFocus,
62
+ controlledKeypadMode = _this$props.controlledKeypadMode,
63
+ noDecimal = _this$props.noDecimal,
64
+ className = _this$props.className,
65
+ additionalKeys = _this$props.additionalKeys,
66
+ layoutForKeyPad = _this$props.layoutForKeyPad,
67
+ setKeypadInteraction = _this$props.setKeypadInteraction;
68
+ var normalizedKeys = (0, _grades.normalizeAdditionalKeys)(additionalKeys);
69
+ return /*#__PURE__*/_react["default"].createElement(_keypad["default"], {
70
+ className: className,
71
+ controlledKeypadMode: controlledKeypadMode,
72
+ onFocus: onFocus,
73
+ noDecimal: noDecimal,
74
+ layoutForKeyPad: layoutForKeyPad,
75
+ additionalKeys: (0, _utils.extendKeySet)((0, _grades.keysForGrade)(mode), normalizedKeys),
76
+ onPress: this.keypadPress,
77
+ mode: mode,
78
+ setKeypadInteraction: setKeypadInteraction
79
+ });
80
+ }
81
+ }]);
82
+ }(_react["default"].Component);
83
+ (0, _defineProperty2["default"])(HorizontalKeypad, "propTypes", {
84
+ className: _propTypes["default"].string,
85
+ controlledKeypadMode: _propTypes["default"].bool,
86
+ mode: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
87
+ layoutForKeyPad: _propTypes["default"].object,
88
+ onClick: _propTypes["default"].func.isRequired,
89
+ onFocus: _propTypes["default"].func,
90
+ noDecimal: _propTypes["default"].bool,
91
+ additionalKeys: _propTypes["default"].array,
92
+ setKeypadInteraction: _propTypes["default"].func
93
+ });
94
+ (0, _defineProperty2["default"])(HorizontalKeypad, "defaultProps", {
95
+ mode: 'scientific',
96
+ noDecimal: false,
97
+ additionalKeys: []
98
+ });
99
+ //# sourceMappingURL=horizontal-keypad.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontal-keypad.js","names":["_react","_interopRequireDefault","require","_propTypes","_grades","_utils","_keypad","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","toOldModel","d","command","value","type","write","keystroke","HorizontalKeypad","exports","_React$Component","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","concat","_defineProperty2","data","onClick","props","_inherits2","_createClass2","key","render","_this$props","mode","onFocus","controlledKeypadMode","noDecimal","className","additionalKeys","layoutForKeyPad","setKeypadInteraction","normalizedKeys","normalizeAdditionalKeys","createElement","extendKeySet","keysForGrade","onPress","keypadPress","React","Component","PropTypes","string","bool","oneOfType","number","object","func","isRequired","array"],"sources":["../src/horizontal-keypad.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { keysForGrade, normalizeAdditionalKeys } from './keys/grades';\nimport { extendKeySet } from './keys/utils';\nimport Keypad from './keypad';\n\nconst toOldModel = (d) => {\n if (d.command) {\n return { value: d.command, type: 'command' };\n } else if (d.write) {\n return { value: d.write };\n } else if (d.keystroke) {\n return { type: 'cursor', value: d.keystroke };\n }\n};\n\nexport default class HorizontalKeypad extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n controlledKeypadMode: PropTypes.bool,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n layoutForKeyPad: PropTypes.object,\n onClick: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n noDecimal: PropTypes.bool,\n additionalKeys: PropTypes.array,\n setKeypadInteraction: PropTypes.func,\n };\n\n static defaultProps = {\n mode: 'scientific',\n noDecimal: false,\n additionalKeys: [],\n };\n\n keypadPress = (data) => {\n const { onClick } = this.props;\n\n onClick(toOldModel(data));\n };\n\n render() {\n const {\n mode,\n onFocus,\n controlledKeypadMode,\n noDecimal,\n className,\n additionalKeys,\n layoutForKeyPad,\n setKeypadInteraction,\n } = this.props;\n const normalizedKeys = normalizeAdditionalKeys(additionalKeys);\n\n return (\n <Keypad\n className={className}\n controlledKeypadMode={controlledKeypadMode}\n onFocus={onFocus}\n noDecimal={noDecimal}\n layoutForKeyPad={layoutForKeyPad}\n additionalKeys={extendKeySet(keysForGrade(mode), normalizedKeys)}\n onPress={this.keypadPress}\n mode={mode}\n setKeypadInteraction={setKeypadInteraction}\n />\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
package/lib/index.js ADDED
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
+ var _typeof = require("@babel/runtime/helpers/typeof");
12
+ Object.defineProperty(exports, "__esModule", {
13
+ value: true
14
+ });
15
+ Object.defineProperty(exports, "HorizontalKeypad", {
16
+ enumerable: true,
17
+ get: function get() {
18
+ return _horizontalKeypad["default"];
19
+ }
20
+ });
21
+ exports.keys = exports.addBrackets = void 0;
22
+ Object.defineProperty(exports, "keysForGrade", {
23
+ enumerable: true,
24
+ get: function get() {
25
+ return _grades.keysForGrade;
26
+ }
27
+ });
28
+ exports.removeBrackets = exports.mq = void 0;
29
+ Object.defineProperty(exports, "updateSpans", {
30
+ enumerable: true,
31
+ get: function get() {
32
+ return _updateSpans.updateSpans;
33
+ }
34
+ });
35
+ require("core-js/modules/es.array.index-of.js");
36
+ var _grades = require("./keys/grades");
37
+ var _updateSpans = require("./updateSpans");
38
+ var keys = _interopRequireWildcard(require("./keys"));
39
+ exports.keys = keys;
40
+ var _horizontalKeypad = _interopRequireDefault(require("./horizontal-keypad"));
41
+ var mq = _interopRequireWildcard(require("./mq"));
42
+ exports.mq = mq;
43
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
44
+ var addLeftBracket = function addLeftBracket(s) {
45
+ return s.indexOf('\\(') === 0 ? s : "\\(".concat(s);
46
+ };
47
+ var addRightBracket = function addRightBracket(s) {
48
+ return s.indexOf('\\)') === s.length - 2 ? s : "".concat(s, "\\)");
49
+ };
50
+ var rmLeftBracket = function rmLeftBracket(s) {
51
+ return s.indexOf('\\(') === 0 ? s.substring(2) : s;
52
+ };
53
+ var rmRightBracket = function rmRightBracket(s) {
54
+ return s.indexOf('\\)') === s.length - 2 ? s.substring(0, s.length - 2) : s;
55
+ };
56
+ var addBrackets = exports.addBrackets = function addBrackets(s) {
57
+ return addRightBracket(addLeftBracket(s));
58
+ };
59
+ var removeBrackets = exports.removeBrackets = function removeBrackets(s) {
60
+ return rmRightBracket(rmLeftBracket(s));
61
+ };
62
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_grades","require","_updateSpans","keys","_interopRequireWildcard","exports","_horizontalKeypad","_interopRequireDefault","mq","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","addLeftBracket","s","indexOf","concat","addRightBracket","length","rmLeftBracket","substring","rmRightBracket","addBrackets","removeBrackets"],"sources":["../src/index.jsx"],"sourcesContent":["import { keysForGrade } from './keys/grades';\nimport { updateSpans } from './updateSpans';\n\nconst addLeftBracket = (s) => (s.indexOf('\\\\(') === 0 ? s : `\\\\(${s}`);\nconst addRightBracket = (s) => (s.indexOf('\\\\)') === s.length - 2 ? s : `${s}\\\\)`);\nconst rmLeftBracket = (s) => (s.indexOf('\\\\(') === 0 ? s.substring(2) : s);\nconst rmRightBracket = (s) => (s.indexOf('\\\\)') === s.length - 2 ? s.substring(0, s.length - 2) : s);\n\nconst addBrackets = (s) => addRightBracket(addLeftBracket(s));\nconst removeBrackets = (s) => rmRightBracket(rmLeftBracket(s));\n\nimport * as keys from './keys';\n\nimport HorizontalKeypad from './horizontal-keypad';\n\nimport * as mq from './mq';\n\nexport { keysForGrade, addBrackets, removeBrackets, keys, HorizontalKeypad, mq, updateSpans };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAUA,IAAAE,IAAA,GAAAC,uBAAA,CAAAH,OAAA;AAA+BI,OAAA,CAAAF,IAAA,GAAAA,IAAA;AAE/B,IAAAG,iBAAA,GAAAC,sBAAA,CAAAN,OAAA;AAEA,IAAAO,EAAA,GAAAJ,uBAAA,CAAAH,OAAA;AAA2BI,OAAA,CAAAG,EAAA,GAAAA,EAAA;AAAA,SAAAJ,wBAAAK,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAP,uBAAA,YAAAA,wBAAAK,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,EAAA,IAAAd,CAAA,gBAAAc,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,EAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,EAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,EAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,EAAA,IAAAd,CAAA,CAAAc,EAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAZ3B,IAAMmB,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,CAAC;EAAA,OAAMA,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAGD,CAAC,SAAAE,MAAA,CAASF,CAAC,CAAE;AAAA,CAAC;AACtE,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAIH,CAAC;EAAA,OAAMA,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC,KAAKD,CAAC,CAACI,MAAM,GAAG,CAAC,GAAGJ,CAAC,MAAAE,MAAA,CAAMF,CAAC,QAAK;AAAA,CAAC;AAClF,IAAMK,aAAa,GAAG,SAAhBA,aAAaA,CAAIL,CAAC;EAAA,OAAMA,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAGD,CAAC,CAACM,SAAS,CAAC,CAAC,CAAC,GAAGN,CAAC;AAAA,CAAC;AAC1E,IAAMO,cAAc,GAAG,SAAjBA,cAAcA,CAAIP,CAAC;EAAA,OAAMA,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC,KAAKD,CAAC,CAACI,MAAM,GAAG,CAAC,GAAGJ,CAAC,CAACM,SAAS,CAAC,CAAC,EAAEN,CAAC,CAACI,MAAM,GAAG,CAAC,CAAC,GAAGJ,CAAC;AAAA,CAAC;AAEpG,IAAMQ,WAAW,GAAAjC,OAAA,CAAAiC,WAAA,GAAG,SAAdA,WAAWA,CAAIR,CAAC;EAAA,OAAKG,eAAe,CAACJ,cAAc,CAACC,CAAC,CAAC,CAAC;AAAA;AAC7D,IAAMS,cAAc,GAAAlC,OAAA,CAAAkC,cAAA,GAAG,SAAjBA,cAAcA,CAAIT,CAAC;EAAA,OAAKO,cAAc,CAACF,aAAa,CAACL,CAAC,CAAC,CAAC;AAAA","ignoreList":[]}
@@ -0,0 +1,454 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.for-each.js");
5
+ require("core-js/modules/es.array.iterator.js");
6
+ require("core-js/modules/es.object.define-properties.js");
7
+ require("core-js/modules/es.object.define-property.js");
8
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
10
+ require("core-js/modules/es.object.keys.js");
11
+ require("core-js/modules/es.reflect.construct.js");
12
+ require("core-js/modules/es.string.iterator.js");
13
+ require("core-js/modules/es.weak-map.js");
14
+ require("core-js/modules/web.dom-collections.for-each.js");
15
+ require("core-js/modules/web.dom-collections.iterator.js");
16
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
+ var _typeof = require("@babel/runtime/helpers/typeof");
18
+ Object.defineProperty(exports, "__esModule", {
19
+ value: true
20
+ });
21
+ exports["default"] = exports.KeyPad = void 0;
22
+ require("core-js/modules/es.array.concat.js");
23
+ require("core-js/modules/es.array.filter.js");
24
+ require("core-js/modules/es.array.includes.js");
25
+ require("core-js/modules/es.array.join.js");
26
+ require("core-js/modules/es.array.map.js");
27
+ require("core-js/modules/es.function.bind.js");
28
+ require("core-js/modules/es.function.name.js");
29
+ require("core-js/modules/es.object.to-string.js");
30
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
31
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
32
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
33
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
34
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
35
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
36
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
37
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
38
+ var _react = _interopRequireDefault(require("react"));
39
+ var _propTypes = _interopRequireDefault(require("prop-types"));
40
+ var _Button = _interopRequireDefault(require("@mui/material/Button"));
41
+ var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
42
+ var _styles = require("@mui/material/styles");
43
+ var _debug = _interopRequireDefault(require("debug"));
44
+ var _lodash = _interopRequireDefault(require("lodash"));
45
+ var _mathquill = _interopRequireDefault(require("@pie-framework/mathquill"));
46
+ var mq = _interopRequireWildcard(require("../mq"));
47
+ var _keys = require("../keys");
48
+ var _commonMqStyles = require("../mq/common-mq-styles");
49
+ var _keysLayout = require("./keys-layout");
50
+ var _colors = require("@mui/material/colors");
51
+ var _renderUi = require("@pie-lib/render-ui");
52
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
53
+ 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)); }
54
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
55
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
56
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
57
+ var log = (0, _debug["default"])('pie-lib:math-inline:keypad');
58
+ var StyledLatexButton = (0, _styles.styled)(_Button["default"])(function () {
59
+ return {
60
+ textTransform: 'none',
61
+ padding: 0,
62
+ margin: 0,
63
+ fontSize: '110% !important'
64
+ };
65
+ });
66
+ var LatexButtonContent = (0, _styles.styled)(mq.Static)(function (_ref) {
67
+ var latex = _ref.latex;
68
+ var baseStyles = {
69
+ pointerEvents: 'none',
70
+ textTransform: 'none !important',
71
+ color: _renderUi.color.text(),
72
+ '& .mq-scaled.mq-sqrt-prefix': {
73
+ transform: 'scale(1, 0.9) !important'
74
+ },
75
+ '& .mq-sup-only .mq-sup': {
76
+ marginBottom: '0.9px !important'
77
+ },
78
+ '& .mq-empty': {
79
+ backgroundColor: "".concat((0, _styles.alpha)(_colors.pink[300], 0.4), " !important")
80
+ },
81
+ '& .mq-overline .mq-overline-inner': {
82
+ borderTop: '2px solid black'
83
+ },
84
+ '& .mq-non-leaf.mq-overline': {
85
+ borderTop: 'none !important'
86
+ },
87
+ '& .mq-overarrow': {
88
+ width: '30px',
89
+ marginTop: '0 !important',
90
+ borderTop: '2px solid black',
91
+ fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',
92
+ '&.mq-arrow-both': {
93
+ top: '0px !important',
94
+ '& *': {
95
+ lineHeight: '1 !important',
96
+ borderTop: 'none !important'
97
+ },
98
+ '&:before': {
99
+ fontSize: '80%',
100
+ left: 'calc(-13%) !important',
101
+ top: '-0.31em !important'
102
+ },
103
+ '&:after': {
104
+ fontSize: '80% !important',
105
+ right: 'calc(-13%) !important',
106
+ top: '-1.5em'
107
+ },
108
+ '&.mq-empty:before': {
109
+ fontSize: '80%',
110
+ left: 'calc(-13%)',
111
+ top: '-0.26em'
112
+ },
113
+ '&.mq-empty:after': {
114
+ fontSize: '80%',
115
+ right: 'calc(-13%)',
116
+ top: '-0.26em'
117
+ },
118
+ '&.mq-empty': {
119
+ minHeight: '1.4em'
120
+ }
121
+ },
122
+ '&.mq-arrow-right:before': {
123
+ fontSize: '80%',
124
+ right: 'calc(-13%) !important',
125
+ top: '-0.26em !important'
126
+ },
127
+ '& .mq-overarrow-inner': {
128
+ border: 'none !important'
129
+ },
130
+ '& .mq-overarrow-inner .mq-overarrow-inner-right': {
131
+ display: 'none !important'
132
+ }
133
+ },
134
+ '& .mq-root-block': {
135
+ padding: '5px !important'
136
+ },
137
+ '& .mq-overarrow.mq-arrow-both.mq-empty:after': {
138
+ right: '-6px',
139
+ fontSize: '80% !important',
140
+ top: '-3px'
141
+ },
142
+ '& .mq-overarrow.mq-arrow-right.mq-empty:before': {
143
+ right: '-5px',
144
+ fontSize: '80% !important',
145
+ top: '-3px'
146
+ },
147
+ '& .mq-overarrow.mq-arrow-both.mq-empty:before': {
148
+ left: '-6px',
149
+ fontSize: '80% !important',
150
+ top: '-3px'
151
+ },
152
+ '& .mq-longdiv-inner': {
153
+ borderTop: '1px solid !important',
154
+ paddingTop: '1.5px !important'
155
+ },
156
+ '& .mq-parallelogram': {
157
+ lineHeight: 0.85
158
+ },
159
+ '& .mq-overarc': {
160
+ borderTop: '2px solid black !important',
161
+ '& .mq-overline': {
162
+ borderTop: 'none !important'
163
+ },
164
+ '& .mq-overline-inner': {
165
+ borderTop: 'none !important',
166
+ paddingTop: '0 !important'
167
+ }
168
+ }
169
+ };
170
+
171
+ // Add specific styles based on latex content
172
+ if (latex === '\\parallel') {
173
+ return _objectSpread(_objectSpread({}, baseStyles), {}, {
174
+ fontStyle: 'italic !important'
175
+ });
176
+ }
177
+ if (latex === '\\overleftrightarrow{\\overline{}}') {
178
+ return _objectSpread(_objectSpread({}, baseStyles), {}, {
179
+ '& .mq-overarrow.mq-arrow-both': {
180
+ '& .mq-overline-inner': {
181
+ borderTop: 'none !important',
182
+ paddingTop: '0 !important'
183
+ },
184
+ '&:after': {
185
+ position: 'absolute !important',
186
+ top: '0px !important'
187
+ }
188
+ }
189
+ });
190
+ }
191
+ return baseStyles;
192
+ });
193
+ LatexButtonContent.propTypes = {
194
+ latex: _propTypes["default"].string.isRequired
195
+ };
196
+
197
+ // LatexButton component removed - LatexButtonContent is used directly instead
198
+
199
+ var createCustomLayout = function createCustomLayout(layoutObj) {
200
+ if (layoutObj) {
201
+ return {
202
+ gridTemplateColumns: "repeat(".concat(layoutObj.columns, ", minmax(min-content, 150px))"),
203
+ gridTemplateRows: "repeat(".concat(layoutObj.rows, ", minmax(40px, 60px))"),
204
+ gridAutoFlow: 'initial'
205
+ };
206
+ }
207
+ return {};
208
+ };
209
+ var KeyPadContainer = (0, _styles.styled)('div')(function () {
210
+ return _objectSpread(_objectSpread({}, _commonMqStyles.commonMqKeyboardStyles), {}, {
211
+ width: '100%',
212
+ display: 'grid',
213
+ gridTemplateRows: 'repeat(5, minmax(40px, 60px))',
214
+ gridRowGap: '0px',
215
+ gridColumnGap: '0px',
216
+ gridAutoFlow: 'column',
217
+ '&.character': {
218
+ textTransform: 'initial !important',
219
+ gridTemplateRows: 'repeat(5, minmax(40px, 50px)) !important'
220
+ },
221
+ '&.language': {
222
+ gridTemplateRows: 'repeat(4, minmax(40px, 50px)) !important',
223
+ '& *': {
224
+ fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
225
+ }
226
+ }
227
+ });
228
+ });
229
+ var StyledButton = (0, _styles.styled)(_Button["default"])(function (_ref2) {
230
+ var category = _ref2.category,
231
+ isDelete = _ref2.isDelete,
232
+ isComma = _ref2.isComma,
233
+ isDot = _ref2.isDot;
234
+ return _objectSpread({
235
+ minWidth: 'auto',
236
+ fontSize: isComma || isDot ? '200% !important' : '140% !important',
237
+ lineHeight: isComma || isDot ? '100%' : 'normal',
238
+ color: _renderUi.color.text(),
239
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.5) :
240
+ // this code with green seems to not be applied to current implementation, so I commented it out, but left it here just in case
241
+ // category === 'comparison' ? lighten(green[500], 0.5) :
242
+ (0, _styles.lighten)(_colors.indigo[300], 0.5),
243
+ '&:hover': {
244
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.7) :
245
+ // category === 'comparison' ? lighten(green[500], 0.7) :
246
+ (0, _styles.lighten)(_colors.indigo[300], 0.7)
247
+ },
248
+ borderRadius: 0
249
+ }, isDelete && {
250
+ '& > span': {
251
+ fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'
252
+ }
253
+ });
254
+ });
255
+ var StyledLatexButtonWrapper = (0, _styles.styled)(_Button["default"])(function (_ref3) {
256
+ var category = _ref3.category;
257
+ return {
258
+ minWidth: 'auto',
259
+ borderRadius: 0,
260
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.5) :
261
+ // category === 'comparison' ? lighten(green[500], 0.5) :
262
+ (0, _styles.lighten)(_colors.indigo[300], 0.5),
263
+ '&:hover': {
264
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.7) :
265
+ // category === 'comparison' ? lighten(green[500], 0.7) :
266
+ (0, _styles.lighten)(_colors.indigo[300], 0.7)
267
+ }
268
+ };
269
+ });
270
+ var StyledIconButton = (0, _styles.styled)(_IconButton["default"])(function (_ref4) {
271
+ var category = _ref4.category;
272
+ return {
273
+ minWidth: 'auto',
274
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.5) :
275
+ // category === 'comparison' ? lighten(green[500], 0.5) :
276
+ (0, _styles.lighten)(_colors.indigo[300], 0.5),
277
+ '&:hover': {
278
+ backgroundColor: category === 'operators' ? (0, _styles.lighten)(_colors.pink[300], 0.7) :
279
+ // category === 'comparison' ? lighten(green[500], 0.7) :
280
+ (0, _styles.lighten)(_colors.indigo[300], 0.7)
281
+ },
282
+ borderRadius: 0,
283
+ '& .icon': {
284
+ height: '30px'
285
+ }
286
+ };
287
+ });
288
+ var KeyPad = exports.KeyPad = /*#__PURE__*/function (_React$Component) {
289
+ function KeyPad(props) {
290
+ var _this;
291
+ (0, _classCallCheck2["default"])(this, KeyPad);
292
+ _this = _callSuper(this, KeyPad, [props]);
293
+ (0, _defineProperty2["default"])(_this, "handleKeypadInteraction", function () {
294
+ // Check if the setKeypadInteraction prop is available, which is used for both
295
+ // the language keypad and the special characters keypad
296
+ if (_this.props.setKeypadInteraction) {
297
+ _this.props.setKeypadInteraction(true);
298
+ }
299
+ });
300
+ (0, _defineProperty2["default"])(_this, "buttonClick", function (key) {
301
+ log('[buttonClick]', key);
302
+ var onPress = _this.props.onPress;
303
+ onPress(key);
304
+ });
305
+ (0, _defineProperty2["default"])(_this, "flowKeys", function (base, extras) {
306
+ var transposed = [].concat((0, _toConsumableArray2["default"])((0, _keysLayout.sortKeys)(base)), (0, _toConsumableArray2["default"])((0, _keysLayout.sortKeys)(extras)));
307
+ return _lodash["default"].flatten(transposed);
308
+ });
309
+ (0, _defineProperty2["default"])(_this, "keyIsNotAllowed", function (key) {
310
+ var noDecimal = _this.props.noDecimal;
311
+ if ((key.write === '.' && key.label === '.' || key.write === ',' && key.label === ',') && noDecimal) {
312
+ return true;
313
+ }
314
+ return false;
315
+ });
316
+ _this.keypadRef = /*#__PURE__*/_react["default"].createRef();
317
+ return _this;
318
+ }
319
+ (0, _inherits2["default"])(KeyPad, _React$Component);
320
+ return (0, _createClass2["default"])(KeyPad, [{
321
+ key: "componentDidMount",
322
+ value: function componentDidMount() {
323
+ var _this$keypadRef;
324
+ var keyPadElement = (_this$keypadRef = this.keypadRef) === null || _this$keypadRef === void 0 ? void 0 : _this$keypadRef.current;
325
+ var mainContainer = keyPadElement === null || keyPadElement === void 0 ? void 0 : keyPadElement.closest('.main-container');
326
+ var currentToolbar = keyPadElement === null || keyPadElement === void 0 ? void 0 : keyPadElement.closest('.pie-toolbar');
327
+
328
+ // need only for math keyboard so we need also controlledKeypadMode
329
+ if (this.props.controlledKeypadMode && mainContainer && currentToolbar) {
330
+ var mainContainerPosition = mainContainer.getBoundingClientRect();
331
+ var currentToolbarPosition = currentToolbar.getBoundingClientRect();
332
+ var difference = mainContainerPosition.top + mainContainerPosition.height - (currentToolbarPosition.top + currentToolbarPosition.height);
333
+ if (difference < 0) {
334
+ var totalHeight = mainContainerPosition.height + mainContainerPosition.top - difference;
335
+ // increase the height of the main container if keyboard needs it
336
+ if (mainContainer) {
337
+ mainContainer.style.height = "".concat(totalHeight, "px");
338
+ }
339
+ }
340
+ }
341
+ if (keyPadElement) {
342
+ keyPadElement.addEventListener('touchstart', this.handleKeypadInteraction, true);
343
+ keyPadElement.addEventListener('mousedown', this.handleKeypadInteraction, true);
344
+ }
345
+ }
346
+ }, {
347
+ key: "componentWillUnmount",
348
+ value: function componentWillUnmount() {
349
+ var _this$keypadRef2;
350
+ var keyPadElement = (_this$keypadRef2 = this.keypadRef) === null || _this$keypadRef2 === void 0 ? void 0 : _this$keypadRef2.current;
351
+ // need only for math keyboard
352
+ if (this.props.controlledKeypadMode && keyPadElement) {
353
+ var mainContainer = keyPadElement.closest('.main-container');
354
+ if (mainContainer) {
355
+ mainContainer.style.height = 'unset';
356
+ }
357
+ }
358
+ if (keyPadElement) {
359
+ keyPadElement.removeEventListener('touchstart', this.handleKeypadInteraction, true);
360
+ keyPadElement.removeEventListener('mousedown', this.handleKeypadInteraction, true);
361
+ }
362
+ }
363
+ }, {
364
+ key: "render",
365
+ value: function render() {
366
+ var _this2 = this;
367
+ var _this$props = this.props,
368
+ className = _this$props.className,
369
+ baseSet = _this$props.baseSet,
370
+ additionalKeys = _this$props.additionalKeys,
371
+ layoutForKeyPad = _this$props.layoutForKeyPad,
372
+ onFocus = _this$props.onFocus,
373
+ mode = _this$props.mode;
374
+ var noBaseSet = ['non-negative-integers', 'integers', 'decimals', 'fractions', 'item-authoring', 'language'];
375
+ var keysWithoutBaseSet = noBaseSet.includes(mode);
376
+ var allKeys = keysWithoutBaseSet ? this.flowKeys([], additionalKeys || []) : this.flowKeys(baseSet, additionalKeys || []);
377
+ var shift = allKeys.length % 5 ? 1 : 0;
378
+ var style = _objectSpread({
379
+ gridTemplateColumns: "repeat(".concat(Math.floor(allKeys.length / 5) + shift, ", minmax(min-content, 150px))")
380
+ }, createCustomLayout(layoutForKeyPad));
381
+ return /*#__PURE__*/_react["default"].createElement(KeyPadContainer, {
382
+ ref: this.keypadRef,
383
+ className: [className, mode].filter(Boolean).join(' '),
384
+ style: style,
385
+ onFocus: onFocus
386
+ }, allKeys.map(function (k, index) {
387
+ var onClick = _this2.buttonClick.bind(_this2, k);
388
+ if (!k) {
389
+ return /*#__PURE__*/_react["default"].createElement("span", {
390
+ key: "empty-".concat(index)
391
+ });
392
+ }
393
+ var common = _objectSpread(_objectSpread({
394
+ onClick: onClick,
395
+ disabled: _this2.keyIsNotAllowed(k),
396
+ key: "".concat(k.label || k.latex || k.command, "-").concat(index)
397
+ }, k.actions || {}), k.extraProps || {});
398
+ if (k.latex) {
399
+ return /*#__PURE__*/_react["default"].createElement(StyledLatexButtonWrapper, (0, _extends2["default"])({
400
+ key: common.key,
401
+ onClick: common.onClick,
402
+ disabled: common.disabled,
403
+ category: !keysWithoutBaseSet ? k.category : undefined,
404
+ "aria-label": k.ariaLabel ? k.ariaLabel : k.name || k.label
405
+ }, k.actions || {}, k.extraProps || {}), /*#__PURE__*/_react["default"].createElement(LatexButtonContent, {
406
+ latex: k.latex
407
+ }));
408
+ }
409
+ if (k.label) {
410
+ return /*#__PURE__*/_react["default"].createElement(StyledButton, (0, _extends2["default"])({
411
+ key: common.key,
412
+ onClick: common.onClick,
413
+ disabled: common.disabled,
414
+ category: !keysWithoutBaseSet ? k.category : undefined,
415
+ isDelete: k.label === '⌫',
416
+ isComma: k.label === ',',
417
+ isDot: k.label === '.',
418
+ "aria-label": k.ariaLabel ? k.ariaLabel : k.name || k.label
419
+ }, k.actions || {}, k.extraProps || {}), k.label);
420
+ } else {
421
+ var Icon = k.icon ? k.icon : 'div';
422
+ return /*#__PURE__*/_react["default"].createElement(StyledIconButton, (0, _extends2["default"])({
423
+ key: common.key,
424
+ tabIndex: '-1',
425
+ onClick: common.onClick,
426
+ disabled: common.disabled,
427
+ category: !keysWithoutBaseSet ? k.category : undefined,
428
+ size: "large"
429
+ }, k.actions || {}, k.extraProps || {}), /*#__PURE__*/_react["default"].createElement(Icon, {
430
+ className: "icon"
431
+ }));
432
+ }
433
+ }));
434
+ }
435
+ }]);
436
+ }(_react["default"].Component);
437
+ (0, _defineProperty2["default"])(KeyPad, "propTypes", {
438
+ className: _propTypes["default"].string,
439
+ controlledKeypadMode: _propTypes["default"].bool,
440
+ baseSet: _propTypes["default"].array,
441
+ additionalKeys: _propTypes["default"].array,
442
+ layoutForKeyPad: _propTypes["default"].object,
443
+ onPress: _propTypes["default"].func.isRequired,
444
+ onFocus: _propTypes["default"].func,
445
+ noDecimal: _propTypes["default"].bool,
446
+ setKeypadInteraction: _propTypes["default"].func,
447
+ mode: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])
448
+ });
449
+ (0, _defineProperty2["default"])(KeyPad, "defaultProps", {
450
+ baseSet: _keys.baseSet,
451
+ noDecimal: false
452
+ });
453
+ var _default = exports["default"] = KeyPad;
454
+ //# sourceMappingURL=index.js.map