@pie-element/multiple-choice 9.0.2-next.21 → 9.0.2-next.5

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.
@@ -80,8 +80,7 @@ var formStyleSheet = {
80
80
  label: {
81
81
  color: "".concat(_renderUi.color.text(), " !important"),
82
82
  //'var(--choice-input-color, black)'
83
- backgroundColor: _renderUi.color.background(),
84
- letterSpacing: 'normal'
83
+ backgroundColor: _renderUi.color.background()
85
84
  },
86
85
  disabled: {
87
86
  // apply to all children
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/choice-input.jsx"],"names":["CLASS_NAME","styleSheet","theme","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","fontSize","horizontalLayout","paddingRight","spacing","unit","formStyleSheet","label","letterSpacing","disabled","cursor","StyledFormControlLabel","name","props","classes","colorStyle","varName","fallback","inputStyles","correct","incorrect","root","primaryLight","checked","primary","opacity","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","value","id","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","choiceId","generateChoiceId","event","updateSession","selected","Math","random","toFixed","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","choicesLayout","Tag","classSuffix","holderClassNames","choicelabel","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/pie-toolbox/render-ui';\nimport FeedbackTick from './feedback-tick';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nconst CLASS_NAME = 'multiple-choice-component';\n\nconst styleSheet = (theme) => ({\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 '& > span':{\n fontSize: 'inherit',\n }\n },\n },\n horizontalLayout: {\n [`& .${CLASS_NAME}`]: {\n paddingRight: theme.spacing.unit,\n },\n },\n});\n\nconst formStyleSheet = {\n label: {\n color: `${color.text()} !important`, //'var(--choice-input-color, black)'\n backgroundColor: color.background(),\n letterSpacing: 'normal'\n },\n disabled: {\n // apply to all children\n '& *': {\n cursor: 'not-allowed !important',\n }\n }\n};\n\nexport const StyledFormControlLabel = withStyles(formStyleSheet, {\n name: 'FormControlLabel',\n})((props) => (\n <FormControlLabel\n {...props}\n classes={{ label: props.classes.label, disabled: props.classes.disabled }}\n />\n));\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('incorrect-disabled-color', color.disabled()),\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 { correctness, classes, checked, onChange, disabled, accessibility, value, id } = 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, value };\n\n return (\n <Checkbox\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\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 { correctness, classes, checked, onChange, disabled, accessibility, value, id } = 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, value };\n\n return (\n <Radio\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\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 choicesLayout: PropTypes.oneOf(['vertical', 'grid', 'horizontal']),\n updateSession: PropTypes.func,\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 this.choiceId = this.generateChoiceId();\n }\n\n onToggleChoice(event) {\n this.props.onChange(event);\n this.props.updateSession({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n generateChoiceId() {\n return 'choice-' + (Math.random() * 10000).toFixed();\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n choicesLayout,\n value,\n checked,\n } = this.props;\n\n const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;\n const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';\n\n const holderClassNames = classNames(classes.checkboxHolder, {\n [classes.horizontalLayout]: choicesLayout === 'horizontal',\n });\n\n const choicelabel = (\n <>\n {displayKey ? (\n <span className={classes.row}>\n {displayKey}.{'\\u00A0'}\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n </span>\n ) : (\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n )}\n </>\n );\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(holderClassNames, 'checkbox-holder')}>\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n control={\n <Tag\n accessibility={accessibility}\n disabled={disabled}\n checked={checked}\n correctness={correctness}\n value={value}\n id={this.choiceId}\n onChange={this.onToggleChoice}\n />\n }\n />\n </div>\n </div>\n {rationale && <PreviewPrompt className=\"rationale\" defaultClassName=\"rationale\" prompt={rationale} />}\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":["CLASS_NAME","styleSheet","theme","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","fontSize","horizontalLayout","paddingRight","spacing","unit","formStyleSheet","label","disabled","cursor","StyledFormControlLabel","name","props","classes","colorStyle","varName","fallback","inputStyles","correct","incorrect","root","primaryLight","checked","primary","opacity","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","value","id","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","choiceId","generateChoiceId","event","updateSession","selected","Math","random","toFixed","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","choicesLayout","Tag","classSuffix","holderClassNames","choicelabel","React","Component","PropTypes","oneOf","string","isRequired","bool","func","object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEA,IAAMA,UAAU,GAAG,2BAAnB;;AAEA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD;AAAA,SAAY;AAC7BC,IAAAA,GAAG,EAAE;AACHC,MAAAA,OAAO,EAAE,MADN;AAEHC,MAAAA,UAAU,EAAE,QAFT;AAGHC,MAAAA,eAAe,EAAEC,gBAAMC,UAAN;AAHd,KADwB;AAM7BC,IAAAA,cAAc,EAAE;AACdL,MAAAA,OAAO,EAAE,MADK;AAEdC,MAAAA,UAAU,EAAE,QAFE;AAGdC,MAAAA,eAAe,EAAEC,gBAAMC,UAAN,EAHH;AAIdE,MAAAA,IAAI,EAAE,CAJQ;AAKd,iBAAW;AACTH,QAAAA,KAAK,EAAEA,gBAAMI,IAAN,EADE;AAET,oBAAW;AACTC,UAAAA,QAAQ,EAAE;AADD;AAFF;AALG,KANa;AAkB7BC,IAAAA,gBAAgB,oDACPb,UADO,GACQ;AACpBc,MAAAA,YAAY,EAAEZ,KAAK,CAACa,OAAN,CAAcC;AADR,KADR;AAlBa,GAAZ;AAAA,CAAnB;;AAyBA,IAAMC,cAAc,GAAG;AACrBC,EAAAA,KAAK,EAAE;AACLX,IAAAA,KAAK,YAAKA,gBAAMI,IAAN,EAAL,gBADA;AACgC;AACrCL,IAAAA,eAAe,EAAEC,gBAAMC,UAAN;AAFZ,GADc;AAKrBW,EAAAA,QAAQ,EAAE;AACR;AACA,WAAO;AACLC,MAAAA,MAAM,EAAE;AADH;AAFC;AALW,CAAvB;AAaO,IAAMC,sBAAsB,GAAG,wBAAWJ,cAAX,EAA2B;AAC/DK,EAAAA,IAAI,EAAE;AADyD,CAA3B,EAEnC,UAACC,KAAD;AAAA,sBACD,gCAAC,4BAAD,gCACMA,KADN;AAEE,IAAA,OAAO,EAAE;AAAEL,MAAAA,KAAK,EAAEK,KAAK,CAACC,OAAN,CAAcN,KAAvB;AAA8BC,MAAAA,QAAQ,EAAEI,KAAK,CAACC,OAAN,CAAcL;AAAtD;AAFX,KADC;AAAA,CAFmC,CAA/B;;;AASP,IAAMM,UAAU,GAAG,SAAbA,UAAa,CAACC,OAAD,EAAUC,QAAV;AAAA,0DACX3B,UADW,GACI;AACnBO,IAAAA,KAAK,+BAAwBmB,OAAxB,eAAoCC,QAApC;AADc,GADJ;AAAA,CAAnB;;AAMA,IAAMC,WAAW,GAAG;AAClB,kBAAgBH,UAAU,CAAC,eAAD,EAAkBlB,gBAAMI,IAAN,EAAlB,CADR;AAElB,qBAAmBc,UAAU,CAAC,wBAAD,EAA2BlB,gBAAMsB,OAAN,EAA3B,CAFX;AAEwD;AAC1E,sBAAoBJ,UAAU,CAAC,wBAAD,EAA2BlB,gBAAMY,QAAN,EAA3B,CAHZ;AAG0D;AAC5E,oBAAkBM,UAAU,CAAC,iBAAD,EAAoBlB,gBAAMuB,SAAN,EAApB,CAJV;AAKlB,uBAAqBL,UAAU,CAAC,mBAAD,EAAsBlB,gBAAMuB,SAAN,EAAtB,CALb;AAKuD;AACzE,wBAAsBL,UAAU,CAAC,0BAAD,EAA6BlB,gBAAMY,QAAN,EAA7B,CANd;AAOlBY,EAAAA,IAAI,kCACCN,UAAU,CAAC,OAAD,EAAUlB,gBAAMI,IAAN,EAAV,CADX;AAEF,eAAW;AAAEJ,MAAAA,KAAK,YAAKA,gBAAMyB,YAAN,EAAL;AAAP;AAFT,IAPc;AAWlBC,EAAAA,OAAO,EAAER,UAAU,CAAC,gBAAD,EAAmBlB,gBAAM2B,OAAN,EAAnB,CAXD;AAYlBf,EAAAA,QAAQ,kCACHM,UAAU,CAAC,gBAAD,EAAmBlB,gBAAMI,IAAN,EAAnB,CADP;AAENwB,IAAAA,OAAO,EAAE,GAFH;AAGNf,IAAAA,MAAM,EAAE,wBAHF;AAINgB,IAAAA,aAAa,EAAE;AAJT;AAZU,CAApB;AAoBO,IAAMC,cAAc,GAAG,wBAAWT,WAAX,EAAwB,UAACL,KAAD,EAAW;AAC/D,MAAQe,WAAR,GAAwFf,KAAxF,CAAQe,WAAR;AAAA,MAAqBd,OAArB,GAAwFD,KAAxF,CAAqBC,OAArB;AAAA,MAA8BS,OAA9B,GAAwFV,KAAxF,CAA8BU,OAA9B;AAAA,MAAuCM,QAAvC,GAAwFhB,KAAxF,CAAuCgB,QAAvC;AAAA,MAAiDpB,QAAjD,GAAwFI,KAAxF,CAAiDJ,QAAjD;AAAA,MAA2DqB,aAA3D,GAAwFjB,KAAxF,CAA2DiB,aAA3D;AAAA,MAA0EC,KAA1E,GAAwFlB,KAAxF,CAA0EkB,KAA1E;AAAA,MAAiFC,EAAjF,GAAwFnB,KAAxF,CAAiFmB,EAAjF;;AACA,MAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,CAAD;AAAA,WAAQN,WAAW,aAAMA,WAAN,cAAqBM,CAArB,IAA2BA,CAA9C;AAAA,GAAZ;;AAEA,MAAMC,QAAQ,GAAG;AACfd,IAAAA,IAAI,EAAEP,OAAO,CAACmB,GAAG,CAAC,MAAD,CAAJ,CADE;AAEfV,IAAAA,OAAO,EAAET,OAAO,CAACmB,GAAG,CAAC,SAAD,CAAJ,CAFD;AAGfxB,IAAAA,QAAQ,EAAEK,OAAO,CAACmB,GAAG,CAAC,UAAD,CAAJ;AAHF,GAAjB;AAMA,MAAMG,SAAS,GAAG;AAAEb,IAAAA,OAAO,EAAPA,OAAF;AAAWM,IAAAA,QAAQ,EAARA,QAAX;AAAqBpB,IAAAA,QAAQ,EAARA,QAArB;AAA+BsB,IAAAA,KAAK,EAALA;AAA/B,GAAlB;AAEA,sBACE,gCAAC,oBAAD;AACE,IAAA,EAAE,EAAEC,EADN;AAEE,kBAAYF,aAFd;AAGE,oBAAcP;AAHhB,KAIMa,SAJN;AAKE,IAAA,SAAS,EAAE9C,UALb;AAME,IAAA,OAAO,EAAE;AACP+B,MAAAA,IAAI,EAAEc,QAAQ,CAACd,IADR;AAEPE,MAAAA,OAAO,EAAEY,QAAQ,CAACZ,OAFX;AAGPd,MAAAA,QAAQ,YAAKmB,WAAW,GAAG,EAAH,GAAQO,QAAQ,CAAC1B,QAAjC;AAHD;AANX,KADF;AAcD,CA1B6B,CAAvB;;AA4BA,IAAM4B,WAAW,GAAG,wBAAWnB,WAAX,EAAwB,UAACL,KAAD,EAAW;AAC5D,MAAQe,WAAR,GAAwFf,KAAxF,CAAQe,WAAR;AAAA,MAAqBd,OAArB,GAAwFD,KAAxF,CAAqBC,OAArB;AAAA,MAA8BS,OAA9B,GAAwFV,KAAxF,CAA8BU,OAA9B;AAAA,MAAuCM,QAAvC,GAAwFhB,KAAxF,CAAuCgB,QAAvC;AAAA,MAAiDpB,QAAjD,GAAwFI,KAAxF,CAAiDJ,QAAjD;AAAA,MAA2DqB,aAA3D,GAAwFjB,KAAxF,CAA2DiB,aAA3D;AAAA,MAA0EC,KAA1E,GAAwFlB,KAAxF,CAA0EkB,KAA1E;AAAA,MAAiFC,EAAjF,GAAwFnB,KAAxF,CAAiFmB,EAAjF;;AACA,MAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,CAAD;AAAA,WAAQN,WAAW,aAAMA,WAAN,cAAqBM,CAArB,IAA2BA,CAA9C;AAAA,GAAZ;;AAEA,MAAMC,QAAQ,GAAG;AACfd,IAAAA,IAAI,EAAEP,OAAO,CAACmB,GAAG,CAAC,MAAD,CAAJ,CADE;AAEfV,IAAAA,OAAO,EAAET,OAAO,CAACmB,GAAG,CAAC,SAAD,CAAJ,CAFD;AAGfxB,IAAAA,QAAQ,EAAEK,OAAO,CAACmB,GAAG,CAAC,UAAD,CAAJ;AAHF,GAAjB;AAMA,MAAMG,SAAS,GAAG;AAAEb,IAAAA,OAAO,EAAPA,OAAF;AAAWM,IAAAA,QAAQ,EAARA,QAAX;AAAqBpB,IAAAA,QAAQ,EAARA,QAArB;AAA+BsB,IAAAA,KAAK,EAALA;AAA/B,GAAlB;AAEA,sBACE,gCAAC,iBAAD;AACE,IAAA,EAAE,EAAEC,EADN;AAEE,kBAAYF,aAFd;AAGE,oBAAcP;AAHhB,KAIMa,SAJN;AAKE,IAAA,SAAS,EAAE9C,UALb;AAME,IAAA,OAAO,EAAE;AACP+B,MAAAA,IAAI,EAAEc,QAAQ,CAACd,IADR;AAEPE,MAAAA,OAAO,EAAEY,QAAQ,CAACZ,OAFX;AAGPd,MAAAA,QAAQ,YAAKmB,WAAW,GAAG,EAAH,GAAQO,QAAQ,CAAC1B,QAAjC;AAHD;AANX,KADF;AAcD,CA1B0B,CAApB;;;IA4BM6B,W;;;;;AA4BX,uBAAYzB,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AACA,UAAK0B,cAAL,GAAsB,MAAKA,cAAL,CAAoBC,IAApB,gDAAtB;AACA,UAAKC,QAAL,GAAgB,MAAKC,gBAAL,EAAhB;AAHiB;AAIlB;;;;WAED,wBAAeC,KAAf,EAAsB;AACpB,WAAK9B,KAAL,CAAWgB,QAAX,CAAoBc,KAApB;AACA,WAAK9B,KAAL,CAAW+B,aAAX,CAAyB;AACvBb,QAAAA,KAAK,EAAE,KAAKlB,KAAL,CAAWkB,KADK;AAEvBc,QAAAA,QAAQ,EAAE,CAAC,KAAKhC,KAAL,CAAWU;AAFC,OAAzB;AAID;;;WAED,4BAAmB;AACjB,aAAO,YAAY,CAACuB,IAAI,CAACC,MAAL,KAAgB,KAAjB,EAAwBC,OAAxB,EAAnB;AACD;;;WAED,kBAAS;AACP,wBAgBI,KAAKnC,KAhBT;AAAA,UACEoC,UADF,eACEA,UADF;AAAA,UAEExC,QAFF,eAEEA,QAFF;AAAA,UAGEyC,UAHF,eAGEA,UAHF;AAAA,UAIEC,QAJF,eAIEA,QAJF;AAAA,UAKE3C,KALF,eAKEA,KALF;AAAA,UAMEoB,WANF,eAMEA,WANF;AAAA,UAOEd,OAPF,eAOEA,OAPF;AAAA,UAQEsC,SARF,eAQEA,SARF;AAAA,UASEC,SATF,eASEA,SATF;AAAA,UAUEvB,aAVF,eAUEA,aAVF;AAAA,UAWEwB,QAXF,eAWEA,QAXF;AAAA,UAYEC,cAZF,eAYEA,cAZF;AAAA,UAaEC,aAbF,eAaEA,aAbF;AAAA,UAcEzB,KAdF,eAcEA,KAdF;AAAA,UAeER,OAfF,eAeEA,OAfF;AAkBA,UAAMkC,GAAG,GAAGR,UAAU,KAAK,UAAf,GAA4BtB,cAA5B,GAA6CU,WAAzD;AACA,UAAMqB,WAAW,GAAGT,UAAU,KAAK,UAAf,GAA4B,UAA5B,GAAyC,cAA7D;AAEA,UAAMU,gBAAgB,GAAG,4BAAW7C,OAAO,CAACf,cAAnB,uCACtBe,OAAO,CAACX,gBADc,EACKqD,aAAa,KAAK,YADvB,EAAzB;;AAIA,UAAMI,WAAW,gBACf,kEACGV,UAAU,gBACT;AAAM,QAAA,SAAS,EAAEpC,OAAO,CAACrB;AAAzB,SACGyD,UADH,OACgB,MADhB,eAEE,gCAAC,uBAAD;AAAe,QAAA,SAAS,EAAC,OAAzB;AAAiC,QAAA,MAAM,EAAE1C,KAAzC;AAAgD,QAAA,OAAO,EAAC;AAAxD,QAFF,CADS,gBAMT,gCAAC,uBAAD;AAAe,QAAA,SAAS,EAAC,OAAzB;AAAiC,QAAA,MAAM,EAAEA,KAAzC;AAAgD,QAAA,OAAO,EAAC;AAAxD,QAPJ,CADF;;AAaA,0BACE;AAAK,QAAA,SAAS,EAAE,4BAAW4C,SAAX,EAAsB,gBAAgBM,WAAtC,EAAmD,cAAnD;AAAhB,sBACE;AAAK,QAAA,SAAS,EAAE5C,OAAO,CAACrB;AAAxB,SACG,CAAC6D,QAAD,IAAaC,cAAb,iBAA+B,gCAAC,wBAAD;AAAc,QAAA,WAAW,EAAE3B;AAA3B,QADlC,eAEE;AAAK,QAAA,SAAS,EAAE,4BAAW+B,gBAAX,EAA6B,iBAA7B;AAAhB,sBACE,gCAAC,sBAAD;AACE,QAAA,KAAK,EAAEC,WADT;AAEE,QAAA,KAAK,EAAE7B,KAFT;AAGE,QAAA,OAAO,EAAE,KAAKU,QAHhB;AAIE,QAAA,OAAO,eACL,gCAAC,GAAD;AACE,UAAA,aAAa,EAAEX,aADjB;AAEE,UAAA,QAAQ,EAAErB,QAFZ;AAGE,UAAA,OAAO,EAAEc,OAHX;AAIE,UAAA,WAAW,EAAEK,WAJf;AAKE,UAAA,KAAK,EAAEG,KALT;AAME,UAAA,EAAE,EAAE,KAAKU,QANX;AAOE,UAAA,QAAQ,EAAE,KAAKF;AAPjB;AALJ,QADF,CAFF,CADF,EAsBGc,SAAS,iBAAI,gCAAC,uBAAD;AAAe,QAAA,SAAS,EAAC,WAAzB;AAAqC,QAAA,gBAAgB,EAAC,WAAtD;AAAkE,QAAA,MAAM,EAAEA;AAA1E,QAtBhB,eAuBE,gCAAC,kBAAD;AAAU,QAAA,QAAQ,EAAEF,QAApB;AAA8B,QAAA,WAAW,EAAEvB;AAA3C,QAvBF,CADF;AA2BD;;;EAhH8BiC,kBAAMC,S;;;iCAA1BxB,W,eACQ;AACjBW,EAAAA,UAAU,EAAEc,sBAAUC,KAAV,CAAgB,CAAC,OAAD,EAAU,UAAV,CAAhB,CADK;AAEjBd,EAAAA,UAAU,EAAEa,sBAAUE,MAAV,CAAiBC,UAFZ;AAGjB3C,EAAAA,OAAO,EAAEwC,sBAAUI,IAAV,CAAeD,UAHP;AAIjBtC,EAAAA,WAAW,EAAEmC,sBAAUE,MAJN;AAKjBxD,EAAAA,QAAQ,EAAEsD,sBAAUI,IAAV,CAAeD,UALR;AAMjBf,EAAAA,QAAQ,EAAEY,sBAAUE,MANH;AAOjBzD,EAAAA,KAAK,EAAEuD,sBAAUE,MAAV,CAAiBC,UAPP;AAQjBb,EAAAA,SAAS,EAAEU,sBAAUE,MARJ;AASjBnC,EAAAA,aAAa,EAAEiC,sBAAUE,MATR;AAUjBpC,EAAAA,QAAQ,EAAEkC,sBAAUK,IAAV,CAAeF,UAVR;AAWjBnC,EAAAA,KAAK,EAAEgC,sBAAUE,MAAV,CAAiBC,UAXP;AAYjBpD,EAAAA,OAAO,EAAEiD,sBAAUM,MAZF;AAajBjB,EAAAA,SAAS,EAAEW,sBAAUE,MAbJ;AAcjBX,EAAAA,QAAQ,EAAES,sBAAUI,IAdH;AAejBZ,EAAAA,cAAc,EAAEQ,sBAAUI,IAfT;AAgBjBX,EAAAA,aAAa,EAAEO,sBAAUC,KAAV,CAAgB,CAAC,UAAD,EAAa,MAAb,EAAqB,YAArB,CAAhB,CAhBE;AAiBjBpB,EAAAA,aAAa,EAAEmB,sBAAUK;AAjBR,C;iCADR9B,W,kBAqBW;AACpBe,EAAAA,SAAS,EAAE,IADS;AAEpBvB,EAAAA,aAAa,EAAE,IAFK;AAGpBP,EAAAA,OAAO,EAAE,KAHW;AAIpBgC,EAAAA,cAAc,EAAE;AAJI,C;;eA8FT,wBAAWhE,UAAX,EAAuB+C,WAAvB,C","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/pie-toolbox/render-ui';\nimport FeedbackTick from './feedback-tick';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nconst CLASS_NAME = 'multiple-choice-component';\n\nconst styleSheet = (theme) => ({\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 '& > span':{\n fontSize: 'inherit',\n }\n },\n },\n horizontalLayout: {\n [`& .${CLASS_NAME}`]: {\n paddingRight: theme.spacing.unit,\n },\n },\n});\n\nconst formStyleSheet = {\n label: {\n color: `${color.text()} !important`, //'var(--choice-input-color, black)'\n backgroundColor: color.background(),\n },\n disabled: {\n // apply to all children\n '& *': {\n cursor: 'not-allowed !important',\n }\n }\n};\n\nexport const StyledFormControlLabel = withStyles(formStyleSheet, {\n name: 'FormControlLabel',\n})((props) => (\n <FormControlLabel\n {...props}\n classes={{ label: props.classes.label, disabled: props.classes.disabled }}\n />\n));\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('incorrect-disabled-color', color.disabled()),\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 { correctness, classes, checked, onChange, disabled, accessibility, value, id } = 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, value };\n\n return (\n <Checkbox\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\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 { correctness, classes, checked, onChange, disabled, accessibility, value, id } = 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, value };\n\n return (\n <Radio\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\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 choicesLayout: PropTypes.oneOf(['vertical', 'grid', 'horizontal']),\n updateSession: PropTypes.func,\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 this.choiceId = this.generateChoiceId();\n }\n\n onToggleChoice(event) {\n this.props.onChange(event);\n this.props.updateSession({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n generateChoiceId() {\n return 'choice-' + (Math.random() * 10000).toFixed();\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n choicesLayout,\n value,\n checked,\n } = this.props;\n\n const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;\n const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';\n\n const holderClassNames = classNames(classes.checkboxHolder, {\n [classes.horizontalLayout]: choicesLayout === 'horizontal',\n });\n\n const choicelabel = (\n <>\n {displayKey ? (\n <span className={classes.row}>\n {displayKey}.{'\\u00A0'}\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n </span>\n ) : (\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n )}\n </>\n );\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(holderClassNames, 'checkbox-holder')}>\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n control={\n <Tag\n accessibility={accessibility}\n disabled={disabled}\n checked={checked}\n correctness={correctness}\n value={value}\n id={this.choiceId}\n onChange={this.onToggleChoice}\n />\n }\n />\n </div>\n </div>\n {rationale && <PreviewPrompt className=\"rationale\" defaultClassName=\"rationale\" prompt={rationale} />}\n <Feedback feedback={feedback} correctness={correctness} />\n </div>\n );\n }\n}\n\nexport default withStyles(styleSheet)(ChoiceInput);\n"],"file":"choice-input.js"}
package/module/element.js CHANGED
@@ -8908,8 +8908,7 @@ const styleSheet = theme => ({
8908
8908
  const formStyleSheet = {
8909
8909
  label: {
8910
8910
  color: `${color$1.text()} !important`,
8911
- backgroundColor: color$1.background(),
8912
- letterSpacing: 'normal'
8911
+ backgroundColor: color$1.background()
8913
8912
  },
8914
8913
  disabled: {
8915
8914
  '& *': {
@@ -8928,7 +8927,7 @@ const StyledFormControlLabel = styles$b.withStyles(formStyleSheet, {
8928
8927
  __self: undefined,
8929
8928
  __source: {
8930
8929
  fileName: _jsxFileName$3,
8931
- lineNumber: 56
8930
+ lineNumber: 55
8932
8931
  }
8933
8932
  }));
8934
8933
  const colorStyle = (varName, fallback) => ({
@@ -8985,7 +8984,7 @@ const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
8985
8984
  __self: undefined,
8986
8985
  __source: {
8987
8986
  fileName: _jsxFileName$3,
8988
- lineNumber: 101
8987
+ lineNumber: 100
8989
8988
  }
8990
8989
  });
8991
8990
  });
@@ -9017,7 +9016,7 @@ const StyledRadio = styles$b.withStyles(inputStyles)(props => {
9017
9016
  __self: undefined,
9018
9017
  __source: {
9019
9018
  fileName: _jsxFileName$3,
9020
- lineNumber: 129
9019
+ lineNumber: 128
9021
9020
  }
9022
9021
  });
9023
9022
  });
@@ -9078,7 +9077,7 @@ class ChoiceInput extends React$4.Component {
9078
9077
  __self: this,
9079
9078
  __source: {
9080
9079
  fileName: _jsxFileName$3,
9081
- lineNumber: 219
9080
+ lineNumber: 218
9082
9081
  }
9083
9082
  }, displayKey, ".", '\u00A0', React$4.createElement(PreviewPrompt$1, {
9084
9083
  className: "label",
@@ -9087,7 +9086,7 @@ class ChoiceInput extends React$4.Component {
9087
9086
  __self: this,
9088
9087
  __source: {
9089
9088
  fileName: _jsxFileName$3,
9090
- lineNumber: 221
9089
+ lineNumber: 220
9091
9090
  }
9092
9091
  })) : React$4.createElement(PreviewPrompt$1, {
9093
9092
  className: "label",
@@ -9096,7 +9095,7 @@ class ChoiceInput extends React$4.Component {
9096
9095
  __self: this,
9097
9096
  __source: {
9098
9097
  fileName: _jsxFileName$3,
9099
- lineNumber: 224
9098
+ lineNumber: 223
9100
9099
  }
9101
9100
  }));
9102
9101
  return React$4.createElement('div', {
@@ -9104,28 +9103,28 @@ class ChoiceInput extends React$4.Component {
9104
9103
  __self: this,
9105
9104
  __source: {
9106
9105
  fileName: _jsxFileName$3,
9107
- lineNumber: 230
9106
+ lineNumber: 229
9108
9107
  }
9109
9108
  }, React$4.createElement('div', {
9110
9109
  className: classes.row,
9111
9110
  __self: this,
9112
9111
  __source: {
9113
9112
  fileName: _jsxFileName$3,
9114
- lineNumber: 231
9113
+ lineNumber: 230
9115
9114
  }
9116
9115
  }, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
9117
9116
  correctness: correctness,
9118
9117
  __self: this,
9119
9118
  __source: {
9120
9119
  fileName: _jsxFileName$3,
9121
- lineNumber: 232
9120
+ lineNumber: 231
9122
9121
  }
9123
9122
  }), React$4.createElement('div', {
9124
9123
  className: classNames$2(holderClassNames, 'checkbox-holder'),
9125
9124
  __self: this,
9126
9125
  __source: {
9127
9126
  fileName: _jsxFileName$3,
9128
- lineNumber: 233
9127
+ lineNumber: 232
9129
9128
  }
9130
9129
  }, React$4.createElement(StyledFormControlLabel, {
9131
9130
  label: choicelabel,
@@ -9142,13 +9141,13 @@ class ChoiceInput extends React$4.Component {
9142
9141
  __self: this,
9143
9142
  __source: {
9144
9143
  fileName: _jsxFileName$3,
9145
- lineNumber: 239
9144
+ lineNumber: 238
9146
9145
  }
9147
9146
  }),
9148
9147
  __self: this,
9149
9148
  __source: {
9150
9149
  fileName: _jsxFileName$3,
9151
- lineNumber: 234
9150
+ lineNumber: 233
9152
9151
  }
9153
9152
  }))), rationale && React$4.createElement(PreviewPrompt$1, {
9154
9153
  className: "rationale",
@@ -9157,7 +9156,7 @@ class ChoiceInput extends React$4.Component {
9157
9156
  __self: this,
9158
9157
  __source: {
9159
9158
  fileName: _jsxFileName$3,
9160
- lineNumber: 252
9159
+ lineNumber: 251
9161
9160
  }
9162
9161
  }), React$4.createElement(Feedback, {
9163
9162
  feedback: feedback,
@@ -9165,7 +9164,7 @@ class ChoiceInput extends React$4.Component {
9165
9164
  __self: this,
9166
9165
  __source: {
9167
9166
  fileName: _jsxFileName$3,
9168
- lineNumber: 253
9167
+ lineNumber: 252
9169
9168
  }
9170
9169
  }));
9171
9170
  }
