@pie-lib/math-input 7.1.0-next.4 → 7.1.1-next.1
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/lib/index.js.map +1 -1
- package/lib/keypad/index.js +2 -3
- package/lib/keypad/index.js.map +1 -1
- package/lib/keypad/keys-layout.js +4 -6
- package/lib/keypad/keys-layout.js.map +1 -1
- package/lib/keys/digits.js +2 -3
- package/lib/keys/digits.js.map +1 -1
- package/lib/keys/index.js.map +1 -1
- package/lib/keys/utils.js +8 -8
- package/lib/keys/utils.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/horizontal-keypad.test.jsx +463 -0
- package/src/__tests__/index.test.js +242 -0
- package/src/__tests__/updateSpans.test.js +297 -0
- package/src/index.jsx +5 -6
- package/src/keypad/__tests__/keys-layout.test.js +0 -1
- package/src/keypad/index.jsx +3 -4
- package/src/keypad/keys-layout.js +4 -5
- package/src/keys/__tests__/utils.test.js +1 -1
- package/src/keys/digits.js +1 -1
- package/src/keys/index.js +5 -6
- package/src/keys/utils.js +6 -11
- package/src/mq/__tests__/custom-elements.test.js +342 -0
package/lib/index.js.map
CHANGED
|
@@ -1 +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\
|
|
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';\nimport * as keys from './keys';\n\nimport HorizontalKeypad from './horizontal-keypad';\n\nimport * as mq from './mq';\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\nexport { keysForGrade, addBrackets, removeBrackets, keys, HorizontalKeypad, mq, updateSpans };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,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;AAE3B,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":[]}
|
package/lib/keypad/index.js
CHANGED
|
@@ -20,8 +20,7 @@ var _Button = _interopRequireDefault(require("@mui/material/Button"));
|
|
|
20
20
|
var _IconButton = _interopRequireDefault(require("@mui/material/IconButton"));
|
|
21
21
|
var _styles = require("@mui/material/styles");
|
|
22
22
|
var _debug = _interopRequireDefault(require("debug"));
|
|
23
|
-
var
|
|
24
|
-
var _mathquill = _interopRequireDefault(require("@pie-framework/mathquill"));
|
|
23
|
+
var _lodashEs = require("lodash-es");
|
|
25
24
|
var mq = _interopRequireWildcard(require("../mq"));
|
|
26
25
|
var _keys = require("../keys");
|
|
27
26
|
var _commonMqStyles = require("../mq/common-mq-styles");
|
|
@@ -283,7 +282,7 @@ var KeyPad = exports.KeyPad = /*#__PURE__*/function (_React$Component) {
|
|
|
283
282
|
});
|
|
284
283
|
(0, _defineProperty2["default"])(_this, "flowKeys", function (base, extras) {
|
|
285
284
|
var transposed = [].concat((0, _toConsumableArray2["default"])((0, _keysLayout.sortKeys)(base)), (0, _toConsumableArray2["default"])((0, _keysLayout.sortKeys)(extras)));
|
|
286
|
-
return
|
|
285
|
+
return (0, _lodashEs.flatten)(transposed);
|
|
287
286
|
});
|
|
288
287
|
(0, _defineProperty2["default"])(_this, "keyIsNotAllowed", function (key) {
|
|
289
288
|
var noDecimal = _this.props.noDecimal;
|
package/lib/keypad/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_Button","_IconButton","_styles","_debug","_lodash","_mathquill","mq","_interopRequireWildcard","_keys","_commonMqStyles","_keysLayout","_colors","_renderUi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","log","debug","StyledLatexButton","styled","Button","textTransform","padding","margin","fontSize","LatexButtonContent","Static","_ref","latex","baseStyles","pointerEvents","color","text","transform","marginBottom","backgroundColor","concat","alpha","pink","borderTop","width","marginTop","fontFamily","top","lineHeight","left","right","minHeight","border","display","paddingTop","fontStyle","position","propTypes","PropTypes","string","isRequired","createCustomLayout","layoutObj","gridTemplateColumns","columns","gridTemplateRows","rows","gridAutoFlow","KeyPadContainer","commonMqKeyboardStyles","gridRowGap","gridColumnGap","StyledButton","_ref2","category","isDelete","isComma","isDot","minWidth","lighten","indigo","borderRadius","StyledLatexButtonWrapper","_ref3","StyledIconButton","IconButton","_ref4","height","KeyPad","exports","_React$Component","props","_this","_classCallCheck2","setKeypadInteraction","key","onPress","base","extras","transposed","_toConsumableArray2","sortKeys","_","flatten","noDecimal","write","label","keypadRef","React","createRef","_inherits2","_createClass2","value","componentDidMount","_this$keypadRef","keyPadElement","current","mainContainer","closest","currentToolbar","controlledKeypadMode","mainContainerPosition","getBoundingClientRect","currentToolbarPosition","difference","totalHeight","style","addEventListener","handleKeypadInteraction","componentWillUnmount","_this$keypadRef2","removeEventListener","render","_this2","_this$props","className","baseSet","additionalKeys","layoutForKeyPad","onFocus","mode","noBaseSet","keysWithoutBaseSet","includes","allKeys","flowKeys","shift","Math","floor","createElement","ref","join","map","k","index","onClick","buttonClick","bind","common","disabled","keyIsNotAllowed","command","actions","extraProps","_extends2","undefined","ariaLabel","name","Icon","icon","tabIndex","size","Component","bool","array","object","func","oneOfType","number","_default"],"sources":["../../src/keypad/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@mui/material/Button';\nimport IconButton from '@mui/material/IconButton';\nimport { lighten, alpha, styled } from '@mui/material/styles';\nimport debug from 'debug';\nimport _ from 'lodash';\nimport MathQuill from '@pie-framework/mathquill';\nimport * as mq from '../mq';\n\nimport { baseSet } from '../keys';\nimport { commonMqKeyboardStyles } from '../mq/common-mq-styles';\nimport { sortKeys } from './keys-layout';\nimport { indigo, pink } from '@mui/material/colors';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('pie-lib:math-inline:keypad');\n\nconst StyledLatexButton = styled(Button)(() => ({\n textTransform: 'none',\n padding: 0,\n margin: 0,\n fontSize: '110% !important',\n}));\n\nconst LatexButtonContent = styled(mq.Static)(({ latex }) => {\n const baseStyles = {\n pointerEvents: 'none',\n textTransform: 'none !important',\n color: color.text(),\n '& .mq-scaled.mq-sqrt-prefix': {\n transform: 'scale(1, 0.9) !important',\n },\n '& .mq-sup-only .mq-sup': {\n marginBottom: '0.9px !important',\n },\n '& .mq-empty': {\n backgroundColor: `${alpha(pink[300], 0.4)} !important`,\n },\n '& .mq-overline .mq-overline-inner': {\n borderTop: '2px solid black',\n },\n '& .mq-non-leaf.mq-overline': {\n borderTop: 'none !important',\n },\n '& .mq-overarrow': {\n width: '30px',\n marginTop: '0 !important',\n borderTop: '2px solid black',\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n '&.mq-arrow-both': {\n top: '0px !important',\n '& *': {\n lineHeight: '1 !important',\n borderTop: 'none !important',\n },\n '&:before': {\n fontSize: '80%',\n left: 'calc(-13%) !important',\n top: '-0.31em !important',\n },\n '&:after': {\n fontSize: '80% !important',\n right: 'calc(-13%) !important',\n top: '-1.5em',\n },\n '&.mq-empty:before': {\n fontSize: '80%',\n left: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty:after': {\n fontSize: '80%',\n right: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty': {\n minHeight: '1.4em',\n },\n },\n '&.mq-arrow-right:before': {\n fontSize: '80%',\n right: 'calc(-13%) !important',\n top: '-0.26em !important',\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n },\n '& .mq-overarrow-inner .mq-overarrow-inner-right': {\n display: 'none !important',\n },\n },\n '& .mq-root-block': {\n padding: '5px !important',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:after': {\n right: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-right.mq-empty:before': {\n right: '-5px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:before': {\n left: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important',\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85,\n },\n '& .mq-overarc': {\n borderTop: '2px solid black !important',\n '& .mq-overline': {\n borderTop: 'none !important',\n },\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n },\n };\n\n // Add specific styles based on latex content\n if (latex === '\\\\parallel') {\n return {\n ...baseStyles,\n fontStyle: 'italic !important',\n };\n }\n\n if (latex === '\\\\overleftrightarrow{\\\\overline{}}') {\n return {\n ...baseStyles,\n '& .mq-overarrow.mq-arrow-both': {\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n '&:after': {\n position: 'absolute !important',\n top: '0px !important',\n },\n },\n };\n }\n\n return baseStyles;\n});\n\nLatexButtonContent.propTypes = {\n latex: PropTypes.string.isRequired,\n};\n\n// LatexButton component removed - LatexButtonContent is used directly instead\n\nconst createCustomLayout = (layoutObj) => {\n if (layoutObj) {\n return {\n gridTemplateColumns: `repeat(${layoutObj.columns}, minmax(min-content, 150px))`,\n gridTemplateRows: `repeat(${layoutObj.rows}, minmax(40px, 60px))`,\n gridAutoFlow: 'initial',\n };\n }\n\n return {};\n};\n\nconst KeyPadContainer = styled('div')(() => ({\n ...commonMqKeyboardStyles,\n width: '100%',\n display: 'grid',\n gridTemplateRows: 'repeat(5, minmax(40px, 60px))',\n gridRowGap: '0px',\n gridColumnGap: '0px',\n gridAutoFlow: 'column',\n '&.character': {\n textTransform: 'initial !important',\n gridTemplateRows: 'repeat(5, minmax(40px, 50px)) !important',\n },\n '&.language': {\n gridTemplateRows: 'repeat(4, minmax(40px, 50px)) !important',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n },\n}));\n\nconst StyledButton = styled(Button)(({ category, isDelete, isComma, isDot }) => ({\n minWidth: 'auto',\n fontSize: isComma || isDot ? '200% !important' : '140% !important',\n lineHeight: isComma || isDot ? '100%' : 'normal',\n color: color.text(),\n\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // this code with green seems to not be applied to current implementation, so I commented it out, but left it here just in case\n // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n borderRadius: 0,\n ...(isDelete && {\n '& > span': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n }),\n}));\n\nconst StyledLatexButtonWrapper = styled(Button)(({ category }) => ({\n minWidth: 'auto',\n borderRadius: 0,\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n}));\n\nconst StyledIconButton = styled(IconButton)(({ category }) => ({\n minWidth: 'auto',\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n borderRadius: 0,\n '& .icon': {\n height: '30px',\n },\n}));\n\nexport class KeyPad extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n controlledKeypadMode: PropTypes.bool,\n baseSet: PropTypes.array,\n additionalKeys: PropTypes.array,\n layoutForKeyPad: PropTypes.object,\n onPress: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n noDecimal: PropTypes.bool,\n setKeypadInteraction: PropTypes.func,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n };\n static defaultProps = {\n baseSet: baseSet,\n noDecimal: false,\n };\n\n constructor(props) {\n super(props);\n this.keypadRef = React.createRef();\n }\n\n componentDidMount() {\n const keyPadElement = this.keypadRef?.current;\n const mainContainer = keyPadElement?.closest('.main-container');\n const currentToolbar = keyPadElement?.closest('.pie-toolbar');\n\n // need only for math keyboard so we need also controlledKeypadMode\n if (this.props.controlledKeypadMode && mainContainer && currentToolbar) {\n const mainContainerPosition = mainContainer.getBoundingClientRect();\n const currentToolbarPosition = currentToolbar.getBoundingClientRect();\n const difference =\n mainContainerPosition.top +\n mainContainerPosition.height -\n (currentToolbarPosition.top + currentToolbarPosition.height);\n if (difference < 0) {\n const totalHeight = mainContainerPosition.height + mainContainerPosition.top - difference;\n // increase the height of the main container if keyboard needs it\n if (mainContainer) {\n mainContainer.style.height = `${totalHeight}px`;\n }\n }\n }\n\n if (keyPadElement) {\n keyPadElement.addEventListener('touchstart', this.handleKeypadInteraction, true);\n keyPadElement.addEventListener('mousedown', this.handleKeypadInteraction, true);\n }\n }\n\n componentWillUnmount() {\n const keyPadElement = this.keypadRef?.current;\n // need only for math keyboard\n if (this.props.controlledKeypadMode && keyPadElement) {\n const mainContainer = keyPadElement.closest('.main-container');\n\n if (mainContainer) {\n mainContainer.style.height = 'unset';\n }\n }\n\n if (keyPadElement) {\n keyPadElement.removeEventListener('touchstart', this.handleKeypadInteraction, true);\n keyPadElement.removeEventListener('mousedown', this.handleKeypadInteraction, true);\n }\n }\n\n handleKeypadInteraction = () => {\n // Check if the setKeypadInteraction prop is available, which is used for both\n // the language keypad and the special characters keypad\n if (this.props.setKeypadInteraction) {\n this.props.setKeypadInteraction(true);\n }\n };\n\n buttonClick = (key) => {\n log('[buttonClick]', key);\n const { onPress } = this.props;\n\n onPress(key);\n };\n\n flowKeys = (base, extras) => {\n const transposed = [...sortKeys(base), ...sortKeys(extras)];\n return _.flatten(transposed);\n };\n\n keyIsNotAllowed = (key) => {\n const { noDecimal } = this.props;\n\n if (((key.write === '.' && key.label === '.') || (key.write === ',' && key.label === ',')) && noDecimal) {\n return true;\n }\n\n return false;\n };\n\n render() {\n const { className, baseSet, additionalKeys, layoutForKeyPad, onFocus, mode } = this.props;\n\n const noBaseSet = ['non-negative-integers', 'integers', 'decimals', 'fractions', 'item-authoring', 'language'];\n\n const keysWithoutBaseSet = noBaseSet.includes(mode);\n const allKeys = keysWithoutBaseSet\n ? this.flowKeys([], additionalKeys || [])\n : this.flowKeys(baseSet, additionalKeys || []);\n\n const shift = allKeys.length % 5 ? 1 : 0;\n const style = {\n gridTemplateColumns: `repeat(${Math.floor(allKeys.length / 5) + shift}, minmax(min-content, 150px))`,\n ...createCustomLayout(layoutForKeyPad),\n };\n\n return (\n <KeyPadContainer\n ref={this.keypadRef}\n className={[className, mode].filter(Boolean).join(' ')}\n style={style}\n onFocus={onFocus}\n >\n {allKeys.map((k, index) => {\n const onClick = this.buttonClick.bind(this, k);\n\n if (!k) {\n return <span key={`empty-${index}`} />;\n }\n\n const common = {\n onClick,\n disabled: this.keyIsNotAllowed(k),\n key: `${k.label || k.latex || k.command}-${index}`,\n ...(k.actions || {}),\n ...(k.extraProps || {}),\n };\n\n if (k.latex) {\n return (\n <StyledLatexButtonWrapper\n key={common.key}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n aria-label={k.ariaLabel ? k.ariaLabel : k.name || k.label}\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n <LatexButtonContent latex={k.latex} />\n </StyledLatexButtonWrapper>\n );\n }\n\n if (k.label) {\n return (\n <StyledButton\n key={common.key}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n isDelete={k.label === '⌫'}\n isComma={k.label === ','}\n isDot={k.label === '.'}\n aria-label={k.ariaLabel ? k.ariaLabel : k.name || k.label}\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n {k.label}\n </StyledButton>\n );\n } else {\n const Icon = k.icon ? k.icon : 'div';\n\n return (\n <StyledIconButton\n key={common.key}\n tabIndex={'-1'}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n size=\"large\"\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n <Icon className=\"icon\" />\n </StyledIconButton>\n );\n }\n })}\n </KeyPadContainer>\n );\n }\n}\n\nexport default KeyPad;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_propTypes","_Button","_IconButton","_styles","_debug","_lodashEs","mq","_interopRequireWildcard","_keys","_commonMqStyles","_keysLayout","_colors","_renderUi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","log","debug","StyledLatexButton","styled","Button","textTransform","padding","margin","fontSize","LatexButtonContent","Static","_ref","latex","baseStyles","pointerEvents","color","text","transform","marginBottom","backgroundColor","concat","alpha","pink","borderTop","width","marginTop","fontFamily","top","lineHeight","left","right","minHeight","border","display","paddingTop","fontStyle","position","propTypes","PropTypes","string","isRequired","createCustomLayout","layoutObj","gridTemplateColumns","columns","gridTemplateRows","rows","gridAutoFlow","KeyPadContainer","commonMqKeyboardStyles","gridRowGap","gridColumnGap","StyledButton","_ref2","category","isDelete","isComma","isDot","minWidth","lighten","indigo","borderRadius","StyledLatexButtonWrapper","_ref3","StyledIconButton","IconButton","_ref4","height","KeyPad","exports","_React$Component","props","_this","_classCallCheck2","setKeypadInteraction","key","onPress","base","extras","transposed","_toConsumableArray2","sortKeys","flatten","noDecimal","write","label","keypadRef","React","createRef","_inherits2","_createClass2","value","componentDidMount","_this$keypadRef","keyPadElement","current","mainContainer","closest","currentToolbar","controlledKeypadMode","mainContainerPosition","getBoundingClientRect","currentToolbarPosition","difference","totalHeight","style","addEventListener","handleKeypadInteraction","componentWillUnmount","_this$keypadRef2","removeEventListener","render","_this2","_this$props","className","baseSet","additionalKeys","layoutForKeyPad","onFocus","mode","noBaseSet","keysWithoutBaseSet","includes","allKeys","flowKeys","shift","Math","floor","createElement","ref","join","map","k","index","onClick","buttonClick","bind","common","disabled","keyIsNotAllowed","command","actions","extraProps","_extends2","undefined","ariaLabel","name","Icon","icon","tabIndex","size","Component","bool","array","object","func","oneOfType","number","_default"],"sources":["../../src/keypad/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@mui/material/Button';\nimport IconButton from '@mui/material/IconButton';\nimport { alpha, lighten, styled } from '@mui/material/styles';\nimport debug from 'debug';\nimport { flatten } from 'lodash-es';\nimport * as mq from '../mq';\n\nimport { baseSet } from '../keys';\nimport { commonMqKeyboardStyles } from '../mq/common-mq-styles';\nimport { sortKeys } from './keys-layout';\nimport { indigo, pink } from '@mui/material/colors';\nimport { color } from '@pie-lib/render-ui';\n\nconst log = debug('pie-lib:math-inline:keypad');\n\nconst StyledLatexButton = styled(Button)(() => ({\n textTransform: 'none',\n padding: 0,\n margin: 0,\n fontSize: '110% !important',\n}));\n\nconst LatexButtonContent = styled(mq.Static)(({ latex }) => {\n const baseStyles = {\n pointerEvents: 'none',\n textTransform: 'none !important',\n color: color.text(),\n '& .mq-scaled.mq-sqrt-prefix': {\n transform: 'scale(1, 0.9) !important',\n },\n '& .mq-sup-only .mq-sup': {\n marginBottom: '0.9px !important',\n },\n '& .mq-empty': {\n backgroundColor: `${alpha(pink[300], 0.4)} !important`,\n },\n '& .mq-overline .mq-overline-inner': {\n borderTop: '2px solid black',\n },\n '& .mq-non-leaf.mq-overline': {\n borderTop: 'none !important',\n },\n '& .mq-overarrow': {\n width: '30px',\n marginTop: '0 !important',\n borderTop: '2px solid black',\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n '&.mq-arrow-both': {\n top: '0px !important',\n '& *': {\n lineHeight: '1 !important',\n borderTop: 'none !important',\n },\n '&:before': {\n fontSize: '80%',\n left: 'calc(-13%) !important',\n top: '-0.31em !important',\n },\n '&:after': {\n fontSize: '80% !important',\n right: 'calc(-13%) !important',\n top: '-1.5em',\n },\n '&.mq-empty:before': {\n fontSize: '80%',\n left: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty:after': {\n fontSize: '80%',\n right: 'calc(-13%)',\n top: '-0.26em',\n },\n '&.mq-empty': {\n minHeight: '1.4em',\n },\n },\n '&.mq-arrow-right:before': {\n fontSize: '80%',\n right: 'calc(-13%) !important',\n top: '-0.26em !important',\n },\n '& .mq-overarrow-inner': {\n border: 'none !important',\n },\n '& .mq-overarrow-inner .mq-overarrow-inner-right': {\n display: 'none !important',\n },\n },\n '& .mq-root-block': {\n padding: '5px !important',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:after': {\n right: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-right.mq-empty:before': {\n right: '-5px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-overarrow.mq-arrow-both.mq-empty:before': {\n left: '-6px',\n fontSize: '80% !important',\n top: '-3px',\n },\n '& .mq-longdiv-inner': {\n borderTop: '1px solid !important',\n paddingTop: '1.5px !important',\n },\n '& .mq-parallelogram': {\n lineHeight: 0.85,\n },\n '& .mq-overarc': {\n borderTop: '2px solid black !important',\n '& .mq-overline': {\n borderTop: 'none !important',\n },\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n },\n };\n\n // Add specific styles based on latex content\n if (latex === '\\\\parallel') {\n return {\n ...baseStyles,\n fontStyle: 'italic !important',\n };\n }\n\n if (latex === '\\\\overleftrightarrow{\\\\overline{}}') {\n return {\n ...baseStyles,\n '& .mq-overarrow.mq-arrow-both': {\n '& .mq-overline-inner': {\n borderTop: 'none !important',\n paddingTop: '0 !important',\n },\n '&:after': {\n position: 'absolute !important',\n top: '0px !important',\n },\n },\n };\n }\n\n return baseStyles;\n});\n\nLatexButtonContent.propTypes = {\n latex: PropTypes.string.isRequired,\n};\n\n// LatexButton component removed - LatexButtonContent is used directly instead\n\nconst createCustomLayout = (layoutObj) => {\n if (layoutObj) {\n return {\n gridTemplateColumns: `repeat(${layoutObj.columns}, minmax(min-content, 150px))`,\n gridTemplateRows: `repeat(${layoutObj.rows}, minmax(40px, 60px))`,\n gridAutoFlow: 'initial',\n };\n }\n\n return {};\n};\n\nconst KeyPadContainer = styled('div')(() => ({\n ...commonMqKeyboardStyles,\n width: '100%',\n display: 'grid',\n gridTemplateRows: 'repeat(5, minmax(40px, 60px))',\n gridRowGap: '0px',\n gridColumnGap: '0px',\n gridAutoFlow: 'column',\n '&.character': {\n textTransform: 'initial !important',\n gridTemplateRows: 'repeat(5, minmax(40px, 50px)) !important',\n },\n '&.language': {\n gridTemplateRows: 'repeat(4, minmax(40px, 50px)) !important',\n '& *': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n },\n}));\n\nconst StyledButton = styled(Button)(({ category, isDelete, isComma, isDot }) => ({\n minWidth: 'auto',\n fontSize: isComma || isDot ? '200% !important' : '140% !important',\n lineHeight: isComma || isDot ? '100%' : 'normal',\n color: color.text(),\n\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // this code with green seems to not be applied to current implementation, so I commented it out, but left it here just in case\n // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n borderRadius: 0,\n ...(isDelete && {\n '& > span': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif !important',\n },\n }),\n}));\n\nconst StyledLatexButtonWrapper = styled(Button)(({ category }) => ({\n minWidth: 'auto',\n borderRadius: 0,\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n}));\n\nconst StyledIconButton = styled(IconButton)(({ category }) => ({\n minWidth: 'auto',\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.5)\n : // category === 'comparison' ? lighten(green[500], 0.5) :\n lighten(indigo[300], 0.5),\n '&:hover': {\n backgroundColor:\n category === 'operators'\n ? lighten(pink[300], 0.7)\n : // category === 'comparison' ? lighten(green[500], 0.7) :\n lighten(indigo[300], 0.7),\n },\n borderRadius: 0,\n '& .icon': {\n height: '30px',\n },\n}));\n\nexport class KeyPad extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n controlledKeypadMode: PropTypes.bool,\n baseSet: PropTypes.array,\n additionalKeys: PropTypes.array,\n layoutForKeyPad: PropTypes.object,\n onPress: PropTypes.func.isRequired,\n onFocus: PropTypes.func,\n noDecimal: PropTypes.bool,\n setKeypadInteraction: PropTypes.func,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n };\n static defaultProps = {\n baseSet: baseSet,\n noDecimal: false,\n };\n\n constructor(props) {\n super(props);\n this.keypadRef = React.createRef();\n }\n\n componentDidMount() {\n const keyPadElement = this.keypadRef?.current;\n const mainContainer = keyPadElement?.closest('.main-container');\n const currentToolbar = keyPadElement?.closest('.pie-toolbar');\n\n // need only for math keyboard so we need also controlledKeypadMode\n if (this.props.controlledKeypadMode && mainContainer && currentToolbar) {\n const mainContainerPosition = mainContainer.getBoundingClientRect();\n const currentToolbarPosition = currentToolbar.getBoundingClientRect();\n const difference =\n mainContainerPosition.top +\n mainContainerPosition.height -\n (currentToolbarPosition.top + currentToolbarPosition.height);\n if (difference < 0) {\n const totalHeight = mainContainerPosition.height + mainContainerPosition.top - difference;\n // increase the height of the main container if keyboard needs it\n if (mainContainer) {\n mainContainer.style.height = `${totalHeight}px`;\n }\n }\n }\n\n if (keyPadElement) {\n keyPadElement.addEventListener('touchstart', this.handleKeypadInteraction, true);\n keyPadElement.addEventListener('mousedown', this.handleKeypadInteraction, true);\n }\n }\n\n componentWillUnmount() {\n const keyPadElement = this.keypadRef?.current;\n // need only for math keyboard\n if (this.props.controlledKeypadMode && keyPadElement) {\n const mainContainer = keyPadElement.closest('.main-container');\n\n if (mainContainer) {\n mainContainer.style.height = 'unset';\n }\n }\n\n if (keyPadElement) {\n keyPadElement.removeEventListener('touchstart', this.handleKeypadInteraction, true);\n keyPadElement.removeEventListener('mousedown', this.handleKeypadInteraction, true);\n }\n }\n\n handleKeypadInteraction = () => {\n // Check if the setKeypadInteraction prop is available, which is used for both\n // the language keypad and the special characters keypad\n if (this.props.setKeypadInteraction) {\n this.props.setKeypadInteraction(true);\n }\n };\n\n buttonClick = (key) => {\n log('[buttonClick]', key);\n const { onPress } = this.props;\n\n onPress(key);\n };\n\n flowKeys = (base, extras) => {\n const transposed = [...sortKeys(base), ...sortKeys(extras)];\n return flatten(transposed);\n };\n\n keyIsNotAllowed = (key) => {\n const { noDecimal } = this.props;\n\n if (((key.write === '.' && key.label === '.') || (key.write === ',' && key.label === ',')) && noDecimal) {\n return true;\n }\n\n return false;\n };\n\n render() {\n const { className, baseSet, additionalKeys, layoutForKeyPad, onFocus, mode } = this.props;\n\n const noBaseSet = ['non-negative-integers', 'integers', 'decimals', 'fractions', 'item-authoring', 'language'];\n\n const keysWithoutBaseSet = noBaseSet.includes(mode);\n const allKeys = keysWithoutBaseSet\n ? this.flowKeys([], additionalKeys || [])\n : this.flowKeys(baseSet, additionalKeys || []);\n\n const shift = allKeys.length % 5 ? 1 : 0;\n const style = {\n gridTemplateColumns: `repeat(${Math.floor(allKeys.length / 5) + shift}, minmax(min-content, 150px))`,\n ...createCustomLayout(layoutForKeyPad),\n };\n\n return (\n <KeyPadContainer\n ref={this.keypadRef}\n className={[className, mode].filter(Boolean).join(' ')}\n style={style}\n onFocus={onFocus}\n >\n {allKeys.map((k, index) => {\n const onClick = this.buttonClick.bind(this, k);\n\n if (!k) {\n return <span key={`empty-${index}`} />;\n }\n\n const common = {\n onClick,\n disabled: this.keyIsNotAllowed(k),\n key: `${k.label || k.latex || k.command}-${index}`,\n ...(k.actions || {}),\n ...(k.extraProps || {}),\n };\n\n if (k.latex) {\n return (\n <StyledLatexButtonWrapper\n key={common.key}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n aria-label={k.ariaLabel ? k.ariaLabel : k.name || k.label}\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n <LatexButtonContent latex={k.latex} />\n </StyledLatexButtonWrapper>\n );\n }\n\n if (k.label) {\n return (\n <StyledButton\n key={common.key}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n isDelete={k.label === '⌫'}\n isComma={k.label === ','}\n isDot={k.label === '.'}\n aria-label={k.ariaLabel ? k.ariaLabel : k.name || k.label}\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n {k.label}\n </StyledButton>\n );\n } else {\n const Icon = k.icon ? k.icon : 'div';\n\n return (\n <StyledIconButton\n key={common.key}\n tabIndex={'-1'}\n onClick={common.onClick}\n disabled={common.disabled}\n category={!keysWithoutBaseSet ? k.category : undefined}\n size=\"large\"\n {...(k.actions || {})}\n {...(k.extraProps || {})}\n >\n <Icon className=\"icon\" />\n </StyledIconButton>\n );\n }\n })}\n </KeyPadContainer>\n );\n }\n}\n\nexport default KeyPad;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.sortKeys = void 0;
|
|
8
|
-
var
|
|
9
|
-
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); }
|
|
7
|
+
var _lodashEs = require("lodash-es");
|
|
10
8
|
/**
|
|
11
9
|
* Sort additional keys.
|
|
12
10
|
*
|
|
@@ -15,10 +13,10 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
15
13
|
*/
|
|
16
14
|
var sortKeys = exports.sortKeys = function sortKeys(keys) {
|
|
17
15
|
// add any missing rows
|
|
18
|
-
|
|
19
|
-
keys.push([]);
|
|
16
|
+
(0, _lodashEs.times)(5 - keys.length, function () {
|
|
17
|
+
return keys.push([]);
|
|
20
18
|
});
|
|
21
|
-
var out =
|
|
19
|
+
var out = _lodashEs.zip.apply(null, keys);
|
|
22
20
|
return out;
|
|
23
21
|
};
|
|
24
22
|
//# sourceMappingURL=keys-layout.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys-layout.js","names":["
|
|
1
|
+
{"version":3,"file":"keys-layout.js","names":["_lodashEs","require","sortKeys","exports","keys","times","length","push","out","zip","apply"],"sources":["../../src/keypad/keys-layout.js"],"sourcesContent":["import { times, zip } from 'lodash-es';\n\n/**\n * Sort additional keys.\n *\n * Expects an array of rows.\n * @param {} keys\n */\nexport const sortKeys = (keys) => {\n // add any missing rows\n times(5 - keys.length, () => keys.push([]));\n\n const out = zip.apply(null, keys);\n\n return out;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,SAAXA,QAAQA,CAAIE,IAAI,EAAK;EAChC;EACA,IAAAC,eAAK,EAAC,CAAC,GAAGD,IAAI,CAACE,MAAM,EAAE;IAAA,OAAMF,IAAI,CAACG,IAAI,CAAC,EAAE,CAAC;EAAA,EAAC;EAE3C,IAAMC,GAAG,GAAGC,aAAG,CAACC,KAAK,CAAC,IAAI,EAAEN,IAAI,CAAC;EAEjC,OAAOI,GAAG;AACZ,CAAC","ignoreList":[]}
|
package/lib/keys/digits.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports["default"] = void 0;
|
|
8
|
-
var
|
|
7
|
+
var _lodashEs = require("lodash-es");
|
|
9
8
|
var digitMap = {
|
|
10
9
|
0: 'zero',
|
|
11
10
|
1: 'one',
|
|
@@ -30,7 +29,7 @@ var decimalPoint = {
|
|
|
30
29
|
write: '.',
|
|
31
30
|
category: 'digit'
|
|
32
31
|
};
|
|
33
|
-
var _default = exports["default"] = (0,
|
|
32
|
+
var _default = exports["default"] = (0, _lodashEs.times)(10, String).map(function (n) {
|
|
34
33
|
return {
|
|
35
34
|
name: digitMap[n],
|
|
36
35
|
write: n,
|
package/lib/keys/digits.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digits.js","names":["
|
|
1
|
+
{"version":3,"file":"digits.js","names":["_lodashEs","require","digitMap","comma","name","label","write","category","decimalPoint","_default","exports","times","String","map","n","reduce","acc","o"],"sources":["../../src/keys/digits.js"],"sourcesContent":["import { times } from 'lodash-es';\n\nconst digitMap = {\n 0: 'zero',\n 1: 'one',\n 2: 'two',\n 3: 'three',\n 4: 'four',\n 5: 'five',\n 6: 'six',\n 7: 'seven',\n 8: 'eight',\n 9: 'nine',\n};\n\nconst comma = { name: 'comma', label: ',', write: ',', category: 'digit' };\n\nconst decimalPoint = {\n name: 'decimal-point',\n label: '.',\n write: '.',\n category: 'digit',\n};\n\nexport default times(10, String)\n .map((n) => {\n return {\n name: digitMap[n],\n write: n,\n label: n,\n category: 'digit',\n };\n })\n .reduce(\n (acc, o) => {\n acc[o.name] = o;\n return acc;\n },\n { comma, decimalPoint },\n );\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAMC,QAAQ,GAAG;EACf,CAAC,EAAE,MAAM;EACT,CAAC,EAAE,KAAK;EACR,CAAC,EAAE,KAAK;EACR,CAAC,EAAE,OAAO;EACV,CAAC,EAAE,MAAM;EACT,CAAC,EAAE,MAAM;EACT,CAAC,EAAE,KAAK;EACR,CAAC,EAAE,OAAO;EACV,CAAC,EAAE,OAAO;EACV,CAAC,EAAE;AACL,CAAC;AAED,IAAMC,KAAK,GAAG;EAAEC,IAAI,EAAE,OAAO;EAAEC,KAAK,EAAE,GAAG;EAAEC,KAAK,EAAE,GAAG;EAAEC,QAAQ,EAAE;AAAQ,CAAC;AAE1E,IAAMC,YAAY,GAAG;EACnBJ,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAE,GAAG;EACVC,KAAK,EAAE,GAAG;EACVC,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,cAEa,IAAAC,eAAK,EAAC,EAAE,EAAEC,MAAM,CAAC,CAC7BC,GAAG,CAAC,UAACC,CAAC,EAAK;EACV,OAAO;IACLV,IAAI,EAAEF,QAAQ,CAACY,CAAC,CAAC;IACjBR,KAAK,EAAEQ,CAAC;IACRT,KAAK,EAAES,CAAC;IACRP,QAAQ,EAAE;EACZ,CAAC;AACH,CAAC,CAAC,CACDQ,MAAM,CACL,UAACC,GAAG,EAAEC,CAAC,EAAK;EACVD,GAAG,CAACC,CAAC,CAACb,IAAI,CAAC,GAAGa,CAAC;EACf,OAAOD,GAAG;AACZ,CAAC,EACD;EAAEb,KAAK,EAALA,KAAK;EAAEK,YAAY,EAAZA;AAAa,CACxB,CAAC","ignoreList":[]}
|
package/lib/keys/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_digits","_interopRequireDefault","require","nav","_interopRequireWildcard","edit","_basicOperators","comparison","exports","fractions","exponent","misc","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","one","digits","two","three","four","five","six","seven","eight","nine","zero","comma","decimalPoint","baseSet","divide","multiply","minus","plus","left","right","del","equals"],"sources":["../../src/keys/index.js"],"sourcesContent":["import digits from './digits';\nimport * as nav from './navigation';\nimport * as edit from './edit';\nimport { divide,
|
|
1
|
+
{"version":3,"file":"index.js","names":["_digits","_interopRequireDefault","require","nav","_interopRequireWildcard","edit","_basicOperators","comparison","exports","fractions","exponent","misc","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","one","digits","two","three","four","five","six","seven","eight","nine","zero","comma","decimalPoint","baseSet","divide","multiply","minus","plus","left","right","del","equals"],"sources":["../../src/keys/index.js"],"sourcesContent":["import digits from './digits';\nimport * as nav from './navigation';\nimport * as edit from './edit';\nimport { divide, equals, minus, multiply, plus } from './basic-operators';\nimport * as comparison from './comparison';\nimport * as fractions from './fractions';\nimport * as exponent from './exponent';\nimport * as misc from './misc';\n\nconst { one, two, three, four, five, six, seven, eight, nine, zero, comma, decimalPoint } = digits;\n\nexport const baseSet = [\n [seven, eight, nine, divide],\n [four, five, six, multiply],\n [one, two, three, minus],\n [zero, decimalPoint, comma, plus],\n [nav.left, nav.right, edit.del, equals],\n];\n\nexport { comparison, fractions, exponent, misc };\n"],"mappings":"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","ignoreList":[]}
|
package/lib/keys/utils.js
CHANGED
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.transformToKeySetStructure = exports.toKey = exports.toArray = exports.mkSet = exports.extendKeySet = void 0;
|
|
8
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
-
var
|
|
10
|
+
var _lodashEs = require("lodash-es");
|
|
11
11
|
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; }
|
|
12
12
|
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; }
|
|
13
13
|
var mkSet = exports.mkSet = function mkSet(category) {
|
|
@@ -41,8 +41,8 @@ var toKey = exports.toKey = function toKey(category) {
|
|
|
41
41
|
var transformToKeySetStructure = exports.transformToKeySetStructure = function transformToKeySetStructure() {
|
|
42
42
|
var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
43
43
|
var structure = [];
|
|
44
|
-
|
|
45
|
-
structure.push([]);
|
|
44
|
+
(0, _lodashEs.times)(5, function () {
|
|
45
|
+
return structure.push([]);
|
|
46
46
|
});
|
|
47
47
|
var ln = data.length;
|
|
48
48
|
var i = 0;
|
|
@@ -57,7 +57,7 @@ var transformToKeySetStructure = exports.transformToKeySetStructure = function t
|
|
|
57
57
|
};
|
|
58
58
|
var latexAndNameDontExist = function latexAndNameDontExist(base) {
|
|
59
59
|
return function (k) {
|
|
60
|
-
var flattened =
|
|
60
|
+
var flattened = (0, _lodashEs.flatten)(base);
|
|
61
61
|
var latexExists = flattened.some(function (b) {
|
|
62
62
|
return b.latex === k.latex;
|
|
63
63
|
});
|
|
@@ -72,11 +72,11 @@ var extendKeySet = exports.extendKeySet = function extendKeySet() {
|
|
|
72
72
|
var keySetData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
73
73
|
keySetData = keySetData.filter(latexAndNameDontExist(base));
|
|
74
74
|
var _final = [];
|
|
75
|
-
|
|
76
|
-
base.push([]);
|
|
75
|
+
(0, _lodashEs.times)(5 - base.length, function () {
|
|
76
|
+
return base.push([]);
|
|
77
77
|
});
|
|
78
|
-
|
|
79
|
-
_final.push([]);
|
|
78
|
+
(0, _lodashEs.times)(5, function () {
|
|
79
|
+
return _final.push([]);
|
|
80
80
|
});
|
|
81
81
|
var extra = transformToKeySetStructure(keySetData);
|
|
82
82
|
for (var i = 0; i < 5; i++) {
|
package/lib/keys/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["
|
|
1
|
+
{"version":3,"file":"utils.js","names":["_lodashEs","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","mkSet","exports","category","toArray","map","k","toKey","v","name","label","write","transformToKeySetStructure","data","undefined","structure","times","ln","i","j","latexAndNameDontExist","base","flattened","flatten","latexExists","some","b","latex","nameExists","extendKeySet","keySetData","final","extra","concat","_toConsumableArray2"],"sources":["../../src/keys/utils.js"],"sourcesContent":["import { flatten, times } from 'lodash-es';\n\nexport const mkSet = (category) => (o) => ({ ...o, category });\n\nexport const toArray = (o) => Object.keys(o).map((k) => o[k]);\n\nexport const toKey = (category) => (v) => {\n if (typeof v === 'string') {\n return {\n name: v,\n label: v,\n category,\n write: v,\n };\n } else {\n return {\n ...v,\n category,\n };\n }\n};\n\nexport const transformToKeySetStructure = (data = []) => {\n const structure = [];\n\n times(5, () => structure.push([]));\n\n let ln = data.length;\n let i = 0;\n let j = 0;\n\n while (j < ln) {\n structure[i++].push(data[j++]);\n\n if (i === 5) {\n i = 0;\n }\n }\n\n return structure;\n};\n\nconst latexAndNameDontExist = (base) => (k) => {\n const flattened = flatten(base);\n const latexExists = flattened.some((b) => b.latex === k.latex);\n const nameExists = flattened.some((b) => b.name === k.name);\n\n return !latexExists && !nameExists;\n};\n\nexport const extendKeySet = (base = [], keySetData = []) => {\n keySetData = keySetData.filter(latexAndNameDontExist(base));\n\n const final = [];\n\n times(5 - base.length, () => base.push([]));\n times(5, () => final.push([]));\n\n const extra = transformToKeySetStructure(keySetData);\n\n for (let i = 0; i < 5; i++) {\n final[i] = [...base[i], ...extra[i]];\n }\n\n return final;\n};\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "7.1.
|
|
6
|
+
"version": "7.1.1-next.1",
|
|
7
7
|
"main": "lib/index.js",
|
|
8
8
|
"module": "src/index.jsx",
|
|
9
9
|
"dependencies": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"@mui/material": "^7.3.4",
|
|
14
14
|
"@pie-framework/mathquill": "^1.1.3",
|
|
15
15
|
"debug": "^4.1.1",
|
|
16
|
-
"lodash": "^4.17.
|
|
16
|
+
"lodash-es": "^4.17.23",
|
|
17
17
|
"prop-types": "^15.7.2"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
"react-dom": "^18.2.0"
|
|
25
25
|
},
|
|
26
26
|
"scripts": {},
|
|
27
|
-
"gitHead": "
|
|
27
|
+
"gitHead": "2c31ce9ebbe2ae3cb470c1442d6fff005ba649ad"
|
|
28
28
|
}
|