@pie-lib/math-toolbar 1.8.8 → 1.8.9
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.
- package/CHANGELOG.md +8 -0
- package/lib/done-button.js +3 -3
- package/lib/done-button.js.map +1 -1
- package/lib/editor-and-pad.js +39 -35
- package/lib/editor-and-pad.js.map +1 -1
- package/lib/index.js +24 -20
- package/lib/index.js.map +1 -1
- package/lib/math-preview.js +19 -15
- package/lib/math-preview.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [1.8.9](https://github.com/pie-framework/pie-lib/compare/@pie-lib/math-toolbar@1.8.8...@pie-lib/math-toolbar@1.8.9) (2022-04-12)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @pie-lib/math-toolbar
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [1.8.8](https://github.com/pie-framework/pie-lib/compare/@pie-lib/math-toolbar@1.8.7...@pie-lib/math-toolbar@1.8.8) (2022-02-04)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @pie-lib/math-toolbar
|
package/lib/done-button.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.RawDoneButton = exports.DoneButton = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
@@ -20,7 +20,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
|
|
|
20
20
|
var RawDoneButton = function RawDoneButton(_ref) {
|
|
21
21
|
var classes = _ref.classes,
|
|
22
22
|
onClick = _ref.onClick;
|
|
23
|
-
return _react["default"].createElement(_IconButton["default"], {
|
|
23
|
+
return /*#__PURE__*/_react["default"].createElement(_IconButton["default"], {
|
|
24
24
|
"aria-label": "Done",
|
|
25
25
|
className: classes.iconRoot,
|
|
26
26
|
onClick: onClick,
|
|
@@ -28,7 +28,7 @@ var RawDoneButton = function RawDoneButton(_ref) {
|
|
|
28
28
|
label: classes.label,
|
|
29
29
|
root: classes.iconRoot
|
|
30
30
|
}
|
|
31
|
-
}, _react["default"].createElement(_Check["default"], null));
|
|
31
|
+
}, /*#__PURE__*/_react["default"].createElement(_Check["default"], null));
|
|
32
32
|
};
|
|
33
33
|
|
|
34
34
|
exports.RawDoneButton = RawDoneButton;
|
package/lib/done-button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/done-button.jsx"],"names":["RawDoneButton","classes","onClick","iconRoot","label","root","propTypes","PropTypes","object","isRequired","func","styles","verticalAlign","width","height","color","position","top","DoneButton"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;AAEO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,OAAZ,QAAYA,OAAZ;AAAA,
|
|
1
|
+
{"version":3,"sources":["../src/done-button.jsx"],"names":["RawDoneButton","classes","onClick","iconRoot","label","root","propTypes","PropTypes","object","isRequired","func","styles","verticalAlign","width","height","color","position","top","DoneButton"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;AAEO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,OAAZ,QAAYA,OAAZ;AAAA,sBAC3B,gCAAC,sBAAD;AACE,kBAAW,MADb;AAEE,IAAA,SAAS,EAAED,OAAO,CAACE,QAFrB;AAGE,IAAA,OAAO,EAAED,OAHX;AAIE,IAAA,OAAO,EAAE;AACPE,MAAAA,KAAK,EAAEH,OAAO,CAACG,KADR;AAEPC,MAAAA,IAAI,EAAEJ,OAAO,CAACE;AAFP;AAJX,kBASE,gCAAC,iBAAD,OATF,CAD2B;AAAA,CAAtB;;;AAcPH,aAAa,CAACM,SAAd,GAA0B;AACxBL,EAAAA,OAAO,EAAEM,sBAAUC,MAAV,CAAiBC,UADF;AAExBP,EAAAA,OAAO,EAAEK,sBAAUG;AAFK,CAA1B;AAKA,IAAMC,MAAM,GAAG;AACbR,EAAAA,QAAQ,EAAE;AACRS,IAAAA,aAAa,EAAE,KADP;AAERC,IAAAA,KAAK,EAAE,MAFC;AAGRC,IAAAA,MAAM,EAAE,MAHA;AAIRC,IAAAA,KAAK,EAAE;AAJC,GADG;AAObX,EAAAA,KAAK,EAAE;AACLY,IAAAA,QAAQ,EAAE,UADL;AAELC,IAAAA,GAAG,EAAE;AAFA;AAPM,CAAf;AAYO,IAAMC,UAAU,GAAG,wBAAWP,MAAX,EAAmBX,aAAnB,CAAnB","sourcesContent":["import React from 'react';\n\nimport IconButton from '@material-ui/core/IconButton';\nimport Check from '@material-ui/icons/Check';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\n\nexport const RawDoneButton = ({ classes, onClick }) => (\n <IconButton\n aria-label=\"Done\"\n className={classes.iconRoot}\n onClick={onClick}\n classes={{\n label: classes.label,\n root: classes.iconRoot\n }}\n >\n <Check />\n </IconButton>\n);\n\nRawDoneButton.propTypes = {\n classes: PropTypes.object.isRequired,\n onClick: PropTypes.func\n};\n\nconst styles = {\n iconRoot: {\n verticalAlign: 'top',\n width: '28px',\n height: '28px',\n color: '#00bb00'\n },\n label: {\n position: 'absolute',\n top: '2px'\n }\n};\nexport const DoneButton = withStyles(styles)(RawDoneButton);\n"],"file":"done-button.js"}
|
package/lib/editor-and-pad.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -27,27 +29,29 @@ var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
|
|
|
27
29
|
|
|
28
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
29
31
|
|
|
30
|
-
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
31
|
-
|
|
32
32
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
33
33
|
|
|
34
34
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
35
35
|
|
|
36
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
36
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
39
39
|
|
|
40
|
-
function
|
|
40
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
41
|
+
|
|
42
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
43
|
+
|
|
44
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
41
45
|
|
|
42
46
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
43
47
|
|
|
44
|
-
function
|
|
48
|
+
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; } }
|
|
45
49
|
|
|
46
|
-
function
|
|
50
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
47
51
|
|
|
48
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
52
|
+
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; }
|
|
49
53
|
|
|
50
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
54
|
+
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) { _defineProperty(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; }
|
|
51
55
|
|
|
52
56
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
53
57
|
|
|
@@ -80,17 +84,17 @@ var toNodeData = function toNodeData(data) {
|
|
|
80
84
|
}
|
|
81
85
|
};
|
|
82
86
|
|
|
83
|
-
var EditorAndPad =
|
|
84
|
-
/*#__PURE__*/
|
|
85
|
-
function (_React$Component) {
|
|
87
|
+
var EditorAndPad = /*#__PURE__*/function (_React$Component) {
|
|
86
88
|
_inherits(EditorAndPad, _React$Component);
|
|
87
89
|
|
|
90
|
+
var _super = _createSuper(EditorAndPad);
|
|
91
|
+
|
|
88
92
|
function EditorAndPad(props) {
|
|
89
93
|
var _this;
|
|
90
94
|
|
|
91
95
|
_classCallCheck(this, EditorAndPad);
|
|
92
96
|
|
|
93
|
-
_this =
|
|
97
|
+
_this = _super.call(this, props);
|
|
94
98
|
|
|
95
99
|
_defineProperty(_assertThisInitialized(_this), "onClick", function (data) {
|
|
96
100
|
var noDecimal = _this.props.noDecimal;
|
|
@@ -162,10 +166,10 @@ function (_React$Component) {
|
|
|
162
166
|
}
|
|
163
167
|
}, {
|
|
164
168
|
key: "shouldComponentUpdate",
|
|
165
|
-
|
|
169
|
+
value:
|
|
166
170
|
/** Only render if the mathquill instance's latex is different
|
|
167
171
|
* or the keypad state changed from one state to the other (shown / hidden) */
|
|
168
|
-
|
|
172
|
+
function shouldComponentUpdate(nextProps, nextState) {
|
|
169
173
|
var inputIsDifferent = this.input.mathField.latex() !== nextProps.latex;
|
|
170
174
|
log('[shouldComponentUpdate] ', 'inputIsDifferent: ', inputIsDifferent);
|
|
171
175
|
|
|
@@ -207,42 +211,42 @@ function (_React$Component) {
|
|
|
207
211
|
classes = _this$props2.classes;
|
|
208
212
|
var shouldShowKeypad = !controlledKeypad || controlledKeypad && showKeypad;
|
|
209
213
|
log('[render]', latex);
|
|
210
|
-
return _react["default"].createElement("div", {
|
|
214
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
211
215
|
className: (0, _classnames["default"])(classes.mathToolbar, classNames.mathToolbar)
|
|
212
|
-
}, _react["default"].createElement("div", {
|
|
216
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
213
217
|
className: classes.inputAndTypeContainer
|
|
214
|
-
}, controlledKeypadMode && _react["default"].createElement(_renderUi.InputContainer, {
|
|
218
|
+
}, controlledKeypadMode && /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
|
|
215
219
|
label: "Equation Editor",
|
|
216
220
|
className: classes.selectContainer
|
|
217
|
-
}, _react["default"].createElement(_Select["default"], {
|
|
221
|
+
}, /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
218
222
|
className: classes.select,
|
|
219
223
|
onChange: this.onEditorTypeChange,
|
|
220
224
|
value: this.state.equationEditor
|
|
221
|
-
}, _react["default"].createElement(_MenuItem["default"], {
|
|
225
|
+
}, /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
222
226
|
value: "non-negative-integers"
|
|
223
|
-
}, "Numeric - Non-Negative Integers"), _react["default"].createElement(_MenuItem["default"], {
|
|
227
|
+
}, "Numeric - Non-Negative Integers"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
224
228
|
value: "integers"
|
|
225
|
-
}, "Numeric - Integers"), _react["default"].createElement(_MenuItem["default"], {
|
|
229
|
+
}, "Numeric - Integers"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
226
230
|
value: "decimals"
|
|
227
|
-
}, "Numeric - Decimals"), _react["default"].createElement(_MenuItem["default"], {
|
|
231
|
+
}, "Numeric - Decimals"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
228
232
|
value: "fractions"
|
|
229
|
-
}, "Numeric - Fractions"), _react["default"].createElement(_MenuItem["default"], {
|
|
233
|
+
}, "Numeric - Fractions"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
230
234
|
value: 1
|
|
231
|
-
}, "Grade 1 - 2"), _react["default"].createElement(_MenuItem["default"], {
|
|
235
|
+
}, "Grade 1 - 2"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
232
236
|
value: 3
|
|
233
|
-
}, "Grade 3 - 5"), _react["default"].createElement(_MenuItem["default"], {
|
|
237
|
+
}, "Grade 3 - 5"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
234
238
|
value: 6
|
|
235
|
-
}, "Grade 6 - 7"), _react["default"].createElement(_MenuItem["default"], {
|
|
239
|
+
}, "Grade 6 - 7"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
236
240
|
value: 8
|
|
237
|
-
}, "Grade 8 - HS"), _react["default"].createElement(_MenuItem["default"], {
|
|
241
|
+
}, "Grade 8 - HS"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
238
242
|
value: 'geometry'
|
|
239
|
-
}, "Geometry"), _react["default"].createElement(_MenuItem["default"], {
|
|
243
|
+
}, "Geometry"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
240
244
|
value: 'advanced-algebra'
|
|
241
|
-
}, "Advanced Algebra"), _react["default"].createElement(_MenuItem["default"], {
|
|
245
|
+
}, "Advanced Algebra"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
242
246
|
value: 'statistics'
|
|
243
|
-
}, "Statistics"), _react["default"].createElement(_MenuItem["default"], {
|
|
247
|
+
}, "Statistics"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
244
248
|
value: 'item-authoring'
|
|
245
|
-
}, "Item Authoring"))), _react["default"].createElement(_mathInput.mq.Input, {
|
|
249
|
+
}, "Item Authoring"))), /*#__PURE__*/_react["default"].createElement(_mathInput.mq.Input, {
|
|
246
250
|
onFocus: onFocus,
|
|
247
251
|
onBlur: onBlur,
|
|
248
252
|
className: (0, _classnames["default"])(classes.mathEditor, classNames.editor, !controlledKeypadMode ? classes.longMathEditor : ''),
|
|
@@ -251,16 +255,16 @@ function (_React$Component) {
|
|
|
251
255
|
},
|
|
252
256
|
latex: latex,
|
|
253
257
|
onChange: this.onEditorChange
|
|
254
|
-
})), allowAnswerBlock && _react["default"].createElement(_Button["default"], {
|
|
258
|
+
})), allowAnswerBlock && /*#__PURE__*/_react["default"].createElement(_Button["default"], {
|
|
255
259
|
className: classes.addAnswerBlockButton,
|
|
256
260
|
type: "primary",
|
|
257
261
|
style: {
|
|
258
262
|
bottom: shouldShowKeypad ? '320px' : '20px'
|
|
259
263
|
},
|
|
260
264
|
onClick: this.onAnswerBlockClick
|
|
261
|
-
}, "+ Response Area"), _react["default"].createElement("hr", {
|
|
265
|
+
}, "+ Response Area"), /*#__PURE__*/_react["default"].createElement("hr", {
|
|
262
266
|
className: classes.hr
|
|
263
|
-
}), shouldShowKeypad && _react["default"].createElement(_mathInput.HorizontalKeypad, {
|
|
267
|
+
}), shouldShowKeypad && /*#__PURE__*/_react["default"].createElement(_mathInput.HorizontalKeypad, {
|
|
264
268
|
additionalKeys: additionalKeys,
|
|
265
269
|
mode: controlledKeypadMode ? this.state.equationEditor : keypadMode,
|
|
266
270
|
onClick: this.onClick,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/editor-and-pad.jsx"],"names":["log","decimalRegex","toNodeData","data","type","value","EditorAndPad","props","noDecimal","c","input","clear","command","keystroke","write","onAnswerBlockAdd","onClick","latex","onChange","indexOf","replace","evt","setState","equationEditor","target","state","autoFocus","focus","nextProps","nextState","inputIsDifferent","mathField","keypadMode","controlledKeypad","showKeypad","classNames","allowAnswerBlock","additionalKeys","controlledKeypadMode","onFocus","onBlur","classes","shouldShowKeypad","mathToolbar","inputAndTypeContainer","selectContainer","select","onEditorTypeChange","mathEditor","editor","longMathEditor","r","onEditorChange","addAnswerBlockButton","bottom","onAnswerBlockClick","hr","React","Component","PropTypes","object","oneOfType","string","number","bool","array","isRequired","func","styles","theme","display","alignItems","fontFamily","minWidth","lineHeight","top","left","right","flex","width","marginLeft","marginTop","marginBottom","marginRight","maxWidth","color","text","backgroundColor","background","padding","spacing","unit","position","border","margin","height","borderBottom","palette","primary","main","zIndex","textAlign","outline","boxShadow","borderRadius","paddingTop","borderTop"],"mappings":"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","sourcesContent":["import { HorizontalKeypad, mq } from '@pie-lib/math-input';\nimport React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nconst log = debug('@pie-lib:math-toolbar:editor-and-pad');\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Select from '@material-ui/core/Select';\nimport { updateSpans } from '@pie-lib/math-input';\n\nconst decimalRegex = /\\.|,/g;\n\nconst toNodeData = data => {\n if (!data) {\n return;\n }\n\n const { type, value } = data;\n\n if (type === 'command' || type === 'cursor') {\n return data;\n } else if (type === 'answer') {\n return { type: 'answer', ...data };\n } else if (value === 'clear') {\n return { type: 'clear' };\n } else {\n return { type: 'write', value };\n }\n};\n\nexport class EditorAndPad extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n showKeypad: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n noDecimal: PropTypes.bool,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n this.state = { equationEditor: 'item-authoring' };\n }\n\n componentDidMount() {\n if (this.input && this.props.autoFocus) {\n this.input.focus();\n }\n }\n\n onClick = data => {\n const { noDecimal } = this.props;\n const c = toNodeData(data);\n log('mathChange: ', c);\n\n // if decimals are not allowed for this response, we discard the input\n if (noDecimal && (c.value === '.' || c.value === ',')) {\n return;\n }\n\n if (c.type === 'clear') {\n log('call clear...');\n this.input.clear();\n } else if (c.type === 'command') {\n this.input.command(c.value);\n } else if (c.type === 'cursor') {\n this.input.keystroke(c.value);\n } else if (c.type === 'answer') {\n this.input.write('%response%');\n } else {\n this.input.write(c.value);\n }\n };\n\n onAnswerBlockClick = () => {\n this.props.onAnswerBlockAdd();\n this.onClick({\n type: 'answer'\n });\n };\n\n onEditorChange = latex => {\n const { onChange, noDecimal } = this.props;\n\n updateSpans();\n\n // if no decimals are allowed and the last change is a decimal dot, discard the change\n if (noDecimal && (latex.indexOf('.') !== -1 || latex.indexOf(',') !== -1) && this.input) {\n this.input.clear();\n this.input.write(latex.replace(decimalRegex, ''));\n return;\n }\n\n onChange(latex);\n };\n\n /** Only render if the mathquill instance's latex is different\n * or the keypad state changed from one state to the other (shown / hidden) */\n shouldComponentUpdate(nextProps, nextState) {\n const inputIsDifferent = this.input.mathField.latex() !== nextProps.latex;\n log('[shouldComponentUpdate] ', 'inputIsDifferent: ', inputIsDifferent);\n\n if (!inputIsDifferent && this.props.keypadMode !== nextProps.keypadMode) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.noDecimal !== nextProps.noDecimal) {\n return true;\n }\n\n if (!inputIsDifferent && this.state.equationEditor !== nextState.equationEditor) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.controlledKeypad) {\n return this.props.showKeypad !== nextProps.showKeypad;\n }\n\n return inputIsDifferent;\n }\n\n onEditorTypeChange = evt => {\n this.setState({ equationEditor: evt.target.value });\n };\n\n render() {\n const {\n classNames,\n keypadMode,\n allowAnswerBlock,\n additionalKeys,\n controlledKeypad,\n controlledKeypadMode,\n showKeypad,\n noDecimal,\n latex,\n onFocus,\n onBlur,\n classes\n } = this.props;\n const shouldShowKeypad = !controlledKeypad || (controlledKeypad && showKeypad);\n\n log('[render]', latex);\n\n return (\n <div className={cx(classes.mathToolbar, classNames.mathToolbar)}>\n <div className={classes.inputAndTypeContainer}>\n {controlledKeypadMode && (\n <InputContainer label=\"Equation Editor\" className={classes.selectContainer}>\n <Select\n className={classes.select}\n onChange={this.onEditorTypeChange}\n value={this.state.equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </Select>\n </InputContainer>\n )}\n <mq.Input\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(\n classes.mathEditor,\n classNames.editor,\n !controlledKeypadMode ? classes.longMathEditor : ''\n )}\n innerRef={r => (this.input = r)}\n latex={latex}\n onChange={this.onEditorChange}\n />\n </div>\n {allowAnswerBlock && (\n <Button\n className={classes.addAnswerBlockButton}\n type=\"primary\"\n style={{ bottom: shouldShowKeypad ? '320px' : '20px' }}\n onClick={this.onAnswerBlockClick}\n >\n + Response Area\n </Button>\n )}\n <hr className={classes.hr} />\n {shouldShowKeypad && (\n <HorizontalKeypad\n additionalKeys={additionalKeys}\n mode={controlledKeypadMode ? this.state.equationEditor : keypadMode}\n onClick={this.onClick}\n noDecimal={noDecimal}\n />\n )}\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n inputAndTypeContainer: {\n display: 'flex',\n alignItems: 'center',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important'\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px'\n },\n '&:after': {\n top: '-2.36em',\n right: '-1px'\n },\n '&.mq-empty:after': {\n top: '-0.45em'\n }\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px'\n }\n }\n },\n selectContainer: {\n flex: 'initial',\n width: '25%',\n minWidth: '100px',\n marginLeft: '15px',\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n mathEditor: {\n maxWidth: '400px',\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit,\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit\n },\n longMathEditor: {\n maxWidth: '500px'\n },\n addAnswerBlockButton: {\n position: 'absolute',\n right: '12px',\n border: '1px solid lightgrey'\n },\n hr: {\n padding: 0,\n margin: 0,\n height: '1px',\n border: 'none',\n borderBottom: `solid 1px ${theme.palette.primary.main}`\n },\n mathToolbar: {\n zIndex: 9,\n position: 'relative',\n textAlign: 'center',\n width: 'auto',\n '& > .mq-math-mode': {\n border: 'solid 1px lightgrey'\n },\n '& > .mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: `dotted 1px ${theme.palette.primary.main}`,\n borderRadius: '0px'\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n paddingTop: '0 !important'\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important'\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important'\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em'\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85\n }\n }\n});\n\nexport default withStyles(styles)(EditorAndPad);\n"],"file":"editor-and-pad.js"}
|
|
1
|
+
{"version":3,"sources":["../src/editor-and-pad.jsx"],"names":["log","decimalRegex","toNodeData","data","type","value","EditorAndPad","props","noDecimal","c","input","clear","command","keystroke","write","onAnswerBlockAdd","onClick","latex","onChange","indexOf","replace","evt","setState","equationEditor","target","state","autoFocus","focus","nextProps","nextState","inputIsDifferent","mathField","keypadMode","controlledKeypad","showKeypad","classNames","allowAnswerBlock","additionalKeys","controlledKeypadMode","onFocus","onBlur","classes","shouldShowKeypad","mathToolbar","inputAndTypeContainer","selectContainer","select","onEditorTypeChange","mathEditor","editor","longMathEditor","r","onEditorChange","addAnswerBlockButton","bottom","onAnswerBlockClick","hr","React","Component","PropTypes","object","oneOfType","string","number","bool","array","isRequired","func","styles","theme","display","alignItems","fontFamily","minWidth","lineHeight","top","left","right","flex","width","marginLeft","marginTop","marginBottom","marginRight","maxWidth","color","text","backgroundColor","background","padding","spacing","unit","position","border","margin","height","borderBottom","palette","primary","main","zIndex","textAlign","outline","boxShadow","borderRadius","paddingTop","borderTop"],"mappings":"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","sourcesContent":["import { HorizontalKeypad, mq } from '@pie-lib/math-input';\nimport React from 'react';\nimport debug from 'debug';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nconst log = debug('@pie-lib:math-toolbar:editor-and-pad');\nimport { color, InputContainer } from '@pie-lib/render-ui';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Select from '@material-ui/core/Select';\nimport { updateSpans } from '@pie-lib/math-input';\n\nconst decimalRegex = /\\.|,/g;\n\nconst toNodeData = data => {\n if (!data) {\n return;\n }\n\n const { type, value } = data;\n\n if (type === 'command' || type === 'cursor') {\n return data;\n } else if (type === 'answer') {\n return { type: 'answer', ...data };\n } else if (value === 'clear') {\n return { type: 'clear' };\n } else {\n return { type: 'write', value };\n }\n};\n\nexport class EditorAndPad extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n showKeypad: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n noDecimal: PropTypes.bool,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n this.state = { equationEditor: 'item-authoring' };\n }\n\n componentDidMount() {\n if (this.input && this.props.autoFocus) {\n this.input.focus();\n }\n }\n\n onClick = data => {\n const { noDecimal } = this.props;\n const c = toNodeData(data);\n log('mathChange: ', c);\n\n // if decimals are not allowed for this response, we discard the input\n if (noDecimal && (c.value === '.' || c.value === ',')) {\n return;\n }\n\n if (c.type === 'clear') {\n log('call clear...');\n this.input.clear();\n } else if (c.type === 'command') {\n this.input.command(c.value);\n } else if (c.type === 'cursor') {\n this.input.keystroke(c.value);\n } else if (c.type === 'answer') {\n this.input.write('%response%');\n } else {\n this.input.write(c.value);\n }\n };\n\n onAnswerBlockClick = () => {\n this.props.onAnswerBlockAdd();\n this.onClick({\n type: 'answer'\n });\n };\n\n onEditorChange = latex => {\n const { onChange, noDecimal } = this.props;\n\n updateSpans();\n\n // if no decimals are allowed and the last change is a decimal dot, discard the change\n if (noDecimal && (latex.indexOf('.') !== -1 || latex.indexOf(',') !== -1) && this.input) {\n this.input.clear();\n this.input.write(latex.replace(decimalRegex, ''));\n return;\n }\n\n onChange(latex);\n };\n\n /** Only render if the mathquill instance's latex is different\n * or the keypad state changed from one state to the other (shown / hidden) */\n shouldComponentUpdate(nextProps, nextState) {\n const inputIsDifferent = this.input.mathField.latex() !== nextProps.latex;\n log('[shouldComponentUpdate] ', 'inputIsDifferent: ', inputIsDifferent);\n\n if (!inputIsDifferent && this.props.keypadMode !== nextProps.keypadMode) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.noDecimal !== nextProps.noDecimal) {\n return true;\n }\n\n if (!inputIsDifferent && this.state.equationEditor !== nextState.equationEditor) {\n return true;\n }\n\n if (!inputIsDifferent && this.props.controlledKeypad) {\n return this.props.showKeypad !== nextProps.showKeypad;\n }\n\n return inputIsDifferent;\n }\n\n onEditorTypeChange = evt => {\n this.setState({ equationEditor: evt.target.value });\n };\n\n render() {\n const {\n classNames,\n keypadMode,\n allowAnswerBlock,\n additionalKeys,\n controlledKeypad,\n controlledKeypadMode,\n showKeypad,\n noDecimal,\n latex,\n onFocus,\n onBlur,\n classes\n } = this.props;\n const shouldShowKeypad = !controlledKeypad || (controlledKeypad && showKeypad);\n\n log('[render]', latex);\n\n return (\n <div className={cx(classes.mathToolbar, classNames.mathToolbar)}>\n <div className={classes.inputAndTypeContainer}>\n {controlledKeypadMode && (\n <InputContainer label=\"Equation Editor\" className={classes.selectContainer}>\n <Select\n className={classes.select}\n onChange={this.onEditorTypeChange}\n value={this.state.equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </Select>\n </InputContainer>\n )}\n <mq.Input\n onFocus={onFocus}\n onBlur={onBlur}\n className={cx(\n classes.mathEditor,\n classNames.editor,\n !controlledKeypadMode ? classes.longMathEditor : ''\n )}\n innerRef={r => (this.input = r)}\n latex={latex}\n onChange={this.onEditorChange}\n />\n </div>\n {allowAnswerBlock && (\n <Button\n className={classes.addAnswerBlockButton}\n type=\"primary\"\n style={{ bottom: shouldShowKeypad ? '320px' : '20px' }}\n onClick={this.onAnswerBlockClick}\n >\n + Response Area\n </Button>\n )}\n <hr className={classes.hr} />\n {shouldShowKeypad && (\n <HorizontalKeypad\n additionalKeys={additionalKeys}\n mode={controlledKeypadMode ? this.state.equationEditor : keypadMode}\n onClick={this.onClick}\n noDecimal={noDecimal}\n />\n )}\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n inputAndTypeContainer: {\n display: 'flex',\n alignItems: 'center',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important'\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px'\n },\n '&:after': {\n top: '-2.36em',\n right: '-1px'\n },\n '&.mq-empty:after': {\n top: '-0.45em'\n }\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px'\n }\n }\n },\n selectContainer: {\n flex: 'initial',\n width: '25%',\n minWidth: '100px',\n marginLeft: '15px',\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px'\n },\n mathEditor: {\n maxWidth: '400px',\n color: color.text(),\n backgroundColor: color.background(),\n padding: theme.spacing.unit,\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit\n },\n longMathEditor: {\n maxWidth: '500px'\n },\n addAnswerBlockButton: {\n position: 'absolute',\n right: '12px',\n border: '1px solid lightgrey'\n },\n hr: {\n padding: 0,\n margin: 0,\n height: '1px',\n border: 'none',\n borderBottom: `solid 1px ${theme.palette.primary.main}`\n },\n mathToolbar: {\n zIndex: 9,\n position: 'relative',\n textAlign: 'center',\n width: 'auto',\n '& > .mq-math-mode': {\n border: 'solid 1px lightgrey'\n },\n '& > .mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: `dotted 1px ${theme.palette.primary.main}`,\n borderRadius: '0px'\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n paddingTop: '0 !important'\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important'\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important'\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em'\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85\n }\n }\n});\n\nexport default withStyles(styles)(EditorAndPad);\n"],"file":"editor-and-pad.js"}
|
package/lib/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -9,7 +11,7 @@ Object.defineProperty(exports, "MathPreview", {
|
|
|
9
11
|
return _mathPreview["default"];
|
|
10
12
|
}
|
|
11
13
|
});
|
|
12
|
-
exports.
|
|
14
|
+
exports.RawPureToolbar = exports.PureToolbar = exports.MathToolbar = void 0;
|
|
13
15
|
|
|
14
16
|
var _react = _interopRequireDefault(require("react"));
|
|
15
17
|
|
|
@@ -27,37 +29,39 @@ var _mathPreview = _interopRequireDefault(require("./math-preview"));
|
|
|
27
29
|
|
|
28
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
29
31
|
|
|
30
|
-
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
31
|
-
|
|
32
32
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
33
33
|
|
|
34
34
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
35
35
|
|
|
36
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
36
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
39
39
|
|
|
40
|
-
function
|
|
40
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
41
|
+
|
|
42
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
43
|
+
|
|
44
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
41
45
|
|
|
42
46
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
43
47
|
|
|
44
|
-
function
|
|
48
|
+
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; } }
|
|
45
49
|
|
|
46
|
-
function
|
|
50
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
47
51
|
|
|
48
52
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
49
53
|
|
|
50
|
-
var MathToolbar =
|
|
51
|
-
/*#__PURE__*/
|
|
52
|
-
function (_React$Component) {
|
|
54
|
+
var MathToolbar = /*#__PURE__*/function (_React$Component) {
|
|
53
55
|
_inherits(MathToolbar, _React$Component);
|
|
54
56
|
|
|
57
|
+
var _super = _createSuper(MathToolbar);
|
|
58
|
+
|
|
55
59
|
function MathToolbar(props) {
|
|
56
60
|
var _this;
|
|
57
61
|
|
|
58
62
|
_classCallCheck(this, MathToolbar);
|
|
59
63
|
|
|
60
|
-
_this =
|
|
64
|
+
_this = _super.call(this, props);
|
|
61
65
|
|
|
62
66
|
_defineProperty(_assertThisInitialized(_this), "done", function () {
|
|
63
67
|
_this.props.onDone(_this.state.latex);
|
|
@@ -102,7 +106,7 @@ function (_React$Component) {
|
|
|
102
106
|
onFocus = _this$props.onFocus,
|
|
103
107
|
onBlur = _this$props.onBlur,
|
|
104
108
|
hideDoneButton = _this$props.hideDoneButton;
|
|
105
|
-
return _react["default"].createElement(PureToolbar, {
|
|
109
|
+
return /*#__PURE__*/_react["default"].createElement(PureToolbar, {
|
|
106
110
|
autoFocus: autoFocus,
|
|
107
111
|
classNames: classNames,
|
|
108
112
|
onAnswerBlockAdd: onAnswerBlockAdd,
|
|
@@ -163,15 +167,15 @@ _defineProperty(MathToolbar, "defaultProps", {
|
|
|
163
167
|
hideDoneButton: false
|
|
164
168
|
});
|
|
165
169
|
|
|
166
|
-
var RawPureToolbar =
|
|
167
|
-
/*#__PURE__*/
|
|
168
|
-
function (_React$Component2) {
|
|
170
|
+
var RawPureToolbar = /*#__PURE__*/function (_React$Component2) {
|
|
169
171
|
_inherits(RawPureToolbar, _React$Component2);
|
|
170
172
|
|
|
173
|
+
var _super2 = _createSuper(RawPureToolbar);
|
|
174
|
+
|
|
171
175
|
function RawPureToolbar() {
|
|
172
176
|
_classCallCheck(this, RawPureToolbar);
|
|
173
177
|
|
|
174
|
-
return
|
|
178
|
+
return _super2.apply(this, arguments);
|
|
175
179
|
}
|
|
176
180
|
|
|
177
181
|
_createClass(RawPureToolbar, [{
|
|
@@ -195,9 +199,9 @@ function (_React$Component2) {
|
|
|
195
199
|
onBlur = _this$props2.onBlur,
|
|
196
200
|
hideDoneButton = _this$props2.hideDoneButton,
|
|
197
201
|
classes = _this$props2.classes;
|
|
198
|
-
return _react["default"].createElement("div", {
|
|
202
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
199
203
|
className: (0, _classnames["default"])(classes.pureToolbar, (classNames || {}).toolbar)
|
|
200
|
-
}, _react["default"].createElement("div", null), _react["default"].createElement(_editorAndPad["default"], {
|
|
204
|
+
}, /*#__PURE__*/_react["default"].createElement("div", null), /*#__PURE__*/_react["default"].createElement(_editorAndPad["default"], {
|
|
201
205
|
autoFocus: autoFocus,
|
|
202
206
|
keypadMode: keypadMode,
|
|
203
207
|
classNames: classNames || {},
|
|
@@ -212,7 +216,7 @@ function (_React$Component2) {
|
|
|
212
216
|
onChange: onChange,
|
|
213
217
|
onFocus: onFocus,
|
|
214
218
|
onBlur: onBlur
|
|
215
|
-
}), (!controlledKeypad || controlledKeypad && showKeypad) && !hideDoneButton && _react["default"].createElement(_doneButton.DoneButton, {
|
|
219
|
+
}), (!controlledKeypad || controlledKeypad && showKeypad) && !hideDoneButton && /*#__PURE__*/_react["default"].createElement(_doneButton.DoneButton, {
|
|
216
220
|
onClick: onDone
|
|
217
221
|
}));
|
|
218
222
|
}
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.jsx"],"names":["MathToolbar","props","onDone","state","latex","setState","onChange","nextProps","classNames","autoFocus","allowAnswerBlock","onAnswerBlockAdd","controlledKeypad","controlledKeypadMode","keypadMode","noDecimal","additionalKeys","showKeypad","onFocus","onBlur","hideDoneButton","done","React","Component","PropTypes","bool","oneOfType","string","number","object","array","isRequired","func","RawPureToolbar","classes","pureToolbar","toolbar","styles","display","width","zIndex","alignItems","PureToolbar"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport EditorAndPad from './editor-and-pad';\nimport { DoneButton } from './done-button';\nimport { withStyles } from '@material-ui/core/styles';\nimport MathPreview from './math-preview';\n\nexport { MathPreview };\n\nexport class MathToolbar extends React.Component {\n static propTypes = {\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n classNames: PropTypes.object,\n showKeypad: PropTypes.bool,\n noDecimal: PropTypes.bool,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onChange: PropTypes.func,\n onDone: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n hideDoneButton: PropTypes.bool\n };\n\n static defaultProps = {\n classNames: {},\n keypadMode: 'item-authoring',\n autoFocus: false,\n allowAnswerBlock: false,\n controlledKeypad: false,\n controlledKeypadMode: false,\n noDecimal: false,\n showKeypad: true,\n additionalKeys: [],\n onChange: () => {},\n onAnswerBlockAdd: () => {},\n onFocus: () => {},\n hideDoneButton: false\n };\n\n constructor(props) {\n super(props);\n this.state = {\n latex: props.latex\n };\n }\n\n done = () => {\n this.props.onDone(this.state.latex);\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({ latex: nextProps.latex });\n }\n\n onChange = latex => {\n this.setState({ latex });\n this.props.onChange(latex);\n };\n\n render() {\n const { latex } = this.state;\n const {\n classNames,\n autoFocus,\n allowAnswerBlock,\n onAnswerBlockAdd,\n controlledKeypad,\n controlledKeypadMode,\n keypadMode,\n noDecimal,\n additionalKeys,\n showKeypad,\n onFocus,\n onBlur,\n hideDoneButton\n } = this.props;\n\n return (\n <PureToolbar\n autoFocus={autoFocus}\n classNames={classNames}\n onAnswerBlockAdd={onAnswerBlockAdd}\n allowAnswerBlock={allowAnswerBlock}\n latex={latex}\n additionalKeys={additionalKeys}\n noDecimal={noDecimal}\n keypadMode={keypadMode}\n onChange={this.onChange}\n onDone={this.done}\n onFocus={onFocus}\n onBlur={onBlur}\n showKeypad={showKeypad}\n controlledKeypad={controlledKeypad}\n controlledKeypadMode={controlledKeypadMode}\n hideDoneButton={hideDoneButton}\n />\n );\n }\n}\n\nexport class RawPureToolbar extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n latex: PropTypes.string.isRequired,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onChange: PropTypes.func.isRequired,\n onDone: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onAnswerBlockAdd: PropTypes.func,\n additionalKeys: PropTypes.array,\n onFocus: PropTypes.func,\n classes: PropTypes.object.isRequired,\n autoFocus: PropTypes.bool,\n noDecimal: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n showKeypad: PropTypes.bool,\n hideDoneButton: PropTypes.bool\n };\n\n render() {\n const {\n classNames,\n autoFocus,\n allowAnswerBlock,\n onAnswerBlockAdd,\n controlledKeypad,\n controlledKeypadMode,\n additionalKeys,\n showKeypad,\n keypadMode,\n noDecimal,\n latex,\n onChange,\n onDone,\n onFocus,\n onBlur,\n hideDoneButton,\n classes\n } = this.props;\n\n return (\n <div className={cx(classes.pureToolbar, (classNames || {}).toolbar)}>\n <div />\n <EditorAndPad\n autoFocus={autoFocus}\n keypadMode={keypadMode}\n classNames={classNames || {}}\n controlledKeypad={controlledKeypad}\n controlledKeypadMode={controlledKeypadMode}\n noDecimal={noDecimal}\n showKeypad={showKeypad}\n additionalKeys={additionalKeys}\n allowAnswerBlock={allowAnswerBlock}\n onAnswerBlockAdd={onAnswerBlockAdd}\n latex={latex}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n {(!controlledKeypad || (controlledKeypad && showKeypad)) && !hideDoneButton && (\n <DoneButton onClick={onDone} />\n )}\n </div>\n );\n }\n}\nconst styles = () => ({\n pureToolbar: {\n display: 'flex',\n width: '100%',\n zIndex: 8,\n alignItems: 'center'\n }\n});\n\nexport const PureToolbar = withStyles(styles)(RawPureToolbar);\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../src/index.jsx"],"names":["MathToolbar","props","onDone","state","latex","setState","onChange","nextProps","classNames","autoFocus","allowAnswerBlock","onAnswerBlockAdd","controlledKeypad","controlledKeypadMode","keypadMode","noDecimal","additionalKeys","showKeypad","onFocus","onBlur","hideDoneButton","done","React","Component","PropTypes","bool","oneOfType","string","number","object","array","isRequired","func","RawPureToolbar","classes","pureToolbar","toolbar","styles","display","width","zIndex","alignItems","PureToolbar"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;IAIaA,W;;;;;AAoCX,uBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACjB,8BAAMA,KAAN;;AADiB,2DAOZ,YAAM;AACX,YAAKA,KAAL,CAAWC,MAAX,CAAkB,MAAKC,KAAL,CAAWC,KAA7B;AACD,KATkB;;AAAA,+DAeR,UAAAA,KAAK,EAAI;AAClB,YAAKC,QAAL,CAAc;AAAED,QAAAA,KAAK,EAALA;AAAF,OAAd;;AACA,YAAKH,KAAL,CAAWK,QAAX,CAAoBF,KAApB;AACD,KAlBkB;;AAEjB,UAAKD,KAAL,GAAa;AACXC,MAAAA,KAAK,EAAEH,KAAK,CAACG;AADF,KAAb;AAFiB;AAKlB;;;;WAMD,0CAAiCG,SAAjC,EAA4C;AAC1C,WAAKF,QAAL,CAAc;AAAED,QAAAA,KAAK,EAAEG,SAAS,CAACH;AAAnB,OAAd;AACD;;;WAOD,kBAAS;AACP,UAAQA,KAAR,GAAkB,KAAKD,KAAvB,CAAQC,KAAR;AACA,wBAcI,KAAKH,KAdT;AAAA,UACEO,UADF,eACEA,UADF;AAAA,UAEEC,SAFF,eAEEA,SAFF;AAAA,UAGEC,gBAHF,eAGEA,gBAHF;AAAA,UAIEC,gBAJF,eAIEA,gBAJF;AAAA,UAKEC,gBALF,eAKEA,gBALF;AAAA,UAMEC,oBANF,eAMEA,oBANF;AAAA,UAOEC,UAPF,eAOEA,UAPF;AAAA,UAQEC,SARF,eAQEA,SARF;AAAA,UASEC,cATF,eASEA,cATF;AAAA,UAUEC,UAVF,eAUEA,UAVF;AAAA,UAWEC,OAXF,eAWEA,OAXF;AAAA,UAYEC,MAZF,eAYEA,MAZF;AAAA,UAaEC,cAbF,eAaEA,cAbF;AAgBA,0BACE,gCAAC,WAAD;AACE,QAAA,SAAS,EAAEX,SADb;AAEE,QAAA,UAAU,EAAED,UAFd;AAGE,QAAA,gBAAgB,EAAEG,gBAHpB;AAIE,QAAA,gBAAgB,EAAED,gBAJpB;AAKE,QAAA,KAAK,EAAEN,KALT;AAME,QAAA,cAAc,EAAEY,cANlB;AAOE,QAAA,SAAS,EAAED,SAPb;AAQE,QAAA,UAAU,EAAED,UARd;AASE,QAAA,QAAQ,EAAE,KAAKR,QATjB;AAUE,QAAA,MAAM,EAAE,KAAKe,IAVf;AAWE,QAAA,OAAO,EAAEH,OAXX;AAYE,QAAA,MAAM,EAAEC,MAZV;AAaE,QAAA,UAAU,EAAEF,UAbd;AAcE,QAAA,gBAAgB,EAAEL,gBAdpB;AAeE,QAAA,oBAAoB,EAAEC,oBAfxB;AAgBE,QAAA,cAAc,EAAEO;AAhBlB,QADF;AAoBD;;;;EA9F8BE,kBAAMC,S;;;;gBAA1BvB,W,eACQ;AACjBS,EAAAA,SAAS,EAAEe,sBAAUC,IADJ;AAEjBf,EAAAA,gBAAgB,EAAEc,sBAAUC,IAFX;AAGjBb,EAAAA,gBAAgB,EAAEY,sBAAUC,IAHX;AAIjBZ,EAAAA,oBAAoB,EAAEW,sBAAUC,IAJf;AAKjBX,EAAAA,UAAU,EAAEU,sBAAUE,SAAV,CAAoB,CAACF,sBAAUG,MAAX,EAAmBH,sBAAUI,MAA7B,CAApB,CALK;AAMjBpB,EAAAA,UAAU,EAAEgB,sBAAUK,MANL;AAOjBZ,EAAAA,UAAU,EAAEO,sBAAUC,IAPL;AAQjBV,EAAAA,SAAS,EAAES,sBAAUC,IARJ;AASjBT,EAAAA,cAAc,EAAEQ,sBAAUM,KATT;AAUjB1B,EAAAA,KAAK,EAAEoB,sBAAUG,MAAV,CAAiBI,UAVP;AAWjBpB,EAAAA,gBAAgB,EAAEa,sBAAUQ,IAXX;AAYjB1B,EAAAA,QAAQ,EAAEkB,sBAAUQ,IAZH;AAajB9B,EAAAA,MAAM,EAAEsB,sBAAUQ,IAAV,CAAeD,UAbN;AAcjBb,EAAAA,OAAO,EAAEM,sBAAUQ,IAdF;AAejBb,EAAAA,MAAM,EAAEK,sBAAUQ,IAfD;AAgBjBZ,EAAAA,cAAc,EAAEI,sBAAUC;AAhBT,C;;gBADRzB,W,kBAoBW;AACpBQ,EAAAA,UAAU,EAAE,EADQ;AAEpBM,EAAAA,UAAU,EAAE,gBAFQ;AAGpBL,EAAAA,SAAS,EAAE,KAHS;AAIpBC,EAAAA,gBAAgB,EAAE,KAJE;AAKpBE,EAAAA,gBAAgB,EAAE,KALE;AAMpBC,EAAAA,oBAAoB,EAAE,KANF;AAOpBE,EAAAA,SAAS,EAAE,KAPS;AAQpBE,EAAAA,UAAU,EAAE,IARQ;AASpBD,EAAAA,cAAc,EAAE,EATI;AAUpBV,EAAAA,QAAQ,EAAE,oBAAM,CAAE,CAVE;AAWpBK,EAAAA,gBAAgB,EAAE,4BAAM,CAAE,CAXN;AAYpBO,EAAAA,OAAO,EAAE,mBAAM,CAAE,CAZG;AAapBE,EAAAA,cAAc,EAAE;AAbI,C;;IA6EXa,c;;;;;;;;;;;;;WAqBX,kBAAS;AACP,yBAkBI,KAAKhC,KAlBT;AAAA,UACEO,UADF,gBACEA,UADF;AAAA,UAEEC,SAFF,gBAEEA,SAFF;AAAA,UAGEC,gBAHF,gBAGEA,gBAHF;AAAA,UAIEC,gBAJF,gBAIEA,gBAJF;AAAA,UAKEC,gBALF,gBAKEA,gBALF;AAAA,UAMEC,oBANF,gBAMEA,oBANF;AAAA,UAOEG,cAPF,gBAOEA,cAPF;AAAA,UAQEC,UARF,gBAQEA,UARF;AAAA,UASEH,UATF,gBASEA,UATF;AAAA,UAUEC,SAVF,gBAUEA,SAVF;AAAA,UAWEX,KAXF,gBAWEA,KAXF;AAAA,UAYEE,QAZF,gBAYEA,QAZF;AAAA,UAaEJ,MAbF,gBAaEA,MAbF;AAAA,UAcEgB,OAdF,gBAcEA,OAdF;AAAA,UAeEC,MAfF,gBAeEA,MAfF;AAAA,UAgBEC,cAhBF,gBAgBEA,cAhBF;AAAA,UAiBEc,OAjBF,gBAiBEA,OAjBF;AAoBA,0BACE;AAAK,QAAA,SAAS,EAAE,4BAAGA,OAAO,CAACC,WAAX,EAAwB,CAAC3B,UAAU,IAAI,EAAf,EAAmB4B,OAA3C;AAAhB,sBACE,4CADF,eAEE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAE3B,SADb;AAEE,QAAA,UAAU,EAAEK,UAFd;AAGE,QAAA,UAAU,EAAEN,UAAU,IAAI,EAH5B;AAIE,QAAA,gBAAgB,EAAEI,gBAJpB;AAKE,QAAA,oBAAoB,EAAEC,oBALxB;AAME,QAAA,SAAS,EAAEE,SANb;AAOE,QAAA,UAAU,EAAEE,UAPd;AAQE,QAAA,cAAc,EAAED,cARlB;AASE,QAAA,gBAAgB,EAAEN,gBATpB;AAUE,QAAA,gBAAgB,EAAEC,gBAVpB;AAWE,QAAA,KAAK,EAAEP,KAXT;AAYE,QAAA,QAAQ,EAAEE,QAZZ;AAaE,QAAA,OAAO,EAAEY,OAbX;AAcE,QAAA,MAAM,EAAEC;AAdV,QAFF,EAkBG,CAAC,CAACP,gBAAD,IAAsBA,gBAAgB,IAAIK,UAA3C,KAA2D,CAACG,cAA5D,iBACC,gCAAC,sBAAD;AAAY,QAAA,OAAO,EAAElB;AAArB,QAnBJ,CADF;AAwBD;;;;EAlEiCoB,kBAAMC,S;;;;gBAA7BU,c,eACQ;AACjBzB,EAAAA,UAAU,EAAEgB,sBAAUK,MADL;AAEjBzB,EAAAA,KAAK,EAAEoB,sBAAUG,MAAV,CAAiBI,UAFP;AAGjBjB,EAAAA,UAAU,EAAEU,sBAAUE,SAAV,CAAoB,CAACF,sBAAUG,MAAX,EAAmBH,sBAAUI,MAA7B,CAApB,CAHK;AAIjBtB,EAAAA,QAAQ,EAAEkB,sBAAUQ,IAAV,CAAeD,UAJR;AAKjB7B,EAAAA,MAAM,EAAEsB,sBAAUQ,IAAV,CAAeD,UALN;AAMjBZ,EAAAA,MAAM,EAAEK,sBAAUQ,IAND;AAOjBrB,EAAAA,gBAAgB,EAAEa,sBAAUQ,IAPX;AAQjBhB,EAAAA,cAAc,EAAEQ,sBAAUM,KART;AASjBZ,EAAAA,OAAO,EAAEM,sBAAUQ,IATF;AAUjBE,EAAAA,OAAO,EAAEV,sBAAUK,MAAV,CAAiBE,UAVT;AAWjBtB,EAAAA,SAAS,EAAEe,sBAAUC,IAXJ;AAYjBV,EAAAA,SAAS,EAAES,sBAAUC,IAZJ;AAajBf,EAAAA,gBAAgB,EAAEc,sBAAUC,IAbX;AAcjBb,EAAAA,gBAAgB,EAAEY,sBAAUC,IAdX;AAejBZ,EAAAA,oBAAoB,EAAEW,sBAAUC,IAff;AAgBjBR,EAAAA,UAAU,EAAEO,sBAAUC,IAhBL;AAiBjBL,EAAAA,cAAc,EAAEI,sBAAUC;AAjBT,C;;AAmErB,IAAMY,MAAM,GAAG,SAATA,MAAS;AAAA,SAAO;AACpBF,IAAAA,WAAW,EAAE;AACXG,MAAAA,OAAO,EAAE,MADE;AAEXC,MAAAA,KAAK,EAAE,MAFI;AAGXC,MAAAA,MAAM,EAAE,CAHG;AAIXC,MAAAA,UAAU,EAAE;AAJD;AADO,GAAP;AAAA,CAAf;;AASO,IAAMC,WAAW,GAAG,wBAAWL,MAAX,EAAmBJ,cAAnB,CAApB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport EditorAndPad from './editor-and-pad';\nimport { DoneButton } from './done-button';\nimport { withStyles } from '@material-ui/core/styles';\nimport MathPreview from './math-preview';\n\nexport { MathPreview };\n\nexport class MathToolbar extends React.Component {\n static propTypes = {\n autoFocus: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n classNames: PropTypes.object,\n showKeypad: PropTypes.bool,\n noDecimal: PropTypes.bool,\n additionalKeys: PropTypes.array,\n latex: PropTypes.string.isRequired,\n onAnswerBlockAdd: PropTypes.func,\n onChange: PropTypes.func,\n onDone: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n hideDoneButton: PropTypes.bool\n };\n\n static defaultProps = {\n classNames: {},\n keypadMode: 'item-authoring',\n autoFocus: false,\n allowAnswerBlock: false,\n controlledKeypad: false,\n controlledKeypadMode: false,\n noDecimal: false,\n showKeypad: true,\n additionalKeys: [],\n onChange: () => {},\n onAnswerBlockAdd: () => {},\n onFocus: () => {},\n hideDoneButton: false\n };\n\n constructor(props) {\n super(props);\n this.state = {\n latex: props.latex\n };\n }\n\n done = () => {\n this.props.onDone(this.state.latex);\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.setState({ latex: nextProps.latex });\n }\n\n onChange = latex => {\n this.setState({ latex });\n this.props.onChange(latex);\n };\n\n render() {\n const { latex } = this.state;\n const {\n classNames,\n autoFocus,\n allowAnswerBlock,\n onAnswerBlockAdd,\n controlledKeypad,\n controlledKeypadMode,\n keypadMode,\n noDecimal,\n additionalKeys,\n showKeypad,\n onFocus,\n onBlur,\n hideDoneButton\n } = this.props;\n\n return (\n <PureToolbar\n autoFocus={autoFocus}\n classNames={classNames}\n onAnswerBlockAdd={onAnswerBlockAdd}\n allowAnswerBlock={allowAnswerBlock}\n latex={latex}\n additionalKeys={additionalKeys}\n noDecimal={noDecimal}\n keypadMode={keypadMode}\n onChange={this.onChange}\n onDone={this.done}\n onFocus={onFocus}\n onBlur={onBlur}\n showKeypad={showKeypad}\n controlledKeypad={controlledKeypad}\n controlledKeypadMode={controlledKeypadMode}\n hideDoneButton={hideDoneButton}\n />\n );\n }\n}\n\nexport class RawPureToolbar extends React.Component {\n static propTypes = {\n classNames: PropTypes.object,\n latex: PropTypes.string.isRequired,\n keypadMode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onChange: PropTypes.func.isRequired,\n onDone: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onAnswerBlockAdd: PropTypes.func,\n additionalKeys: PropTypes.array,\n onFocus: PropTypes.func,\n classes: PropTypes.object.isRequired,\n autoFocus: PropTypes.bool,\n noDecimal: PropTypes.bool,\n allowAnswerBlock: PropTypes.bool,\n controlledKeypad: PropTypes.bool,\n controlledKeypadMode: PropTypes.bool,\n showKeypad: PropTypes.bool,\n hideDoneButton: PropTypes.bool\n };\n\n render() {\n const {\n classNames,\n autoFocus,\n allowAnswerBlock,\n onAnswerBlockAdd,\n controlledKeypad,\n controlledKeypadMode,\n additionalKeys,\n showKeypad,\n keypadMode,\n noDecimal,\n latex,\n onChange,\n onDone,\n onFocus,\n onBlur,\n hideDoneButton,\n classes\n } = this.props;\n\n return (\n <div className={cx(classes.pureToolbar, (classNames || {}).toolbar)}>\n <div />\n <EditorAndPad\n autoFocus={autoFocus}\n keypadMode={keypadMode}\n classNames={classNames || {}}\n controlledKeypad={controlledKeypad}\n controlledKeypadMode={controlledKeypadMode}\n noDecimal={noDecimal}\n showKeypad={showKeypad}\n additionalKeys={additionalKeys}\n allowAnswerBlock={allowAnswerBlock}\n onAnswerBlockAdd={onAnswerBlockAdd}\n latex={latex}\n onChange={onChange}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n {(!controlledKeypad || (controlledKeypad && showKeypad)) && !hideDoneButton && (\n <DoneButton onClick={onDone} />\n )}\n </div>\n );\n }\n}\nconst styles = () => ({\n pureToolbar: {\n display: 'flex',\n width: '100%',\n zIndex: 8,\n alignItems: 'center'\n }\n});\n\nexport const PureToolbar = withStyles(styles)(RawPureToolbar);\n"],"file":"index.js"}
|
package/lib/math-preview.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
@@ -19,37 +21,39 @@ var _mathInput = require("@pie-lib/math-input");
|
|
|
19
21
|
|
|
20
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
23
|
|
|
22
|
-
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
23
|
-
|
|
24
24
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
25
25
|
|
|
26
26
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
27
27
|
|
|
28
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
28
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
29
29
|
|
|
30
|
-
function
|
|
30
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
31
31
|
|
|
32
|
-
function
|
|
32
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
33
33
|
|
|
34
|
-
function
|
|
34
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
35
35
|
|
|
36
|
-
function
|
|
36
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
37
37
|
|
|
38
|
-
function
|
|
38
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
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
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
39
43
|
|
|
40
44
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
41
45
|
|
|
42
46
|
var log = (0, _debug["default"])('@pie-lib:math-toolbar:math-preview');
|
|
43
47
|
|
|
44
|
-
var RawMathPreview =
|
|
45
|
-
/*#__PURE__*/
|
|
46
|
-
function (_React$Component) {
|
|
48
|
+
var RawMathPreview = /*#__PURE__*/function (_React$Component) {
|
|
47
49
|
_inherits(RawMathPreview, _React$Component);
|
|
48
50
|
|
|
51
|
+
var _super = _createSuper(RawMathPreview);
|
|
52
|
+
|
|
49
53
|
function RawMathPreview() {
|
|
50
54
|
_classCallCheck(this, RawMathPreview);
|
|
51
55
|
|
|
52
|
-
return
|
|
56
|
+
return _super.apply(this, arguments);
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
_createClass(RawMathPreview, [{
|
|
@@ -62,11 +66,11 @@ function (_React$Component) {
|
|
|
62
66
|
isSelected = _this$props.isSelected,
|
|
63
67
|
onFocus = _this$props.onFocus,
|
|
64
68
|
onBlur = _this$props.onBlur;
|
|
65
|
-
return _react["default"].createElement("div", {
|
|
69
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
66
70
|
className: (0, _classnames["default"])(classes.root, isSelected && classes.selected)
|
|
67
|
-
}, ' ', _react["default"].createElement("span", {
|
|
71
|
+
}, ' ', /*#__PURE__*/_react["default"].createElement("span", {
|
|
68
72
|
className: classes.insideOverlay
|
|
69
|
-
}), _react["default"].createElement(_mathInput.mq.Static, {
|
|
73
|
+
}), /*#__PURE__*/_react["default"].createElement(_mathInput.mq.Static, {
|
|
70
74
|
latex: latex,
|
|
71
75
|
onFocus: onFocus,
|
|
72
76
|
onBlur: onBlur
|
package/lib/math-preview.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/math-preview.jsx"],"names":["log","RawMathPreview","props","node","data","latex","get","classes","isSelected","onFocus","onBlur","root","selected","insideOverlay","React","Component","PropTypes","string","object","bool","func","mp","theme","display","alignItems","position","border","outline","boxShadow","borderRadius","fontFamily","paddingTop","minWidth","lineHeight","top","left","right","borderTop","palette","primary","main","bottom"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/math-preview.jsx"],"names":["log","RawMathPreview","props","node","data","latex","get","classes","isSelected","onFocus","onBlur","root","selected","insideOverlay","React","Component","PropTypes","string","object","bool","func","mp","theme","display","alignItems","position","border","outline","boxShadow","borderRadius","fontFamily","paddingTop","minWidth","lineHeight","top","left","right","borderTop","palette","primary","main","bottom"],"mappings":"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","sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport debug from 'debug';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { mq } from '@pie-lib/math-input';\n\nconst log = debug('@pie-lib:math-toolbar:math-preview');\n\nexport class RawMathPreview extends React.Component {\n static propTypes = {\n latex: PropTypes.string,\n node: PropTypes.object,\n classes: PropTypes.object,\n isSelected: PropTypes.bool,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func\n };\n\n render() {\n log('[render] data: ', this.props.node.data);\n const latex = this.props.node.data.get('latex');\n const { classes, isSelected, onFocus, onBlur } = this.props;\n return (\n <div className={classNames(classes.root, isSelected && classes.selected)}>\n {' '}\n <span className={classes.insideOverlay} />\n <mq.Static latex={latex} onFocus={onFocus} onBlur={onBlur} />\n </div>\n );\n }\n}\n\nconst mp = theme => ({\n root: {\n display: 'inline-flex',\n alignItems: 'center',\n position: 'relative',\n '& > .mq-math-mode': {\n border: 'solid 1px lightgrey'\n },\n '& > .mq-focused': {\n outline: 'none',\n boxShadow: 'none',\n border: 'solid 1px black',\n borderRadius: '0px'\n },\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important'\n },\n '& .mq-overarrow-inner': {\n paddingTop: '0 !important',\n border: 'none !important'\n },\n '& .mq-overarrow.mq-arrow-both': {\n minWidth: '1.23em',\n '& *': {\n lineHeight: '1 !important'\n },\n '&:before': {\n top: '-0.4em',\n left: '-1px'\n },\n '&:after': {\n top: '-2.36em',\n right: '-1px'\n },\n '&.mq-empty:after': {\n top: '-0.45em'\n }\n },\n '& .mq-overarrow.mq-arrow-right': {\n '&:before': {\n top: '-0.4em',\n right: '-1px'\n }\n },\n '& .mq-overarrow-inner-right': {\n display: 'none !important'\n },\n '& .mq-overarrow-inner-left': {\n display: 'none !important'\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important'\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85\n }\n },\n selected: {\n border: `solid 1px ${theme.palette.primary.main}`,\n '& > .mq-math-mode': {\n border: 'solid 0px lightgrey'\n }\n },\n insideOverlay: {\n position: 'absolute',\n bottom: 0,\n left: 0,\n right: 0,\n top: 0\n }\n});\n\nexport default withStyles(mp)(RawMathPreview);\n"],"file":"math-preview.js"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "1.8.
|
|
6
|
+
"version": "1.8.9",
|
|
7
7
|
"description": "Math toolbar for editing math equations",
|
|
8
8
|
"keywords": [
|
|
9
9
|
"math",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@material-ui/core": "^3.8.3",
|
|
21
21
|
"@material-ui/icons": "^3.0.2",
|
|
22
|
-
"@pie-lib/math-input": "^6.6.
|
|
22
|
+
"@pie-lib/math-input": "^6.6.9",
|
|
23
23
|
"classnames": "^2.2.6",
|
|
24
24
|
"debug": "^4.1.1",
|
|
25
25
|
"keycode": "^2.2.0"
|
|
@@ -32,5 +32,5 @@
|
|
|
32
32
|
"@pie-lib/test-utils": "^0.2.19"
|
|
33
33
|
},
|
|
34
34
|
"scripts": {},
|
|
35
|
-
"gitHead": "
|
|
35
|
+
"gitHead": "c37429328de4f87b6a7095de6e671c2cc53dd7f5"
|
|
36
36
|
}
|