package/module/print.js CHANGED
@@ -8908,8 +8908,7 @@ const styleSheet = theme => ({
8908
8908
  const formStyleSheet = {
8909
8909
  label: {
8910
8910
  color: `${color$1.text()} !important`,
8911
- backgroundColor: color$1.background(),
8912
- letterSpacing: 'normal'
8911
+ backgroundColor: color$1.background()
8913
8912
  },
8914
8913
  disabled: {
8915
8914
  '& *': {
@@ -8928,7 +8927,7 @@ const StyledFormControlLabel = styles$b.withStyles(formStyleSheet, {
8928
8927
  __self: undefined,
8929
8928
  __source: {
8930
8929
  fileName: _jsxFileName$3,
8931
- lineNumber: 56
8930
+ lineNumber: 55
8932
8931
  }
8933
8932
  }));
8934
8933
  const colorStyle = (varName, fallback) => ({
@@ -8985,7 +8984,7 @@ const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
8985
8984
  __self: undefined,
8986
8985
  __source: {
8987
8986
  fileName: _jsxFileName$3,
8988
- lineNumber: 101
8987
+ lineNumber: 100
8989
8988
  }
8990
8989
  });
8991
8990
  });
@@ -9017,7 +9016,7 @@ const StyledRadio = styles$b.withStyles(inputStyles)(props => {
9017
9016
  __self: undefined,
9018
9017
  __source: {
9019
9018
  fileName: _jsxFileName$3,
9020
- lineNumber: 129
9019
+ lineNumber: 128
9021
9020
  }
9022
9021
  });
9023
9022
  });
