@pie-element/math-templated 2.16.1-next.0 → 2.16.1-next.12
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/configure/lib/design.js +8 -7
- package/configure/lib/design.js.map +1 -1
- package/configure/lib/response.js +5 -3
- package/configure/lib/response.js.map +1 -1
- package/module/configure.js +71 -69
- package/module/element.js +1 -1
- package/module/manifest.json +1 -1
- package/module/print.js +1 -1
- package/package.json +2 -2
package/configure/lib/design.js
CHANGED
|
@@ -150,7 +150,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
150
150
|
var newResponses = {};
|
|
151
151
|
var domMarkup = createElementFromHTML(markup);
|
|
152
152
|
var responseAreas = domMarkup.querySelectorAll('[data-type="math_templated"]');
|
|
153
|
-
responseAreas.forEach(function (element) {
|
|
153
|
+
responseAreas.forEach(function (element, index) {
|
|
154
154
|
var _element$dataset = element.dataset,
|
|
155
155
|
value = _element$dataset.value,
|
|
156
156
|
dataIndex = _element$dataset.index;
|
|
@@ -159,7 +159,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
159
159
|
element.dataset.value = '';
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
newResponses[
|
|
162
|
+
newResponses[index] = responses[dataIndex] || {
|
|
163
163
|
allowSpaces: true,
|
|
164
164
|
validation: validationDefault || 'symbolic',
|
|
165
165
|
allowTrailingZeros: allowTrailingZerosDefault || false,
|
|
@@ -167,8 +167,9 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
167
167
|
answer: '',
|
|
168
168
|
alternates: {}
|
|
169
169
|
};
|
|
170
|
-
element.dataset.index =
|
|
170
|
+
element.dataset.index = index.toString();
|
|
171
171
|
});
|
|
172
|
+
console.log('newResponses', newResponses);
|
|
172
173
|
var processedMarkup = (0, _markupUtils.processMarkup)(markup);
|
|
173
174
|
|
|
174
175
|
var callback = function callback() {
|
|
@@ -180,7 +181,7 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
180
181
|
};
|
|
181
182
|
|
|
182
183
|
_this.setState({
|
|
183
|
-
|
|
184
|
+
cachedResponses: undefined
|
|
184
185
|
}, callback);
|
|
185
186
|
});
|
|
186
187
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onHandleAreaChange", (0, _throttle["default"])(function (nodes) {
|
|
@@ -530,12 +531,12 @@ var Design = /*#__PURE__*/function (_React$Component) {
|
|
|
530
531
|
}, "Statistics"), /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
531
532
|
value: 'item-authoring'
|
|
532
533
|
}, "Item Authoring"))), Object.keys(responses || {}).map(function (responseKey, idx) {
|
|
533
|
-
var response = responses[
|
|
534
|
+
var response = responses[idx];
|
|
534
535
|
|
|
535
536
|
if (response) {
|
|
536
537
|
return /*#__PURE__*/_react["default"].createElement(_response["default"], {
|
|
537
|
-
key:
|
|
538
|
-
responseKey:
|
|
538
|
+
key: idx,
|
|
539
|
+
responseKey: idx,
|
|
539
540
|
mode: equationEditor,
|
|
540
541
|
response: response,
|
|
541
542
|
onResponseChange: _this2.onResponseChange,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","createElementFromHTML","htmlString","div","document","createElement","innerHTML","trim","Design","key","value","props","onModelChanged","model","updatedModel","response","index","newModel","responses","slateMarkup","markup","newVal","answer","id","allowSpaces","validationDefault","allowTrailingZerosDefault","ignoreOrderDefault","newResponses","domMarkup","responseAreas","querySelectorAll","forEach","element","dataset","dataIndex","validation","allowTrailingZeros","ignoreOrder","alternates","processedMarkup","callback","setState","cachedChoices","undefined","nodes","cachedResponses","state","newChoices","newCachedResponses","node","keyForNode","data","get","Object","assign","hasOwnProperty","trailing","leading","e","relatedTarget","currentTarget","getParentWithRoleTooltip","depth","parent","offsetParent","getAttribute","getDeepChildDataKeypad","child","children","attributes","parentWithTooltipRole","childWithDataKeypad","activeAnswerBlock","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","baseInputConfiguration","contentDimensions","prompt","rationale","settingsPanelDisabled","teacherInstructions","language","languageChoices","spellCheck","playerSpellCheck","maxImageWidth","maxImageHeight","mathMlOptions","template","editSource","cIgnoreOrder","cAllowTrailingZeros","partialScoring","maxResponseAreas","errors","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","equationEditor","promptError","rationaleError","responseAreasError","teacherInstructionsError","responsesErrors","validationMessage","panelSettings","label","enabled","options","panelProperties","playerSpellCheckEnabled","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","getPluginProps","Settings","Properties","promptHolder","handleChange","inputConfiguration","errorText","tooltipContainer","title","tooltip","ALL_PLUGINS","type","respAreaToolbar","error","onHandleAreaChange","onChange","onBlur","responseAreaError","selectContainer","select","event","target","keys","map","responseKey","idx","onResponseChange","onResponseDone","math","controlledKeypadMode","React","Component","PropTypes","object","isRequired","func","shape","add","theme","width","paddingTop","spacing","unit","marginBottom","color","palette","main","fontSize","marginTop","typography","fontWeight","display","alignItems","gap","whiteSpace","maxWidth"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport cloneDeep from 'lodash/cloneDeep';\nimport pick from 'lodash/pick';\nimport throttle from 'lodash/throttle';\nimport {\n InputContainer,\n settings,\n layout,\n} from '@pie-lib/pie-toolbox/config-ui';\nimport {\n ALL_PLUGINS,\n EditableHtml,\n} from '@pie-lib/pie-toolbox/editable-html';\nimport { dropdown } from '@pie-lib/pie-toolbox/code/config-ui/settings';\n\nimport Response from './response';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle } = settings;\n\nconst createElementFromHTML = (htmlString) => {\n const div = document.createElement('div');\n div.innerHTML = htmlString.trim();\n\n return div;\n};\n\nclass Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n componentDidMount() {\n const { model: { slateMarkup } } = this.props;\n\n this.setState({ markup: slateMarkup });\n\n }\n\n handleChange = (key, value) => {\n const { onModelChanged, model } = this.props;\n const updatedModel = cloneDeep(model);\n updatedModel[key] = value;\n onModelChanged(updatedModel);\n };\n\n onResponseChange = (response, index) => {\n const { model, onModelChanged } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onModelChanged(newModel);\n };\n\n onResponseDone = () => {\n const { model, onModelChanged } = this.props;\n\n onModelChanged({\n ...model,\n slateMarkup: createSlateMarkup(model.markup, model.responses)\n });\n };\n\n onChangeResponse = (index, newVal) => {\n const { model, onModelChanged } = this.props;\n const { responses } = model;\n\n if (!responses[index]) {\n responses[index] = [{ answer: newVal || '', id: 'response' + index, allowSpaces: true }];\n } else {\n responses[index][0].answer = newVal || '';\n }\n\n onModelChanged({ ...model, responses });\n };\n\n onResponsesChanged = (responses) => {\n this.props.onModelChanged({ ...this.props.model, responses });\n };\n\n onChange = (markup) => {\n const {\n model: { responses, validationDefault, allowTrailingZerosDefault, ignoreOrderDefault },\n onModelChanged,\n } = this.props;\n const newResponses = {};\n const domMarkup = createElementFromHTML(markup);\n const responseAreas = domMarkup.querySelectorAll('[data-type=\"math_templated\"]');\n\n responseAreas.forEach((element) => {\n const { value, index: dataIndex } = element.dataset;\n\n if (!value) {\n element.dataset.value = '';\n }\n\n newResponses[dataIndex] = responses[dataIndex] || {\n allowSpaces: true,\n validation: validationDefault || 'symbolic',\n allowTrailingZeros: allowTrailingZerosDefault || false,\n ignoreOrder: ignoreOrderDefault || false,\n answer: '',\n alternates: {},\n };\n\n element.dataset.index = dataIndex;\n });\n\n const processedMarkup = processMarkup(markup);\n\n const callback = () =>\n onModelChanged({\n ...this.props.model,\n slateMarkup: domMarkup.innerHTML,\n responses: newResponses,\n markup: processedMarkup\n });\n\n this.setState({ cachedChoices: undefined }, callback);\n };\n\n onHandleAreaChange = throttle(\n (nodes) => {\n const {\n model: { responses },\n onModelChanged,\n } = this.props;\n const { cachedResponses } = this.state;\n\n if (!nodes) {\n return;\n }\n\n const newChoices = responses ? cloneDeep(responses) : {};\n const newCachedResponses = cachedResponses ? cloneDeep(cachedResponses) : {};\n\n nodes.forEach((node) => {\n const keyForNode = node.data.get('index');\n\n if (!newChoices[keyForNode] && newCachedResponses[keyForNode]) {\n Object.assign(newChoices, pick(newCachedResponses, keyForNode));\n\n if (newCachedResponses.hasOwnProperty(keyForNode)) {\n delete newCachedResponses[keyForNode];\n }\n } else {\n Object.assign(newCachedResponses, pick(newChoices, keyForNode));\n\n if (newChoices.hasOwnProperty(keyForNode)) {\n delete newChoices[keyForNode];\n }\n }\n });\n\n const callback = () => onModelChanged({ ...this.props.model, responses: newChoices });\n\n this.setState({ cachedResponses: newCachedResponses }, callback);\n },\n 500,\n { trailing: false, leading: true },\n );\n\n onBlur = (e) => {\n const { relatedTarget, currentTarget } = e || {};\n\n function getParentWithRoleTooltip(element, depth = 0) {\n // only run this max 16 times\n if (!element || depth >= 16) return null;\n\n const parent = element.offsetParent;\n\n if (!parent) return null;\n\n if (parent.getAttribute('role') === 'tooltip') {\n return parent;\n }\n\n return getParentWithRoleTooltip(parent, depth + 1);\n }\n\n function getDeepChildDataKeypad(element, depth = 0) {\n // only run this max 4 times\n if (!element || depth >= 4) return null;\n\n const child = element?.children?.[0];\n\n if (!child) return null;\n\n if (child.attributes && child.attributes['data-keypad']) {\n return child;\n }\n\n return getDeepChildDataKeypad(child, depth + 1);\n }\n\n const parentWithTooltipRole = getParentWithRoleTooltip(relatedTarget);\n const childWithDataKeypad = parentWithTooltipRole ? getDeepChildDataKeypad(parentWithTooltipRole) : null;\n\n if (!relatedTarget || !currentTarget || !childWithDataKeypad?.attributes['data-keypad']) {\n this.setState({ activeAnswerBlock: '' });\n }\n };\n\n render() {\n const {\n classes,\n configuration,\n imageSupport,\n model,\n onConfigurationChanged,\n onModelChanged,\n uploadSoundSupport,\n } = this.props;\n\n const {\n baseInputConfiguration = {},\n contentDimensions = {},\n prompt = {},\n rationale = {},\n settingsPanelDisabled,\n teacherInstructions = {},\n language = {},\n languageChoices = {},\n spellCheck = {},\n playerSpellCheck = {},\n maxImageWidth = {},\n maxImageHeight = {},\n mathMlOptions = {},\n template = {},\n editSource = {},\n ignoreOrder: cIgnoreOrder = {},\n allowTrailingZeros: cAllowTrailingZeros = {},\n partialScoring = {},\n maxResponseAreas,\n } = configuration || {};\n\n const {\n errors,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n responses,\n equationEditor,\n } = model || {};\n\n const {\n prompt: promptError,\n rationale: rationaleError,\n responseAreas: responseAreasError,\n teacherInstructions: teacherInstructionsError,\n responses: responsesErrors = {},\n } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const panelSettings = {\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckEnabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n 'editSource.enabled': editSource?.settings && toggle(editSource.label, true),\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\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={(updatedModel) => onModelChanged(updatedModel)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={(value) => this.handleChange('teacherInstructions', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={teacherInstructionsError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(\n teacherInstructions?.inputConfiguration,\n baseInputConfiguration\n )}\n spellCheck={spellCheckEnabled}\n maxImageWidth={\n (maxImageWidth && maxImageWidth.teacherInstructions) ||\n defaultImageMaxWidth\n }\n maxImageHeight={\n (maxImageHeight && maxImageHeight.teacherInstructions) ||\n defaultImageMaxHeight\n }\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {teacherInstructionsError && (\n <div className={classes.errorText}>{teacherInstructionsError}</div>\n )}\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer\n label={prompt.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={(value) => this.handleChange('prompt', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n disableUnderline\n error={promptError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(\n teacherInstructions?.inputConfiguration,\n baseInputConfiguration\n )}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {promptError && (\n <div className={classes.errorText}>{promptError}</div>\n )}\n </InputContainer>\n )}\n <div className={classes.tooltipContainer}>\n <Typography className={classes.title}>Response Template</Typography>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} />\n </Tooltip>\n </div>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n toolbarOpts={{ position: 'top' }}\n spellCheck={spellCheckEnabled}\n pluginProps={getPluginProps(\n template?.inputConfiguration,\n baseInputConfiguration\n )}\n responseAreaProps={{\n type: 'math-templated',\n respAreaToolbar: null,\n error: () => responsesErrors,\n onHandleAreaChange: this.onHandleAreaChange,\n maxResponseAreas: maxResponseAreas,\n }}\n className={classes.markup}\n markup={model.slateMarkup}\n onChange={this.onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={true}\n onBlur={this.onBlur}\n disabled={false}\n highlightShape={false}\n error={responseAreasError}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {responseAreasError && (\n <div className={classes.responseAreaError}>{responseAreasError}</div>\n )}\n\n <Typography className={classes.title}>Define Response</Typography>\n\n <InputContainer\n label=\"Response Template Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={(event) =>\n this.handleChange('equationEditor', event.target.value)\n }\n value={equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">\n Numeric - Non-Negative Integers\n </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'}>\n Advanced Algebra\n </MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </Select>\n </InputContainer>\n\n {Object.keys(responses || {}).map((responseKey, idx) => {\n const response = responses[responseKey];\n\n if (response) {\n return (\n <Response\n key={responseKey}\n responseKey={responseKey}\n mode={equationEditor}\n response={response}\n onResponseChange={this.onResponseChange}\n onResponseDone={this.onResponseDone}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n );\n }\n\n return null;\n })}\n\n {rationaleEnabled && (\n <InputContainer\n label={rationale.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={(value) => this.handleChange('rationale', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={rationaleError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rationale?.inputConfiguration, {\n ...baseInputConfiguration,\n math: {\n controlledKeypadMode: false,\n },\n })}\n spellCheck={spellCheckEnabled}\n maxImageWidth={\n (maxImageWidth && maxImageWidth.rationale) ||\n defaultImageMaxWidth\n }\n maxImageHeight={\n (maxImageHeight && maxImageHeight.rationale) ||\n defaultImageMaxHeight\n }\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {rationaleError && (\n <div className={classes.errorText}>{rationaleError}</div>\n )}\n </InputContainer>\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles((theme) => ({\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n width: '100%',\n },\n errorText: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginTop: theme.spacing.unit,\n },\n responseAreaError: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginBottom: theme.spacing.unit,\n },\n markup: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 3,\n },\n selectContainer: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n },\n select: {\n width: '100%',\n },\n title: {\n fontSize: theme.typography.fontSize * 1.25,\n fontWeight: 'bold',\n },\n tooltipContainer: {\n display: 'flex',\n alignItems: 'center',\n gap: '8px',\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n}))(Design);\n"],"file":"design.js"}
|
|
1
|
+
{"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","createElementFromHTML","htmlString","div","document","createElement","innerHTML","trim","Design","key","value","props","onModelChanged","model","updatedModel","response","index","newModel","responses","slateMarkup","markup","newVal","answer","id","allowSpaces","validationDefault","allowTrailingZerosDefault","ignoreOrderDefault","newResponses","domMarkup","responseAreas","querySelectorAll","forEach","element","dataset","dataIndex","validation","allowTrailingZeros","ignoreOrder","alternates","toString","console","log","processedMarkup","callback","setState","cachedResponses","undefined","nodes","state","newChoices","newCachedResponses","node","keyForNode","data","get","Object","assign","hasOwnProperty","trailing","leading","e","relatedTarget","currentTarget","getParentWithRoleTooltip","depth","parent","offsetParent","getAttribute","getDeepChildDataKeypad","child","children","attributes","parentWithTooltipRole","childWithDataKeypad","activeAnswerBlock","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","baseInputConfiguration","contentDimensions","prompt","rationale","settingsPanelDisabled","teacherInstructions","language","languageChoices","spellCheck","playerSpellCheck","maxImageWidth","maxImageHeight","mathMlOptions","template","editSource","cIgnoreOrder","cAllowTrailingZeros","partialScoring","maxResponseAreas","errors","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","equationEditor","promptError","rationaleError","responseAreasError","teacherInstructionsError","responsesErrors","validationMessage","panelSettings","label","enabled","options","panelProperties","playerSpellCheckEnabled","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","getPluginProps","Settings","Properties","promptHolder","handleChange","inputConfiguration","errorText","tooltipContainer","title","tooltip","ALL_PLUGINS","type","respAreaToolbar","error","onHandleAreaChange","onChange","onBlur","responseAreaError","selectContainer","select","event","target","keys","map","responseKey","idx","onResponseChange","onResponseDone","math","controlledKeypadMode","React","Component","PropTypes","object","isRequired","func","shape","add","theme","width","paddingTop","spacing","unit","marginBottom","color","palette","main","fontSize","marginTop","typography","fontWeight","display","alignItems","gap","whiteSpace","maxWidth"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport cloneDeep from 'lodash/cloneDeep';\nimport pick from 'lodash/pick';\nimport throttle from 'lodash/throttle';\nimport {\n InputContainer,\n settings,\n layout,\n} from '@pie-lib/pie-toolbox/config-ui';\nimport {\n ALL_PLUGINS,\n EditableHtml,\n} from '@pie-lib/pie-toolbox/editable-html';\nimport { dropdown } from '@pie-lib/pie-toolbox/code/config-ui/settings';\n\nimport Response from './response';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle } = settings;\n\nconst createElementFromHTML = (htmlString) => {\n const div = document.createElement('div');\n div.innerHTML = htmlString.trim();\n\n return div;\n};\n\nclass Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n componentDidMount() {\n const { model: { slateMarkup } } = this.props;\n\n this.setState({ markup: slateMarkup });\n\n }\n\n handleChange = (key, value) => {\n const { onModelChanged, model } = this.props;\n const updatedModel = cloneDeep(model);\n updatedModel[key] = value;\n onModelChanged(updatedModel);\n };\n\n onResponseChange = (response, index) => {\n const { model, onModelChanged } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onModelChanged(newModel);\n };\n\n onResponseDone = () => {\n const { model, onModelChanged } = this.props;\n\n onModelChanged({\n ...model,\n slateMarkup: createSlateMarkup(model.markup, model.responses)\n });\n };\n\n onChangeResponse = (index, newVal) => {\n const { model, onModelChanged } = this.props;\n const { responses } = model;\n\n if (!responses[index]) {\n responses[index] = [{ answer: newVal || '', id: 'response' + index, allowSpaces: true }];\n } else {\n responses[index][0].answer = newVal || '';\n }\n\n onModelChanged({ ...model, responses });\n };\n\n onResponsesChanged = (responses) => {\n this.props.onModelChanged({ ...this.props.model, responses });\n };\n\n onChange = (markup) => {\n const {\n model: { responses, validationDefault, allowTrailingZerosDefault, ignoreOrderDefault },\n onModelChanged,\n } = this.props;\n const newResponses = {};\n const domMarkup = createElementFromHTML(markup);\n const responseAreas = domMarkup.querySelectorAll('[data-type=\"math_templated\"]');\n\n responseAreas.forEach((element, index) => {\n const { value, index: dataIndex } = element.dataset;\n\n if (!value) {\n element.dataset.value = '';\n }\n\n newResponses[index] = responses[dataIndex] || {\n allowSpaces: true,\n validation: validationDefault || 'symbolic',\n allowTrailingZeros: allowTrailingZerosDefault || false,\n ignoreOrder: ignoreOrderDefault || false,\n answer: '',\n alternates: {},\n };\n\n element.dataset.index = index.toString();\n });\n\n console.log('newResponses', newResponses);\n\n const processedMarkup = processMarkup(markup);\n\n const callback = () =>\n onModelChanged({\n ...this.props.model,\n slateMarkup: domMarkup.innerHTML,\n responses: newResponses,\n markup: processedMarkup\n });\n\n this.setState({ cachedResponses: undefined }, callback);\n };\n\n onHandleAreaChange = throttle(\n (nodes) => {\n const {\n model: { responses },\n onModelChanged,\n } = this.props;\n const { cachedResponses } = this.state;\n\n if (!nodes) {\n return;\n }\n\n const newChoices = responses ? cloneDeep(responses) : {};\n const newCachedResponses = cachedResponses ? cloneDeep(cachedResponses) : {};\n\n nodes.forEach((node) => {\n const keyForNode = node.data.get('index');\n\n if (!newChoices[keyForNode] && newCachedResponses[keyForNode]) {\n Object.assign(newChoices, pick(newCachedResponses, keyForNode));\n\n if (newCachedResponses.hasOwnProperty(keyForNode)) {\n delete newCachedResponses[keyForNode];\n }\n } else {\n Object.assign(newCachedResponses, pick(newChoices, keyForNode));\n\n if (newChoices.hasOwnProperty(keyForNode)) {\n delete newChoices[keyForNode];\n }\n }\n });\n\n const callback = () => onModelChanged({ ...this.props.model, responses: newChoices });\n\n this.setState({ cachedResponses: newCachedResponses }, callback);\n },\n 500,\n { trailing: false, leading: true },\n );\n\n onBlur = (e) => {\n const { relatedTarget, currentTarget } = e || {};\n\n function getParentWithRoleTooltip(element, depth = 0) {\n // only run this max 16 times\n if (!element || depth >= 16) return null;\n\n const parent = element.offsetParent;\n\n if (!parent) return null;\n\n if (parent.getAttribute('role') === 'tooltip') {\n return parent;\n }\n\n return getParentWithRoleTooltip(parent, depth + 1);\n }\n\n function getDeepChildDataKeypad(element, depth = 0) {\n // only run this max 4 times\n if (!element || depth >= 4) return null;\n\n const child = element?.children?.[0];\n\n if (!child) return null;\n\n if (child.attributes && child.attributes['data-keypad']) {\n return child;\n }\n\n return getDeepChildDataKeypad(child, depth + 1);\n }\n\n const parentWithTooltipRole = getParentWithRoleTooltip(relatedTarget);\n const childWithDataKeypad = parentWithTooltipRole ? getDeepChildDataKeypad(parentWithTooltipRole) : null;\n\n if (!relatedTarget || !currentTarget || !childWithDataKeypad?.attributes['data-keypad']) {\n this.setState({ activeAnswerBlock: '' });\n }\n };\n\n render() {\n const {\n classes,\n configuration,\n imageSupport,\n model,\n onConfigurationChanged,\n onModelChanged,\n uploadSoundSupport,\n } = this.props;\n\n const {\n baseInputConfiguration = {},\n contentDimensions = {},\n prompt = {},\n rationale = {},\n settingsPanelDisabled,\n teacherInstructions = {},\n language = {},\n languageChoices = {},\n spellCheck = {},\n playerSpellCheck = {},\n maxImageWidth = {},\n maxImageHeight = {},\n mathMlOptions = {},\n template = {},\n editSource = {},\n ignoreOrder: cIgnoreOrder = {},\n allowTrailingZeros: cAllowTrailingZeros = {},\n partialScoring = {},\n maxResponseAreas,\n } = configuration || {};\n\n const {\n errors,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n responses,\n equationEditor,\n } = model || {};\n\n const {\n prompt: promptError,\n rationale: rationaleError,\n responseAreas: responseAreasError,\n teacherInstructions: teacherInstructionsError,\n responses: responsesErrors = {},\n } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const panelSettings = {\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckEnabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n 'editSource.enabled': editSource?.settings && toggle(editSource.label, true),\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\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={(updatedModel) => onModelChanged(updatedModel)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer\n label={teacherInstructions.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={(value) => this.handleChange('teacherInstructions', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={teacherInstructionsError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(\n teacherInstructions?.inputConfiguration,\n baseInputConfiguration\n )}\n spellCheck={spellCheckEnabled}\n maxImageWidth={\n (maxImageWidth && maxImageWidth.teacherInstructions) ||\n defaultImageMaxWidth\n }\n maxImageHeight={\n (maxImageHeight && maxImageHeight.teacherInstructions) ||\n defaultImageMaxHeight\n }\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {teacherInstructionsError && (\n <div className={classes.errorText}>{teacherInstructionsError}</div>\n )}\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer\n label={prompt.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={(value) => this.handleChange('prompt', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n disableUnderline\n error={promptError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(\n teacherInstructions?.inputConfiguration,\n baseInputConfiguration\n )}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {promptError && (\n <div className={classes.errorText}>{promptError}</div>\n )}\n </InputContainer>\n )}\n <div className={classes.tooltipContainer}>\n <Typography className={classes.title}>Response Template</Typography>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} />\n </Tooltip>\n </div>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n toolbarOpts={{ position: 'top' }}\n spellCheck={spellCheckEnabled}\n pluginProps={getPluginProps(\n template?.inputConfiguration,\n baseInputConfiguration\n )}\n responseAreaProps={{\n type: 'math-templated',\n respAreaToolbar: null,\n error: () => responsesErrors,\n onHandleAreaChange: this.onHandleAreaChange,\n maxResponseAreas: maxResponseAreas,\n }}\n className={classes.markup}\n markup={model.slateMarkup}\n onChange={this.onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={true}\n onBlur={this.onBlur}\n disabled={false}\n highlightShape={false}\n error={responseAreasError}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {responseAreasError && (\n <div className={classes.responseAreaError}>{responseAreasError}</div>\n )}\n\n <Typography className={classes.title}>Define Response</Typography>\n\n <InputContainer\n label=\"Response Template Equation Editor\"\n className={classes.selectContainer}\n >\n <Select\n className={classes.select}\n onChange={(event) =>\n this.handleChange('equationEditor', event.target.value)\n }\n value={equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">\n Numeric - Non-Negative Integers\n </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'}>\n Advanced Algebra\n </MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </Select>\n </InputContainer>\n\n {Object.keys(responses || {}).map((responseKey, idx) => {\n const response = responses[idx];\n\n if (response) {\n return (\n <Response\n key={idx}\n responseKey={idx}\n mode={equationEditor}\n response={response}\n onResponseChange={this.onResponseChange}\n onResponseDone={this.onResponseDone}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n );\n }\n\n return null;\n })}\n\n {rationaleEnabled && (\n <InputContainer\n label={rationale.label}\n className={classes.promptHolder}\n >\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={(value) => this.handleChange('rationale', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={rationaleError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rationale?.inputConfiguration, {\n ...baseInputConfiguration,\n math: {\n controlledKeypadMode: false,\n },\n })}\n spellCheck={spellCheckEnabled}\n maxImageWidth={\n (maxImageWidth && maxImageWidth.rationale) ||\n defaultImageMaxWidth\n }\n maxImageHeight={\n (maxImageHeight && maxImageHeight.rationale) ||\n defaultImageMaxHeight\n }\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[\n { language: 'spanish' },\n { language: 'special' },\n ]}\n mathMlOptions={mathMlOptions}\n />\n {rationaleError && (\n <div className={classes.errorText}>{rationaleError}</div>\n )}\n </InputContainer>\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles((theme) => ({\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n width: '100%',\n },\n errorText: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginTop: theme.spacing.unit,\n },\n responseAreaError: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginBottom: theme.spacing.unit,\n },\n markup: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 3,\n },\n selectContainer: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n },\n select: {\n width: '100%',\n },\n title: {\n fontSize: theme.typography.fontSize * 1.25,\n fontWeight: 'bold',\n },\n tooltipContainer: {\n display: 'flex',\n alignItems: 'center',\n gap: '8px',\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n}))(Design);\n"],"file":"design.js"}
|
|
@@ -270,7 +270,9 @@ var Response = /*#__PURE__*/function (_React$Component) {
|
|
|
270
270
|
};
|
|
271
271
|
var styles = {
|
|
272
272
|
minHeight: "".concat(showKeypad.openCount > 0 ? 430 : 230, "px")
|
|
273
|
-
};
|
|
273
|
+
}; // add 1 to index to display R 1 instead of R 0
|
|
274
|
+
|
|
275
|
+
var keyToDisplay = "R ".concat(parseInt(responseKey) + 1);
|
|
274
276
|
return /*#__PURE__*/React.createElement(_Card["default"], {
|
|
275
277
|
className: classes.responseContainer,
|
|
276
278
|
style: styles
|
|
@@ -283,7 +285,7 @@ var Response = /*#__PURE__*/function (_React$Component) {
|
|
|
283
285
|
component: "div"
|
|
284
286
|
}, "Response for ", /*#__PURE__*/React.createElement("div", {
|
|
285
287
|
className: classes.responseBox
|
|
286
|
-
},
|
|
288
|
+
}, keyToDisplay)), /*#__PURE__*/React.createElement(_configUi.InputContainer, {
|
|
287
289
|
label: "Validation",
|
|
288
290
|
className: classes.selectContainer
|
|
289
291
|
}, /*#__PURE__*/React.createElement(_Select["default"], {
|
|
@@ -364,7 +366,7 @@ var Response = /*#__PURE__*/function (_React$Component) {
|
|
|
364
366
|
response: _propTypes["default"].object.isRequired,
|
|
365
367
|
cIgnoreOrder: _propTypes["default"].object.isRequired,
|
|
366
368
|
cAllowTrailingZeros: _propTypes["default"].object.isRequired,
|
|
367
|
-
responseKey: _propTypes["default"].
|
|
369
|
+
responseKey: _propTypes["default"].number.isRequired
|
|
368
370
|
});
|
|
369
371
|
(0, _defineProperty2["default"])(Response, "defaultProps", {
|
|
370
372
|
defaultResponse: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/response.jsx"],"names":["Response","props","name","evt","response","onResponseChange","responseKey","newResponse","target","value","checked","answer","alternateId","alternates","alternateIdCounter","state","setState","showKeypad","openCount","onResponseDone","main","alternatesLength","Object","keys","length","classes","mode","cAllowTrailingZeros","cIgnoreOrder","error","validation","ignoreOrder","allowTrailingZeros","hasAlternates","classNames","editor","responseEditor","mathToolbar","styles","minHeight","responseContainer","cardContent","titleBar","title","responseBox","selectContainer","select","onChange","flexContainer","enabled","label","onLiteralOptionsChange","inputContainer","onAnswerChange","onFocus","onDone","errorText","map","altIdx","alternateBar","onAlternateAnswerChange","onAlternateFocus","onAlternateDone","removeAlternateButton","onRemoveAlternate","alternateButton","onAddAlternate","React","Component","PropTypes","object","isRequired","defaultResponse","bool","oneOfType","string","number","func","theme","marginBottom","spacing","unit","width","minWidth","border","palette","grey","display","flexDirection","justifyContent","paddingBottom","fontWeight","fontSize","flex","alignItems","maxWidth","height","marginLeft","typography","color","paddingTop","background","padding"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/pie-toolbox/config-ui';\nimport { MathToolbar } from '@pie-lib/pie-toolbox/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 IconButton from '@material-ui/core/IconButton';\nimport Delete from '@material-ui/icons/Delete';\n\nclass Response extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n defaultResponse: PropTypes.bool,\n error: PropTypes.object,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onResponseChange: PropTypes.func.isRequired,\n onResponseDone: PropTypes.func.isRequired,\n response: PropTypes.object.isRequired,\n cIgnoreOrder: PropTypes.object.isRequired,\n cAllowTrailingZeros: PropTypes.object.isRequired,\n responseKey: PropTypes.string.isRequired,\n };\n\n static defaultProps = {\n defaultResponse: false,\n mode: '8',\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, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.value;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onConfigChanged = (name) => (evt) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.checked;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onLiteralOptionsChange = (name) => () => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = !response[name];\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAnswerChange = (answer) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse.answer = answer;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAlternateAnswerChange = (alternateId) => (answer) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse.alternates[alternateId] = answer;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAddAlternate = () => {\n const { response, onResponseChange, responseKey } = 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, responseKey);\n\n this.setState({\n alternateIdCounter: alternateIdCounter + 1,\n });\n };\n\n onRemoveAlternate = (alternateId) => () => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n delete newResponse.alternates[alternateId];\n\n onResponseChange(newResponse, responseKey);\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 const { onResponseDone } = this.props;\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n main: false,\n },\n }));\n\n onResponseDone();\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, responseKey, response, cAllowTrailingZeros, cIgnoreOrder, error } = this.props;\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 for <div className={classes.responseBox}>R {responseKey}</div>\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 <InputLabel>\n Alternate\n {Object.keys(alternates).length > 1 ? ` ${altIdx + 1}` : ''}\n </InputLabel>\n <div className={classes.alternateBar}>\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 <IconButton\n className={classes.removeAlternateButton}\n onClick={this.onRemoveAlternate(alternateId)}\n >\n <Delete/>\n </IconButton>\n </div>\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\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,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n responseBox: {\n background: theme.palette.grey['A100'],\n color: theme.palette.grey['A700'],\n display: 'inline',\n minWidth: '50px',\n padding: '8px',\n border: '1px solid #C0C3CF',\n },\n alternateBar: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n }\n});\n\nexport default withStyles(styles)(Response);\n"],"file":"response.js"}
|
|
1
|
+
{"version":3,"sources":["../src/response.jsx"],"names":["Response","props","name","evt","response","onResponseChange","responseKey","newResponse","target","value","checked","answer","alternateId","alternates","alternateIdCounter","state","setState","showKeypad","openCount","onResponseDone","main","alternatesLength","Object","keys","length","classes","mode","cAllowTrailingZeros","cIgnoreOrder","error","validation","ignoreOrder","allowTrailingZeros","hasAlternates","classNames","editor","responseEditor","mathToolbar","styles","minHeight","keyToDisplay","parseInt","responseContainer","cardContent","titleBar","title","responseBox","selectContainer","select","onChange","flexContainer","enabled","label","onLiteralOptionsChange","inputContainer","onAnswerChange","onFocus","onDone","errorText","map","altIdx","alternateBar","onAlternateAnswerChange","onAlternateFocus","onAlternateDone","removeAlternateButton","onRemoveAlternate","alternateButton","onAddAlternate","React","Component","PropTypes","object","isRequired","defaultResponse","bool","oneOfType","string","number","func","theme","marginBottom","spacing","unit","width","minWidth","border","palette","grey","display","flexDirection","justifyContent","paddingBottom","fontWeight","fontSize","flex","alignItems","maxWidth","height","marginLeft","typography","color","paddingTop","background","padding"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport { InputContainer } from '@pie-lib/pie-toolbox/config-ui';\nimport { MathToolbar } from '@pie-lib/pie-toolbox/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 IconButton from '@material-ui/core/IconButton';\nimport Delete from '@material-ui/icons/Delete';\n\nclass Response extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n defaultResponse: PropTypes.bool,\n error: PropTypes.object,\n mode: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onResponseChange: PropTypes.func.isRequired,\n onResponseDone: PropTypes.func.isRequired,\n response: PropTypes.object.isRequired,\n cIgnoreOrder: PropTypes.object.isRequired,\n cAllowTrailingZeros: PropTypes.object.isRequired,\n responseKey: PropTypes.number.isRequired,\n };\n\n static defaultProps = {\n defaultResponse: false,\n mode: '8',\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, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.value;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onConfigChanged = (name) => (evt) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = evt.target.checked;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onLiteralOptionsChange = (name) => () => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse[name] = !response[name];\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAnswerChange = (answer) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse.answer = answer;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAlternateAnswerChange = (alternateId) => (answer) => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n newResponse.alternates[alternateId] = answer;\n\n onResponseChange(newResponse, responseKey);\n };\n\n onAddAlternate = () => {\n const { response, onResponseChange, responseKey } = 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, responseKey);\n\n this.setState({\n alternateIdCounter: alternateIdCounter + 1,\n });\n };\n\n onRemoveAlternate = (alternateId) => () => {\n const { response, onResponseChange, responseKey } = this.props;\n const newResponse = { ...response };\n\n delete newResponse.alternates[alternateId];\n\n onResponseChange(newResponse, responseKey);\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 const { onResponseDone } = this.props;\n this.setState((state) => ({\n showKeypad: {\n ...state.showKeypad,\n openCount: state.showKeypad.openCount - 1,\n main: false,\n },\n }));\n\n onResponseDone();\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, responseKey, response, cAllowTrailingZeros, cIgnoreOrder, error } = this.props;\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 // add 1 to index to display R 1 instead of R 0\n const keyToDisplay = `R ${parseInt(responseKey) + 1}`;\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 for <div className={classes.responseBox}>{keyToDisplay}</div>\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 <InputLabel>\n Alternate\n {Object.keys(alternates).length > 1 ? ` ${altIdx + 1}` : ''}\n </InputLabel>\n <div className={classes.alternateBar}>\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 <IconButton\n className={classes.removeAlternateButton}\n onClick={this.onRemoveAlternate(alternateId)}\n >\n <Delete/>\n </IconButton>\n </div>\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\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,\n },\n errorText: {\n fontSize: theme.typography.fontSize - 2,\n color: theme.palette.error.main,\n paddingTop: theme.spacing.unit,\n },\n responseBox: {\n background: theme.palette.grey['A100'],\n color: theme.palette.grey['A700'],\n display: 'inline',\n minWidth: '50px',\n padding: '8px',\n border: '1px solid #C0C3CF',\n },\n alternateBar: {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n }\n});\n\nexport default withStyles(styles)(Response);\n"],"file":"response.js"}
|
package/module/configure.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.1/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_config_ui, _dll_pie_lib__pie_toolbox_math_toolbar, _dll_pie_lib__pie_toolbox_editable_html} from "../../../@pie-lib/pie-toolbox-module@4.12.0/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
|
@@ -106909,7 +106909,7 @@ class Response extends React$2.Component {
|
|
|
106909
106909
|
response: PropTypes$1.object.isRequired,
|
|
106910
106910
|
cIgnoreOrder: PropTypes$1.object.isRequired,
|
|
106911
106911
|
cAllowTrailingZeros: PropTypes$1.object.isRequired,
|
|
106912
|
-
responseKey: PropTypes$1.
|
|
106912
|
+
responseKey: PropTypes$1.number.isRequired
|
|
106913
106913
|
};
|
|
106914
106914
|
}
|
|
106915
106915
|
static __initStatic2() {
|
|
@@ -107082,27 +107082,28 @@ class Response extends React$2.Component {
|
|
|
107082
107082
|
const styles = {
|
|
107083
107083
|
minHeight: `${showKeypad.openCount > 0 ? 430 : 230}px`
|
|
107084
107084
|
};
|
|
107085
|
+
const keyToDisplay = `R ${parseInt(responseKey) + 1}`;
|
|
107085
107086
|
return React$2.createElement(Card, {
|
|
107086
107087
|
className: classes.responseContainer,
|
|
107087
107088
|
style: styles,
|
|
107088
107089
|
__self: this,
|
|
107089
107090
|
__source: {
|
|
107090
107091
|
fileName: _jsxFileName$1,
|
|
107091
|
-
lineNumber:
|
|
107092
|
+
lineNumber: 190
|
|
107092
107093
|
}
|
|
107093
107094
|
}, React$2.createElement(CardContent, {
|
|
107094
107095
|
className: classes.cardContent,
|
|
107095
107096
|
__self: this,
|
|
107096
107097
|
__source: {
|
|
107097
107098
|
fileName: _jsxFileName$1,
|
|
107098
|
-
lineNumber:
|
|
107099
|
+
lineNumber: 191
|
|
107099
107100
|
}
|
|
107100
107101
|
}, React$2.createElement('div', {
|
|
107101
107102
|
className: classes.titleBar,
|
|
107102
107103
|
__self: this,
|
|
107103
107104
|
__source: {
|
|
107104
107105
|
fileName: _jsxFileName$1,
|
|
107105
|
-
lineNumber:
|
|
107106
|
+
lineNumber: 192
|
|
107106
107107
|
}
|
|
107107
107108
|
}, React$2.createElement(Typography, {
|
|
107108
107109
|
className: classes.title,
|
|
@@ -107110,22 +107111,22 @@ class Response extends React$2.Component {
|
|
|
107110
107111
|
__self: this,
|
|
107111
107112
|
__source: {
|
|
107112
107113
|
fileName: _jsxFileName$1,
|
|
107113
|
-
lineNumber:
|
|
107114
|
+
lineNumber: 193
|
|
107114
107115
|
}
|
|
107115
107116
|
}, "Response for ", React$2.createElement('div', {
|
|
107116
107117
|
className: classes.responseBox,
|
|
107117
107118
|
__self: this,
|
|
107118
107119
|
__source: {
|
|
107119
107120
|
fileName: _jsxFileName$1,
|
|
107120
|
-
lineNumber:
|
|
107121
|
+
lineNumber: 194
|
|
107121
107122
|
}
|
|
107122
|
-
},
|
|
107123
|
+
}, keyToDisplay)), React$2.createElement(InputContainer$1, {
|
|
107123
107124
|
label: "Validation",
|
|
107124
107125
|
className: classes.selectContainer,
|
|
107125
107126
|
__self: this,
|
|
107126
107127
|
__source: {
|
|
107127
107128
|
fileName: _jsxFileName$1,
|
|
107128
|
-
lineNumber:
|
|
107129
|
+
lineNumber: 197
|
|
107129
107130
|
}
|
|
107130
107131
|
}, React$2.createElement(Select, {
|
|
107131
107132
|
className: classes.select,
|
|
@@ -107134,28 +107135,28 @@ class Response extends React$2.Component {
|
|
|
107134
107135
|
__self: this,
|
|
107135
107136
|
__source: {
|
|
107136
107137
|
fileName: _jsxFileName$1,
|
|
107137
|
-
lineNumber:
|
|
107138
|
+
lineNumber: 198
|
|
107138
107139
|
}
|
|
107139
107140
|
}, React$2.createElement(MenuItem, {
|
|
107140
107141
|
value: "literal",
|
|
107141
107142
|
__self: this,
|
|
107142
107143
|
__source: {
|
|
107143
107144
|
fileName: _jsxFileName$1,
|
|
107144
|
-
lineNumber:
|
|
107145
|
+
lineNumber: 199
|
|
107145
107146
|
}
|
|
107146
107147
|
}, "Literal Validation"), React$2.createElement(MenuItem, {
|
|
107147
107148
|
value: "symbolic",
|
|
107148
107149
|
__self: this,
|
|
107149
107150
|
__source: {
|
|
107150
107151
|
fileName: _jsxFileName$1,
|
|
107151
|
-
lineNumber:
|
|
107152
|
+
lineNumber: 200
|
|
107152
107153
|
}
|
|
107153
107154
|
}, "Symbolic Validation")))), validation === 'literal' && React$2.createElement('div', {
|
|
107154
107155
|
className: classes.flexContainer,
|
|
107155
107156
|
__self: this,
|
|
107156
107157
|
__source: {
|
|
107157
107158
|
fileName: _jsxFileName$1,
|
|
107158
|
-
lineNumber:
|
|
107159
|
+
lineNumber: 206
|
|
107159
107160
|
}
|
|
107160
107161
|
}, cAllowTrailingZeros.enabled && React$2.createElement(FormControlLabel, {
|
|
107161
107162
|
label: cAllowTrailingZeros.label,
|
|
@@ -107165,13 +107166,13 @@ class Response extends React$2.Component {
|
|
|
107165
107166
|
__self: this,
|
|
107166
107167
|
__source: {
|
|
107167
107168
|
fileName: _jsxFileName$1,
|
|
107168
|
-
lineNumber:
|
|
107169
|
+
lineNumber: 211
|
|
107169
107170
|
}
|
|
107170
107171
|
}),
|
|
107171
107172
|
__self: this,
|
|
107172
107173
|
__source: {
|
|
107173
107174
|
fileName: _jsxFileName$1,
|
|
107174
|
-
lineNumber:
|
|
107175
|
+
lineNumber: 208
|
|
107175
107176
|
}
|
|
107176
107177
|
}), cIgnoreOrder.enabled && React$2.createElement(FormControlLabel, {
|
|
107177
107178
|
label: cIgnoreOrder.label,
|
|
@@ -107181,26 +107182,26 @@ class Response extends React$2.Component {
|
|
|
107181
107182
|
__self: this,
|
|
107182
107183
|
__source: {
|
|
107183
107184
|
fileName: _jsxFileName$1,
|
|
107184
|
-
lineNumber:
|
|
107185
|
+
lineNumber: 222
|
|
107185
107186
|
}
|
|
107186
107187
|
}),
|
|
107187
107188
|
__self: this,
|
|
107188
107189
|
__source: {
|
|
107189
107190
|
fileName: _jsxFileName$1,
|
|
107190
|
-
lineNumber:
|
|
107191
|
+
lineNumber: 220
|
|
107191
107192
|
}
|
|
107192
107193
|
})), React$2.createElement('div', {
|
|
107193
107194
|
className: classes.inputContainer,
|
|
107194
107195
|
__self: this,
|
|
107195
107196
|
__source: {
|
|
107196
107197
|
fileName: _jsxFileName$1,
|
|
107197
|
-
lineNumber:
|
|
107198
|
+
lineNumber: 228
|
|
107198
107199
|
}
|
|
107199
107200
|
}, React$2.createElement(InputLabel, {
|
|
107200
107201
|
__self: this,
|
|
107201
107202
|
__source: {
|
|
107202
107203
|
fileName: _jsxFileName$1,
|
|
107203
|
-
lineNumber:
|
|
107204
|
+
lineNumber: 229
|
|
107204
107205
|
}
|
|
107205
107206
|
}, "Correct Answer"), React$2.createElement(MathToolbar, {
|
|
107206
107207
|
keypadMode: mode,
|
|
@@ -107215,14 +107216,14 @@ class Response extends React$2.Component {
|
|
|
107215
107216
|
__self: this,
|
|
107216
107217
|
__source: {
|
|
107217
107218
|
fileName: _jsxFileName$1,
|
|
107218
|
-
lineNumber:
|
|
107219
|
+
lineNumber: 230
|
|
107219
107220
|
}
|
|
107220
107221
|
}), error && error.answer ? React$2.createElement('div', {
|
|
107221
107222
|
className: classes.errorText,
|
|
107222
107223
|
__self: this,
|
|
107223
107224
|
__source: {
|
|
107224
107225
|
fileName: _jsxFileName$1,
|
|
107225
|
-
lineNumber:
|
|
107226
|
+
lineNumber: 241
|
|
107226
107227
|
}
|
|
107227
107228
|
}, error.answer) : null), hasAlternates && Object.keys(alternates).map((alternateId, altIdx) => React$2.createElement('div', {
|
|
107228
107229
|
className: classes.inputContainer,
|
|
@@ -107230,20 +107231,20 @@ class Response extends React$2.Component {
|
|
|
107230
107231
|
__self: this,
|
|
107231
107232
|
__source: {
|
|
107232
107233
|
fileName: _jsxFileName$1,
|
|
107233
|
-
lineNumber:
|
|
107234
|
+
lineNumber: 246
|
|
107234
107235
|
}
|
|
107235
107236
|
}, React$2.createElement(InputLabel, {
|
|
107236
107237
|
__self: this,
|
|
107237
107238
|
__source: {
|
|
107238
107239
|
fileName: _jsxFileName$1,
|
|
107239
|
-
lineNumber:
|
|
107240
|
+
lineNumber: 247
|
|
107240
107241
|
}
|
|
107241
107242
|
}, "Alternate", Object.keys(alternates).length > 1 ? ` ${altIdx + 1}` : ''), React$2.createElement('div', {
|
|
107242
107243
|
className: classes.alternateBar,
|
|
107243
107244
|
__self: this,
|
|
107244
107245
|
__source: {
|
|
107245
107246
|
fileName: _jsxFileName$1,
|
|
107246
|
-
lineNumber:
|
|
107247
|
+
lineNumber: 251
|
|
107247
107248
|
}
|
|
107248
107249
|
}, React$2.createElement(MathToolbar, {
|
|
107249
107250
|
classNames: classNames,
|
|
@@ -107258,7 +107259,7 @@ class Response extends React$2.Component {
|
|
|
107258
107259
|
__self: this,
|
|
107259
107260
|
__source: {
|
|
107260
107261
|
fileName: _jsxFileName$1,
|
|
107261
|
-
lineNumber:
|
|
107262
|
+
lineNumber: 252
|
|
107262
107263
|
}
|
|
107263
107264
|
}), React$2.createElement(IconButton, {
|
|
107264
107265
|
className: classes.removeAlternateButton,
|
|
@@ -107266,20 +107267,20 @@ class Response extends React$2.Component {
|
|
|
107266
107267
|
__self: this,
|
|
107267
107268
|
__source: {
|
|
107268
107269
|
fileName: _jsxFileName$1,
|
|
107269
|
-
lineNumber:
|
|
107270
|
+
lineNumber: 263
|
|
107270
107271
|
}
|
|
107271
107272
|
}, React$2.createElement(default_1, {
|
|
107272
107273
|
__self: this,
|
|
107273
107274
|
__source: {
|
|
107274
107275
|
fileName: _jsxFileName$1,
|
|
107275
|
-
lineNumber:
|
|
107276
|
+
lineNumber: 267
|
|
107276
107277
|
}
|
|
107277
107278
|
}))), error && error[alternateId] ? React$2.createElement('div', {
|
|
107278
107279
|
className: classes.errorText,
|
|
107279
107280
|
__self: this,
|
|
107280
107281
|
__source: {
|
|
107281
107282
|
fileName: _jsxFileName$1,
|
|
107282
|
-
lineNumber:
|
|
107283
|
+
lineNumber: 270
|
|
107283
107284
|
}
|
|
107284
107285
|
}, error[alternateId]) : null)), React$2.createElement(Button, {
|
|
107285
107286
|
className: classes.alternateButton,
|
|
@@ -107288,7 +107289,7 @@ class Response extends React$2.Component {
|
|
|
107288
107289
|
__self: this,
|
|
107289
107290
|
__source: {
|
|
107290
107291
|
fileName: _jsxFileName$1,
|
|
107291
|
-
lineNumber:
|
|
107292
|
+
lineNumber: 274
|
|
107292
107293
|
}
|
|
107293
107294
|
}, "ADD ALTERNATE")));
|
|
107294
107295
|
}
|
|
@@ -107549,12 +107550,12 @@ class Design extends React$1.Component {
|
|
|
107549
107550
|
const newResponses = {};
|
|
107550
107551
|
const domMarkup = createElementFromHTML(markup);
|
|
107551
107552
|
const responseAreas = domMarkup.querySelectorAll('[data-type="math_templated"]');
|
|
107552
|
-
responseAreas.forEach(element => {
|
|
107553
|
+
responseAreas.forEach((element, index) => {
|
|
107553
107554
|
const {value, index: dataIndex} = element.dataset;
|
|
107554
107555
|
if (!value) {
|
|
107555
107556
|
element.dataset.value = '';
|
|
107556
107557
|
}
|
|
107557
|
-
newResponses[
|
|
107558
|
+
newResponses[index] = responses[dataIndex] || ({
|
|
107558
107559
|
allowSpaces: true,
|
|
107559
107560
|
validation: validationDefault || 'symbolic',
|
|
107560
107561
|
allowTrailingZeros: allowTrailingZerosDefault || false,
|
|
@@ -107562,8 +107563,9 @@ class Design extends React$1.Component {
|
|
|
107562
107563
|
answer: '',
|
|
107563
107564
|
alternates: {}
|
|
107564
107565
|
});
|
|
107565
|
-
element.dataset.index =
|
|
107566
|
+
element.dataset.index = index.toString();
|
|
107566
107567
|
});
|
|
107568
|
+
console.log('newResponses', newResponses);
|
|
107567
107569
|
const processedMarkup = processMarkup(markup);
|
|
107568
107570
|
const callback = () => onModelChanged({
|
|
107569
107571
|
...this.props.model,
|
|
@@ -107572,7 +107574,7 @@ class Design extends React$1.Component {
|
|
|
107572
107574
|
markup: processedMarkup
|
|
107573
107575
|
});
|
|
107574
107576
|
this.setState({
|
|
107575
|
-
|
|
107577
|
+
cachedResponses: undefined
|
|
107576
107578
|
}, callback);
|
|
107577
107579
|
};
|
|
107578
107580
|
}
|
|
@@ -107684,13 +107686,13 @@ class Design extends React$1.Component {
|
|
|
107684
107686
|
__self: this,
|
|
107685
107687
|
__source: {
|
|
107686
107688
|
fileName: _jsxFileName,
|
|
107687
|
-
lineNumber:
|
|
107689
|
+
lineNumber: 310
|
|
107688
107690
|
}
|
|
107689
107691
|
}),
|
|
107690
107692
|
__self: this,
|
|
107691
107693
|
__source: {
|
|
107692
107694
|
fileName: _jsxFileName,
|
|
107693
|
-
lineNumber:
|
|
107695
|
+
lineNumber: 306
|
|
107694
107696
|
}
|
|
107695
107697
|
}, teacherInstructionsEnabled && React$1.createElement(InputContainer, {
|
|
107696
107698
|
label: teacherInstructions.label,
|
|
@@ -107698,7 +107700,7 @@ class Design extends React$1.Component {
|
|
|
107698
107700
|
__self: this,
|
|
107699
107701
|
__source: {
|
|
107700
107702
|
fileName: _jsxFileName,
|
|
107701
|
-
lineNumber:
|
|
107703
|
+
lineNumber: 323
|
|
107702
107704
|
}
|
|
107703
107705
|
}, React$1.createElement(EditableHtml, {
|
|
107704
107706
|
className: classes.prompt,
|
|
@@ -107722,14 +107724,14 @@ class Design extends React$1.Component {
|
|
|
107722
107724
|
__self: this,
|
|
107723
107725
|
__source: {
|
|
107724
107726
|
fileName: _jsxFileName,
|
|
107725
|
-
lineNumber:
|
|
107727
|
+
lineNumber: 327
|
|
107726
107728
|
}
|
|
107727
107729
|
}), teacherInstructionsError && React$1.createElement('div', {
|
|
107728
107730
|
className: classes.errorText,
|
|
107729
107731
|
__self: this,
|
|
107730
107732
|
__source: {
|
|
107731
107733
|
fileName: _jsxFileName,
|
|
107732
|
-
lineNumber:
|
|
107734
|
+
lineNumber: 356
|
|
107733
107735
|
}
|
|
107734
107736
|
}, teacherInstructionsError)), promptEnabled && React$1.createElement(InputContainer, {
|
|
107735
107737
|
label: prompt.label,
|
|
@@ -107737,7 +107739,7 @@ class Design extends React$1.Component {
|
|
|
107737
107739
|
__self: this,
|
|
107738
107740
|
__source: {
|
|
107739
107741
|
fileName: _jsxFileName,
|
|
107740
|
-
lineNumber:
|
|
107742
|
+
lineNumber: 362
|
|
107741
107743
|
}
|
|
107742
107744
|
}, React$1.createElement(EditableHtml, {
|
|
107743
107745
|
className: classes.prompt,
|
|
@@ -107762,28 +107764,28 @@ class Design extends React$1.Component {
|
|
|
107762
107764
|
__self: this,
|
|
107763
107765
|
__source: {
|
|
107764
107766
|
fileName: _jsxFileName,
|
|
107765
|
-
lineNumber:
|
|
107767
|
+
lineNumber: 366
|
|
107766
107768
|
}
|
|
107767
107769
|
}), promptError && React$1.createElement('div', {
|
|
107768
107770
|
className: classes.errorText,
|
|
107769
107771
|
__self: this,
|
|
107770
107772
|
__source: {
|
|
107771
107773
|
fileName: _jsxFileName,
|
|
107772
|
-
lineNumber:
|
|
107774
|
+
lineNumber: 390
|
|
107773
107775
|
}
|
|
107774
107776
|
}, promptError)), React$1.createElement('div', {
|
|
107775
107777
|
className: classes.tooltipContainer,
|
|
107776
107778
|
__self: this,
|
|
107777
107779
|
__source: {
|
|
107778
107780
|
fileName: _jsxFileName,
|
|
107779
|
-
lineNumber:
|
|
107781
|
+
lineNumber: 394
|
|
107780
107782
|
}
|
|
107781
107783
|
}, React$1.createElement(Typography, {
|
|
107782
107784
|
className: classes.title,
|
|
107783
107785
|
__self: this,
|
|
107784
107786
|
__source: {
|
|
107785
107787
|
fileName: _jsxFileName,
|
|
107786
|
-
lineNumber:
|
|
107788
|
+
lineNumber: 395
|
|
107787
107789
|
}
|
|
107788
107790
|
}, "Response Template"), React$1.createElement(Tooltip, {
|
|
107789
107791
|
classes: {
|
|
@@ -107796,7 +107798,7 @@ class Design extends React$1.Component {
|
|
|
107796
107798
|
__self: this,
|
|
107797
107799
|
__source: {
|
|
107798
107800
|
fileName: _jsxFileName,
|
|
107799
|
-
lineNumber:
|
|
107801
|
+
lineNumber: 396
|
|
107800
107802
|
}
|
|
107801
107803
|
}, React$1.createElement(default_1$1, {
|
|
107802
107804
|
fontSize: 'small',
|
|
@@ -107804,7 +107806,7 @@ class Design extends React$1.Component {
|
|
|
107804
107806
|
__self: this,
|
|
107805
107807
|
__source: {
|
|
107806
107808
|
fileName: _jsxFileName,
|
|
107807
|
-
lineNumber:
|
|
107809
|
+
lineNumber: 403
|
|
107808
107810
|
}
|
|
107809
107811
|
}))), React$1.createElement(EditableHtml, {
|
|
107810
107812
|
activePlugins: ALL_PLUGINS,
|
|
@@ -107839,21 +107841,21 @@ class Design extends React$1.Component {
|
|
|
107839
107841
|
__self: this,
|
|
107840
107842
|
__source: {
|
|
107841
107843
|
fileName: _jsxFileName,
|
|
107842
|
-
lineNumber:
|
|
107844
|
+
lineNumber: 406
|
|
107843
107845
|
}
|
|
107844
107846
|
}), responseAreasError && React$1.createElement('div', {
|
|
107845
107847
|
className: classes.responseAreaError,
|
|
107846
107848
|
__self: this,
|
|
107847
107849
|
__source: {
|
|
107848
107850
|
fileName: _jsxFileName,
|
|
107849
|
-
lineNumber:
|
|
107851
|
+
lineNumber: 438
|
|
107850
107852
|
}
|
|
107851
107853
|
}, responseAreasError), React$1.createElement(Typography, {
|
|
107852
107854
|
className: classes.title,
|
|
107853
107855
|
__self: this,
|
|
107854
107856
|
__source: {
|
|
107855
107857
|
fileName: _jsxFileName,
|
|
107856
|
-
lineNumber:
|
|
107858
|
+
lineNumber: 441
|
|
107857
107859
|
}
|
|
107858
107860
|
}, "Define Response"), React$1.createElement(InputContainer, {
|
|
107859
107861
|
label: "Response Template Equation Editor",
|
|
@@ -107861,7 +107863,7 @@ class Design extends React$1.Component {
|
|
|
107861
107863
|
__self: this,
|
|
107862
107864
|
__source: {
|
|
107863
107865
|
fileName: _jsxFileName,
|
|
107864
|
-
lineNumber:
|
|
107866
|
+
lineNumber: 443
|
|
107865
107867
|
}
|
|
107866
107868
|
}, React$1.createElement(Select, {
|
|
107867
107869
|
className: classes.select,
|
|
@@ -107870,98 +107872,98 @@ class Design extends React$1.Component {
|
|
|
107870
107872
|
__self: this,
|
|
107871
107873
|
__source: {
|
|
107872
107874
|
fileName: _jsxFileName,
|
|
107873
|
-
lineNumber:
|
|
107875
|
+
lineNumber: 447
|
|
107874
107876
|
}
|
|
107875
107877
|
}, React$1.createElement(MenuItem, {
|
|
107876
107878
|
value: "non-negative-integers",
|
|
107877
107879
|
__self: this,
|
|
107878
107880
|
__source: {
|
|
107879
107881
|
fileName: _jsxFileName,
|
|
107880
|
-
lineNumber:
|
|
107882
|
+
lineNumber: 454
|
|
107881
107883
|
}
|
|
107882
107884
|
}, "Numeric - Non-Negative Integers"), React$1.createElement(MenuItem, {
|
|
107883
107885
|
value: "integers",
|
|
107884
107886
|
__self: this,
|
|
107885
107887
|
__source: {
|
|
107886
107888
|
fileName: _jsxFileName,
|
|
107887
|
-
lineNumber:
|
|
107889
|
+
lineNumber: 457
|
|
107888
107890
|
}
|
|
107889
107891
|
}, "Numeric - Integers"), React$1.createElement(MenuItem, {
|
|
107890
107892
|
value: "decimals",
|
|
107891
107893
|
__self: this,
|
|
107892
107894
|
__source: {
|
|
107893
107895
|
fileName: _jsxFileName,
|
|
107894
|
-
lineNumber:
|
|
107896
|
+
lineNumber: 458
|
|
107895
107897
|
}
|
|
107896
107898
|
}, "Numeric - Decimals"), React$1.createElement(MenuItem, {
|
|
107897
107899
|
value: "fractions",
|
|
107898
107900
|
__self: this,
|
|
107899
107901
|
__source: {
|
|
107900
107902
|
fileName: _jsxFileName,
|
|
107901
|
-
lineNumber:
|
|
107903
|
+
lineNumber: 459
|
|
107902
107904
|
}
|
|
107903
107905
|
}, "Numeric - Fractions"), React$1.createElement(MenuItem, {
|
|
107904
107906
|
value: 1,
|
|
107905
107907
|
__self: this,
|
|
107906
107908
|
__source: {
|
|
107907
107909
|
fileName: _jsxFileName,
|
|
107908
|
-
lineNumber:
|
|
107910
|
+
lineNumber: 460
|
|
107909
107911
|
}
|
|
107910
107912
|
}, "Grade 1 - 2"), React$1.createElement(MenuItem, {
|
|
107911
107913
|
value: 3,
|
|
107912
107914
|
__self: this,
|
|
107913
107915
|
__source: {
|
|
107914
107916
|
fileName: _jsxFileName,
|
|
107915
|
-
lineNumber:
|
|
107917
|
+
lineNumber: 461
|
|
107916
107918
|
}
|
|
107917
107919
|
}, "Grade 3 - 5"), React$1.createElement(MenuItem, {
|
|
107918
107920
|
value: 6,
|
|
107919
107921
|
__self: this,
|
|
107920
107922
|
__source: {
|
|
107921
107923
|
fileName: _jsxFileName,
|
|
107922
|
-
lineNumber:
|
|
107924
|
+
lineNumber: 462
|
|
107923
107925
|
}
|
|
107924
107926
|
}, "Grade 6 - 7"), React$1.createElement(MenuItem, {
|
|
107925
107927
|
value: 8,
|
|
107926
107928
|
__self: this,
|
|
107927
107929
|
__source: {
|
|
107928
107930
|
fileName: _jsxFileName,
|
|
107929
|
-
lineNumber:
|
|
107931
|
+
lineNumber: 463
|
|
107930
107932
|
}
|
|
107931
107933
|
}, "Grade 8 - HS"), React$1.createElement(MenuItem, {
|
|
107932
107934
|
value: 'geometry',
|
|
107933
107935
|
__self: this,
|
|
107934
107936
|
__source: {
|
|
107935
107937
|
fileName: _jsxFileName,
|
|
107936
|
-
lineNumber:
|
|
107938
|
+
lineNumber: 464
|
|
107937
107939
|
}
|
|
107938
107940
|
}, "Geometry"), React$1.createElement(MenuItem, {
|
|
107939
107941
|
value: 'advanced-algebra',
|
|
107940
107942
|
__self: this,
|
|
107941
107943
|
__source: {
|
|
107942
107944
|
fileName: _jsxFileName,
|
|
107943
|
-
lineNumber:
|
|
107945
|
+
lineNumber: 465
|
|
107944
107946
|
}
|
|
107945
107947
|
}, "Advanced Algebra"), React$1.createElement(MenuItem, {
|
|
107946
107948
|
value: 'statistics',
|
|
107947
107949
|
__self: this,
|
|
107948
107950
|
__source: {
|
|
107949
107951
|
fileName: _jsxFileName,
|
|
107950
|
-
lineNumber:
|
|
107952
|
+
lineNumber: 468
|
|
107951
107953
|
}
|
|
107952
107954
|
}, "Statistics"), React$1.createElement(MenuItem, {
|
|
107953
107955
|
value: 'item-authoring',
|
|
107954
107956
|
__self: this,
|
|
107955
107957
|
__source: {
|
|
107956
107958
|
fileName: _jsxFileName,
|
|
107957
|
-
lineNumber:
|
|
107959
|
+
lineNumber: 469
|
|
107958
107960
|
}
|
|
107959
107961
|
}, "Item Authoring"))), Object.keys(responses || ({})).map((responseKey, idx) => {
|
|
107960
|
-
const response = responses[
|
|
107962
|
+
const response = responses[idx];
|
|
107961
107963
|
if (response) {
|
|
107962
107964
|
return React$1.createElement(Response$1, {
|
|
107963
|
-
key:
|
|
107964
|
-
responseKey:
|
|
107965
|
+
key: idx,
|
|
107966
|
+
responseKey: idx,
|
|
107965
107967
|
mode: equationEditor,
|
|
107966
107968
|
response: response,
|
|
107967
107969
|
onResponseChange: this.onResponseChange,
|
|
@@ -107973,7 +107975,7 @@ class Design extends React$1.Component {
|
|
|
107973
107975
|
__self: this,
|
|
107974
107976
|
__source: {
|
|
107975
107977
|
fileName: _jsxFileName,
|
|
107976
|
-
lineNumber:
|
|
107978
|
+
lineNumber: 478
|
|
107977
107979
|
}
|
|
107978
107980
|
});
|
|
107979
107981
|
}
|
|
@@ -107984,7 +107986,7 @@ class Design extends React$1.Component {
|
|
|
107984
107986
|
__self: this,
|
|
107985
107987
|
__source: {
|
|
107986
107988
|
fileName: _jsxFileName,
|
|
107987
|
-
lineNumber:
|
|
107989
|
+
lineNumber: 497
|
|
107988
107990
|
}
|
|
107989
107991
|
}, React$1.createElement(EditableHtml, {
|
|
107990
107992
|
className: classes.prompt,
|
|
@@ -108013,14 +108015,14 @@ class Design extends React$1.Component {
|
|
|
108013
108015
|
__self: this,
|
|
108014
108016
|
__source: {
|
|
108015
108017
|
fileName: _jsxFileName,
|
|
108016
|
-
lineNumber:
|
|
108018
|
+
lineNumber: 501
|
|
108017
108019
|
}
|
|
108018
108020
|
}), rationaleError && React$1.createElement('div', {
|
|
108019
108021
|
className: classes.errorText,
|
|
108020
108022
|
__self: this,
|
|
108021
108023
|
__source: {
|
|
108022
108024
|
fileName: _jsxFileName,
|
|
108023
|
-
lineNumber:
|
|
108025
|
+
lineNumber: 532
|
|
108024
108026
|
}
|
|
108025
108027
|
}, rationaleError)));
|
|
108026
108028
|
}
|
package/module/element.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering_accessible, _dll_pie_framework__mathquill} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering_accessible, _dll_pie_framework__mathquill} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.1/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_math_input, _dll_pie_lib__pie_toolbox_render_ui, _dll_pie_lib__pie_toolbox_correct_answer_toggle} from "../../../@pie-lib/pie-toolbox-module@4.12.0/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
package/module/manifest.json
CHANGED
package/module/print.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering_accessible, _dll_pie_framework__mathquill} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.
|
|
1
|
+
import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_debug, _dll_lodash, _dll_react_dom_server, _dll_pie_lib__pie_toolbox_math_rendering_accessible, _dll_pie_framework__mathquill} from "../../../@pie-lib/pie-toolbox-math-rendering-module@1.16.1/module/index.js";
|
|
2
2
|
import {_dll_pie_lib__pie_toolbox_math_input, _dll_pie_lib__pie_toolbox_render_ui, _dll_pie_lib__pie_toolbox_correct_answer_toggle} from "../../../@pie-lib/pie-toolbox-module@4.12.0/module/index.js";
|
|
3
3
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
4
4
|
function getDefaultExportFromCjs(x) {
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
6
|
"repository": "pie-framework/pie-elements",
|
|
7
|
-
"version": "2.16.1-next.
|
|
7
|
+
"version": "2.16.1-next.12+60373a356",
|
|
8
8
|
"description": "",
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@material-ui/core": "^3.9.2",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"author": "",
|
|
18
18
|
"license": "ISC",
|
|
19
|
-
"gitHead": "
|
|
19
|
+
"gitHead": "60373a35684f78fb6fda69304391717e3577734a",
|
|
20
20
|
"scripts": {
|
|
21
21
|
"postpublish": "../../scripts/postpublish"
|
|
22
22
|
},
|