@pie-element/math-inline 6.9.3-next.45 → 6.9.3-next.57

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.
@@ -108,6 +108,8 @@ var Configure = /*#__PURE__*/function (_React$Component) {
108
108
  var _ref = configuration || {},
109
109
  _ref$allowTrailingZer = _ref.allowTrailingZeros,
110
110
  allowTrailingZeros = _ref$allowTrailingZer === void 0 ? {} : _ref$allowTrailingZer,
111
+ _ref$contentDimension = _ref.contentDimensions,
112
+ contentDimensions = _ref$contentDimension === void 0 ? {} : _ref$contentDimension,
111
113
  _ref$feedback = _ref.feedback,
112
114
  feedback = _ref$feedback === void 0 ? {} : _ref$feedback,
113
115
  _ref$ignoreOrder = _ref.ignoreOrder,
@@ -164,6 +166,7 @@ var Configure = /*#__PURE__*/function (_React$Component) {
164
166
  rubricEnabled: (withRubric === null || withRubric === void 0 ? void 0 : withRubric.settings) && toggle(withRubric === null || withRubric === void 0 ? void 0 : withRubric.label)
165
167
  };
166
168
  return /*#__PURE__*/_react["default"].createElement(_configUi.layout.ConfigLayout, {
169
+ dimensions: contentDimensions,
167
170
  hideSettings: settingsPanelDisabled,
168
171
  settings: /*#__PURE__*/_react["default"].createElement(Panel, {
169
172
  model: model,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/configure.jsx"],"names":["log","Panel","settings","toggle","radio","styles","theme","promptHolder","width","paddingTop","spacing","unit","marginBottom","Configure","model","props","onModelChanged","teacherInstructions","feedback","classes","imageSupport","configuration","onConfigurationChanged","uploadSoundSupport","allowTrailingZeros","ignoreOrder","maxImageWidth","maxImageHeight","prompt","rationale","responseType","scoringType","settingsPanelDisabled","spellCheck","studentInstructions","withRubric","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","toolbarOpts","position","defaultImageMaxWidth","defaultImageMaxHeight","panelSettings","label","ResponseTypes","simple","advanced","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","changeTeacherInstructions","language","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 { FeedbackConfig, settings, layout, InputContainer } 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 promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\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 uploadSoundSupport: 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, uploadSoundSupport } =\n this.props;\n const {\n allowTrailingZeros = {},\n feedback = {},\n ignoreOrder = {},\n maxImageWidth = {},\n maxImageHeight = {},\n prompt = {},\n rationale = {},\n responseType = {},\n scoringType = {},\n settingsPanelDisabled,\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n withRubric = {},\n } = configuration || {};\n const {\n feedbackEnabled,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n } = model || {};\n\n log('[render] model', model);\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const panelSettings = {\n responseType: responseType.settings && radio(responseType.label, [ResponseTypes.simple, ResponseTypes.advanced]),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n 'ignoreOrder.enabled': ignoreOrder.settings && toggle(ignoreOrder.label),\n 'allowTrailingZeros.enabled': allowTrailingZeros.settings && toggle(allowTrailingZeros.label),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\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 uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n <GeneralConfigBlock\n imageSupport={imageSupport}\n uploadSoundSupport={uploadSoundSupport}\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 feedback={model.feedback} onChange={this.onFeedbackChange} toolbarOpts={toolbarOpts} />\n )}\n </layout.ConfigLayout>\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","promptHolder","width","paddingTop","spacing","unit","marginBottom","Configure","model","props","onModelChanged","teacherInstructions","feedback","classes","imageSupport","configuration","onConfigurationChanged","uploadSoundSupport","allowTrailingZeros","contentDimensions","ignoreOrder","maxImageWidth","maxImageHeight","prompt","rationale","responseType","scoringType","settingsPanelDisabled","spellCheck","studentInstructions","withRubric","feedbackEnabled","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","toolbarOpts","position","defaultImageMaxWidth","defaultImageMaxHeight","panelSettings","label","ResponseTypes","simple","advanced","panelProperties","studentInstructionsEnabled","rubricEnabled","config","Settings","Properties","changeTeacherInstructions","language","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 { FeedbackConfig, settings, layout, InputContainer } 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 promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\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 uploadSoundSupport: 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, uploadSoundSupport } =\n this.props;\n const {\n allowTrailingZeros = {},\n contentDimensions = {},\n feedback = {},\n ignoreOrder = {},\n maxImageWidth = {},\n maxImageHeight = {},\n prompt = {},\n rationale = {},\n responseType = {},\n scoringType = {},\n settingsPanelDisabled,\n spellCheck = {},\n studentInstructions = {},\n teacherInstructions = {},\n withRubric = {},\n } = configuration || {};\n const {\n feedbackEnabled,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n } = model || {};\n\n log('[render] model', model);\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const panelSettings = {\n responseType: responseType.settings && radio(responseType.label, [ResponseTypes.simple, ResponseTypes.advanced]),\n feedbackEnabled: feedback.settings && toggle(feedback.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n };\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n studentInstructionsEnabled: studentInstructions.settings && toggle(studentInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),\n 'ignoreOrder.enabled': ignoreOrder.settings && toggle(ignoreOrder.label),\n 'allowTrailingZeros.enabled': allowTrailingZeros.settings && toggle(allowTrailingZeros.label),\n rubricEnabled: withRubric?.settings && toggle(withRubric?.label),\n };\n\n return (\n <layout.ConfigLayout\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(model) => onModelChanged(model)}\n onChangeConfiguration={(config) => onConfigurationChanged(config)}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\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 uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n />\n </InputContainer>\n )}\n\n <GeneralConfigBlock\n imageSupport={imageSupport}\n uploadSoundSupport={uploadSoundSupport}\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 feedback={model.feedback} onChange={this.onFeedbackChange} toolbarOpts={toolbarOpts} />\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles(styles)(Configure);\n"],"file":"configure.js"}