@@ -9078,7 +9077,7 @@ class ChoiceInput extends React$4.Component {
9078
9077
  __self: this,
9079
9078
  __source: {
9080
9079
  fileName: _jsxFileName$3,
9081
- lineNumber: 219
9080
+ lineNumber: 218
9082
9081
  }
9083
9082
  }, displayKey, ".", '\u00A0', React$4.createElement(PreviewPrompt$1, {
9084
9083
  className: "label",
@@ -9087,7 +9086,7 @@ class ChoiceInput extends React$4.Component {
9087
9086
  __self: this,
9088
9087
  __source: {
9089
9088
  fileName: _jsxFileName$3,
9090
- lineNumber: 221
9089
+ lineNumber: 220
9091
9090
  }
9092
9091
  })) : React$4.createElement(PreviewPrompt$1, {
9093
9092
  className: "label",
@@ -9096,7 +9095,7 @@ class ChoiceInput extends React$4.Component {
9096
9095
  __self: this,
9097
9096
  __source: {
9098
9097
  fileName: _jsxFileName$3,
9099
- lineNumber: 224
9098
+ lineNumber: 223
9100
9099
  }
9101
9100
  }));
9102
9101
  return React$4.createElement('div', {
@@ -9104,28 +9103,28 @@ class ChoiceInput extends React$4.Component {
9104
9103
  __self: this,
9105
9104
  __source: {
9106
9105
  fileName: _jsxFileName$3,
9107
- lineNumber: 230
9106
+ lineNumber: 229
9108
9107
  }
9109
9108
  }, React$4.createElement('div', {
9110
9109
  className: classes.row,
9111
9110
  __self: this,
9112
9111
  __source: {
9113
9112
  fileName: _jsxFileName$3,
9114
- lineNumber: 231
9113
+ lineNumber: 230
9115
9114
  }
9116
9115
  }, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
9117
9116
  correctness: correctness,
9118
9117
  __self: this,
9119
9118
  __source: {
9120
9119
  fileName: _jsxFileName$3,
9121
- lineNumber: 232
9120
+ lineNumber: 231
9122
9121
  }
9123
9122
  }), React$4.createElement('div', {
9124
9123
  className: classNames$2(holderClassNames, 'checkbox-holder'),
9125
9124
  __self: this,
9126
9125
  __source: {
9127
9126
  fileName: _jsxFileName$3,
9128
- lineNumber: 233
9127
+ lineNumber: 232
9129
9128
  }
9130
9129
  }, React$4.createElement(StyledFormControlLabel, {
9131
9130
  label: choicelabel,
@@ -9142,13 +9141,13 @@ class ChoiceInput extends React$4.Component {
9142
9141
  __self: this,
9143
9142
  __source: {
9144
9143
  fileName: _jsxFileName$3,
9145
- lineNumber: 239
9144
+ lineNumber: 238
9146
9145
  }
9147
9146
  }),
9148
9147
  __self: this,
9149
9148
  __source: {
9150
9149
  fileName: _jsxFileName$3,
9151
- lineNumber: 234
9150
+ lineNumber: 233
9152
9151
  }
9153
9152
  }))), rationale && React$4.createElement(PreviewPrompt$1, {
9154
9153
  className: "rationale",
@@ -9157,7 +9156,7 @@ class ChoiceInput extends React$4.Component {
9157
9156
  __self: this,
9158
9157
  __source: {
9159
9158
  fileName: _jsxFileName$3,
9160
- lineNumber: 252
9159
+ lineNumber: 251
9161
9160
  }
9162
9161
  }), React$4.createElement(Feedback, {
9163
9162
  feedback: feedback,
@@ -9165,7 +9164,7 @@ class ChoiceInput extends React$4.Component {
9165
9164
  __self: this,
9166
9165
  __source: {
9167
9166
  fileName: _jsxFileName$3,
9168
- lineNumber: 253
9167
+ lineNumber: 252
9169
9168
  }
9170
9169
  }));
9171
9170
  }
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": "9.0.2-next.21+1cc3bf5f1",
4
+ "version": "9.0.2-next.5+809bbbb35",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -18,7 +18,7 @@
18
18
  "react-test-renderer": "^16.3.2",
19
19
  "react-transition-group": "^2.3.1"
20
20
  },
21
- "gitHead": "1cc3bf5f1ffe2cdceb7ec49cf1d55848593d358f",
21
+ "gitHead": "809bbbb351e47d5b5d1228fd7477ba30789ffb37",
22
22
  "scripts": {
23
23
  "postpublish": "../../scripts/postpublish"
24
24
  },