@pie-element/math-inline 5.9.12 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,23 @@
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
+ # [6.0.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/math-inline@5.9.12...@pie-element/math-inline@6.0.0) (2022-06-28)
7
+
8
+
9
+ ### chore
10
+
11
+ * Merge master with develop. ([cdca48a](https://github.com/pie-framework/pie-elements/commit/cdca48abaa1d4179e4a961e13d171e14b7ed2444))
12
+
13
+
14
+ ### BREAKING CHANGES
15
+
16
+ * Image percent buttons were removed from toolbar.
17
+ New properties maxImageWidth and maxImageHeight were added.
18
+
19
+
20
+
21
+
22
+
6
23
  ## [5.9.12](https://github.com/pie-framework/pie-elements/compare/@pie-element/math-inline@5.9.11...@pie-element/math-inline@5.9.12) (2022-06-13)
7
24
 
8
25
  **Note:** Version bump only for package @pie-element/math-inline
@@ -3,6 +3,23 @@
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
+ # [6.0.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/math-inline-configure@5.6.21...@pie-element/math-inline-configure@6.0.0) (2022-06-28)
7
+
8
+
9
+ ### chore
10
+
11
+ * Merge master with develop. ([cdca48a](https://github.com/pie-framework/pie-elements/commit/cdca48abaa1d4179e4a961e13d171e14b7ed2444))
12
+
13
+
14
+ ### BREAKING CHANGES
15
+
16
+ * Image percent buttons were removed from toolbar.
17
+ New properties maxImageWidth and maxImageHeight were added.
18
+
19
+
20
+
21
+
22
+
6
23
  ## [5.6.21](https://github.com/pie-framework/pie-elements/compare/@pie-element/math-inline-configure@5.6.20...@pie-element/math-inline-configure@5.6.21) (2022-06-13)
7
24
 
8
25
  **Note:** Version bump only for package @pie-element/math-inline-configure
@@ -136,7 +136,11 @@ var Configure = /*#__PURE__*/function (_React$Component) {
136
136
  _ref$allowTrailingZer = _ref.allowTrailingZeros,
137
137
  allowTrailingZeros = _ref$allowTrailingZer === void 0 ? {} : _ref$allowTrailingZer,
138
138
  _ref$spellCheck = _ref.spellCheck,
139
- spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck;
139
+ spellCheck = _ref$spellCheck === void 0 ? {} : _ref$spellCheck,
140
+ _ref$maxImageWidth = _ref.maxImageWidth,
141
+ maxImageWidth = _ref$maxImageWidth === void 0 ? {} : _ref$maxImageWidth,
142
+ _ref$maxImageHeight = _ref.maxImageHeight,
143
+ maxImageHeight = _ref$maxImageHeight === void 0 ? {} : _ref$maxImageHeight;
140
144
 
141
145
  log('[render] model', model);
142
146
 
@@ -159,6 +163,8 @@ var Configure = /*#__PURE__*/function (_React$Component) {
159
163
  break;
160
164
  }
161
165
 
166
+ var defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;
167
+ var defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;
162
168
  return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
163
169
  settings: /*#__PURE__*/_react["default"].createElement(Panel, {
164
170
  model: model,
@@ -198,7 +204,9 @@ var Configure = /*#__PURE__*/function (_React$Component) {
198
204
  imageSupport: imageSupport,
199
205
  nonEmpty: false,
200
206
  toolbarOpts: toolbarOpts,
201
- spellCheck: spellCheckEnabled
207
+ spellCheck: spellCheckEnabled,
208
+ maxImageWidth: maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth,
209
+ maxImageHeight: maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight
202
210
  })), /*#__PURE__*/_react["default"].createElement(_generalConfigBlock["default"], {
203
211
  imageSupport: imageSupport,
204
212
  model: model,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/configure.jsx"],"names":["log","Panel","settings","toggle","radio","styles","theme","title","fontSize","display","marginTop","spacing","unit","marginBottom","content","promptHolder","width","paddingTop","prompt","Configure","model","props","onModelChanged","teacherInstructions","feedback","classes","imageSupport","configuration","onConfigurationChanged","responseType","studentInstructions","rationale","scoringType","ignoreOrder","allowTrailingZeros","spellCheck","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","feedbackEnabled","spellCheckEnabled","toolbarOpts","toolbarEditorPosition","position","config","label","ResponseTypes","simple","advanced","studentInstructionsEnabled","changeTeacherInstructions","onChange","onFeedbackChange","React","Component","PropTypes","func","object","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport {\n FeedbackConfig,\n settings,\n layout,\n InputContainer,\n} from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport debug from 'debug';\nimport EditableHtml from '@pie-lib/editable-html';\nimport GeneralConfigBlock from './general-config-block';\nimport { ResponseTypes } from './utils';\n\nconst log = debug('@pie-element:math-inline:configure');\nconst { Panel, toggle, radio } = settings;\n\nconst styles = theme => ({\n title: {\n fontSize: '1.1rem',\n display: 'block',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit\n },\n content: {\n marginTop: theme.spacing.unit * 2\n },\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n});\n\nexport class Configure extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n classes: PropTypes.object,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object\n };\n\n onChange = model => {\n this.props.onModelChanged(model);\n };\n\n changeTeacherInstructions = teacherInstructions => {\n this.props.onModelChanged({\n ...this.props.model,\n teacherInstructions\n });\n };\n\n onFeedbackChange = feedback => {\n const { model, onModelChanged } = this.props;\n model.feedback = feedback;\n onModelChanged(model);\n };\n\n render() {\n const { classes, model, imageSupport, onModelChanged, configuration, onConfigurationChanged } = this.props;\n const {\n feedback = {},\n responseType = {},\n teacherInstructions = {},\n studentInstructions = {},\n rationale = {},\n prompt = {},\n scoringType = {},\n ignoreOrder = {},\n allowTrailingZeros={},\n spellCheck = {}\n } = configuration || {};\n log('[render] model', model);\n const { rationaleEnabled, promptEnabled, teacherInstructionsEnabled, feedbackEnabled, spellCheckEnabled } = model || {};\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n return (\n <div>\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={config => onConfigurationChanged(config)}\n groups={{\n 'Settings': {\n responseType: responseType.settings &&\n radio(responseType.label, [ResponseTypes.simple, ResponseTypes.advanced]),\n feedbackEnabled: feedback.settings &&\n toggle(feedback.label),\n 'promptEnabled': prompt.settings &&\n toggle(prompt.label)\n },\n 'Properties': {\n teacherInstructionsEnabled: teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings &&\n toggle(studentInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled:\n spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings &&\n radio(scoringType.label, ['auto', 'rubric']),\n 'ignoreOrder.enabled':\n ignoreOrder.settings && toggle(ignoreOrder.label),\n 'allowTrailingZeros.enabled':\n allowTrailingZeros.settings && toggle(allowTrailingZeros.label),\n },\n }}\n />\n }\n >\n <div>\n <div className={classes.content}>\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n\n <GeneralConfigBlock\n imageSupport={imageSupport}\n model={model}\n configuration={configuration}\n onChange={this.onChange}\n rationaleEnabled={rationaleEnabled}\n promptEnabled={promptEnabled}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n {\n feedbackEnabled && (\n <FeedbackConfig\n feedback={model.feedback}\n onChange={this.onFeedbackChange}\n toolbarOpts={toolbarOpts}\n />\n )\n }\n </div>\n </div>\n </layout.ConfigLayout>\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(Configure);\n"],"file":"configure.js"}
1
+ {"version":3,"sources":["../src/configure.jsx"],"names":["log","Panel","settings","toggle","radio","styles","theme","title","fontSize","display","marginTop","spacing","unit","marginBottom","content","promptHolder","width","paddingTop","prompt","Configure","model","props","onModelChanged","teacherInstructions","feedback","classes","imageSupport","configuration","onConfigurationChanged","responseType","studentInstructions","rationale","scoringType","ignoreOrder","allowTrailingZeros","spellCheck","maxImageWidth","maxImageHeight","rationaleEnabled","promptEnabled","teacherInstructionsEnabled","feedbackEnabled","spellCheckEnabled","toolbarOpts","toolbarEditorPosition","position","defaultImageMaxWidth","defaultImageMaxHeight","config","label","ResponseTypes","simple","advanced","studentInstructionsEnabled","changeTeacherInstructions","onChange","onFeedbackChange","React","Component","PropTypes","func","object","isRequired"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { withStyles } from '@material-ui/core/styles';\nimport {\n FeedbackConfig,\n settings,\n layout,\n InputContainer,\n} from '@pie-lib/config-ui';\nimport PropTypes from 'prop-types';\nimport debug from 'debug';\nimport EditableHtml from '@pie-lib/editable-html';\nimport GeneralConfigBlock from './general-config-block';\nimport { ResponseTypes } from './utils';\n\nconst log = debug('@pie-element:math-inline:configure');\nconst { Panel, toggle, radio } = settings;\n\nconst styles = theme => ({\n title: {\n fontSize: '1.1rem',\n display: 'block',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit\n },\n content: {\n marginTop: theme.spacing.unit * 2\n },\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%'\n },\n});\n\nexport class Configure extends React.Component {\n static propTypes = {\n onModelChanged: PropTypes.func,\n onConfigurationChanged: PropTypes.func,\n classes: PropTypes.object,\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n imageSupport: PropTypes.object\n };\n\n onChange = model => {\n this.props.onModelChanged(model);\n };\n\n changeTeacherInstructions = teacherInstructions => {\n this.props.onModelChanged({\n ...this.props.model,\n teacherInstructions\n });\n };\n\n onFeedbackChange = feedback => {\n const { model, onModelChanged } = this.props;\n model.feedback = feedback;\n onModelChanged(model);\n };\n\n render() {\n const { classes, model, imageSupport, onModelChanged, configuration, onConfigurationChanged } = this.props;\n const {\n feedback = {},\n responseType = {},\n teacherInstructions = {},\n studentInstructions = {},\n rationale = {},\n prompt = {},\n scoringType = {},\n ignoreOrder = {},\n allowTrailingZeros={},\n spellCheck = {},\n maxImageWidth = {},\n maxImageHeight = {}\n } = configuration || {};\n log('[render] model', model);\n const { rationaleEnabled, promptEnabled, teacherInstructionsEnabled, feedbackEnabled, spellCheckEnabled } = model || {};\n const toolbarOpts = {};\n\n switch (model.toolbarEditorPosition) {\n case 'top':\n toolbarOpts.position = 'top';\n break;\n default:\n toolbarOpts.position = 'bottom';\n break;\n }\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n return (\n <div>\n <layout.ConfigLayout\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={model => onModelChanged(model)}\n onChangeConfiguration={config => onConfigurationChanged(config)}\n groups={{\n 'Settings': {\n responseType: responseType.settings &&\n radio(responseType.label, [ResponseTypes.simple, ResponseTypes.advanced]),\n feedbackEnabled: feedback.settings &&\n toggle(feedback.label),\n 'promptEnabled': prompt.settings &&\n toggle(prompt.label)\n },\n 'Properties': {\n teacherInstructionsEnabled: teacherInstructions.settings &&\n toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings &&\n toggle(studentInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled:\n spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings &&\n radio(scoringType.label, ['auto', 'rubric']),\n 'ignoreOrder.enabled':\n ignoreOrder.settings && toggle(ignoreOrder.label),\n 'allowTrailingZeros.enabled':\n allowTrailingZeros.settings && toggle(allowTrailingZeros.label),\n },\n }}\n />\n }\n >\n <div>\n <div className={classes.content}>\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={this.changeTeacherInstructions}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={maxImageWidth && maxImageWidth.teacherInstructions || defaultImageMaxWidth}\n maxImageHeight={maxImageHeight && maxImageHeight.teacherInstructions || defaultImageMaxHeight}\n />\n </InputContainer>\n )}\n\n <GeneralConfigBlock\n imageSupport={imageSupport}\n model={model}\n configuration={configuration}\n onChange={this.onChange}\n rationaleEnabled={rationaleEnabled}\n promptEnabled={promptEnabled}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n {\n feedbackEnabled && (\n <FeedbackConfig\n feedback={model.feedback}\n onChange={this.onFeedbackChange}\n toolbarOpts={toolbarOpts}\n />\n )\n }\n </div>\n </div>\n </layout.ConfigLayout>\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(Configure);\n"],"file":"configure.js"}
@@ -95,6 +95,16 @@ var _default = {
95
95
  settings: false,
96
96
  label: 'Allow Trailing Zeros',
97
97
  enabled: true
98
+ },
99
+ maxImageWidth: {
100
+ teacherInstructions: 300,
101
+ prompt: 300,
102
+ rationale: 300
103
+ },
104
+ maxImageHeight: {
105
+ teacherInstructions: 300,
106
+ prompt: 300,
107
+ rationale: 300
98
108
  }
99
109
  }
100
110
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/defaults.js"],"names":["model","partialScoring","responseType","ResponseTypes","advanced","element","feedback","correct","type","incorrect","partial","equationEditor","expression","rationale","note","prompt","responses","customKeys","scoringType","feedbackEnabled","promptEnabled","rationaleEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","validationDefault","ignoreOrderDefault","allowTrailingZerosDefault","configuration","settings","label","spellCheck","enabled","studentInstructions","teacherInstructions","ignoreOrder","allowTrailingZeros"],"mappings":";;;;;;;AAAA;;AAEA;AACA;AACA;AACA;eAEe;AACbA,EAAAA,KAAK,EAAE;AACLC,IAAAA,cAAc,EAAE,IADX;AAELC,IAAAA,YAAY,EAAEC,qBAAcC,QAFvB;AAGLC,IAAAA,OAAO,EAAE,aAHJ;AAILC,IAAAA,QAAQ,EAAE;AACRC,MAAAA,OAAO,EAAE;AACP,mBAAS,SADF;AAEPC,QAAAA,IAAI,EAAE;AAFC,OADD;AAKRC,MAAAA,SAAS,EAAE;AACT,mBAAS,WADA;AAETD,QAAAA,IAAI,EAAE;AAFG,OALH;AASRE,MAAAA,OAAO,EAAE;AACP,mBAAS,QADF;AAEPF,QAAAA,IAAI,EAAE;AAFC;AATD,KAJL;AAkBLG,IAAAA,cAAc,EAAE,GAlBX;AAmBLC,IAAAA,UAAU,EAAE,EAnBP;AAoBLC,IAAAA,SAAS,EAAE,sBApBN;AAqBLC,IAAAA,IAAI,EACF,kJAtBG;AAuBLC,IAAAA,MAAM,EAAE,EAvBH;AAwBLC,IAAAA,SAAS,EAAE,EAxBN;AAyBLC,IAAAA,UAAU,EAAE,EAzBP;AA0BLC,IAAAA,WAAW,EAAE,MA1BR;AA2BLC,IAAAA,eAAe,EAAE,IA3BZ;AA4BLC,IAAAA,aAAa,EAAE,IA5BV;AA6BLC,IAAAA,gBAAgB,EAAE,IA7Bb;AA8BLC,IAAAA,0BAA0B,EAAE,IA9BvB;AA+BLC,IAAAA,0BAA0B,EAAE,IA/BvB;AAgCLC,IAAAA,qBAAqB,EAAE,QAhClB;AAiCLC,IAAAA,iBAAiB,EAAE,SAjCd;AAkCLC,IAAAA,kBAAkB,EAAE,KAlCf;AAmCLC,IAAAA,yBAAyB,EAAE;AAnCtB,GADM;AAsCbC,EAAAA,aAAa,EAAE;AACbb,IAAAA,MAAM,EAAE;AACNc,MAAAA,QAAQ,EAAE,IADJ;AAENC,MAAAA,KAAK,EAAE;AAFD,KADK;AAKbxB,IAAAA,QAAQ,EAAE;AACRuB,MAAAA,QAAQ,EAAE,IADF;AAERC,MAAAA,KAAK,EAAE;AAFC,KALG;AASb5B,IAAAA,YAAY,EAAE;AACZ2B,MAAAA,QAAQ,EAAE,IADE;AAEZC,MAAAA,KAAK,EAAE;AAFK,KATD;AAabjB,IAAAA,SAAS,EAAE;AACTgB,MAAAA,QAAQ,EAAE,IADD;AAETC,MAAAA,KAAK,EAAE;AAFE,KAbE;AAiBbC,IAAAA,UAAU,EAAE;AACVD,MAAAA,KAAK,EAAE,YADG;AAEVD,MAAAA,QAAQ,EAAC,KAFC;AAGVG,MAAAA,OAAO,EAAC;AAHE,KAjBC;AAsBbd,IAAAA,WAAW,EAAE;AACXW,MAAAA,QAAQ,EAAE,KADC;AAEXC,MAAAA,KAAK,EAAE;AAFI,KAtBA;AA0BbG,IAAAA,mBAAmB,EAAE;AACnBJ,MAAAA,QAAQ,EAAE,KADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KA1BR;AA8BbI,IAAAA,mBAAmB,EAAE;AACnBL,MAAAA,QAAQ,EAAE,IADS;AAEnBC,MAAAA,KAAK,EAAE;AAFY,KA9BR;AAkCb7B,IAAAA,cAAc,EAAE;AACd4B,MAAAA,QAAQ,EAAE,KADI;AAEdC,MAAAA,KAAK,EAAE;AAFO,KAlCH;AAsCbK,IAAAA,WAAW,EAAE;AACXN,MAAAA,QAAQ,EAAE,KADC;AAEXC,MAAAA,KAAK,EAAE,cAFI;AAGXE,MAAAA,OAAO,EAAE;AAHE,KAtCA;AA2CbI,IAAAA,kBAAkB,EAAE;AAClBP,MAAAA,QAAQ,EAAE,KADQ;AAElBC,MAAAA,KAAK,EAAE,sBAFW;AAGlBE,MAAAA,OAAO,EAAE;AAHS;AA3CP;AAtCF,C","sourcesContent":["import { ResponseTypes } from './utils';\n\n/** NOTE: teacherInstructions, studentInstructions, rationale & scoringType\n * functionalities are not defined yet - the value for those can belong to\n * model or to configure\n */\n\nexport default {\n model: {\n partialScoring: true,\n responseType: ResponseTypes.advanced,\n element: 'math-inline',\n feedback: {\n correct: {\n default: 'Correct',\n type: 'none',\n },\n incorrect: {\n default: 'Incorrect',\n type: 'none',\n },\n partial: {\n default: 'Nearly',\n type: 'none',\n },\n },\n equationEditor: '8',\n expression: '',\n rationale: 'Rationale goes here.',\n note:\n 'The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct.',\n prompt: '',\n responses: [],\n customKeys: [],\n scoringType: 'auto',\n feedbackEnabled: true,\n promptEnabled: true,\n rationaleEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n validationDefault: 'literal',\n ignoreOrderDefault: false,\n allowTrailingZerosDefault: false,\n },\n configuration: {\n prompt: {\n settings: true,\n label: 'Prompt',\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n },\n responseType: {\n settings: true,\n label: 'Response type',\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n },\n spellCheck: {\n label: 'Spellcheck',\n settings:false,\n enabled:true\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\n },\n ignoreOrder: {\n settings: false,\n label: 'Ignore Order',\n enabled: true,\n },\n allowTrailingZeros: {\n settings: false,\n label: 'Allow Trailing Zeros',\n enabled: true\n },\n },\n};\n"],"file":"defaults.js"}
1
+ {"version":3,"sources":["../src/defaults.js"],"names":["model","partialScoring","responseType","ResponseTypes","advanced","element","feedback","correct","type","incorrect","partial","equationEditor","expression","rationale","note","prompt","responses","customKeys","scoringType","feedbackEnabled","promptEnabled","rationaleEnabled","teacherInstructionsEnabled","studentInstructionsEnabled","toolbarEditorPosition","validationDefault","ignoreOrderDefault","allowTrailingZerosDefault","configuration","settings","label","spellCheck","enabled","studentInstructions","teacherInstructions","ignoreOrder","allowTrailingZeros","maxImageWidth","maxImageHeight"],"mappings":"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","sourcesContent":["import { ResponseTypes } from './utils';\n\n/** NOTE: teacherInstructions, studentInstructions, rationale & scoringType\n * functionalities are not defined yet - the value for those can belong to\n * model or to configure\n */\n\nexport default {\n model: {\n partialScoring: true,\n responseType: ResponseTypes.advanced,\n element: 'math-inline',\n feedback: {\n correct: {\n default: 'Correct',\n type: 'none',\n },\n incorrect: {\n default: 'Incorrect',\n type: 'none',\n },\n partial: {\n default: 'Nearly',\n type: 'none',\n },\n },\n equationEditor: '8',\n expression: '',\n rationale: 'Rationale goes here.',\n note:\n 'The answer shown above is the primary correct answer specified by the author for this item, but other answers may also be recognized as correct.',\n prompt: '',\n responses: [],\n customKeys: [],\n scoringType: 'auto',\n feedbackEnabled: true,\n promptEnabled: true,\n rationaleEnabled: true,\n teacherInstructionsEnabled: true,\n studentInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n validationDefault: 'literal',\n ignoreOrderDefault: false,\n allowTrailingZerosDefault: false,\n },\n configuration: {\n prompt: {\n settings: true,\n label: 'Prompt',\n },\n feedback: {\n settings: true,\n label: 'Feedback',\n },\n responseType: {\n settings: true,\n label: 'Response type',\n },\n rationale: {\n settings: true,\n label: 'Rationale',\n },\n spellCheck: {\n label: 'Spellcheck',\n settings:false,\n enabled:true\n },\n scoringType: {\n settings: false,\n label: 'Scoring Type',\n },\n studentInstructions: {\n settings: false,\n label: 'Student Instructions',\n },\n teacherInstructions: {\n settings: true,\n label: 'Teacher Instructions',\n },\n partialScoring: {\n settings: false,\n label: 'Allow Partial Scoring',\n },\n ignoreOrder: {\n settings: false,\n label: 'Ignore Order',\n enabled: true,\n },\n allowTrailingZeros: {\n settings: false,\n label: 'Allow Trailing Zeros',\n enabled: true\n },\n maxImageWidth: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n },\n maxImageHeight: {\n teacherInstructions: 300,\n prompt: 300,\n rationale: 300,\n }\n },\n};\n"],"file":"defaults.js"}
@@ -426,11 +426,17 @@ var GeneralConfigBlock = /*#__PURE__*/function (_React$Component) {
426
426
  cIgnoreOrder = _ref$ignoreOrder === void 0 ? {} : _ref$ignoreOrder,
427
427
  _ref$allowTrailingZer = _ref.allowTrailingZeros,
428
428
  cAllowTrailingZeros = _ref$allowTrailingZer === void 0 ? {} : _ref$allowTrailingZer,
429
- maxResponseAreas = _ref.maxResponseAreas;
429
+ maxResponseAreas = _ref.maxResponseAreas,
430
+ _ref$maxImageWidth = _ref.maxImageWidth,
431
+ maxImageWidth = _ref$maxImageWidth === void 0 ? {} : _ref$maxImageWidth,
432
+ _ref$maxImageHeight = _ref.maxImageHeight,
433
+ maxImageHeight = _ref$maxImageHeight === void 0 ? {} : _ref$maxImageHeight;
430
434
 
431
435
  var validationMessage = (0, _utils.generateValidationMessage)(configuration, model);
432
436
  var responsesErrors = errors.responsesErrors,
433
437
  responseAreasError = errors.responseAreasError;
438
+ var defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;
439
+ var defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;
434
440
  var classNames = {
435
441
  editor: classes.responseEditor,
436
442
  mathToolbar: classes.mathToolbar
@@ -452,7 +458,9 @@ var GeneralConfigBlock = /*#__PURE__*/function (_React$Component) {
452
458
  imageSupport: imageSupport,
453
459
  nonEmpty: false,
454
460
  toolbarOpts: toolbarOpts,
455
- spellCheck: spellCheckEnabled
461
+ spellCheck: spellCheckEnabled,
462
+ maxImageWidth: defaultImageMaxWidth,
463
+ maxImageHeight: defaultImageMaxHeight
456
464
  })), rationaleEnabled && /*#__PURE__*/React.createElement(_configUi.InputContainer, {
457
465
  label: cRationale.label,
458
466
  className: classes.promptHolder
@@ -468,7 +476,9 @@ var GeneralConfigBlock = /*#__PURE__*/function (_React$Component) {
468
476
  imageSupport: imageSupport,
469
477
  nonEmpty: false,
470
478
  toolbarOpts: toolbarOpts,
471
- spellCheck: spellCheckEnabled
479
+ spellCheck: spellCheckEnabled,
480
+ maxImageWidth: maxImageWidth && maxImageWidth.rationale || defaultImageMaxWidth,
481
+ maxImageHeight: maxImageHeight && maxImageHeight.rationale || defaultImageMaxHeight
472
482
  })), /*#__PURE__*/React.createElement("div", {
473
483
  className: classes.flexContainer,
474
484
  style: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/general-config-block.jsx"],"names":["registered","styles","theme","container","marginTop","spacing","unit","marginBottom","display","flexDirection","templateTitle","fontSize","addResponseButton","border","width","flexContainer","alignItems","justifyContent","selectContainer","flex","inputContainer","responseEditor","minWidth","maxWidth","height","minHeight","textAlign","padding","promptHolder","paddingBottom","prompt","paddingTop","blockContainer","margin","blockContainerGeneric","blockResponse","color","background","borderRight","blockResponseGeneric","blockMath","tooltip","whiteSpace","errorText","REGEX","TEMPORARY_RESPONSE_FIELD","ANSWER_BLOCK_REGEX","NEWLINE_BLOCK","NEWLINE_LATEX","prepareForStatic","expression","answerBlocks","replace","prepareForModel","GeneralConfigBlock","props","name","evtOrValue","model","onChange","newModel","target","value","setState","showKeypad","responseAreas","state","root","Object","keys","length","forEach","responseId","idx","el","querySelector","indexEl","MQ","MathQuill","getInterface","StaticMath","textContent","responseIdCounter","newCounter","responses","find","response","id","validation","answer","alternates","concat","index","classes","window","registerEmbed","data","genericAnswerBlock","htmlString","text","latex","handleAnswerBlockDomUpdate","imageSupport","configuration","promptEnabled","rationaleEnabled","toolbarOpts","equationEditor","promptEquationEditor","responseType","rationale","spellCheckEnabled","errors","cRationale","cPrompt","ignoreOrder","cIgnoreOrder","allowTrailingZeros","cAllowTrailingZeros","maxResponseAreas","validationMessage","responsesErrors","responseAreasError","classNames","editor","mathToolbar","responsesToUse","ResponseTypes","advanced","slice","r","label","onPromptFocus","math","controlledKeypadMode","marginLeft","select","onFocus","onDone","map","simple","onResponseChange","React","Component","PropTypes","object","isRequired","func","bool"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputContainer } from '@pie-lib/config-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Response from './response';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport isEqual from 'lodash/isEqual';\nimport { ResponseTypes, generateValidationMessage } from './utils';\nimport MathQuill from '@pie-framework/mathquill';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\n\nlet registered = false;\n\nconst styles = (theme) => ({\n container: {\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n display: 'flex',\n flexDirection: 'column',\n },\n templateTitle: {\n fontSize: '0.85rem',\n },\n addResponseButton: {\n border: '1px solid lightgrey',\n float: 'right',\n width: '150px',\n },\n flexContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n selectContainer: {\n flex: 'initial',\n width: '40%',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n inputContainer: {\n marginBottom: theme.spacing.unit * 4,\n display: 'flex',\n flexDirection: 'column',\n width: '90%',\n },\n responseEditor: {\n display: 'flex',\n justifyContent: 'center',\n width: '100%',\n minWidth: '500px',\n maxWidth: 'inherit',\n height: 'auto',\n minHeight: '130px',\n textAlign: 'left',\n padding: theme.spacing.unit,\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%',\n maxWidth: '600px',\n },\n blockContainer: {\n margin: theme.spacing.unit,\n display: 'inline-flex',\n border: '2px solid grey',\n },\n blockContainerGeneric: {\n margin: theme.spacing.unit / 2,\n },\n blockResponse: {\n flex: 2,\n color: 'grey',\n background: 'lightgrey',\n fontSize: '0.8rem',\n padding: theme.spacing.unit / 2,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRight: '2px solid grey',\n },\n blockResponseGeneric: {\n borderRight: 0,\n },\n blockMath: {\n color: '#bdbdbd',\n padding: theme.spacing.unit / 2,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 8,\n '& > .mq-math-mode': {\n '& > .mq-hasCursor': {\n '& > .mq-cursor': {\n display: 'none',\n },\n },\n },\n },\n tooltip: {\n fontSize: '12px',\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n padding: '5px 0'\n },\n});\n\nconst REGEX = /{{response}}/gm;\nconst TEMPORARY_RESPONSE_FIELD = /\\\\%response\\\\%/gm;\nconst ANSWER_BLOCK_REGEX = /\\\\embed\\{answerBlock\\}\\[r\\d*\\]/g;\nconst NEWLINE_BLOCK = /\\\\embed\\{newLine\\}\\[\\]/g;\nconst NEWLINE_LATEX = /\\\\newline/g;\n\nfunction prepareForStatic(expression) {\n if (expression) {\n let answerBlocks = 1; // assume one at least\n\n return expression.replace(\n REGEX,\n () => `\\\\embed{answerBlock}[r${answerBlocks++}]`\n ).replace(NEWLINE_LATEX, '\\\\embed{newLine}[]');\n }\n}\n\nfunction prepareForModel(expression) {\n if (expression) {\n return expression\n .replace(ANSWER_BLOCK_REGEX, () => '{{response}}')\n .replace(TEMPORARY_RESPONSE_FIELD, () => '{{response}}')\n .replace(NEWLINE_BLOCK, () => '\\\\newline');\n }\n}\n\nclass GeneralConfigBlock extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n imageSupport: PropTypes.object,\n configuration: PropTypes.object,\n onChange: PropTypes.func.isRequired,\n promptEnabled: PropTypes.bool,\n rationaleEnabled: PropTypes.bool,\n toolbarOpts: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n const responseAreas = {};\n\n if (props.model && props.model.expression) {\n let answerBlocks = 1; // assume one at least\n // build out local state model using responses declared in expression\n\n props.model.expression.replace(REGEX, () => {\n responseAreas[`r${answerBlocks++}`] = {\n value: '',\n };\n });\n }\n\n this.state = {\n showKeypad: false,\n responseAreas,\n responseIdCounter: Object.keys(responseAreas).length,\n };\n }\n\n onChange = (name) => (evtOrValue) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n if (typeof evtOrValue === 'object') {\n newModel[name] = evtOrValue.target.value;\n } else {\n newModel[name] = evtOrValue;\n }\n\n if (name === 'expression') {\n newModel[name] = prepareForModel(evtOrValue);\n }\n\n onChange(newModel);\n };\n\n onDone = () => {\n this.setState({ showKeypad: false });\n };\n\n onFocus = () => {\n this.setState({ showKeypad: true });\n };\n\n onPromptFocus = () => {\n this.setState({ showKeypad: false });\n };\n\n UNSAFE_componentWillMount() {\n const { classes } = this.props;\n\n if (typeof window !== 'undefined') {\n // const MathQuill = require('@pie-framework/mathquill');\n let MQ = MathQuill.getInterface(2);\n\n if (!registered) {\n MQ.registerEmbed('answerBlock', (data) => {\n // not used until we implement individual answer tracking\n // const individualAnswerBlock = `<div class=\"${classes.blockContainer}\">\n // <div class=\"${classes.blockResponse}\" id=\"${data}Index\">R</div>\n // <div class=\"${classes.blockMath}\">\n // <span id=\"${data}\"></span>\n // </div>\n // </div>`;\n\n const genericAnswerBlock = `<div class=\"${cx(\n classes.blockContainer,\n classes.blockContainerGeneric\n )}\">\n <div class=\"${cx(\n classes.blockResponse,\n classes.blockResponseGeneric\n )}\" id=\"${data}Index\">Response</div>\n </div>`;\n\n return {\n htmlString: genericAnswerBlock,\n text: () => 'text',\n latex: () => `\\\\embed{answerBlock}[${data}]`,\n };\n });\n\n registered = true;\n }\n }\n }\n\n componentDidMount() {\n this.handleAnswerBlockDomUpdate();\n }\n\n componentDidUpdate() {\n this.handleAnswerBlockDomUpdate();\n }\n\n handleAnswerBlockDomUpdate = () => {\n const { model } = this.props;\n\n const responseAreas = {};\n\n if (model && model.expression) {\n let answerBlocks = 1; // assume one at least\n // build out local state model using responses declared in expression\n\n model.expression.replace(REGEX, () => {\n responseAreas[`r${answerBlocks++}`] = {\n value: '',\n };\n });\n }\n\n if (!isEqual(responseAreas, this.state.responseAreas)) {\n this.setState(\n {\n responseAreas,\n },\n () => {\n if (this.root && Object.keys(responseAreas).length) {\n Object.keys(responseAreas).forEach((responseId, idx) => {\n const el = this.root.querySelector(`#${responseId}`);\n const indexEl = this.root.querySelector(`#${responseId}Index`);\n\n if (el) {\n // const MathQuill = require('@pie-framework/mathquill');\n let MQ = MathQuill.getInterface(2);\n // We no longer have individual answers, so we cannot set text content of blocks\n // el.textContent = response.answer;\n MQ.StaticMath(el);\n indexEl.textContent = `R${idx + 1}`;\n }\n });\n }\n }\n );\n }\n };\n\n onAddResponse = () => {\n const { model, onChange } = this.props;\n const { responseIdCounter } = this.state;\n const newModel = { ...model };\n\n let newCounter = responseIdCounter;\n\n while (model.responses.find((response) => response.id === newCounter)) {\n newCounter++;\n }\n\n const response = {\n id: newCounter,\n validation: 'literal',\n answer: '',\n alternates: {},\n };\n\n newModel.responses = newModel.responses.concat(response);\n onChange(newModel);\n\n this.setState({\n responseIdCounter: response.id,\n });\n };\n\n onResponseChange = (response, index) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onChange(newModel);\n };\n\n render() {\n const {\n classes,\n model,\n imageSupport,\n configuration,\n promptEnabled,\n rationaleEnabled,\n toolbarOpts,\n } = this.props;\n const { showKeypad } = this.state;\n const {\n prompt,\n expression,\n equationEditor,\n promptEquationEditor = '8',\n responses,\n responseType,\n rationale,\n spellCheckEnabled,\n errors = {}\n } = model;\n const { rationale: cRationale = {}, prompt: cPrompt = {}, ignoreOrder: cIgnoreOrder = {}, allowTrailingZeros: cAllowTrailingZeros = {}, maxResponseAreas } = configuration || {};\n const validationMessage = generateValidationMessage(configuration, model);\n const { responsesErrors, responseAreasError } = errors;\n\n const classNames = {\n editor: classes.responseEditor,\n mathToolbar: classes.mathToolbar,\n };\n\n const responsesToUse =\n responseType === ResponseTypes.advanced\n ? responses\n : responses.slice(0, 1);\n\n return (\n <div\n ref={(r) => (this.root = r || this.root)}\n className={classes.container}\n >\n {promptEnabled && (\n <InputContainer label={cPrompt.label} className={classes.promptHolder}>\n <EditableHtml\n onFocus={this.onPromptFocus}\n className={classes.prompt}\n markup={prompt || ''}\n onChange={this.onChange('prompt')}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n {rationaleEnabled && (\n <InputContainer\n label={cRationale.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={rationale || ''}\n pluginProps={{\n math: {\n controlledKeypadMode: false\n }\n }}\n onChange={this.onChange('rationale')}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n />\n </InputContainer>\n )}\n <div className={classes.flexContainer} style={{ justifyContent: 'flex-start' }}>\n <h3>Define Response</h3>\n <Tooltip\n classes={{tooltip: classes.tooltip}}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ marginLeft: '5px' }}/>\n </Tooltip>\n </div>\n {responseAreasError && <div className={classes.errorText}>{responseAreasError}</div>}\n\n {responseType === ResponseTypes.advanced && ([\n <InputContainer\n key=\"templateEditorType\"\n label=\"Response Template Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={this.onChange('promptEquationEditor')}\n value={promptEquationEditor}\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 <div className={classes.inputContainer} key=\"templateHolder\">\n <InputLabel className={classes.templateTitle}>\n RESPONSE TEMPLATE\n </InputLabel>\n <MathToolbar\n classNames={classNames}\n allowAnswerBlock\n keypadMode={promptEquationEditor}\n controlledKeypad\n showKeypad={showKeypad}\n latex={prepareForStatic(expression) || ''}\n onChange={this.onChange('expression')}\n onFocus={this.onFocus}\n onDone={this.onDone}\n maxResponseAreas={maxResponseAreas}\n error={responseAreasError}\n />\n </div>\n ])}\n <h4>Define Correct Response</h4>\n <div className={classes.flexContainer}>\n <InputContainer\n label=\"Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={this.onChange('equationEditor')}\n value={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 </div>\n {responsesToUse.map((response, idx) => (\n <Response\n key={response.id}\n mode={equationEditor}\n response={response}\n defaultResponse={responseType === ResponseTypes.simple}\n onResponseChange={this.onResponseChange}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n ))}\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(GeneralConfigBlock);\n"],"file":"general-config-block.js"}
1
+ {"version":3,"sources":["../src/general-config-block.jsx"],"names":["registered","styles","theme","container","marginTop","spacing","unit","marginBottom","display","flexDirection","templateTitle","fontSize","addResponseButton","border","width","flexContainer","alignItems","justifyContent","selectContainer","flex","inputContainer","responseEditor","minWidth","maxWidth","height","minHeight","textAlign","padding","promptHolder","paddingBottom","prompt","paddingTop","blockContainer","margin","blockContainerGeneric","blockResponse","color","background","borderRight","blockResponseGeneric","blockMath","tooltip","whiteSpace","errorText","REGEX","TEMPORARY_RESPONSE_FIELD","ANSWER_BLOCK_REGEX","NEWLINE_BLOCK","NEWLINE_LATEX","prepareForStatic","expression","answerBlocks","replace","prepareForModel","GeneralConfigBlock","props","name","evtOrValue","model","onChange","newModel","target","value","setState","showKeypad","responseAreas","state","root","Object","keys","length","forEach","responseId","idx","el","querySelector","indexEl","MQ","MathQuill","getInterface","StaticMath","textContent","responseIdCounter","newCounter","responses","find","response","id","validation","answer","alternates","concat","index","classes","window","registerEmbed","data","genericAnswerBlock","htmlString","text","latex","handleAnswerBlockDomUpdate","imageSupport","configuration","promptEnabled","rationaleEnabled","toolbarOpts","equationEditor","promptEquationEditor","responseType","rationale","spellCheckEnabled","errors","cRationale","cPrompt","ignoreOrder","cIgnoreOrder","allowTrailingZeros","cAllowTrailingZeros","maxResponseAreas","maxImageWidth","maxImageHeight","validationMessage","responsesErrors","responseAreasError","defaultImageMaxWidth","defaultImageMaxHeight","classNames","editor","mathToolbar","responsesToUse","ResponseTypes","advanced","slice","r","label","onPromptFocus","math","controlledKeypadMode","marginLeft","select","onFocus","onDone","map","simple","onResponseChange","React","Component","PropTypes","object","isRequired","func","bool"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport EditableHtml from '@pie-lib/editable-html';\nimport { InputContainer } from '@pie-lib/config-ui';\nimport { withStyles } from '@material-ui/core/styles';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Response from './response';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport isEqual from 'lodash/isEqual';\nimport { ResponseTypes, generateValidationMessage } from './utils';\nimport MathQuill from '@pie-framework/mathquill';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\n\nlet registered = false;\n\nconst styles = (theme) => ({\n container: {\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n display: 'flex',\n flexDirection: 'column',\n },\n templateTitle: {\n fontSize: '0.85rem',\n },\n addResponseButton: {\n border: '1px solid lightgrey',\n float: 'right',\n width: '150px',\n },\n flexContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n selectContainer: {\n flex: 'initial',\n width: '40%',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n inputContainer: {\n marginBottom: theme.spacing.unit * 4,\n display: 'flex',\n flexDirection: 'column',\n width: '90%',\n },\n responseEditor: {\n display: 'flex',\n justifyContent: 'center',\n width: '100%',\n minWidth: '500px',\n maxWidth: 'inherit',\n height: 'auto',\n minHeight: '130px',\n textAlign: 'left',\n padding: theme.spacing.unit,\n },\n promptHolder: {\n width: '100%',\n paddingBottom: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n paddingTop: theme.spacing.unit * 2,\n width: '100%',\n maxWidth: '600px',\n },\n blockContainer: {\n margin: theme.spacing.unit,\n display: 'inline-flex',\n border: '2px solid grey',\n },\n blockContainerGeneric: {\n margin: theme.spacing.unit / 2,\n },\n blockResponse: {\n flex: 2,\n color: 'grey',\n background: 'lightgrey',\n fontSize: '0.8rem',\n padding: theme.spacing.unit / 2,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n borderRight: '2px solid grey',\n },\n blockResponseGeneric: {\n borderRight: 0,\n },\n blockMath: {\n color: '#bdbdbd',\n padding: theme.spacing.unit / 2,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n flex: 8,\n '& > .mq-math-mode': {\n '& > .mq-hasCursor': {\n '& > .mq-cursor': {\n display: 'none',\n },\n },\n },\n },\n tooltip: {\n fontSize: '12px',\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n errorText: {\n fontSize: '12px',\n color: 'red',\n padding: '5px 0'\n },\n});\n\nconst REGEX = /{{response}}/gm;\nconst TEMPORARY_RESPONSE_FIELD = /\\\\%response\\\\%/gm;\nconst ANSWER_BLOCK_REGEX = /\\\\embed\\{answerBlock\\}\\[r\\d*\\]/g;\nconst NEWLINE_BLOCK = /\\\\embed\\{newLine\\}\\[\\]/g;\nconst NEWLINE_LATEX = /\\\\newline/g;\n\nfunction prepareForStatic(expression) {\n if (expression) {\n let answerBlocks = 1; // assume one at least\n\n return expression.replace(\n REGEX,\n () => `\\\\embed{answerBlock}[r${answerBlocks++}]`\n ).replace(NEWLINE_LATEX, '\\\\embed{newLine}[]');\n }\n}\n\nfunction prepareForModel(expression) {\n if (expression) {\n return expression\n .replace(ANSWER_BLOCK_REGEX, () => '{{response}}')\n .replace(TEMPORARY_RESPONSE_FIELD, () => '{{response}}')\n .replace(NEWLINE_BLOCK, () => '\\\\newline');\n }\n}\n\nclass GeneralConfigBlock extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n model: PropTypes.object.isRequired,\n imageSupport: PropTypes.object,\n configuration: PropTypes.object,\n onChange: PropTypes.func.isRequired,\n promptEnabled: PropTypes.bool,\n rationaleEnabled: PropTypes.bool,\n toolbarOpts: PropTypes.object\n };\n\n constructor(props) {\n super(props);\n\n const responseAreas = {};\n\n if (props.model && props.model.expression) {\n let answerBlocks = 1; // assume one at least\n // build out local state model using responses declared in expression\n\n props.model.expression.replace(REGEX, () => {\n responseAreas[`r${answerBlocks++}`] = {\n value: '',\n };\n });\n }\n\n this.state = {\n showKeypad: false,\n responseAreas,\n responseIdCounter: Object.keys(responseAreas).length,\n };\n }\n\n onChange = (name) => (evtOrValue) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n if (typeof evtOrValue === 'object') {\n newModel[name] = evtOrValue.target.value;\n } else {\n newModel[name] = evtOrValue;\n }\n\n if (name === 'expression') {\n newModel[name] = prepareForModel(evtOrValue);\n }\n\n onChange(newModel);\n };\n\n onDone = () => {\n this.setState({ showKeypad: false });\n };\n\n onFocus = () => {\n this.setState({ showKeypad: true });\n };\n\n onPromptFocus = () => {\n this.setState({ showKeypad: false });\n };\n\n UNSAFE_componentWillMount() {\n const { classes } = this.props;\n\n if (typeof window !== 'undefined') {\n // const MathQuill = require('@pie-framework/mathquill');\n let MQ = MathQuill.getInterface(2);\n\n if (!registered) {\n MQ.registerEmbed('answerBlock', (data) => {\n // not used until we implement individual answer tracking\n // const individualAnswerBlock = `<div class=\"${classes.blockContainer}\">\n // <div class=\"${classes.blockResponse}\" id=\"${data}Index\">R</div>\n // <div class=\"${classes.blockMath}\">\n // <span id=\"${data}\"></span>\n // </div>\n // </div>`;\n\n const genericAnswerBlock = `<div class=\"${cx(\n classes.blockContainer,\n classes.blockContainerGeneric\n )}\">\n <div class=\"${cx(\n classes.blockResponse,\n classes.blockResponseGeneric\n )}\" id=\"${data}Index\">Response</div>\n </div>`;\n\n return {\n htmlString: genericAnswerBlock,\n text: () => 'text',\n latex: () => `\\\\embed{answerBlock}[${data}]`,\n };\n });\n\n registered = true;\n }\n }\n }\n\n componentDidMount() {\n this.handleAnswerBlockDomUpdate();\n }\n\n componentDidUpdate() {\n this.handleAnswerBlockDomUpdate();\n }\n\n handleAnswerBlockDomUpdate = () => {\n const { model } = this.props;\n\n const responseAreas = {};\n\n if (model && model.expression) {\n let answerBlocks = 1; // assume one at least\n // build out local state model using responses declared in expression\n\n model.expression.replace(REGEX, () => {\n responseAreas[`r${answerBlocks++}`] = {\n value: '',\n };\n });\n }\n\n if (!isEqual(responseAreas, this.state.responseAreas)) {\n this.setState(\n {\n responseAreas,\n },\n () => {\n if (this.root && Object.keys(responseAreas).length) {\n Object.keys(responseAreas).forEach((responseId, idx) => {\n const el = this.root.querySelector(`#${responseId}`);\n const indexEl = this.root.querySelector(`#${responseId}Index`);\n\n if (el) {\n // const MathQuill = require('@pie-framework/mathquill');\n let MQ = MathQuill.getInterface(2);\n // We no longer have individual answers, so we cannot set text content of blocks\n // el.textContent = response.answer;\n MQ.StaticMath(el);\n indexEl.textContent = `R${idx + 1}`;\n }\n });\n }\n }\n );\n }\n };\n\n onAddResponse = () => {\n const { model, onChange } = this.props;\n const { responseIdCounter } = this.state;\n const newModel = { ...model };\n\n let newCounter = responseIdCounter;\n\n while (model.responses.find((response) => response.id === newCounter)) {\n newCounter++;\n }\n\n const response = {\n id: newCounter,\n validation: 'literal',\n answer: '',\n alternates: {},\n };\n\n newModel.responses = newModel.responses.concat(response);\n onChange(newModel);\n\n this.setState({\n responseIdCounter: response.id,\n });\n };\n\n onResponseChange = (response, index) => {\n const { model, onChange } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onChange(newModel);\n };\n\n render() {\n const {\n classes,\n model,\n imageSupport,\n configuration,\n promptEnabled,\n rationaleEnabled,\n toolbarOpts,\n } = this.props;\n const { showKeypad } = this.state;\n const {\n prompt,\n expression,\n equationEditor,\n promptEquationEditor = '8',\n responses,\n responseType,\n rationale,\n spellCheckEnabled,\n errors = {}\n } = model;\n const {\n rationale: cRationale = {},\n prompt: cPrompt = {},\n ignoreOrder: cIgnoreOrder = {},\n allowTrailingZeros: cAllowTrailingZeros = {},\n maxResponseAreas,\n maxImageWidth = {},\n maxImageHeight = {}\n } = configuration || {};\n const validationMessage = generateValidationMessage(configuration, model);\n const { responsesErrors, responseAreasError } = errors;\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const classNames = {\n editor: classes.responseEditor,\n mathToolbar: classes.mathToolbar,\n };\n\n const responsesToUse =\n responseType === ResponseTypes.advanced\n ? responses\n : responses.slice(0, 1);\n\n return (\n <div\n ref={(r) => (this.root = r || this.root)}\n className={classes.container}\n >\n {promptEnabled && (\n <InputContainer label={cPrompt.label} className={classes.promptHolder}>\n <EditableHtml\n onFocus={this.onPromptFocus}\n className={classes.prompt}\n markup={prompt || ''}\n onChange={this.onChange('prompt')}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n />\n </InputContainer>\n )}\n {rationaleEnabled && (\n <InputContainer\n label={cRationale.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={rationale || ''}\n pluginProps={{\n math: {\n controlledKeypadMode: false\n }\n }}\n onChange={this.onChange('rationale')}\n imageSupport={imageSupport}\n nonEmpty={false}\n toolbarOpts={toolbarOpts}\n spellCheck={spellCheckEnabled}\n maxImageWidth={maxImageWidth && maxImageWidth.rationale || defaultImageMaxWidth}\n maxImageHeight={maxImageHeight && maxImageHeight.rationale || defaultImageMaxHeight}\n />\n </InputContainer>\n )}\n <div className={classes.flexContainer} style={{ justifyContent: 'flex-start' }}>\n <h3>Define Response</h3>\n <Tooltip\n classes={{tooltip: classes.tooltip}}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} style={{ marginLeft: '5px' }}/>\n </Tooltip>\n </div>\n {responseAreasError && <div className={classes.errorText}>{responseAreasError}</div>}\n\n {responseType === ResponseTypes.advanced && ([\n <InputContainer\n key=\"templateEditorType\"\n label=\"Response Template Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={this.onChange('promptEquationEditor')}\n value={promptEquationEditor}\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 <div className={classes.inputContainer} key=\"templateHolder\">\n <InputLabel className={classes.templateTitle}>\n RESPONSE TEMPLATE\n </InputLabel>\n <MathToolbar\n classNames={classNames}\n allowAnswerBlock\n keypadMode={promptEquationEditor}\n controlledKeypad\n showKeypad={showKeypad}\n latex={prepareForStatic(expression) || ''}\n onChange={this.onChange('expression')}\n onFocus={this.onFocus}\n onDone={this.onDone}\n maxResponseAreas={maxResponseAreas}\n error={responseAreasError}\n />\n </div>\n ])}\n <h4>Define Correct Response</h4>\n <div className={classes.flexContainer}>\n <InputContainer\n label=\"Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={this.onChange('equationEditor')}\n value={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 </div>\n {responsesToUse.map((response, idx) => (\n <Response\n key={response.id}\n mode={equationEditor}\n response={response}\n defaultResponse={responseType === ResponseTypes.simple}\n onResponseChange={this.onResponseChange}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n ))}\n </div>\n );\n }\n}\n\nexport default withStyles(styles)(GeneralConfigBlock);\n"],"file":"general-config-block.js"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/math-inline-configure",
3
3
  "private": true,
4
- "version": "5.6.21",
4
+ "version": "6.0.0",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
@@ -11,8 +11,8 @@
11
11
  "@material-ui/icons": "^3.0.1",
12
12
  "@pie-framework/mathquill": "^1.1.0",
13
13
  "@pie-framework/pie-configure-events": "^1.2.0",
14
- "@pie-lib/config-ui": "^10.13.3",
15
- "@pie-lib/editable-html": "^7.22.6",
14
+ "@pie-lib/config-ui": "^11.0.1",
15
+ "@pie-lib/editable-html": "^8.1.0",
16
16
  "@pie-lib/math-input": "^6.6.10",
17
17
  "@pie-lib/math-toolbar": "^1.9.4",
18
18
  "classnames": "^2.2.5",
@@ -178,6 +178,48 @@
178
178
  "type": "number",
179
179
  "title": "maxResponseAreas"
180
180
  },
181
+ "maxImageWidth": {
182
+ "title": "ConfigureMaxImageDimensionsProp",
183
+ "type": "object",
184
+ "properties": {
185
+ "teacherInstructions": {
186
+ "description": "Indicates the max dimension for images in teacher instructions",
187
+ "type": "number",
188
+ "title": "teacherInstructions"
189
+ },
190
+ "prompt": {
191
+ "description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
192
+ "type": "number",
193
+ "title": "prompt"
194
+ },
195
+ "rationale": {
196
+ "description": "Indicates the max dimension for images in rationale",
197
+ "type": "number",
198
+ "title": "rationale"
199
+ }
200
+ }
201
+ },
202
+ "maxImageHeight": {
203
+ "title": "ConfigureMaxImageDimensionsProp",
204
+ "type": "object",
205
+ "properties": {
206
+ "teacherInstructions": {
207
+ "description": "Indicates the max dimension for images in teacher instructions",
208
+ "type": "number",
209
+ "title": "teacherInstructions"
210
+ },
211
+ "prompt": {
212
+ "description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
213
+ "type": "number",
214
+ "title": "prompt"
215
+ },
216
+ "rationale": {
217
+ "description": "Indicates the max dimension for images in rationale",
218
+ "type": "number",
219
+ "title": "rationale"
220
+ }
221
+ }
222
+ },
181
223
  "showPrompt": {
182
224
  "description": "Determines whether prompt field will be displayed or not",
183
225
  "default": true,
@@ -234,6 +276,27 @@
234
276
  "title": "enabled"
235
277
  }
236
278
  }
279
+ },
280
+ "ConfigureMaxImageDimensionsProp": {
281
+ "title": "ConfigureMaxImageDimensionsProp",
282
+ "type": "object",
283
+ "properties": {
284
+ "teacherInstructions": {
285
+ "description": "Indicates the max dimension for images in teacher instructions",
286
+ "type": "number",
287
+ "title": "teacherInstructions"
288
+ },
289
+ "prompt": {
290
+ "description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
291
+ "type": "number",
292
+ "title": "prompt"
293
+ },
294
+ "rationale": {
295
+ "description": "Indicates the max dimension for images in rationale",
296
+ "type": "number",
297
+ "title": "rationale"
298
+ }
299
+ }
237
300
  }
238
301
  },
239
302
  "$schema": "http://json-schema.org/draft-07/schema#"
@@ -136,6 +136,38 @@ Indicates the value of the item if it affects config-ui
136
136
 
137
137
  Maximum number of response areas
138
138
 
139
+ # `maxImageWidth` (object)
140
+
141
+ Properties of the `maxImageWidth` object:
142
+
143
+ ## `teacherInstructions` (number)
144
+
145
+ Indicates the max dimension for images in teacher instructions
146
+
147
+ ## `prompt` (number)
148
+
149
+ Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
150
+
151
+ ## `rationale` (number)
152
+
153
+ Indicates the max dimension for images in rationale
154
+
155
+ # `maxImageHeight` (object)
156
+
157
+ Properties of the `maxImageHeight` object:
158
+
159
+ ## `teacherInstructions` (number)
160
+
161
+ Indicates the max dimension for images in teacher instructions
162
+
163
+ ## `prompt` (number)
164
+
165
+ Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
166
+
167
+ ## `rationale` (number)
168
+
169
+ Indicates the max dimension for images in rationale
170
+
139
171
  # `showPrompt` (boolean)
140
172
 
141
173
  Determines whether prompt field will be displayed or not
@@ -187,4 +219,20 @@ Indicates the label for the item that has to be displayed in the Settings Panel
187
219
  ### `enabled` (boolean)
188
220
 
189
221
  Indicates the value of the item if it affects config-ui
190
- (eg.: if item is a switch and displaying an input on the config-ui depends on the switch value: on/off)
222
+ (eg.: if item is a switch and displaying an input on the config-ui depends on the switch value: on/off)
223
+
224
+ ## `ConfigureMaxImageDimensionsProp` (object)
225
+
226
+ Properties of the `ConfigureMaxImageDimensionsProp` object:
227
+
228
+ ### `teacherInstructions` (number)
229
+
230
+ Indicates the max dimension for images in teacher instructions
231
+
232
+ ### `prompt` (number)
233
+
234
+ Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
235
+
236
+ ### `rationale` (number)
237
+
238
+ Indicates the max dimension for images in rationale
@@ -518,6 +518,27 @@
518
518
  }
519
519
  }
520
520
  },
521
+ "ConfigureMaxImageDimensionsProp": {
522
+ "title": "ConfigureMaxImageDimensionsProp",
523
+ "type": "object",
524
+ "properties": {
525
+ "teacherInstructions": {
526
+ "description": "Indicates the max dimension for images in teacher instructions",
527
+ "type": "number",
528
+ "title": "teacherInstructions"
529
+ },
530
+ "prompt": {
531
+ "description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
532
+ "type": "number",
533
+ "title": "prompt"
534
+ },
535
+ "rationale": {
536
+ "description": "Indicates the max dimension for images in rationale",
537
+ "type": "number",
538
+ "title": "rationale"
539
+ }
540
+ }
541
+ },
521
542
  "ComplexFeedbackType": {
522
543
  "title": "ComplexFeedbackType",
523
544
  "type": "object",
@@ -266,6 +266,22 @@ Indicates the label for the item that has to be displayed in the Settings Panel
266
266
  Indicates the value of the item if it affects config-ui
267
267
  (eg.: if item is a switch and displaying an input on the config-ui depends on the switch value: on/off)
268
268
 
269
+ ## `ConfigureMaxImageDimensionsProp` (object)
270
+
271
+ Properties of the `ConfigureMaxImageDimensionsProp` object:
272
+
273
+ ### `teacherInstructions` (number)
274
+
275
+ Indicates the max dimension for images in teacher instructions
276
+
277
+ ### `prompt` (number)
278
+
279
+ Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
280
+
281
+ ### `rationale` (number)
282
+
283
+ Indicates the max dimension for images in rationale
284
+
269
285
  ## `ComplexFeedbackType` (object)
270
286
 
271
287
  Properties of the `ComplexFeedbackType` object:
@@ -44,39 +44,47 @@ var SimpleQuestionBlockRaw = /*#__PURE__*/function (_React$Component) {
44
44
 
45
45
  var _super = _createSuper(SimpleQuestionBlockRaw);
46
46
 
47
- function SimpleQuestionBlockRaw() {
47
+ function SimpleQuestionBlockRaw(props) {
48
48
  var _this;
49
49
 
50
50
  (0, _classCallCheck2["default"])(this, SimpleQuestionBlockRaw);
51
-
52
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
53
- args[_key] = arguments[_key];
54
- }
55
-
56
- _this = _super.call.apply(_super, [this].concat(args));
57
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "state", {
58
- showKeypad: true
51
+ _this = _super.call(this, props);
52
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "mathToolBarContainsTarget", function (e) {
53
+ return document.getElementById(_this.mathToolBarId).contains(e.target);
54
+ });
55
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClick", function (e) {
56
+ try {
57
+ if (!_this.mathToolBarContainsTarget(e)) {
58
+ _this.setState({
59
+ showKeypad: false
60
+ });
61
+ }
62
+ } catch (e) {// console.log(e.toString());
63
+ }
59
64
  });
60
65
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onFocus", function () {
61
66
  return _this.setState({
62
67
  showKeypad: true
63
68
  });
64
69
  });
65
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onBlur", function (e) {
66
- var _ref = e || {},
67
- relatedTarget = _ref.relatedTarget,
68
- currentTarget = _ref.currentTarget;
69
-
70
- if (!relatedTarget || !currentTarget || relatedTarget.offsetParent !== currentTarget.offsetParent) {
71
- _this.setState({
72
- showKeypad: false
73
- });
74
- }
75
- });
70
+ _this.state = {
71
+ showKeypad: true
72
+ };
73
+ _this.mathToolBarId = "math-toolbar-".concat(new Date().getTime());
76
74
  return _this;
77
75
  }
78
76
 
79
77
  (0, _createClass2["default"])(SimpleQuestionBlockRaw, [{
78
+ key: "componentDidMount",
79
+ value: function componentDidMount() {
80
+ window.addEventListener('click', this.handleClick);
81
+ }
82
+ }, {
83
+ key: "componentWillUnmount",
84
+ value: function componentWillUnmount() {
85
+ window.removeEventListener('click', this.handleClick);
86
+ }
87
+ }, {
80
88
  key: "render",
81
89
  value: function render() {
82
90
  var _cx;
@@ -89,19 +97,16 @@ var SimpleQuestionBlockRaw = /*#__PURE__*/function (_React$Component) {
89
97
  emptyResponse = _this$props.emptyResponse,
90
98
  onSimpleResponseChange = _this$props.onSimpleResponseChange;
91
99
 
92
- var _ref2 = model || {},
93
- config = _ref2.config,
94
- disabled = _ref2.disabled,
95
- correctness = _ref2.correctness,
96
- view = _ref2.view;
100
+ var _ref = model || {},
101
+ config = _ref.config,
102
+ disabled = _ref.disabled,
103
+ correctness = _ref.correctness;
97
104
 
98
105
  if (!config) {
99
106
  return;
100
107
  }
101
108
 
102
109
  var correct = correctness && correctness.correct;
103
- var showAsCorrect = !emptyResponse && (showCorrect || correct);
104
- var showAsIncorrect = !emptyResponse && !correct && !showCorrect && !view;
105
110
  var responses = config.responses,
106
111
  equationEditor = config.equationEditor;
107
112
  return /*#__PURE__*/_react["default"].createElement("div", {
@@ -110,7 +115,9 @@ var SimpleQuestionBlockRaw = /*#__PURE__*/function (_React$Component) {
110
115
  className: (0, _classnames["default"])(classes["static"], (_cx = {}, (0, _defineProperty2["default"])(_cx, classes.incorrect, !emptyResponse && !correct && !showCorrect), (0, _defineProperty2["default"])(_cx, classes.correct, !emptyResponse && (correct || showCorrect)), _cx))
111
116
  }, /*#__PURE__*/_react["default"].createElement(_mathInput.mq.Static, {
112
117
  latex: showCorrect ? responses && responses.length && responses[0].answer : session.response || ''
113
- })) : /*#__PURE__*/_react["default"].createElement(_mathToolbar.MathToolbar, {
118
+ })) : /*#__PURE__*/_react["default"].createElement("div", {
119
+ id: this.mathToolBarId
120
+ }, /*#__PURE__*/_react["default"].createElement(_mathToolbar.MathToolbar, {
114
121
  classNames: {
115
122
  editor: classes.responseEditor
116
123
  },
@@ -119,11 +126,10 @@ var SimpleQuestionBlockRaw = /*#__PURE__*/function (_React$Component) {
119
126
  onChange: onSimpleResponseChange,
120
127
  onDone: function onDone() {},
121
128
  onFocus: this.onFocus,
122
- onBlur: this.onBlur,
123
129
  controlledKeypad: true,
124
130
  showKeypad: this.state.showKeypad,
125
131
  hideDoneButton: true
126
- }));
132
+ })));
127
133
  }
128
134
  }]);
129
135
  return SimpleQuestionBlockRaw;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/simple-question-block.jsx"],"names":["SimpleQuestionBlockRaw","showKeypad","setState","e","relatedTarget","currentTarget","offsetParent","props","classes","model","showCorrect","session","emptyResponse","onSimpleResponseChange","config","disabled","correctness","view","correct","showAsCorrect","showAsIncorrect","responses","equationEditor","expression","incorrect","length","answer","response","editor","responseEditor","onFocus","onBlur","state","React","Component","PropTypes","object","func","isRequired","bool","SimpleQuestionBlock","theme","display","justifyContent","width","maxWidth","height","textAlign","padding","spacing","unit","border","color","primaryLight","marginTop","marginBottom","text","background","fontSize","letterSpacing"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport { mq } from '@pie-lib/math-input';\nimport cx from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\n\nexport class SimpleQuestionBlockRaw extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n onSimpleResponseChange: PropTypes.func,\n model: PropTypes.object.isRequired,\n emptyResponse: PropTypes.bool,\n session: PropTypes.object.isRequired,\n showCorrect: PropTypes.bool\n };\n\n state = {\n showKeypad: true\n };\n\n onFocus = () => this.setState({ showKeypad: true });\n\n onBlur = (e) => {\n const { relatedTarget, currentTarget } = e || {};\n\n if (!relatedTarget || !currentTarget || (relatedTarget.offsetParent !== currentTarget.offsetParent)) {\n this.setState({ showKeypad: false });\n }\n };\n\n render() {\n const {\n classes,\n model,\n showCorrect,\n session,\n emptyResponse,\n onSimpleResponseChange\n } = this.props;\n const { config, disabled, correctness, view } = model || {};\n\n if (!config) {\n return;\n }\n\n const correct = correctness && correctness.correct;\n const showAsCorrect = !emptyResponse && (showCorrect || correct);\n const showAsIncorrect = !emptyResponse && !correct && !showCorrect && !view;\n const { responses, equationEditor } = config;\n\n return (\n <div className={classes.expression}>\n {showCorrect || disabled ? (\n <div\n className={cx(classes.static, {\n [classes.incorrect]: !emptyResponse && !correct && !showCorrect,\n [classes.correct]: !emptyResponse && (correct || showCorrect)\n })}\n >\n <mq.Static\n latex={\n showCorrect ? (responses && responses.length && responses[0].answer) : (session.response || '')\n }\n />\n </div>\n ) : (\n <MathToolbar\n classNames={{ editor: classes.responseEditor }}\n latex={session.response || ''}\n keypadMode={equationEditor}\n onChange={onSimpleResponseChange}\n onDone={() => {}}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n controlledKeypad={true}\n showKeypad={this.state.showKeypad}\n hideDoneButton={true}\n />\n )}\n </div>\n );\n }\n}\nconst SimpleQuestionBlock = withStyles(theme => ({\n responseEditor: {\n display: 'flex',\n justifyContent: 'center',\n width: 'auto',\n maxWidth: 'fit-content',\n height: 'auto',\n textAlign: 'left',\n padding: theme.spacing.unit,\n '&.mq-math-mode': {\n border: `1px solid ${color.primaryLight()}`\n }\n },\n expression: {\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n padding: theme.spacing.unit\n },\n static: {\n color: color.text(),\n background: color.background(),\n border: `1px solid ${color.primaryLight()}`,\n width: 'fit-content',\n fontSize: '1rem',\n padding: theme.spacing.unit / 2,\n '& > .mq-math-mode': {\n '& > .mq-hasCursor': {\n '& > .mq-cursor': {\n display: 'none'\n }\n }\n }\n },\n correct: {\n border: `2px solid ${color.correct()} !important`,\n padding: theme.spacing.unit,\n letterSpacing: '0.5px',\n },\n incorrect: {\n border: `2px solid ${color.incorrect()} !important`,\n padding: theme.spacing.unit,\n letterSpacing: '0.5px',\n }\n}))(SimpleQuestionBlockRaw);\n\nexport default SimpleQuestionBlock;\n"],"file":"simple-question-block.js"}
1
+ {"version":3,"sources":["../src/simple-question-block.jsx"],"names":["SimpleQuestionBlockRaw","props","e","document","getElementById","mathToolBarId","contains","target","mathToolBarContainsTarget","setState","showKeypad","state","Date","getTime","window","addEventListener","handleClick","removeEventListener","classes","model","showCorrect","session","emptyResponse","onSimpleResponseChange","config","disabled","correctness","correct","responses","equationEditor","expression","incorrect","length","answer","response","editor","responseEditor","onFocus","React","Component","PropTypes","object","func","isRequired","bool","SimpleQuestionBlock","theme","display","justifyContent","width","maxWidth","height","textAlign","padding","spacing","unit","border","color","primaryLight","marginTop","marginBottom","text","background","fontSize","letterSpacing"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport { mq } from '@pie-lib/math-input';\nimport cx from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\n\nexport class SimpleQuestionBlockRaw extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n onSimpleResponseChange: PropTypes.func,\n model: PropTypes.object.isRequired,\n emptyResponse: PropTypes.bool,\n session: PropTypes.object.isRequired,\n showCorrect: PropTypes.bool\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n showKeypad: true\n };\n this.mathToolBarId = `math-toolbar-${new Date().getTime()}`;\n }\n\n componentDidMount() {\n window.addEventListener('click', this.handleClick);\n }\n\n componentWillUnmount() {\n window.removeEventListener('click', this.handleClick);\n }\n\n mathToolBarContainsTarget = e => document.getElementById(this.mathToolBarId).contains(e.target);\n\n handleClick = (e) => {\n try {\n if (!this.mathToolBarContainsTarget(e)) {\n this.setState({ showKeypad: false });\n }\n } catch (e) {\n // console.log(e.toString());\n }\n }\n\n onFocus = () => this.setState({ showKeypad: true })\n\n render() {\n const {\n classes,\n model,\n showCorrect,\n session,\n emptyResponse,\n onSimpleResponseChange\n } = this.props;\n const { config, disabled, correctness } = model || {};\n\n if (!config) {\n return;\n }\n\n const correct = correctness && correctness.correct;\n const { responses, equationEditor } = config;\n\n return (\n <div className={classes.expression}>\n {showCorrect || disabled ? (\n <div\n className={cx(classes.static, {\n [classes.incorrect]: !emptyResponse && !correct && !showCorrect,\n [classes.correct]: !emptyResponse && (correct || showCorrect)\n })}\n >\n <mq.Static\n latex={\n showCorrect ? (responses && responses.length && responses[0].answer) : (session.response || '')\n }\n />\n </div>\n ) : (\n <div id={this.mathToolBarId}>\n <MathToolbar\n classNames={{ editor: classes.responseEditor }}\n latex={session.response || ''}\n keypadMode={equationEditor}\n onChange={onSimpleResponseChange}\n onDone={() => {\n }}\n onFocus={this.onFocus}\n controlledKeypad={true}\n showKeypad={this.state.showKeypad}\n hideDoneButton={true}\n />\n </div>\n )}\n </div>\n );\n }\n}\n\nconst SimpleQuestionBlock = withStyles(theme => ({\n responseEditor: {\n display: 'flex',\n justifyContent: 'center',\n width: 'auto',\n maxWidth: 'fit-content',\n height: 'auto',\n textAlign: 'left',\n padding: theme.spacing.unit,\n '&.mq-math-mode': {\n border: `1px solid ${color.primaryLight()}`\n }\n },\n expression: {\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n padding: theme.spacing.unit\n },\n static: {\n color: color.text(),\n background: color.background(),\n border: `1px solid ${color.primaryLight()}`,\n width: 'fit-content',\n fontSize: '1rem',\n padding: theme.spacing.unit / 2,\n '& > .mq-math-mode': {\n '& > .mq-hasCursor': {\n '& > .mq-cursor': {\n display: 'none'\n }\n }\n }\n },\n correct: {\n border: `2px solid ${color.correct()} !important`,\n padding: theme.spacing.unit,\n letterSpacing: '0.5px',\n },\n incorrect: {\n border: `2px solid ${color.incorrect()} !important`,\n padding: theme.spacing.unit,\n letterSpacing: '0.5px',\n }\n}))(SimpleQuestionBlockRaw);\n\nexport default SimpleQuestionBlock;\n"],"file":"simple-question-block.js"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "repository": "pie-framework/pie-elements",
7
- "version": "5.9.12",
7
+ "version": "6.0.0",
8
8
  "main": "lib/index.js",
9
9
  "description": "",
10
10
  "scripts": {
@@ -28,7 +28,7 @@
28
28
  },
29
29
  "author": "",
30
30
  "license": "ISC",
31
- "gitHead": "2b16a41c0627a27ee758af9285afde4d226dc12b",
31
+ "gitHead": "ff92cee6f9a7bf3f3dc75dbafd2263710f0a6b3d",
32
32
  "module": "src/index.js",
33
33
  "exports": {
34
34
  ".": "./src/index.js",