@@ -73,6 +73,7 @@ var styles = function styles(theme) {
73
73
  responseContainer: {
74
74
  marginBottom: theme.spacing.unit * 2.5,
75
75
  width: '100%',
76
+ minWidth: '548px',
76
77
  border: "1px solid ".concat(theme.palette.grey[700]),
77
78
  display: 'flex',
78
79
  flexDirection: 'column',
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/response.jsx"],"names":["INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED","styles","theme","responseContainer","marginBottom","spacing","unit","width","border","palette","grey","display","flexDirection","justifyContent","cardContent","paddingBottom","title","fontWeight","fontSize","flex","selectContainer","inputContainer","titleBar","alignItems","responseEditor","minWidth","maxWidth","height","minHeight","mathToolbar","alternateButton","removeAlternateButton","marginLeft","color","errorText","typography","error","main","paddingTop","Response","props","name","evt","response","onResponseChange","index","newResponse","target","value","checked","answer","alternateId","alternates","alternateIdCounter","state","setState","showKeypad","openCount","alternatesLength","Object","keys","length","classes","mode","defaultResponse","cAllowTrailingZeros","cIgnoreOrder","validation","ignoreOrder","allowTrailingZeros","hasAlternates","classNames","editor","select","onChange","flexContainer","enabled","label","onLiteralOptionsChange","onAnswerChange","onFocus","onDone","map","altIdx","alternateBar","onRemoveAlternate","onAlternateAnswerChange","onAlternateFocus","onAlternateDone","onAddAlternate","React","Component","PropTypes","object","isRequired","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/config-ui';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport Button from '@material-ui/core/Button';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Typography from '@material-ui/core/Typography';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport { withStyles } from '@material-ui/core/styles';\nimport cx from 'classnames';\n\n// TODO once we support individual response correctness, we need to remove this constant\nconst INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED = false;\n\nconst styles = (theme) => ({\n responseContainer: {\n marginBottom: theme.spacing.unit * 2.5,\n width: '100%',\n border: `1px solid ${theme.palette.grey[700]}`,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n },\n cardContent: {\n paddingBottom: `${theme.spacing.unit * 2}px !important`,\n },\n title: {\n fontWeight: 700,\n fontSize: '1.2rem',\n flex: 3,\n },\n selectContainer: {\n flex: 2,\n },\n inputContainer: {\n marginBottom: theme.spacing.unit * 2,\n },\n titleBar: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n responseEditor: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minWidth: '500px',\n maxWidth: '900px',\n height: 'auto',\n minHeight: '40px',\n },\n mathToolbar: {\n width: '100%',\n },\n alternateButton: {\n border: `1px solid ${theme.palette.grey['A100']}`,\n },\n removeAlternateButton: {\n marginLeft: theme.spacing.unit * 2,\n border: `1px solid ${theme.palette.grey['A100']}`,\n color: 'gray',\n fontSize: '0.8rem',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n});\n\nclass Response extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n defaultResponse: PropTypes.bool,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.number,\n onResponseChange: PropTypes.func.isRequired,\n response: PropTypes.object.isRequired,\n cIgnoreOrder: PropTypes.object.isRequired,\n cAllowTrailingZeros: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n defaultResponse: false,\n mode: 'miscellaneous',\n };\n\n constructor(props) {\n super(props);\n\n const { response: { alternates } = {} } = props || {};\n const alternatesLength = Object.keys(alternates || {}).length;\n\n this.state = {\n alternateIdCounter: alternatesLength + 1,\n showKeypad: {\n openCount: 0,\n main: false,\n },\n };\n }\n\n onChange = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.value;\n\n onResponseChange(newResponse, index);\n };\n\n onConfigChanged = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.checked;\n\n onResponseChange(newResponse, index);\n };\n\n onLiteralOptionsChange = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = !response[name];\n\n onResponseChange(newResponse, index);\n };\n\n onAnswerChange = (answer) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse.answer = answer;\n\n onResponseChange(newResponse, index);\n };\n\n onAlternateAnswerChange = (alternateId) => (answer) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse.alternates[alternateId] = answer;\n\n onResponseChange(newResponse, index);\n };\n\n onAddAlternate = () => {\n const { response, onResponseChange, index } = this.props;\n const { alternateIdCounter } = this.state;\n const newResponse = { ...response };\n\n if (!newResponse.alternates) {\n newResponse.alternates = {};\n }\n\n newResponse.alternates[alternateIdCounter] = '';\n\n onResponseChange(newResponse, index);\n\n this.setState({\n alternateIdCounter: alternateIdCounter + 1,\n });\n };\n\n onRemoveAlternate = (alternateId) => () => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n delete newResponse.alternates[alternateId];\n\n onResponseChange(newResponse, index);\n\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad[alternateId] ? state.showKeypad.openCount : state.showKeypad.openCount - 1,\n },\n }));\n };\n\n onDone = () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n main: false,\n },\n }));\n };\n\n onFocus = () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad.main ? state.showKeypad.openCount + 1 : state.showKeypad.openCount,\n main: true,\n },\n }));\n };\n\n onAlternateFocus = (alternateId) => () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad[alternateId] ? state.showKeypad.openCount + 1 : state.showKeypad.openCount,\n [alternateId]: true,\n },\n }));\n };\n\n onAlternateDone = (alternateId) => () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n [alternateId]: false,\n },\n }));\n };\n\n render() {\n const { classes, mode, defaultResponse, index, response, cAllowTrailingZeros, cIgnoreOrder, error } = this.props;\n\n const { showKeypad } = this.state;\n const { validation, answer, alternates, ignoreOrder, allowTrailingZeros } = response;\n const hasAlternates = Object.keys(alternates || {}).length > 0;\n const classNames = {\n editor: classes.responseEditor,\n mathToolbar: classes.mathToolbar,\n };\n const styles = {\n minHeight: `${showKeypad.openCount > 0 ? 430 : 230}px`,\n };\n\n return (\n <Card className={classes.responseContainer} style={styles}>\n <CardContent className={classes.cardContent}>\n <div className={classes.titleBar}>\n <Typography className={classes.title} component=\"div\">\n Response {INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED ? (defaultResponse ? '' : index + 1) : ''}\n </Typography>\n\n <InputContainer label=\"Validation\" className={classes.selectContainer}>\n <Select className={classes.select} onChange={this.onChange('validation')} value={validation || 'literal'}>\n <MenuItem value=\"literal\">Literal Validation</MenuItem>\n <MenuItem value=\"symbolic\">Symbolic Validation</MenuItem>\n </Select>\n </InputContainer>\n </div>\n\n {validation === 'literal' && (\n <div className={classes.flexContainer}>\n {cAllowTrailingZeros.enabled && (\n <FormControlLabel\n label={cAllowTrailingZeros.label}\n control={\n <Checkbox\n checked={allowTrailingZeros}\n onChange={this.onLiteralOptionsChange('allowTrailingZeros')}\n />\n }\n />\n )}\n\n {cIgnoreOrder.enabled && (\n <FormControlLabel\n label={cIgnoreOrder.label}\n control={<Checkbox checked={ignoreOrder} onChange={this.onLiteralOptionsChange('ignoreOrder')} />}\n />\n )}\n </div>\n )}\n\n <div className={classes.inputContainer}>\n <InputLabel>Correct Answer</InputLabel>\n <MathToolbar\n keypadMode={mode}\n classNames={classNames}\n controlledKeypad\n showKeypad={showKeypad.main}\n latex={answer || ''}\n onChange={this.onAnswerChange}\n onFocus={this.onFocus}\n onDone={this.onDone}\n error={error && error.answer}\n />\n {error && error.answer ? <div className={classes.errorText}>{error.answer}</div> : null}\n </div>\n\n {hasAlternates &&\n Object.keys(alternates).map((alternateId, altIdx) => (\n <div className={classes.inputContainer} key={alternateId}>\n <div className={classes.alternateBar}>\n <InputLabel>\n Alternate\n {Object.keys(alternates).length > 1 ? ` ${altIdx + 1}` : ''}\n </InputLabel>\n <Button\n className={classes.removeAlternateButton}\n type=\"secondary\"\n onClick={this.onRemoveAlternate(alternateId)}\n >\n Remove\n </Button>\n </div>\n\n <MathToolbar\n classNames={classNames}\n controlledKeypad\n keypadMode={mode}\n showKeypad={showKeypad[alternateId] || false}\n latex={alternates[alternateId] || ''}\n onChange={this.onAlternateAnswerChange(alternateId)}\n onFocus={this.onAlternateFocus(alternateId)}\n onDone={this.onAlternateDone(alternateId)}\n error={error && error[alternateId]}\n />\n {error && error[alternateId] ? <div className={classes.errorText}>{error[alternateId]}</div> : null}\n </div>\n ))}\n\n <Button className={classes.alternateButton} type=\"primary\" onClick={this.onAddAlternate}>\n ADD ALTERNATE\n </Button>\n </CardContent>\n </Card>\n );\n }\n}\n\nexport default withStyles(styles)(Response);\n"],"file":"response.js"}
1
+ {"version":3,"sources":["../src/response.jsx"],"names":["INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED","styles","theme","responseContainer","marginBottom","spacing","unit","width","minWidth","border","palette","grey","display","flexDirection","justifyContent","cardContent","paddingBottom","title","fontWeight","fontSize","flex","selectContainer","inputContainer","titleBar","alignItems","responseEditor","maxWidth","height","minHeight","mathToolbar","alternateButton","removeAlternateButton","marginLeft","color","errorText","typography","error","main","paddingTop","Response","props","name","evt","response","onResponseChange","index","newResponse","target","value","checked","answer","alternateId","alternates","alternateIdCounter","state","setState","showKeypad","openCount","alternatesLength","Object","keys","length","classes","mode","defaultResponse","cAllowTrailingZeros","cIgnoreOrder","validation","ignoreOrder","allowTrailingZeros","hasAlternates","classNames","editor","select","onChange","flexContainer","enabled","label","onLiteralOptionsChange","onAnswerChange","onFocus","onDone","map","altIdx","alternateBar","onRemoveAlternate","onAlternateAnswerChange","onAlternateFocus","onAlternateDone","onAddAlternate","React","Component","PropTypes","object","isRequired","bool","oneOfType","string","number","func"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/config-ui';\nimport { MathToolbar } from '@pie-lib/math-toolbar';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport Button from '@material-ui/core/Button';\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\nimport Typography from '@material-ui/core/Typography';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport { withStyles } from '@material-ui/core/styles';\nimport cx from 'classnames';\n\n// TODO once we support individual response correctness, we need to remove this constant\nconst INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED = false;\n\nconst styles = (theme) => ({\n responseContainer: {\n marginBottom: theme.spacing.unit * 2.5,\n width: '100%',\n minWidth: '548px',\n border: `1px solid ${theme.palette.grey[700]}`,\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'space-between',\n },\n cardContent: {\n paddingBottom: `${theme.spacing.unit * 2}px !important`,\n },\n title: {\n fontWeight: 700,\n fontSize: '1.2rem',\n flex: 3,\n },\n selectContainer: {\n flex: 2,\n },\n inputContainer: {\n marginBottom: theme.spacing.unit * 2,\n },\n titleBar: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n },\n responseEditor: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: '100%',\n minWidth: '500px',\n maxWidth: '900px',\n height: 'auto',\n minHeight: '40px',\n },\n mathToolbar: {\n width: '100%',\n },\n alternateButton: {\n border: `1px solid ${theme.palette.grey['A100']}`,\n },\n removeAlternateButton: {\n marginLeft: theme.spacing.unit * 2,\n border: `1px solid ${theme.palette.grey['A100']}`,\n color: 'gray',\n fontSize: '0.8rem',\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n});\n\nclass Response extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n defaultResponse: PropTypes.bool,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n index: PropTypes.number,\n onResponseChange: PropTypes.func.isRequired,\n response: PropTypes.object.isRequired,\n cIgnoreOrder: PropTypes.object.isRequired,\n cAllowTrailingZeros: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n defaultResponse: false,\n mode: 'miscellaneous',\n };\n\n constructor(props) {\n super(props);\n\n const { response: { alternates } = {} } = props || {};\n const alternatesLength = Object.keys(alternates || {}).length;\n\n this.state = {\n alternateIdCounter: alternatesLength + 1,\n showKeypad: {\n openCount: 0,\n main: false,\n },\n };\n }\n\n onChange = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.value;\n\n onResponseChange(newResponse, index);\n };\n\n onConfigChanged = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.checked;\n\n onResponseChange(newResponse, index);\n };\n\n onLiteralOptionsChange = (name) => (evt) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = !response[name];\n\n onResponseChange(newResponse, index);\n };\n\n onAnswerChange = (answer) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse.answer = answer;\n\n onResponseChange(newResponse, index);\n };\n\n onAlternateAnswerChange = (alternateId) => (answer) => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n newResponse.alternates[alternateId] = answer;\n\n onResponseChange(newResponse, index);\n };\n\n onAddAlternate = () => {\n const { response, onResponseChange, index } = this.props;\n const { alternateIdCounter } = this.state;\n const newResponse = { ...response };\n\n if (!newResponse.alternates) {\n newResponse.alternates = {};\n }\n\n newResponse.alternates[alternateIdCounter] = '';\n\n onResponseChange(newResponse, index);\n\n this.setState({\n alternateIdCounter: alternateIdCounter + 1,\n });\n };\n\n onRemoveAlternate = (alternateId) => () => {\n const { response, onResponseChange, index } = this.props;\n const newResponse = { ...response };\n\n delete newResponse.alternates[alternateId];\n\n onResponseChange(newResponse, index);\n\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad[alternateId] ? state.showKeypad.openCount : state.showKeypad.openCount - 1,\n },\n }));\n };\n\n onDone = () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n main: false,\n },\n }));\n };\n\n onFocus = () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad.main ? state.showKeypad.openCount + 1 : state.showKeypad.openCount,\n main: true,\n },\n }));\n };\n\n onAlternateFocus = (alternateId) => () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: !state.showKeypad[alternateId] ? state.showKeypad.openCount + 1 : state.showKeypad.openCount,\n [alternateId]: true,\n },\n }));\n };\n\n onAlternateDone = (alternateId) => () => {\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n [alternateId]: false,\n },\n }));\n };\n\n render() {\n const { classes, mode, defaultResponse, index, response, cAllowTrailingZeros, cIgnoreOrder, error } = this.props;\n\n const { showKeypad } = this.state;\n const { validation, answer, alternates, ignoreOrder, allowTrailingZeros } = response;\n const hasAlternates = Object.keys(alternates || {}).length > 0;\n const classNames = {\n editor: classes.responseEditor,\n mathToolbar: classes.mathToolbar,\n };\n const styles = {\n minHeight: `${showKeypad.openCount > 0 ? 430 : 230}px`,\n };\n\n return (\n <Card className={classes.responseContainer} style={styles}>\n <CardContent className={classes.cardContent}>\n <div className={classes.titleBar}>\n <Typography className={classes.title} component=\"div\">\n Response {INDIVIDUAL_RESPONSE_CORRECTNESS_SUPPORTED ? (defaultResponse ? '' : index + 1) : ''}\n </Typography>\n\n <InputContainer label=\"Validation\" className={classes.selectContainer}>\n <Select className={classes.select} onChange={this.onChange('validation')} value={validation || 'literal'}>\n <MenuItem value=\"literal\">Literal Validation</MenuItem>\n <MenuItem value=\"symbolic\">Symbolic Validation</MenuItem>\n </Select>\n </InputContainer>\n </div>\n\n {validation === 'literal' && (\n <div className={classes.flexContainer}>\n {cAllowTrailingZeros.enabled && (\n <FormControlLabel\n label={cAllowTrailingZeros.label}\n control={\n <Checkbox\n checked={allowTrailingZeros}\n onChange={this.onLiteralOptionsChange('allowTrailingZeros')}\n />\n }\n />\n )}\n\n {cIgnoreOrder.enabled && (\n <FormControlLabel\n label={cIgnoreOrder.label}\n control={<Checkbox checked={ignoreOrder} onChange={this.onLiteralOptionsChange('ignoreOrder')} />}\n />\n )}\n </div>\n )}\n\n <div className={classes.inputContainer}>\n <InputLabel>Correct Answer</InputLabel>\n <MathToolbar\n keypadMode={mode}\n classNames={classNames}\n controlledKeypad\n showKeypad={showKeypad.main}\n latex={answer || ''}\n onChange={this.onAnswerChange}\n onFocus={this.onFocus}\n onDone={this.onDone}\n error={error && error.answer}\n />\n {error && error.answer ? <div className={classes.errorText}>{error.answer}</div> : null}\n </div>\n\n {hasAlternates &&\n Object.keys(alternates).map((alternateId, altIdx) => (\n <div className={classes.inputContainer} key={alternateId}>\n <div className={classes.alternateBar}>\n <InputLabel>\n Alternate\n {Object.keys(alternates).length > 1 ? ` ${altIdx + 1}` : ''}\n </InputLabel>\n <Button\n className={classes.removeAlternateButton}\n type=\"secondary\"\n onClick={this.onRemoveAlternate(alternateId)}\n >\n Remove\n </Button>\n </div>\n\n <MathToolbar\n classNames={classNames}\n controlledKeypad\n keypadMode={mode}\n showKeypad={showKeypad[alternateId] || false}\n latex={alternates[alternateId] || ''}\n onChange={this.onAlternateAnswerChange(alternateId)}\n onFocus={this.onAlternateFocus(alternateId)}\n onDone={this.onAlternateDone(alternateId)}\n error={error && error[alternateId]}\n />\n {error && error[alternateId] ? <div className={classes.errorText}>{error[alternateId]}</div> : null}\n </div>\n ))}\n\n <Button className={classes.alternateButton} type=\"primary\" onClick={this.onAddAlternate}>\n ADD ALTERNATE\n </Button>\n </CardContent>\n </Card>\n );\n }\n}\n\nexport default withStyles(styles)(Response);\n"],"file":"response.js"}
@@ -253,6 +253,50 @@
253
253
  "type": "string",
254
254
  "title": "promptLabel"
255
255
  },
256
+ "contentDimensions": {
257
+ "description": "Indicates the dimensions configuration for the authoring container\nNote: Some items have a default minimum width because of their content, but if\nthe minWidth is lower than this, the overflow behavior will take care of that",
258
+ "default": ": {}",
259
+ "type": "object",
260
+ "properties": {
261
+ "maxHeight": {
262
+ "description": "Indicates the max height of the authoring container",
263
+ "default": "undefined",
264
+ "type": [
265
+ "string",
266
+ "number"
267
+ ],
268
+ "title": "maxHeight"
269
+ },
270
+ "maxWidth": {
271
+ "description": "Indicates the max width of the authoring container",
272
+ "default": "undefined",
273
+ "type": [
274
+ "string",
275
+ "number"
276
+ ],
277
+ "title": "maxWidth"
278
+ },
279
+ "minHeight": {
280
+ "description": "Indicates the min height of the authoring container",
281
+ "default": "undefined",
282
+ "type": [
283
+ "string",
284
+ "number"
285
+ ],
286
+ "title": "minHeight"
287
+ },
288
+ "minWidth": {
289
+ "description": "Indicates the min width of the authoring container",
290
+ "default": "undefined",
291
+ "type": [
292
+ "string",
293
+ "number"
294
+ ],
295
+ "title": "minWidth"
296
+ }
297
+ },
298
+ "title": "contentDimensions"
299
+ },
256
300
  "settingsPartialScoring": {
257
301
  "description": "Indicates whether the settings panel wil allow the author to modify settings for partial scoring",
258
302
  "default": true,
@@ -196,6 +196,40 @@ The label for the item stem/prompt field
196
196
 
197
197
  Default: `"Item Stemm"`
198
198
 
199
+ # `contentDimensions` (object)
200
+
201
+ Indicates the dimensions configuration for the authoring container
202
+ Note: Some items have a default minimum width because of their content, but if
203
+ the minWidth is lower than this, the overflow behavior will take care of that
204
+
205
+ Properties of the `contentDimensions` object:
206
+
207
+ ## `maxHeight` (string,number)
208
+
209
+ Indicates the max height of the authoring container
210
+
211
+ Default: `"undefined"`
212
+
213
+ ## `maxWidth` (string,number)
214
+
215
+ Indicates the max width of the authoring container
216
+
217
+ Default: `"undefined"`
218
+
219
+ ## `minHeight` (string,number)
220
+
221
+ Indicates the min height of the authoring container
222
+
223
+ Default: `"undefined"`
224
+
225
+ ## `minWidth` (string,number)
226
+
227
+ Indicates the min width of the authoring container
228
+
229
+ Default: `"undefined"`
230
+
231
+ Default: `": {}"`
232
+
199
233
  # `settingsPartialScoring` (boolean)
200
234
 
201
235
  Indicates whether the settings panel wil allow the author to modify settings for partial scoring
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "repository": "pie-framework/pie-elements",
7
- "version": "6.9.3-next.45+62ff92a85",
7
+ "version": "6.9.3-next.57+f7af573fb",
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": "62ff92a8524033abfcc7a323b126605d76eb73c7",
31
+ "gitHead": "f7af573fb4e0491e4f5ff278103b157ac0120f98",
32
32
  "module": "src/index.js",
33
33
  "exports": {
34
34
  ".": "./src/index.js",