@pie-element/multiple-choice 5.9.3-next.477 → 5.9.3-next.485
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/choice-input.js +3 -2
- package/lib/choice-input.js.map +1 -1
- package/lib/print.js +4 -2
- package/lib/print.js.map +1 -1
- package/module/element.js +12 -11
- package/module/print.js +16 -13
- package/package.json +2 -2
package/lib/choice-input.js
CHANGED
|
@@ -144,7 +144,7 @@ var StyledCheckbox = (0, _styles.withStyles)(inputStyles)(function (props) {
|
|
|
144
144
|
classes: {
|
|
145
145
|
root: resolved.root,
|
|
146
146
|
checked: resolved.checked,
|
|
147
|
-
disabled: resolved.disabled
|
|
147
|
+
disabled: "".concat(correctness ? '' : resolved.disabled)
|
|
148
148
|
}
|
|
149
149
|
}));
|
|
150
150
|
});
|
|
@@ -177,7 +177,8 @@ var StyledRadio = (0, _styles.withStyles)(inputStyles)(function (props) {
|
|
|
177
177
|
className: CLASS_NAME,
|
|
178
178
|
classes: {
|
|
179
179
|
root: resolved.root,
|
|
180
|
-
checked: resolved.checked
|
|
180
|
+
checked: resolved.checked,
|
|
181
|
+
disabled: "".concat(correctness ? '' : resolved.disabled)
|
|
181
182
|
}
|
|
182
183
|
}));
|
|
183
184
|
});
|
package/lib/choice-input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/choice-input.jsx"],"names":["styleSheet","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","formStyleSheet","label","StyledFormControlLabel","name","props","classes","CLASS_NAME","colorStyle","varName","fallback","inputStyles","correct","disabled","incorrect","root","primaryLight","checked","primary","opacity","cursor","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","value","selected","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","Tag","classSuffix","React","Component","PropTypes","oneOf","string","isRequired","bool","func","object"],"mappings":"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","sourcesContent":["import FormControlLabel from '@material-ui/core/FormControlLabel';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Feedback, color, PreviewPrompt } from '@pie-lib/render-ui';\nimport FeedbackTick from './feedback-tick';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nconst styleSheet = () => ({\n row: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n },\n checkboxHolder: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n flex: 1,\n '& label': {\n color: color.text(),\n },\n },\n});\n\nconst formStyleSheet = {\n label: {\n color: `${color.text()} !important`, //'var(--choice-input-color, black)'\n backgroundColor: color.background(),\n },\n};\n\nexport const StyledFormControlLabel = withStyles(formStyleSheet, {\n name: 'FormControlLabel',\n})((props) => (\n <FormControlLabel {...props} classes={{ label: props.classes.label }} />\n));\n\nconst CLASS_NAME = 'multiple-choice-component';\n\nconst colorStyle = (varName, fallback) => ({\n [`&.${CLASS_NAME}`]: {\n color: `var(--choice-input-${varName}, ${fallback}) !important`,\n },\n});\n\nconst inputStyles = {\n 'correct-root': colorStyle('correct-color', color.text()),\n 'correct-checked': colorStyle('correct-selected-color', color.correct()), //green[500]),\n 'correct-disabled': colorStyle('correct-disabled-color', color.disabled()), //'grey'),\n 'incorrect-root': colorStyle('incorrect-color', color.incorrect()),\n 'incorrect-checked': colorStyle('incorrect-checked', color.incorrect()), //orange[500]),\n 'incorrect-disabled': colorStyle(\n 'incorrect-disabled-color',\n color.disabled()\n ),\n root: {\n ...colorStyle('color', color.text()),\n '&:hover': { color: `${color.primaryLight()} !important` },\n },\n checked: colorStyle('selected-color', color.primary()),\n disabled: {\n ...colorStyle('disabled-color', color.text()),\n opacity: 0.6,\n cursor: 'not-allowed !important',\n pointerEvents: 'initial !important',\n },\n};\n\nexport const StyledCheckbox = withStyles(inputStyles)((props) => {\n const {\n correctness,\n classes,\n checked,\n onChange,\n disabled,\n accessibility,\n } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled };\n return (\n <Checkbox\n aria-label={accessibility}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n disabled: resolved.disabled,\n }}\n />\n );\n});\n\nexport const StyledRadio = withStyles(inputStyles)((props) => {\n const {\n correctness,\n classes,\n checked,\n onChange,\n disabled,\n accessibility,\n } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled };\n\n return (\n <Radio\n aria-label={accessibility}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n }}\n />\n );\n});\n\nexport class ChoiceInput extends React.Component {\n static propTypes = {\n choiceMode: PropTypes.oneOf(['radio', 'checkbox']),\n displayKey: PropTypes.string.isRequired,\n checked: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n disabled: PropTypes.bool.isRequired,\n feedback: PropTypes.string,\n label: PropTypes.string.isRequired,\n rationale: PropTypes.string,\n accessibility: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n value: PropTypes.string.isRequired,\n classes: PropTypes.object,\n className: PropTypes.string,\n hideTick: PropTypes.bool,\n isEvaluateMode: PropTypes.bool,\n };\n\n static defaultProps = {\n rationale: null,\n accessibility: null,\n checked: false,\n isEvaluateMode: false,\n };\n\n constructor(props) {\n super(props);\n this.onToggleChoice = this.onToggleChoice.bind(this);\n }\n\n onToggleChoice() {\n this.props.onChange({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n checked,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n } = this.props;\n\n const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;\n const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';\n\n return (\n <div className={classNames(className, 'corespring-' + classSuffix, 'choice-input')}>\n <div className={classes.row}>\n {(!hideTick && isEvaluateMode) && <FeedbackTick correctness={correctness} />}\n <div className={classNames(classes.checkboxHolder, 'checkbox-holder')}>\n <StyledFormControlLabel\n disabled={disabled}\n label={displayKey ? displayKey + '. ' : ''}\n control={\n <Tag\n accessibility={accessibility}\n checked={checked}\n correctness={correctness}\n onChange={this.onToggleChoice}\n />\n }\n />\n <PreviewPrompt\n className=\"label\"\n onClick={this.onToggleChoice}\n prompt={label}\n tagName=\"span\"\n />\n </div>\n </div>\n {rationale && (\n <PreviewPrompt className=\"rationale\" defaultClassName=\"rationale\" prompt={rationale} />\n )}\n <Feedback feedback={feedback} correctness={correctness} />\n </div>\n );\n }\n}\n\nexport default withStyles(styleSheet)(ChoiceInput);\n"],"file":"choice-input.js"}
|
|
1
|
+
{"version":3,"sources":["../src/choice-input.jsx"],"names":["styleSheet","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","formStyleSheet","label","StyledFormControlLabel","name","props","classes","CLASS_NAME","colorStyle","varName","fallback","inputStyles","correct","disabled","incorrect","root","primaryLight","checked","primary","opacity","cursor","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","value","selected","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","Tag","classSuffix","React","Component","PropTypes","oneOf","string","isRequired","bool","func","object"],"mappings":"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","sourcesContent":["import FormControlLabel from '@material-ui/core/FormControlLabel';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Feedback, color, PreviewPrompt } from '@pie-lib/render-ui';\nimport FeedbackTick from './feedback-tick';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nconst styleSheet = () => ({\n row: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n },\n checkboxHolder: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n flex: 1,\n '& label': {\n color: color.text(),\n },\n },\n});\n\nconst formStyleSheet = {\n label: {\n color: `${color.text()} !important`, //'var(--choice-input-color, black)'\n backgroundColor: color.background(),\n },\n};\n\nexport const StyledFormControlLabel = withStyles(formStyleSheet, {\n name: 'FormControlLabel',\n})((props) => (\n <FormControlLabel {...props} classes={{ label: props.classes.label }} />\n));\n\nconst CLASS_NAME = 'multiple-choice-component';\n\nconst colorStyle = (varName, fallback) => ({\n [`&.${CLASS_NAME}`]: {\n color: `var(--choice-input-${varName}, ${fallback}) !important`,\n },\n});\n\nconst inputStyles = {\n 'correct-root': colorStyle('correct-color', color.text()),\n 'correct-checked': colorStyle('correct-selected-color', color.correct()), //green[500]),\n 'correct-disabled': colorStyle('correct-disabled-color', color.disabled()), //'grey'),\n 'incorrect-root': colorStyle('incorrect-color', color.incorrect()),\n 'incorrect-checked': colorStyle('incorrect-checked', color.incorrect()), //orange[500]),\n 'incorrect-disabled': colorStyle(\n 'incorrect-disabled-color',\n color.disabled()\n ),\n root: {\n ...colorStyle('color', color.text()),\n '&:hover': { color: `${color.primaryLight()} !important` },\n },\n checked: colorStyle('selected-color', color.primary()),\n disabled: {\n ...colorStyle('disabled-color', color.text()),\n opacity: 0.6,\n cursor: 'not-allowed !important',\n pointerEvents: 'initial !important',\n },\n};\n\nexport const StyledCheckbox = withStyles(inputStyles)((props) => {\n const {\n correctness,\n classes,\n checked,\n onChange,\n disabled,\n accessibility,\n } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled };\n return (\n <Checkbox\n aria-label={accessibility}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n disabled: `${correctness ? '' : resolved.disabled}`,\n }}\n />\n );\n});\n\nexport const StyledRadio = withStyles(inputStyles)((props) => {\n const {\n correctness,\n classes,\n checked,\n onChange,\n disabled,\n accessibility,\n } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled };\n\n return (\n <Radio\n aria-label={accessibility}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n disabled: `${correctness ? '' : resolved.disabled}`,\n }}\n />\n );\n});\n\nexport class ChoiceInput extends React.Component {\n static propTypes = {\n choiceMode: PropTypes.oneOf(['radio', 'checkbox']),\n displayKey: PropTypes.string.isRequired,\n checked: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n disabled: PropTypes.bool.isRequired,\n feedback: PropTypes.string,\n label: PropTypes.string.isRequired,\n rationale: PropTypes.string,\n accessibility: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n value: PropTypes.string.isRequired,\n classes: PropTypes.object,\n className: PropTypes.string,\n hideTick: PropTypes.bool,\n isEvaluateMode: PropTypes.bool,\n };\n\n static defaultProps = {\n rationale: null,\n accessibility: null,\n checked: false,\n isEvaluateMode: false,\n };\n\n constructor(props) {\n super(props);\n this.onToggleChoice = this.onToggleChoice.bind(this);\n }\n\n onToggleChoice() {\n this.props.onChange({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n checked,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n } = this.props;\n\n const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;\n const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';\n\n return (\n <div className={classNames(className, 'corespring-' + classSuffix, 'choice-input')}>\n <div className={classes.row}>\n {(!hideTick && isEvaluateMode) && <FeedbackTick correctness={correctness} />}\n <div className={classNames(classes.checkboxHolder, 'checkbox-holder')}>\n <StyledFormControlLabel\n disabled={disabled}\n label={displayKey ? displayKey + '. ' : ''}\n control={\n <Tag\n accessibility={accessibility}\n checked={checked}\n correctness={correctness}\n onChange={this.onToggleChoice}\n />\n }\n />\n <PreviewPrompt\n className=\"label\"\n onClick={this.onToggleChoice}\n prompt={label}\n tagName=\"span\"\n />\n </div>\n </div>\n {rationale && (\n <PreviewPrompt className=\"rationale\" defaultClassName=\"rationale\" prompt={rationale} />\n )}\n <Feedback feedback={feedback} correctness={correctness} />\n </div>\n );\n }\n}\n\nexport default withStyles(styleSheet)(ChoiceInput);\n"],"file":"choice-input.js"}
|
package/lib/print.js
CHANGED
|
@@ -50,7 +50,8 @@ var log = (0, _debug["default"])('pie-element:multiple-choice:print');
|
|
|
50
50
|
|
|
51
51
|
var preparePrintModel = function preparePrintModel(model, opts) {
|
|
52
52
|
var instr = opts.role === 'instructor';
|
|
53
|
-
model.
|
|
53
|
+
model.prompt = model.promptEnabled !== false ? model.prompt : undefined;
|
|
54
|
+
model.teacherInstructions = instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;
|
|
54
55
|
model.showTeacherInstructions = instr;
|
|
55
56
|
model.alwaysShowCorrect = instr;
|
|
56
57
|
model.mode = instr ? 'evaluate' : model.mode;
|
|
@@ -58,11 +59,12 @@ var preparePrintModel = function preparePrintModel(model, opts) {
|
|
|
58
59
|
model.animationsDisabled = true;
|
|
59
60
|
var choices = (0, _cloneDeep["default"])(model.choices);
|
|
60
61
|
model.choices = choices.map(function (c) {
|
|
61
|
-
c.rationale = instr ? c.rationale : undefined;
|
|
62
|
+
c.rationale = instr && model.rationaleEnabled !== false ? c.rationale : undefined;
|
|
62
63
|
c.hideTick = instr;
|
|
63
64
|
c.feedback = undefined;
|
|
64
65
|
return c;
|
|
65
66
|
});
|
|
67
|
+
model.keyMode = model.choicePrefix || 'letters';
|
|
66
68
|
return model;
|
|
67
69
|
};
|
|
68
70
|
|
package/lib/print.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/print.js"],"names":["log","preparePrintModel","model","opts","instr","role","
|
|
1
|
+
{"version":3,"sources":["../src/print.js"],"names":["log","preparePrintModel","model","opts","instr","role","prompt","promptEnabled","undefined","teacherInstructions","teacherInstructionsEnabled","showTeacherInstructions","alwaysShowCorrect","mode","disabled","animationsDisabled","choices","map","c","rationale","rationaleEnabled","hideTick","feedback","keyMode","choicePrefix","MultipleChoicePrint","_options","_model","_session","_rerender","printModel","element","React","createElement","Main","session","ReactDOM","render","leading","trailing","o","s","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,GAAG,GAAG,uBAAM,mCAAN,CAAZ;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,IAAR,EAAiB;AACzC,MAAMC,KAAK,GAAGD,IAAI,CAACE,IAAL,KAAc,YAA5B;AAEAH,EAAAA,KAAK,CAACI,MAAN,GAAeJ,KAAK,CAACK,aAAN,KAAwB,KAAxB,GAAgCL,KAAK,CAACI,MAAtC,GAA+CE,SAA9D;AACAN,EAAAA,KAAK,CAACO,mBAAN,GAA4BL,KAAK,IAAIF,KAAK,CAACQ,0BAAN,KAAqC,KAA9C,GAAsDR,KAAK,CAACO,mBAA5D,GAAkFD,SAA9G;AACAN,EAAAA,KAAK,CAACS,uBAAN,GAAgCP,KAAhC;AACAF,EAAAA,KAAK,CAACU,iBAAN,GAA0BR,KAA1B;AACAF,EAAAA,KAAK,CAACW,IAAN,GAAaT,KAAK,GAAG,UAAH,GAAgBF,KAAK,CAACW,IAAxC;AAEAX,EAAAA,KAAK,CAACY,QAAN,GAAiB,IAAjB;AACAZ,EAAAA,KAAK,CAACa,kBAAN,GAA2B,IAA3B;AAEA,MAAMC,OAAO,GAAG,2BAAUd,KAAK,CAACc,OAAhB,CAAhB;AAEAd,EAAAA,KAAK,CAACc,OAAN,GAAgBA,OAAO,CAACC,GAAR,CAAY,UAACC,CAAD,EAAO;AACjCA,IAAAA,CAAC,CAACC,SAAF,GAAcf,KAAK,IAAIF,KAAK,CAACkB,gBAAN,KAA2B,KAApC,GAA4CF,CAAC,CAACC,SAA9C,GAA0DX,SAAxE;AACAU,IAAAA,CAAC,CAACG,QAAF,GAAajB,KAAb;AACAc,IAAAA,CAAC,CAACI,QAAF,GAAad,SAAb;AACA,WAAOU,CAAP;AACD,GALe,CAAhB;AAOAhB,EAAAA,KAAK,CAACqB,OAAN,GAAgBrB,KAAK,CAACsB,YAAN,IAAsB,SAAtC;AAEA,SAAOtB,KAAP;AACD,CAxBD;;IA0BqBuB,mB;;;;;AACnB,iCAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,QAAL,GAAgB,IAAhB;AACA,UAAKC,MAAL,GAAc,IAAd;AACA,UAAKC,QAAL,GAAgB,EAAhB;AACA,UAAKC,SAAL,GAAiB,0BACf,YAAM;AACJ,UAAI,MAAKF,MAAL,IAAe,MAAKC,QAAxB,EAAkC;AAChC,YAAME,UAAU,GAAG7B,iBAAiB,CAAC,MAAK0B,MAAN,EAAc,MAAKD,QAAnB,CAApC;;AAEA,YAAMK,OAAO,GACX,MAAKL,QAAL,iBACAM,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACxBhC,UAAAA,KAAK,EAAE4B,UADiB;AAExBK,UAAAA,OAAO,EAAE;AAFe,SAA1B,CAFF;;AAOAC,6BAASC,MAAT,CAAgBN,OAAhB,kDAA+B,YAAM;AACnC/B,UAAAA,GAAG,CAAC,+BAAD,CAAH;AACA;AACD,SAHD;AAID,OAdD,MAcO;AACLA,QAAAA,GAAG,CAAC,MAAD,CAAH;AACD;AACF,KAnBc,EAoBf,EApBe,EAqBf;AAAEsC,MAAAA,OAAO,EAAE,KAAX;AAAkBC,MAAAA,QAAQ,EAAE;AAA5B,KArBe,CAAjB;AALY;AA4Bb;;;;SACD,aAAYC,CAAZ,EAAe;AACb,WAAKd,QAAL,GAAgBc,CAAhB;AACD;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKd,MAAL,GAAcc,CAAd;;AACA,WAAKZ,SAAL;AACD;;;WAED,6BAAoB,CAAE;;;kDAvCyBa,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debounce from 'lodash/debounce';\nimport cloneDeep from 'lodash/cloneDeep';\nimport Main from './main';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport debug from 'debug';\n\nconst log = debug('pie-element:multiple-choice:print');\n\n/**\n * Live in same package as main element - so we can access some of the shared comps!\n *\n * - update pslb to build print if src/print.js is there\n * - update demo el\n * - get configure/controller building\n */\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n model.prompt = model.promptEnabled !== false ? model.prompt : undefined;\n model.teacherInstructions = instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;\n model.showTeacherInstructions = instr;\n model.alwaysShowCorrect = instr;\n model.mode = instr ? 'evaluate' : model.mode;\n\n model.disabled = true;\n model.animationsDisabled = true;\n\n const choices = cloneDeep(model.choices);\n\n model.choices = choices.map((c) => {\n c.rationale = instr && model.rationaleEnabled !== false ? c.rationale : undefined;\n c.hideTick = instr;\n c.feedback = undefined;\n return c;\n });\n\n model.keyMode = model.choicePrefix || 'letters';\n\n return model;\n};\n\nexport default class MultipleChoicePrint extends HTMLElement {\n constructor() {\n super();\n this._options = null;\n this._model = null;\n this._session = [];\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n const printModel = preparePrintModel(this._model, this._options);\n\n const element =\n this._options &&\n React.createElement(Main, {\n model: printModel,\n session: {},\n });\n\n ReactDOM.render(element, this, () => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true }\n );\n }\n set options(o) {\n this._options = o;\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n }\n\n connectedCallback() {}\n}\n"],"file":"print.js"}
|
package/module/element.js
CHANGED
|
@@ -1342,7 +1342,7 @@ const StyledCheckbox = withStyles$3(inputStyles)(props => {
|
|
|
1342
1342
|
classes: {
|
|
1343
1343
|
root: resolved.root,
|
|
1344
1344
|
checked: resolved.checked,
|
|
1345
|
-
disabled: resolved.disabled
|
|
1345
|
+
disabled: `${correctness ? '' : resolved.disabled}`
|
|
1346
1346
|
},
|
|
1347
1347
|
__self: undefined,
|
|
1348
1348
|
__source: {
|
|
@@ -1370,7 +1370,8 @@ const StyledRadio = withStyles$3(inputStyles)(props => {
|
|
|
1370
1370
|
className: CLASS_NAME,
|
|
1371
1371
|
classes: {
|
|
1372
1372
|
root: resolved.root,
|
|
1373
|
-
checked: resolved.checked
|
|
1373
|
+
checked: resolved.checked,
|
|
1374
|
+
disabled: `${correctness ? '' : resolved.disabled}`
|
|
1374
1375
|
},
|
|
1375
1376
|
__self: undefined,
|
|
1376
1377
|
__source: {
|
|
@@ -1426,28 +1427,28 @@ class ChoiceInput extends React$4.Component {
|
|
|
1426
1427
|
__self: this,
|
|
1427
1428
|
__source: {
|
|
1428
1429
|
fileName: _jsxFileName$3,
|
|
1429
|
-
lineNumber:
|
|
1430
|
+
lineNumber: 197
|
|
1430
1431
|
}
|
|
1431
1432
|
}, React$4.createElement('div', {
|
|
1432
1433
|
className: classes.row,
|
|
1433
1434
|
__self: this,
|
|
1434
1435
|
__source: {
|
|
1435
1436
|
fileName: _jsxFileName$3,
|
|
1436
|
-
lineNumber:
|
|
1437
|
+
lineNumber: 198
|
|
1437
1438
|
}
|
|
1438
1439
|
}, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
|
|
1439
1440
|
correctness: correctness,
|
|
1440
1441
|
__self: this,
|
|
1441
1442
|
__source: {
|
|
1442
1443
|
fileName: _jsxFileName$3,
|
|
1443
|
-
lineNumber:
|
|
1444
|
+
lineNumber: 199
|
|
1444
1445
|
}
|
|
1445
1446
|
}), React$4.createElement('div', {
|
|
1446
1447
|
className: classNames$3(classes.checkboxHolder, 'checkbox-holder'),
|
|
1447
1448
|
__self: this,
|
|
1448
1449
|
__source: {
|
|
1449
1450
|
fileName: _jsxFileName$3,
|
|
1450
|
-
lineNumber:
|
|
1451
|
+
lineNumber: 200
|
|
1451
1452
|
}
|
|
1452
1453
|
}, React$4.createElement(StyledFormControlLabel, {
|
|
1453
1454
|
disabled: disabled,
|
|
@@ -1460,13 +1461,13 @@ class ChoiceInput extends React$4.Component {
|
|
|
1460
1461
|
__self: this,
|
|
1461
1462
|
__source: {
|
|
1462
1463
|
fileName: _jsxFileName$3,
|
|
1463
|
-
lineNumber:
|
|
1464
|
+
lineNumber: 205
|
|
1464
1465
|
}
|
|
1465
1466
|
}),
|
|
1466
1467
|
__self: this,
|
|
1467
1468
|
__source: {
|
|
1468
1469
|
fileName: _jsxFileName$3,
|
|
1469
|
-
lineNumber:
|
|
1470
|
+
lineNumber: 201
|
|
1470
1471
|
}
|
|
1471
1472
|
}), React$4.createElement(PreviewPrompt$1, {
|
|
1472
1473
|
className: "label",
|
|
@@ -1476,7 +1477,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1476
1477
|
__self: this,
|
|
1477
1478
|
__source: {
|
|
1478
1479
|
fileName: _jsxFileName$3,
|
|
1479
|
-
lineNumber:
|
|
1480
|
+
lineNumber: 213
|
|
1480
1481
|
}
|
|
1481
1482
|
}))), rationale && React$4.createElement(PreviewPrompt$1, {
|
|
1482
1483
|
className: "rationale",
|
|
@@ -1485,7 +1486,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1485
1486
|
__self: this,
|
|
1486
1487
|
__source: {
|
|
1487
1488
|
fileName: _jsxFileName$3,
|
|
1488
|
-
lineNumber:
|
|
1489
|
+
lineNumber: 222
|
|
1489
1490
|
}
|
|
1490
1491
|
}), React$4.createElement(Feedback, {
|
|
1491
1492
|
feedback: feedback,
|
|
@@ -1493,7 +1494,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1493
1494
|
__self: this,
|
|
1494
1495
|
__source: {
|
|
1495
1496
|
fileName: _jsxFileName$3,
|
|
1496
|
-
lineNumber:
|
|
1497
|
+
lineNumber: 224
|
|
1497
1498
|
}
|
|
1498
1499
|
}));
|
|
1499
1500
|
}
|
package/module/print.js
CHANGED
|
@@ -1342,7 +1342,7 @@ const StyledCheckbox = withStyles$3(inputStyles)(props => {
|
|
|
1342
1342
|
classes: {
|
|
1343
1343
|
root: resolved.root,
|
|
1344
1344
|
checked: resolved.checked,
|
|
1345
|
-
disabled: resolved.disabled
|
|
1345
|
+
disabled: `${correctness ? '' : resolved.disabled}`
|
|
1346
1346
|
},
|
|
1347
1347
|
__self: undefined,
|
|
1348
1348
|
__source: {
|
|
@@ -1370,7 +1370,8 @@ const StyledRadio = withStyles$3(inputStyles)(props => {
|
|
|
1370
1370
|
className: CLASS_NAME,
|
|
1371
1371
|
classes: {
|
|
1372
1372
|
root: resolved.root,
|
|
1373
|
-
checked: resolved.checked
|
|
1373
|
+
checked: resolved.checked,
|
|
1374
|
+
disabled: `${correctness ? '' : resolved.disabled}`
|
|
1374
1375
|
},
|
|
1375
1376
|
__self: undefined,
|
|
1376
1377
|
__source: {
|
|
@@ -1426,28 +1427,28 @@ class ChoiceInput extends React$4.Component {
|
|
|
1426
1427
|
__self: this,
|
|
1427
1428
|
__source: {
|
|
1428
1429
|
fileName: _jsxFileName$3,
|
|
1429
|
-
lineNumber:
|
|
1430
|
+
lineNumber: 197
|
|
1430
1431
|
}
|
|
1431
1432
|
}, React$4.createElement('div', {
|
|
1432
1433
|
className: classes.row,
|
|
1433
1434
|
__self: this,
|
|
1434
1435
|
__source: {
|
|
1435
1436
|
fileName: _jsxFileName$3,
|
|
1436
|
-
lineNumber:
|
|
1437
|
+
lineNumber: 198
|
|
1437
1438
|
}
|
|
1438
1439
|
}, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
|
|
1439
1440
|
correctness: correctness,
|
|
1440
1441
|
__self: this,
|
|
1441
1442
|
__source: {
|
|
1442
1443
|
fileName: _jsxFileName$3,
|
|
1443
|
-
lineNumber:
|
|
1444
|
+
lineNumber: 199
|
|
1444
1445
|
}
|
|
1445
1446
|
}), React$4.createElement('div', {
|
|
1446
1447
|
className: classNames$3(classes.checkboxHolder, 'checkbox-holder'),
|
|
1447
1448
|
__self: this,
|
|
1448
1449
|
__source: {
|
|
1449
1450
|
fileName: _jsxFileName$3,
|
|
1450
|
-
lineNumber:
|
|
1451
|
+
lineNumber: 200
|
|
1451
1452
|
}
|
|
1452
1453
|
}, React$4.createElement(StyledFormControlLabel, {
|
|
1453
1454
|
disabled: disabled,
|
|
@@ -1460,13 +1461,13 @@ class ChoiceInput extends React$4.Component {
|
|
|
1460
1461
|
__self: this,
|
|
1461
1462
|
__source: {
|
|
1462
1463
|
fileName: _jsxFileName$3,
|
|
1463
|
-
lineNumber:
|
|
1464
|
+
lineNumber: 205
|
|
1464
1465
|
}
|
|
1465
1466
|
}),
|
|
1466
1467
|
__self: this,
|
|
1467
1468
|
__source: {
|
|
1468
1469
|
fileName: _jsxFileName$3,
|
|
1469
|
-
lineNumber:
|
|
1470
|
+
lineNumber: 201
|
|
1470
1471
|
}
|
|
1471
1472
|
}), React$4.createElement(PreviewPrompt$1, {
|
|
1472
1473
|
className: "label",
|
|
@@ -1476,7 +1477,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1476
1477
|
__self: this,
|
|
1477
1478
|
__source: {
|
|
1478
1479
|
fileName: _jsxFileName$3,
|
|
1479
|
-
lineNumber:
|
|
1480
|
+
lineNumber: 213
|
|
1480
1481
|
}
|
|
1481
1482
|
}))), rationale && React$4.createElement(PreviewPrompt$1, {
|
|
1482
1483
|
className: "rationale",
|
|
@@ -1485,7 +1486,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1485
1486
|
__self: this,
|
|
1486
1487
|
__source: {
|
|
1487
1488
|
fileName: _jsxFileName$3,
|
|
1488
|
-
lineNumber:
|
|
1489
|
+
lineNumber: 222
|
|
1489
1490
|
}
|
|
1490
1491
|
}), React$4.createElement(Feedback, {
|
|
1491
1492
|
feedback: feedback,
|
|
@@ -1493,7 +1494,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
1493
1494
|
__self: this,
|
|
1494
1495
|
__source: {
|
|
1495
1496
|
fileName: _jsxFileName$3,
|
|
1496
|
-
lineNumber:
|
|
1497
|
+
lineNumber: 224
|
|
1497
1498
|
}
|
|
1498
1499
|
}));
|
|
1499
1500
|
}
|
|
@@ -1911,7 +1912,8 @@ const {renderMath: renderMath} = _dll_pie_lib__math_rendering;
|
|
|
1911
1912
|
const log = debug('pie-element:multiple-choice:print');
|
|
1912
1913
|
const preparePrintModel = (model, opts) => {
|
|
1913
1914
|
const instr = opts.role === 'instructor';
|
|
1914
|
-
model.
|
|
1915
|
+
model.prompt = model.promptEnabled !== false ? model.prompt : undefined;
|
|
1916
|
+
model.teacherInstructions = instr && model.teacherInstructionsEnabled !== false ? model.teacherInstructions : undefined;
|
|
1915
1917
|
model.showTeacherInstructions = instr;
|
|
1916
1918
|
model.alwaysShowCorrect = instr;
|
|
1917
1919
|
model.mode = instr ? 'evaluate' : model.mode;
|
|
@@ -1919,11 +1921,12 @@ const preparePrintModel = (model, opts) => {
|
|
|
1919
1921
|
model.animationsDisabled = true;
|
|
1920
1922
|
const choices = cloneDeep(model.choices);
|
|
1921
1923
|
model.choices = choices.map(c => {
|
|
1922
|
-
c.rationale = instr ? c.rationale : undefined;
|
|
1924
|
+
c.rationale = instr && model.rationaleEnabled !== false ? c.rationale : undefined;
|
|
1923
1925
|
c.hideTick = instr;
|
|
1924
1926
|
c.feedback = undefined;
|
|
1925
1927
|
return c;
|
|
1926
1928
|
});
|
|
1929
|
+
model.keyMode = model.choicePrefix || 'letters';
|
|
1927
1930
|
return model;
|
|
1928
1931
|
};
|
|
1929
1932
|
class MultipleChoicePrint extends HTMLElement {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/multiple-choice",
|
|
3
3
|
"repository": "pie-framework/pie-elements",
|
|
4
|
-
"version": "5.9.3-next.
|
|
4
|
+
"version": "5.9.3-next.485+63508ad69",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"react-test-renderer": "^16.3.2",
|
|
22
22
|
"react-transition-group": "^2.3.1"
|
|
23
23
|
},
|
|
24
|
-
"gitHead": "
|
|
24
|
+
"gitHead": "63508ad69affe18b229e1dd45475595ef12d0f77",
|
|
25
25
|
"scripts": {
|
|
26
26
|
"postpublish": "../../scripts/postpublish"
|
|
27
27
|
},
|