@pie-element/multiple-choice 9.6.1-next.13 → 9.6.1-next.18
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/defaults.js +0 -16
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/main.js +2 -36
- package/configure/lib/main.js.map +1 -1
- package/controller/lib/defaults.js +0 -1
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +0 -4
- package/controller/lib/index.js.map +1 -1
- package/controller/lib/utils.js +1 -9
- package/controller/lib/utils.js.map +1 -1
- package/docs/demo/generate.js +0 -4
- package/lib/choice-input.js +0 -9
- package/lib/choice-input.js.map +1 -1
- package/module/configure.js +28 -84
- package/module/controller.js +0 -11
- package/module/demo.js +0 -4
- package/module/element.js +18 -24
- package/module/print-demo.js +0 -4
- package/module/print.js +18 -24
- package/package.json +2 -2
package/lib/choice-input.js.map
CHANGED
|
@@ -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","belowLayout","belowLayoutCenter","justifyContent","belowSelectionComponent","paddingLeft","formStyleSheet","label","letterSpacing","disabled","cursor","StyledFormControlLabel","name","props","classes","colorStyle","varName","fallback","inputStyles","correct","incorrect","root","primaryLight","checked","primary","opacity","pointerEvents","focusVisibleUnchecked","outline","focusUncheckedBorder","focusUnchecked","focusVisibleChecked","focusCheckedBorder","focusChecked","StyledCheckbox","correctness","onChange","accessibility","value","id","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","choiceId","generateChoiceId","event","Math","random","toFixed","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","choicesLayout","isSelectionButtonBelow","Tag","classSuffix","holderClassNames","choicelabel","padding","React","Component","PropTypes","oneOf","string","isRequired","bool","func","object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;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,oBAAY;AACVC,UAAAA,QAAQ,EAAE;AADA;AAFH;AALG,KANa;AAkB7BC,IAAAA,gBAAgB,oDACPb,UADO,GACQ;AACpBc,MAAAA,YAAY,EAAEZ,KAAK,CAACa,OAAN,CAAcC;AADR,KADR,CAlBa;AAuB7BC,IAAAA,WAAW,EAAE;AACX,mBAAa;AACXZ,QAAAA,UAAU,EAAE;AADD;AADF,KAvBgB;AA4B7Ba,IAAAA,iBAAiB,EAAE;AACjBC,MAAAA,cAAc,EAAE,QADC;AAEjB,mBAAa;AACXd,QAAAA,UAAU,EAAE;AADD;AAFI,KA5BU;AAkC7Be,IAAAA,uBAAuB,EAAE;AACvBhB,MAAAA,OAAO,EAAE,MADc;AAEvBC,MAAAA,UAAU,EAAE,QAFW;AAGvB,kBAAY;AACVgB,QAAAA,WAAW,EAAE;AADH;AAHW;AAlCI,GAAZ;AAAA,CAAnB;;AA2CA,IAAMC,cAAc,GAAG;AACrBC,EAAAA,KAAK,EAAE;AACLhB,IAAAA,KAAK,YAAKA,gBAAMI,IAAN,EAAL,gBADA;AACgC;AACrCL,IAAAA,eAAe,EAAEC,gBAAMC,UAAN,EAFZ;AAGLgB,IAAAA,aAAa,EAAE;AAHV,GADc;AAMrBC,EAAAA,QAAQ,EAAE;AACR;AACA,WAAO;AACLC,MAAAA,MAAM,EAAE;AADH;AAFC;AANW,CAAvB;AAcO,IAAMC,sBAAsB,GAAG,wBAAWL,cAAX,EAA2B;AAC/DM,EAAAA,IAAI,EAAE;AADyD,CAA3B,EAEnC,UAACC,KAAD;AAAA,sBACD,gCAAC,4BAAD,gCAAsBA,KAAtB;AAA6B,IAAA,OAAO,EAAE;AAAEN,MAAAA,KAAK,EAAEM,KAAK,CAACC,OAAN,CAAcP,KAAvB;AAA8BE,MAAAA,QAAQ,EAAEI,KAAK,CAACC,OAAN,CAAcL;AAAtD;AAAtC,KADC;AAAA,CAFmC,CAA/B;;;AAMP,IAAMM,UAAU,GAAG,SAAbA,UAAa,CAACC,OAAD,EAAUC,QAAV;AAAA,0DACXjC,UADW,GACI;AACnBO,IAAAA,KAAK,+BAAwByB,OAAxB,eAAoCC,QAApC;AADc,GADJ;AAAA,CAAnB;;AAMA,IAAMC,WAAW,GAAG;AAClB,kBAAgBH,UAAU,CAAC,eAAD,EAAkBxB,gBAAMI,IAAN,EAAlB,CADR;AAElB,qBAAmBoB,UAAU,CAAC,wBAAD,EAA2BxB,gBAAM4B,OAAN,EAA3B,CAFX;AAEwD;AAC1E,sBAAoBJ,UAAU,CAAC,wBAAD,EAA2BxB,gBAAMkB,QAAN,EAA3B,CAHZ;AAG0D;AAC5E,oBAAkBM,UAAU,CAAC,iBAAD,EAAoBxB,gBAAM6B,SAAN,EAApB,CAJV;AAKlB,uBAAqBL,UAAU,CAAC,mBAAD,EAAsBxB,gBAAM6B,SAAN,EAAtB,CALb;AAKuD;AACzE,wBAAsBL,UAAU,CAAC,0BAAD,EAA6BxB,gBAAMkB,QAAN,EAA7B,CANd;AAOlBY,EAAAA,IAAI,kCACCN,UAAU,CAAC,OAAD,EAAUxB,gBAAMI,IAAN,EAAV,CADX;AAEF,eAAW;AAAEJ,MAAAA,KAAK,YAAKA,gBAAM+B,YAAN,EAAL;AAAP;AAFT,IAPc;AAWlBC,EAAAA,OAAO,EAAER,UAAU,CAAC,gBAAD,EAAmBxB,gBAAMiC,OAAN,EAAnB,CAXD;AAYlBf,EAAAA,QAAQ,kCACHM,UAAU,CAAC,gBAAD,EAAmBxB,gBAAMI,IAAN,EAAnB,CADP;AAEN8B,IAAAA,OAAO,EAAE,GAFH;AAGNf,IAAAA,MAAM,EAAE,wBAHF;AAINgB,IAAAA,aAAa,EAAE;AAJT,IAZU;AAkBlBC,EAAAA,qBAAqB,EAAE;AACrBC,IAAAA,OAAO,sBAAerC,gBAAMsC,oBAAN,EAAf,CADc;AAErBvC,IAAAA,eAAe,EAAEC,gBAAMuC,cAAN;AAFI,GAlBL;AAsBlBC,EAAAA,mBAAmB,EAAE;AACnBH,IAAAA,OAAO,sBAAerC,gBAAMyC,kBAAN,EAAf,CADY;AAEnB1C,IAAAA,eAAe,EAAEC,gBAAM0C,YAAN;AAFE;AAtBH,CAApB;AA4BO,IAAMC,cAAc,GAAG,wBAAWhB,WAAX,EAAwB,UAACL,KAAD,EAAW;AAC/D,MAAQsB,WAAR,GAAwFtB,KAAxF,CAAQsB,WAAR;AAAA,MAAqBrB,OAArB,GAAwFD,KAAxF,CAAqBC,OAArB;AAAA,MAA8BS,OAA9B,GAAwFV,KAAxF,CAA8BU,OAA9B;AAAA,MAAuCa,QAAvC,GAAwFvB,KAAxF,CAAuCuB,QAAvC;AAAA,MAAiD3B,QAAjD,GAAwFI,KAAxF,CAAiDJ,QAAjD;AAAA,MAA2D4B,aAA3D,GAAwFxB,KAAxF,CAA2DwB,aAA3D;AAAA,MAA0EC,KAA1E,GAAwFzB,KAAxF,CAA0EyB,KAA1E;AAAA,MAAiFC,EAAjF,GAAwF1B,KAAxF,CAAiF0B,EAAjF;;AACA,MAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,CAAD;AAAA,WAAQN,WAAW,aAAMA,WAAN,cAAqBM,CAArB,IAA2BA,CAA9C;AAAA,GAAZ;;AAEA,MAAMC,QAAQ,GAAG;AACfrB,IAAAA,IAAI,EAAEP,OAAO,CAAC0B,GAAG,CAAC,MAAD,CAAJ,CADE;AAEfjB,IAAAA,OAAO,EAAET,OAAO,CAAC0B,GAAG,CAAC,SAAD,CAAJ,CAFD;AAGf/B,IAAAA,QAAQ,EAAEK,OAAO,CAAC0B,GAAG,CAAC,UAAD,CAAJ;AAHF,GAAjB;AAMA,MAAMG,SAAS,GAAG;AAAEpB,IAAAA,OAAO,EAAPA,OAAF;AAAWa,IAAAA,QAAQ,EAARA,QAAX;AAAqB3B,IAAAA,QAAQ,EAARA,QAArB;AAA+B6B,IAAAA,KAAK,EAALA;AAA/B,GAAlB;AAEA,sBACE,gCAAC,oBAAD;AACE,IAAA,EAAE,EAAEC,EADN;AAEE,kBAAYF,aAFd;AAGE,oBAAcd,OAHhB;AAIE,IAAA,qBAAqB,EAAEA,OAAO,GAAGT,OAAO,CAACiB,mBAAX,GAAiCjB,OAAO,CAACa,qBAJzE;AAKE,IAAA,aAAa;AALf,KAMMgB,SANN;AAOE,IAAA,SAAS,EAAE3D,UAPb;AAQE,IAAA,OAAO,EAAE;AACPqC,MAAAA,IAAI,EAAEqB,QAAQ,CAACrB,IADR;AAEPE,MAAAA,OAAO,EAAEmB,QAAQ,CAACnB,OAFX;AAGPd,MAAAA,QAAQ,YAAK0B,WAAW,GAAG,EAAH,GAAQO,QAAQ,CAACjC,QAAjC;AAHD;AARX,KADF;AAgBD,CA5B6B,CAAvB;;AA8BA,IAAMmC,WAAW,GAAG,wBAAW1B,WAAX,EAAwB,UAACL,KAAD,EAAW;AAC5D,MAAQsB,WAAR,GAAwFtB,KAAxF,CAAQsB,WAAR;AAAA,MAAqBrB,OAArB,GAAwFD,KAAxF,CAAqBC,OAArB;AAAA,MAA8BS,OAA9B,GAAwFV,KAAxF,CAA8BU,OAA9B;AAAA,MAAuCa,QAAvC,GAAwFvB,KAAxF,CAAuCuB,QAAvC;AAAA,MAAiD3B,QAAjD,GAAwFI,KAAxF,CAAiDJ,QAAjD;AAAA,MAA2D4B,aAA3D,GAAwFxB,KAAxF,CAA2DwB,aAA3D;AAAA,MAA0EC,KAA1E,GAAwFzB,KAAxF,CAA0EyB,KAA1E;AAAA,MAAiFC,EAAjF,GAAwF1B,KAAxF,CAAiF0B,EAAjF;;AACA,MAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,CAAD;AAAA,WAAQN,WAAW,aAAMA,WAAN,cAAqBM,CAArB,IAA2BA,CAA9C;AAAA,GAAZ;;AAEA,MAAMC,QAAQ,GAAG;AACfrB,IAAAA,IAAI,EAAEP,OAAO,CAAC0B,GAAG,CAAC,MAAD,CAAJ,CADE;AAEfjB,IAAAA,OAAO,EAAET,OAAO,CAAC0B,GAAG,CAAC,SAAD,CAAJ,CAFD;AAGf/B,IAAAA,QAAQ,EAAEK,OAAO,CAAC0B,GAAG,CAAC,UAAD,CAAJ;AAHF,GAAjB;AAMA,MAAMG,SAAS,GAAG;AAAEpB,IAAAA,OAAO,EAAPA,OAAF;AAAWa,IAAAA,QAAQ,EAARA,QAAX;AAAqB3B,IAAAA,QAAQ,EAARA,QAArB;AAA+B6B,IAAAA,KAAK,EAALA;AAA/B,GAAlB;AAEA,sBACE,gCAAC,iBAAD;AACE,IAAA,EAAE,EAAEC,EADN;AAEE,kBAAYF,aAFd;AAGE,oBAAcd,OAHhB;AAIE,IAAA,qBAAqB,EAAEA,OAAO,GAAGT,OAAO,CAACiB,mBAAX,GAAiCjB,OAAO,CAACa,qBAJzE;AAKE,IAAA,aAAa;AALf,KAMMgB,SANN;AAOE,IAAA,SAAS,EAAE3D,UAPb;AAQE,IAAA,OAAO,EAAE;AACPqC,MAAAA,IAAI,EAAEqB,QAAQ,CAACrB,IADR;AAEPE,MAAAA,OAAO,EAAEmB,QAAQ,CAACnB,OAFX;AAGPd,MAAAA,QAAQ,YAAK0B,WAAW,GAAG,EAAH,GAAQO,QAAQ,CAACjC,QAAjC;AAHD;AARX,KADF;AAgBD,CA5B0B,CAApB;;;IA8BMoC,W;;;;;AA4BX,uBAAYhC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AACA,UAAKiC,cAAL,GAAsB,MAAKA,cAAL,CAAoBC,IAApB,gDAAtB;AACA,UAAKC,QAAL,GAAgB,MAAKC,gBAAL,EAAhB;AAHiB;AAIlB;;;;WAED,wBAAeC,KAAf,EAAsB;AACpB,WAAKrC,KAAL,CAAWuB,QAAX,CAAoBc,KAApB;AACD;;;WAED,4BAAmB;AACjB,aAAO,YAAY,CAACC,IAAI,CAACC,MAAL,KAAgB,KAAjB,EAAwBC,OAAxB,EAAnB;AACD;;;WAED,kBAAS;AAAA;;AACP,wBAiBI,KAAKxC,KAjBT;AAAA,UACEyC,UADF,eACEA,UADF;AAAA,UAEE7C,QAFF,eAEEA,QAFF;AAAA,UAGE8C,UAHF,eAGEA,UAHF;AAAA,UAIEC,QAJF,eAIEA,QAJF;AAAA,UAKEjD,KALF,eAKEA,KALF;AAAA,UAME4B,WANF,eAMEA,WANF;AAAA,UAOErB,OAPF,eAOEA,OAPF;AAAA,UAQE2C,SARF,eAQEA,SARF;AAAA,UASEC,SATF,eASEA,SATF;AAAA,UAUErB,aAVF,eAUEA,aAVF;AAAA,UAWEsB,QAXF,eAWEA,QAXF;AAAA,UAYEC,cAZF,eAYEA,cAZF;AAAA,UAaEC,aAbF,eAaEA,aAbF;AAAA,UAcEvB,KAdF,eAcEA,KAdF;AAAA,UAeEf,OAfF,eAeEA,OAfF;AAAA,UAgBEuC,sBAhBF,eAgBEA,sBAhBF;AAmBA,UAAMC,GAAG,GAAGT,UAAU,KAAK,UAAf,GAA4BpB,cAA5B,GAA6CU,WAAzD;AACA,UAAMoB,WAAW,GAAGV,UAAU,KAAK,UAAf,GAA4B,UAA5B,GAAyC,cAA7D;AAEA,UAAMW,gBAAgB,GAAG,4BAAWnD,OAAO,CAACrB,cAAnB,mEACtBqB,OAAO,CAACjB,gBADc,EACKgE,aAAa,KAAK,YADvB,iDAEtB/C,OAAO,CAACb,WAFc,EAEA6D,sBAAsB,IAAID,aAAa,KAAK,MAF5C,iDAGtB/C,OAAO,CAACZ,iBAHc,EAGM4D,sBAAsB,IAAID,aAAa,KAAK,MAHlD,gBAAzB;;AAMA,UAAMK,WAAW,gBACf,kEACGX,UAAU,IAAI,CAACO,sBAAf,gBACC;AAAM,QAAA,SAAS,EAAEhD,OAAO,CAAC3B;AAAzB,SACGoE,UADH,OACgB,MADhB,eAEE,gCAAC,uBAAD;AAAe,QAAA,SAAS,EAAC,OAAzB;AAAiC,QAAA,MAAM,EAAEhD,KAAzC;AAAgD,QAAA,OAAO,EAAC;AAAxD,QAFF,CADD,gBAMC,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,4BAAWkD,SAAX,EAAsB,gBAAgBO,WAAtC,EAAmD,cAAnD;AAAhB,sBACE;AAAK,QAAA,SAAS,EAAElD,OAAO,CAAC3B;AAAxB,SACG,CAACwE,QAAD,IAAaC,cAAb,iBAA+B,gCAAC,wBAAD;AAAc,QAAA,WAAW,EAAEzB;AAA3B,QADlC,eAEE;AAAK,QAAA,SAAS,EAAE,4BAAW8B,gBAAX,EAA6B,iBAA7B;AAAhB,SACGH,sBAAsB,gBACrB,gCAAC,sBAAD;AACE,QAAA,KAAK,EAAEI,WADT;AAEE,QAAA,KAAK,EAAE5B,KAFT;AAGE,QAAA,OAAO,EAAE,KAAKU,QAHhB;AAIE,QAAA,cAAc,EAAE,KAJlB;AAKE,QAAA,OAAO,eACL;AAAM,UAAA,SAAS,EAAElC,OAAO,CAACV;AAAzB,wBACE,gCAAC,GAAD;AACE,UAAA,aAAa,EAAEiC,aADjB;AAEE,UAAA,QAAQ,EAAE5B,QAFZ;AAGE,UAAA,OAAO,EAAEc,OAHX;AAIE,UAAA,WAAW,EAAEY,WAJf;AAKE,UAAA,KAAK,EAAEG,KALT;AAME,UAAA,EAAE,EAAE,KAAKU,QANX;AAOE,UAAA,QAAQ,EAAE,KAAKF,cAPjB;AAQE,UAAA,KAAK,EAAE;AAAEqB,YAAAA,OAAO,EAAE;AAAX;AART,UADF,EAWGZ,UAXH;AANJ,QADqB,gBAuBrB,gCAAC,sBAAD;AACE,QAAA,KAAK,EAAEW,WADT;AAEE,QAAA,KAAK,EAAE5B,KAFT;AAGE,QAAA,OAAO,EAAE,KAAKU,QAHhB;AAIE,QAAA,OAAO,eACL,gCAAC,GAAD;AACE,UAAA,aAAa,EAAEX,aADjB;AAEE,UAAA,QAAQ,EAAE5B,QAFZ;AAGE,UAAA,OAAO,EAAEc,OAHX;AAIE,UAAA,WAAW,EAAEY,WAJf;AAKE,UAAA,KAAK,EAAEG,KALT;AAME,UAAA,EAAE,EAAE,KAAKU,QANX;AAOE,UAAA,QAAQ,EAAE,KAAKF;AAPjB;AALJ,QAxBJ,CAFF,CADF,EA8CGY,SAAS,iBAAI,gCAAC,uBAAD;AAAe,QAAA,SAAS,EAAC,WAAzB;AAAqC,QAAA,gBAAgB,EAAC,WAAtD;AAAkE,QAAA,MAAM,EAAEA;AAA1E,QA9ChB,eA+CE,gCAAC,kBAAD;AAAU,QAAA,QAAQ,EAAEF,QAApB;AAA8B,QAAA,WAAW,EAAErB;AAA3C,QA/CF,CADF;AAmDD;;;EAvI8BiC,kBAAMC,S;;;iCAA1BxB,W,eACQ;AACjBS,EAAAA,UAAU,EAAEgB,sBAAUC,KAAV,CAAgB,CAAC,OAAD,EAAU,UAAV,CAAhB,CADK;AAEjBhB,EAAAA,UAAU,EAAEe,sBAAUE,MAAV,CAAiBC,UAFZ;AAGjBlD,EAAAA,OAAO,EAAE+C,sBAAUI,IAAV,CAAeD,UAHP;AAIjBtC,EAAAA,WAAW,EAAEmC,sBAAUE,MAJN;AAKjB/D,EAAAA,QAAQ,EAAE6D,sBAAUI,IAAV,CAAeD,UALR;AAMjBjB,EAAAA,QAAQ,EAAEc,sBAAUE,MANH;AAOjBjE,EAAAA,KAAK,EAAE+D,sBAAUE,MAAV,CAAiBC,UAPP;AAQjBf,EAAAA,SAAS,EAAEY,sBAAUE,MARJ;AASjBnC,EAAAA,aAAa,EAAEiC,sBAAUE,MATR;AAUjBpC,EAAAA,QAAQ,EAAEkC,sBAAUK,IAAV,CAAeF,UAVR;AAWjBnC,EAAAA,KAAK,EAAEgC,sBAAUE,MAAV,CAAiBC,UAXP;AAYjB3D,EAAAA,OAAO,EAAEwD,sBAAUM,MAZF;AAajBnB,EAAAA,SAAS,EAAEa,sBAAUE,MAbJ;AAcjBb,EAAAA,QAAQ,EAAEW,sBAAUI,IAdH;AAejBd,EAAAA,cAAc,EAAEU,sBAAUI,IAfT;AAgBjBb,EAAAA,aAAa,EAAES,sBAAUC,KAAV,CAAgB,CAAC,UAAD,EAAa,MAAb,EAAqB,YAArB,CAAhB,CAhBE;AAiBjBT,EAAAA,sBAAsB,EAAEQ,sBAAUI;AAjBjB,C;iCADR7B,W,kBAqBW;AACpBa,EAAAA,SAAS,EAAE,IADS;AAEpBrB,EAAAA,aAAa,EAAE,IAFK;AAGpBd,EAAAA,OAAO,EAAE,KAHW;AAIpBqC,EAAAA,cAAc,EAAE;AAJI,C;;eAqHT,wBAAW3E,UAAX,EAAuB4D,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';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Feedback, color, PreviewPrompt } from '@pie-lib/pie-toolbox/render-ui';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nimport FeedbackTick from './feedback-tick';\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 belowLayout: {\n '& > label': {\n alignItems: 'flex-start',\n },\n },\n belowLayoutCenter: {\n justifyContent: 'center',\n '& > label': {\n alignItems: 'center',\n },\n },\n belowSelectionComponent: {\n display: 'flex',\n alignItems: 'center',\n '& > span': {\n paddingLeft: 0,\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 {...props} classes={{ label: props.classes.label, disabled: props.classes.disabled }} />\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 focusVisibleUnchecked: {\n outline: `1px solid ${color.focusUncheckedBorder()}`,\n backgroundColor: color.focusUnchecked(),\n },\n focusVisibleChecked: {\n outline: `1px solid ${color.focusCheckedBorder()}`,\n backgroundColor: color.focusChecked(),\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 focusVisibleClassName={checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked}\n disableRipple\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 focusVisibleClassName={checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked}\n disableRipple\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 isSelectionButtonBelow: 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 this.choiceId = this.generateChoiceId();\n }\n\n onToggleChoice(event) {\n this.props.onChange(event);\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 isSelectionButtonBelow,\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 [classes.belowLayout]: isSelectionButtonBelow && choicesLayout !== 'grid',\n [classes.belowLayoutCenter]: isSelectionButtonBelow && choicesLayout === 'grid',\n });\n\n const choicelabel = (\n <>\n {displayKey && !isSelectionButtonBelow ? (\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 {isSelectionButtonBelow ? (\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n labelPlacement={'top'}\n control={\n <span className={classes.belowSelectionComponent}>\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 style={{ padding: 0 }}\n />\n {displayKey}.\n </span>\n }\n />\n ) : (\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 )}\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","belowLayout","belowLayoutCenter","justifyContent","belowSelectionComponent","paddingLeft","formStyleSheet","label","letterSpacing","disabled","cursor","StyledFormControlLabel","name","props","classes","colorStyle","varName","fallback","inputStyles","correct","incorrect","root","primaryLight","checked","primary","opacity","pointerEvents","focusVisibleUnchecked","outline","focusUncheckedBorder","focusUnchecked","focusVisibleChecked","focusCheckedBorder","focusChecked","StyledCheckbox","correctness","onChange","value","id","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","choiceId","generateChoiceId","event","Math","random","toFixed","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","choicesLayout","isSelectionButtonBelow","Tag","classSuffix","holderClassNames","choicelabel","padding","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';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Feedback, color, PreviewPrompt } from '@pie-lib/pie-toolbox/render-ui';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nimport FeedbackTick from './feedback-tick';\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 belowLayout: {\n '& > label': {\n alignItems: 'flex-start',\n },\n },\n belowLayoutCenter: {\n justifyContent: 'center',\n '& > label': {\n alignItems: 'center',\n },\n },\n belowSelectionComponent: {\n display: 'flex',\n alignItems: 'center',\n '& > span': {\n paddingLeft: 0,\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 {...props} classes={{ label: props.classes.label, disabled: props.classes.disabled }} />\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 focusVisibleUnchecked: {\n outline: `1px solid ${color.focusUncheckedBorder()}`,\n backgroundColor: color.focusUnchecked(),\n },\n focusVisibleChecked: {\n outline: `1px solid ${color.focusCheckedBorder()}`,\n backgroundColor: color.focusChecked(),\n },\n};\n\nexport const StyledCheckbox = withStyles(inputStyles)((props) => {\n const { correctness, classes, checked, onChange, disabled, 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-checked={checked}\n focusVisibleClassName={checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked}\n disableRipple\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, 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-checked={checked}\n focusVisibleClassName={checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked}\n disableRipple\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 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 isSelectionButtonBelow: PropTypes.bool,\n };\n\n static defaultProps = {\n rationale: 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 }\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 hideTick,\n isEvaluateMode,\n choicesLayout,\n value,\n checked,\n isSelectionButtonBelow,\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 [classes.belowLayout]: isSelectionButtonBelow && choicesLayout !== 'grid',\n [classes.belowLayoutCenter]: isSelectionButtonBelow && choicesLayout === 'grid',\n });\n\n const choicelabel = (\n <>\n {displayKey && !isSelectionButtonBelow ? (\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 {isSelectionButtonBelow ? (\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n labelPlacement={'top'}\n control={\n <span className={classes.belowSelectionComponent}>\n <Tag\n disabled={disabled}\n checked={checked}\n correctness={correctness}\n value={value}\n id={this.choiceId}\n onChange={this.onToggleChoice}\n style={{ padding: 0 }}\n />\n {displayKey}.\n </span>\n }\n />\n ) : (\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n control={\n <Tag\n disabled={disabled}\n checked={checked}\n correctness={correctness}\n value={value}\n id={this.choiceId}\n onChange={this.onToggleChoice}\n />\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/configure.js
CHANGED
|
@@ -10211,12 +10211,6 @@ const styles = theme => ({
|
|
|
10211
10211
|
paddingTop: theme.spacing.unit * 2,
|
|
10212
10212
|
marginLeft: theme.spacing.unit * 3.5
|
|
10213
10213
|
},
|
|
10214
|
-
accessibilityHolder: {
|
|
10215
|
-
flex: 1,
|
|
10216
|
-
marginTop: theme.spacing.unit * 1.5,
|
|
10217
|
-
paddingTop: theme.spacing.unit * 2,
|
|
10218
|
-
marginLeft: theme.spacing.unit * 3.5
|
|
10219
|
-
},
|
|
10220
10214
|
choiceConfigurationHolder: {
|
|
10221
10215
|
display: 'flex',
|
|
10222
10216
|
flexDirection: 'column',
|
|
@@ -10265,9 +10259,9 @@ const styles = theme => ({
|
|
|
10265
10259
|
});
|
|
10266
10260
|
const Design = styles$8.withStyles(styles)(props => {
|
|
10267
10261
|
const {classes, model, configuration, onPromptChanged, onChoiceChanged, onRemoveChoice, onAddChoice, imageSupport, uploadSoundSupport, onChangeModel, onConfigurationChanged, onTeacherInstructionsChanged} = props;
|
|
10268
|
-
const {addChoiceButton = {}, contentDimensions = {}, feedback = {}, deleteChoice = {}, choiceMode = {}, choicePrefix = {}, partialScoring = {}, lockChoiceOrder = {}, teacherInstructions = {}, studentInstructions = {}, rationale = {},
|
|
10262
|
+
const {addChoiceButton = {}, contentDimensions = {}, feedback = {}, deleteChoice = {}, choiceMode = {}, choicePrefix = {}, partialScoring = {}, lockChoiceOrder = {}, teacherInstructions = {}, studentInstructions = {}, rationale = {}, scoringType = {}, sequentialChoiceLabels = {}, settingsPanelDisabled, choicesLayout, spellCheck = {}, gridColumns, maxImageWidth = {}, maxImageHeight = {}, prompt = {}, withRubric = {}, mathMlOptions = {}, language = {}, languageChoices = {}} = configuration || ({});
|
|
10269
10263
|
let {maxAnswerChoices} = configuration || ({});
|
|
10270
|
-
const {limitChoicesNumber, teacherInstructionsEnabled, rationaleEnabled,
|
|
10264
|
+
const {limitChoicesNumber, teacherInstructionsEnabled, rationaleEnabled, feedbackEnabled, promptEnabled, spellCheckEnabled, choices, errors, toolbarEditorPosition, extraCSSRules} = model || ({});
|
|
10271
10265
|
const {answerChoices: answerChoicesError, choices: choicesErrors, correctResponse: correctResponseError, prompt: promptError, rationale: rationaleErrors, teacherInstructions: teacherInstructionsError} = errors || ({});
|
|
10272
10266
|
const nrOfColumnsAvailable = _optionalChain$1([choices, 'optionalAccess', _2 => _2.length]) ? Array.from({
|
|
10273
10267
|
length: choices.length
|
|
@@ -10305,7 +10299,6 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10305
10299
|
promptEnabled: prompt.settings && toggle(prompt.label),
|
|
10306
10300
|
rationaleEnabled: rationale.settings && toggle(rationale.label),
|
|
10307
10301
|
spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),
|
|
10308
|
-
accessibilityLabelsEnabled: accessibility.settings && toggle(accessibility.label),
|
|
10309
10302
|
scoringType: scoringType.settings && radio(scoringType.label, ['auto', 'rubric']),
|
|
10310
10303
|
rubricEnabled: _optionalChain$1([withRubric, 'optionalAccess', _4 => _4.settings]) && toggle(_optionalChain$1([withRubric, 'optionalAccess', _5 => _5.label]))
|
|
10311
10304
|
};
|
|
@@ -10325,13 +10318,13 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10325
10318
|
__self: undefined,
|
|
10326
10319
|
__source: {
|
|
10327
10320
|
fileName: _jsxFileName,
|
|
10328
|
-
lineNumber:
|
|
10321
|
+
lineNumber: 204
|
|
10329
10322
|
}
|
|
10330
10323
|
}),
|
|
10331
10324
|
__self: undefined,
|
|
10332
10325
|
__source: {
|
|
10333
10326
|
fileName: _jsxFileName,
|
|
10334
|
-
lineNumber:
|
|
10327
|
+
lineNumber: 199
|
|
10335
10328
|
}
|
|
10336
10329
|
}, teacherInstructionsEnabled && React$1.createElement(InputContainer, {
|
|
10337
10330
|
label: teacherInstructions.label,
|
|
@@ -10339,7 +10332,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10339
10332
|
__self: undefined,
|
|
10340
10333
|
__source: {
|
|
10341
10334
|
fileName: _jsxFileName,
|
|
10342
|
-
lineNumber:
|
|
10335
|
+
lineNumber: 217
|
|
10343
10336
|
}
|
|
10344
10337
|
}, React$1.createElement(EditableHtml, {
|
|
10345
10338
|
className: classes.prompt,
|
|
@@ -10363,14 +10356,14 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10363
10356
|
__self: undefined,
|
|
10364
10357
|
__source: {
|
|
10365
10358
|
fileName: _jsxFileName,
|
|
10366
|
-
lineNumber:
|
|
10359
|
+
lineNumber: 218
|
|
10367
10360
|
}
|
|
10368
10361
|
}), teacherInstructionsError && React$1.createElement('div', {
|
|
10369
10362
|
className: classes.errorText,
|
|
10370
10363
|
__self: undefined,
|
|
10371
10364
|
__source: {
|
|
10372
10365
|
fileName: _jsxFileName,
|
|
10373
|
-
lineNumber:
|
|
10366
|
+
lineNumber: 234
|
|
10374
10367
|
}
|
|
10375
10368
|
}, teacherInstructionsError)), promptEnabled && React$1.createElement(InputContainer, {
|
|
10376
10369
|
label: prompt.label,
|
|
@@ -10378,7 +10371,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10378
10371
|
__self: undefined,
|
|
10379
10372
|
__source: {
|
|
10380
10373
|
fileName: _jsxFileName,
|
|
10381
|
-
lineNumber:
|
|
10374
|
+
lineNumber: 239
|
|
10382
10375
|
}
|
|
10383
10376
|
}, React$1.createElement(EditableHtml, {
|
|
10384
10377
|
className: classes.prompt,
|
|
@@ -10403,21 +10396,21 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10403
10396
|
__self: undefined,
|
|
10404
10397
|
__source: {
|
|
10405
10398
|
fileName: _jsxFileName,
|
|
10406
|
-
lineNumber:
|
|
10399
|
+
lineNumber: 240
|
|
10407
10400
|
}
|
|
10408
10401
|
}), promptError && React$1.createElement('div', {
|
|
10409
10402
|
className: classes.errorText,
|
|
10410
10403
|
__self: undefined,
|
|
10411
10404
|
__source: {
|
|
10412
10405
|
fileName: _jsxFileName,
|
|
10413
|
-
lineNumber:
|
|
10406
|
+
lineNumber: 257
|
|
10414
10407
|
}
|
|
10415
10408
|
}, promptError)), React$1.createElement('div', {
|
|
10416
10409
|
className: classes.flexContainer,
|
|
10417
10410
|
__self: undefined,
|
|
10418
10411
|
__source: {
|
|
10419
10412
|
fileName: _jsxFileName,
|
|
10420
|
-
lineNumber:
|
|
10413
|
+
lineNumber: 261
|
|
10421
10414
|
}
|
|
10422
10415
|
}, React$1.createElement(Typography, {
|
|
10423
10416
|
className: classes.titleText,
|
|
@@ -10425,7 +10418,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10425
10418
|
__self: undefined,
|
|
10426
10419
|
__source: {
|
|
10427
10420
|
fileName: _jsxFileName,
|
|
10428
|
-
lineNumber:
|
|
10421
|
+
lineNumber: 262
|
|
10429
10422
|
}
|
|
10430
10423
|
}, "Choices"), React$1.createElement(Tooltip, {
|
|
10431
10424
|
classes: {
|
|
@@ -10438,7 +10431,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10438
10431
|
__self: undefined,
|
|
10439
10432
|
__source: {
|
|
10440
10433
|
fileName: _jsxFileName,
|
|
10441
|
-
lineNumber:
|
|
10434
|
+
lineNumber: 263
|
|
10442
10435
|
}
|
|
10443
10436
|
}, React$1.createElement(default_1, {
|
|
10444
10437
|
fontSize: 'small',
|
|
@@ -10446,7 +10439,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10446
10439
|
__self: undefined,
|
|
10447
10440
|
__source: {
|
|
10448
10441
|
fileName: _jsxFileName,
|
|
10449
|
-
lineNumber:
|
|
10442
|
+
lineNumber: 270
|
|
10450
10443
|
}
|
|
10451
10444
|
}))), choices.map((choice, index) => React$1.createElement('div', {
|
|
10452
10445
|
key: `choice-${index}`,
|
|
@@ -10454,7 +10447,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10454
10447
|
__self: undefined,
|
|
10455
10448
|
__source: {
|
|
10456
10449
|
fileName: _jsxFileName,
|
|
10457
|
-
lineNumber:
|
|
10450
|
+
lineNumber: 275
|
|
10458
10451
|
}
|
|
10459
10452
|
}, React$1.createElement(ChoiceConfiguration, {
|
|
10460
10453
|
key: index,
|
|
@@ -10483,7 +10476,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10483
10476
|
__self: undefined,
|
|
10484
10477
|
__source: {
|
|
10485
10478
|
fileName: _jsxFileName,
|
|
10486
|
-
lineNumber:
|
|
10479
|
+
lineNumber: 276
|
|
10487
10480
|
}
|
|
10488
10481
|
}), rationaleEnabled && React$1.createElement(InputContainer, {
|
|
10489
10482
|
key: `rationale-${index}`,
|
|
@@ -10492,7 +10485,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10492
10485
|
__self: undefined,
|
|
10493
10486
|
__source: {
|
|
10494
10487
|
fileName: _jsxFileName,
|
|
10495
|
-
lineNumber:
|
|
10488
|
+
lineNumber: 303
|
|
10496
10489
|
}
|
|
10497
10490
|
}, React$1.createElement(EditableHtml, {
|
|
10498
10491
|
className: classes.rationale,
|
|
@@ -10518,61 +10511,28 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10518
10511
|
__self: undefined,
|
|
10519
10512
|
__source: {
|
|
10520
10513
|
fileName: _jsxFileName,
|
|
10521
|
-
lineNumber:
|
|
10514
|
+
lineNumber: 304
|
|
10522
10515
|
}
|
|
10523
10516
|
}), _optionalChain$1([rationaleErrors, 'optionalAccess', _16 => _16[choice.value]]) && React$1.createElement('div', {
|
|
10524
10517
|
className: classes.errorText,
|
|
10525
10518
|
__self: undefined,
|
|
10526
10519
|
__source: {
|
|
10527
10520
|
fileName: _jsxFileName,
|
|
10528
|
-
lineNumber:
|
|
10529
|
-
}
|
|
10530
|
-
}, _optionalChain$1([rationaleErrors, 'optionalAccess', _17 => _17[choice.value]]))), accessibilityLabelsEnabled && React$1.createElement(InputContainer, {
|
|
10531
|
-
key: `accessibility-${index}`,
|
|
10532
|
-
label: accessibility.label,
|
|
10533
|
-
className: classes.accessibilityHolder,
|
|
10534
|
-
__self: undefined,
|
|
10535
|
-
__source: {
|
|
10536
|
-
fileName: _jsxFileName,
|
|
10537
|
-
lineNumber: 335
|
|
10521
|
+
lineNumber: 320
|
|
10538
10522
|
}
|
|
10539
|
-
}, React$1.createElement(
|
|
10540
|
-
className: classes.accessibility,
|
|
10541
|
-
markup: choice.accessibility || '',
|
|
10542
|
-
onChange: c => onChoiceChanged(index, {
|
|
10543
|
-
...choice,
|
|
10544
|
-
accessibility: c
|
|
10545
|
-
}),
|
|
10546
|
-
imageSupport: imageSupport,
|
|
10547
|
-
pluginProps: getPluginProps(_optionalChain$1([configuration, 'optionalAccess', _18 => _18.accessibility, 'optionalAccess', _19 => _19.inputConfiguration])),
|
|
10548
|
-
spellCheck: spellCheckEnabled,
|
|
10549
|
-
maxImageWidth: maxImageWidth && maxImageWidth.choices || defaultImageMaxWidth,
|
|
10550
|
-
maxImageHeight: maxImageHeight && maxImageHeight.choices || defaultImageMaxHeight,
|
|
10551
|
-
uploadSoundSupport: uploadSoundSupport,
|
|
10552
|
-
languageCharactersProps: [{
|
|
10553
|
-
language: 'spanish'
|
|
10554
|
-
}, {
|
|
10555
|
-
language: 'special'
|
|
10556
|
-
}],
|
|
10557
|
-
mathMlOptions: mathMlOptions,
|
|
10558
|
-
__self: undefined,
|
|
10559
|
-
__source: {
|
|
10560
|
-
fileName: _jsxFileName,
|
|
10561
|
-
lineNumber: 340
|
|
10562
|
-
}
|
|
10563
|
-
})))), correctResponseError && React$1.createElement('div', {
|
|
10523
|
+
}, _optionalChain$1([rationaleErrors, 'optionalAccess', _17 => _17[choice.value]]))))), correctResponseError && React$1.createElement('div', {
|
|
10564
10524
|
className: classes.errorText,
|
|
10565
10525
|
__self: undefined,
|
|
10566
10526
|
__source: {
|
|
10567
10527
|
fileName: _jsxFileName,
|
|
10568
|
-
lineNumber:
|
|
10528
|
+
lineNumber: 327
|
|
10569
10529
|
}
|
|
10570
10530
|
}, correctResponseError), answerChoicesError && React$1.createElement('div', {
|
|
10571
10531
|
className: classes.errorText,
|
|
10572
10532
|
__self: undefined,
|
|
10573
10533
|
__source: {
|
|
10574
10534
|
fileName: _jsxFileName,
|
|
10575
|
-
lineNumber:
|
|
10535
|
+
lineNumber: 328
|
|
10576
10536
|
}
|
|
10577
10537
|
}, answerChoicesError), addChoiceButton.settings && React$1.createElement(Tooltip, {
|
|
10578
10538
|
title: addChoiceButtonTooltip,
|
|
@@ -10582,11 +10542,11 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10582
10542
|
__self: undefined,
|
|
10583
10543
|
__source: {
|
|
10584
10544
|
fileName: _jsxFileName,
|
|
10585
|
-
lineNumber:
|
|
10545
|
+
lineNumber: 331
|
|
10586
10546
|
}
|
|
10587
10547
|
}, React$1.createElement(Button, {
|
|
10588
10548
|
classes: {
|
|
10589
|
-
root: maxAnswerChoices && _optionalChain$1([choices, 'optionalAccess',
|
|
10549
|
+
root: maxAnswerChoices && _optionalChain$1([choices, 'optionalAccess', _18 => _18.length]) >= maxAnswerChoices && classes.disableButton
|
|
10590
10550
|
},
|
|
10591
10551
|
className: classes.addButton,
|
|
10592
10552
|
variant: "contained",
|
|
@@ -10595,7 +10555,7 @@ const Design = styles$8.withStyles(styles)(props => {
|
|
|
10595
10555
|
__self: undefined,
|
|
10596
10556
|
__source: {
|
|
10597
10557
|
fileName: _jsxFileName,
|
|
10598
|
-
lineNumber:
|
|
10558
|
+
lineNumber: 332
|
|
10599
10559
|
}
|
|
10600
10560
|
}, addChoiceButton.label)));
|
|
10601
10561
|
});
|
|
@@ -10728,7 +10688,7 @@ class Main extends React$1.Component {
|
|
|
10728
10688
|
__self: this,
|
|
10729
10689
|
__source: {
|
|
10730
10690
|
fileName: _jsxFileName,
|
|
10731
|
-
lineNumber:
|
|
10691
|
+
lineNumber: 468
|
|
10732
10692
|
}
|
|
10733
10693
|
}, React$1.createElement(AlertDialog, {
|
|
10734
10694
|
open: showWarning,
|
|
@@ -10740,7 +10700,7 @@ class Main extends React$1.Component {
|
|
|
10740
10700
|
__self: this,
|
|
10741
10701
|
__source: {
|
|
10742
10702
|
fileName: _jsxFileName,
|
|
10743
|
-
lineNumber:
|
|
10703
|
+
lineNumber: 469
|
|
10744
10704
|
}
|
|
10745
10705
|
}), React$1.createElement(Design, {
|
|
10746
10706
|
...this.props,
|
|
@@ -10753,7 +10713,7 @@ class Main extends React$1.Component {
|
|
|
10753
10713
|
__self: this,
|
|
10754
10714
|
__source: {
|
|
10755
10715
|
fileName: _jsxFileName,
|
|
10756
|
-
lineNumber:
|
|
10716
|
+
lineNumber: 475
|
|
10757
10717
|
}
|
|
10758
10718
|
}));
|
|
10759
10719
|
}
|
|
@@ -10762,7 +10722,6 @@ Main.__initStatic();
|
|
|
10762
10722
|
const Styled = styles$8.withStyles(styles)(Main);
|
|
10763
10723
|
var sensibleDefaults = {
|
|
10764
10724
|
model: {
|
|
10765
|
-
accessibilityLabelsEnabled: false,
|
|
10766
10725
|
choiceMode: 'checkbox',
|
|
10767
10726
|
choicePrefix: 'letters',
|
|
10768
10727
|
choices: [],
|
|
@@ -10879,21 +10838,6 @@ var sensibleDefaults = {
|
|
|
10879
10838
|
},
|
|
10880
10839
|
required: false
|
|
10881
10840
|
},
|
|
10882
|
-
accessibility: {
|
|
10883
|
-
settings: false,
|
|
10884
|
-
label: 'Accessibility Label',
|
|
10885
|
-
inputConfiguration: {
|
|
10886
|
-
audio: {
|
|
10887
|
-
disabled: true
|
|
10888
|
-
},
|
|
10889
|
-
video: {
|
|
10890
|
-
disabled: true
|
|
10891
|
-
},
|
|
10892
|
-
image: {
|
|
10893
|
-
disabled: false
|
|
10894
|
-
}
|
|
10895
|
-
}
|
|
10896
|
-
},
|
|
10897
10841
|
scoringType: {
|
|
10898
10842
|
settings: false,
|
|
10899
10843
|
label: 'Scoring Type'
|
package/module/controller.js
CHANGED
|
@@ -2514,14 +2514,7 @@ const isResponseCorrect = (question, session) => {
|
|
|
2514
2514
|
return session && isEqual_1((session.value || []).sort(), correctResponse);
|
|
2515
2515
|
};
|
|
2516
2516
|
|
|
2517
|
-
const parseHTML = (html) => {
|
|
2518
|
-
const template = document.createElement('template');
|
|
2519
|
-
template.innerHTML = html;
|
|
2520
|
-
return template.content;
|
|
2521
|
-
};
|
|
2522
|
-
|
|
2523
2517
|
var defaults = {
|
|
2524
|
-
accessibilityLabelsEnabled: false,
|
|
2525
2518
|
choiceMode: 'checkbox',
|
|
2526
2519
|
choicePrefix: 'letters',
|
|
2527
2520
|
choices: [],
|
|
@@ -20632,10 +20625,6 @@ const prepareChoice = (model, env, defaultFeedback) => (choice) => {
|
|
|
20632
20625
|
value: choice.value,
|
|
20633
20626
|
};
|
|
20634
20627
|
|
|
20635
|
-
if (model.accessibilityLabelsEnabled) {
|
|
20636
|
-
out.accessibility = parseHTML(choice.accessibility).textContent || choice.value;
|
|
20637
|
-
}
|
|
20638
|
-
|
|
20639
20628
|
if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {
|
|
20640
20629
|
out.rationale = model.rationaleEnabled ? choice.rationale : null;
|
|
20641
20630
|
} else {
|
package/module/demo.js
CHANGED
|
@@ -18,7 +18,6 @@ generate.model = (id, element) => ({
|
|
|
18
18
|
type: 'none',
|
|
19
19
|
value: '',
|
|
20
20
|
},
|
|
21
|
-
accessibility: 'sweden',
|
|
22
21
|
},
|
|
23
22
|
{
|
|
24
23
|
value: 'iceland',
|
|
@@ -28,7 +27,6 @@ generate.model = (id, element) => ({
|
|
|
28
27
|
value: '',
|
|
29
28
|
},
|
|
30
29
|
rationale: 'Rationale for Iceland',
|
|
31
|
-
accessibility: 'iceland',
|
|
32
30
|
},
|
|
33
31
|
{
|
|
34
32
|
value: 'norway',
|
|
@@ -38,7 +36,6 @@ generate.model = (id, element) => ({
|
|
|
38
36
|
value: '',
|
|
39
37
|
},
|
|
40
38
|
rationale: 'Rationale for Norway',
|
|
41
|
-
accessibility: 'norway',
|
|
42
39
|
},
|
|
43
40
|
{
|
|
44
41
|
correct: true,
|
|
@@ -49,7 +46,6 @@ generate.model = (id, element) => ({
|
|
|
49
46
|
value: '',
|
|
50
47
|
},
|
|
51
48
|
rationale: 'Rationale for Finland',
|
|
52
|
-
accessibility: 'finland',
|
|
53
49
|
},
|
|
54
50
|
],
|
|
55
51
|
extraCSSRules: {
|
package/module/element.js
CHANGED
|
@@ -12228,7 +12228,7 @@ const inputStyles = {
|
|
|
12228
12228
|
}
|
|
12229
12229
|
};
|
|
12230
12230
|
const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
|
|
12231
|
-
const {correctness, classes, checked, onChange, disabled,
|
|
12231
|
+
const {correctness, classes, checked, onChange, disabled, value, id} = props;
|
|
12232
12232
|
const key = k => correctness ? `${correctness}-${k}` : k;
|
|
12233
12233
|
const resolved = {
|
|
12234
12234
|
root: classes[key('root')],
|
|
@@ -12243,7 +12243,6 @@ const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
|
|
|
12243
12243
|
};
|
|
12244
12244
|
return React$4.createElement(Checkbox, {
|
|
12245
12245
|
id: id,
|
|
12246
|
-
'aria-label': accessibility,
|
|
12247
12246
|
'aria-checked': checked,
|
|
12248
12247
|
focusVisibleClassName: checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked,
|
|
12249
12248
|
disableRipple: true,
|
|
@@ -12262,7 +12261,7 @@ const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
|
|
|
12262
12261
|
});
|
|
12263
12262
|
});
|
|
12264
12263
|
const StyledRadio = styles$b.withStyles(inputStyles)(props => {
|
|
12265
|
-
const {correctness, classes, checked, onChange, disabled,
|
|
12264
|
+
const {correctness, classes, checked, onChange, disabled, value, id} = props;
|
|
12266
12265
|
const key = k => correctness ? `${correctness}-${k}` : k;
|
|
12267
12266
|
const resolved = {
|
|
12268
12267
|
root: classes[key('root')],
|
|
@@ -12277,7 +12276,6 @@ const StyledRadio = styles$b.withStyles(inputStyles)(props => {
|
|
|
12277
12276
|
};
|
|
12278
12277
|
return React$4.createElement(Radio, {
|
|
12279
12278
|
id: id,
|
|
12280
|
-
'aria-label': accessibility,
|
|
12281
12279
|
'aria-checked': checked,
|
|
12282
12280
|
focusVisibleClassName: checked ? classes.focusVisibleChecked : classes.focusVisibleUnchecked,
|
|
12283
12281
|
disableRipple: true,
|
|
@@ -12291,7 +12289,7 @@ const StyledRadio = styles$b.withStyles(inputStyles)(props => {
|
|
|
12291
12289
|
__self: undefined,
|
|
12292
12290
|
__source: {
|
|
12293
12291
|
fileName: _jsxFileName$3,
|
|
12294
|
-
lineNumber:
|
|
12292
|
+
lineNumber: 153
|
|
12295
12293
|
}
|
|
12296
12294
|
});
|
|
12297
12295
|
});
|
|
@@ -12306,7 +12304,6 @@ class ChoiceInput extends React$4.Component {
|
|
|
12306
12304
|
feedback: PropTypes$3.string,
|
|
12307
12305
|
label: PropTypes$3.string.isRequired,
|
|
12308
12306
|
rationale: PropTypes$3.string,
|
|
12309
|
-
accessibility: PropTypes$3.string,
|
|
12310
12307
|
onChange: PropTypes$3.func.isRequired,
|
|
12311
12308
|
value: PropTypes$3.string.isRequired,
|
|
12312
12309
|
classes: PropTypes$3.object,
|
|
@@ -12320,7 +12317,6 @@ class ChoiceInput extends React$4.Component {
|
|
|
12320
12317
|
static __initStatic2() {
|
|
12321
12318
|
this.defaultProps = {
|
|
12322
12319
|
rationale: null,
|
|
12323
|
-
accessibility: null,
|
|
12324
12320
|
checked: false,
|
|
12325
12321
|
isEvaluateMode: false
|
|
12326
12322
|
};
|
|
@@ -12337,7 +12333,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12337
12333
|
return 'choice-' + (Math.random() * 10000).toFixed();
|
|
12338
12334
|
}
|
|
12339
12335
|
render() {
|
|
12340
|
-
const {choiceMode, disabled, displayKey, feedback, label, correctness, classes, className, rationale,
|
|
12336
|
+
const {choiceMode, disabled, displayKey, feedback, label, correctness, classes, className, rationale, hideTick, isEvaluateMode, choicesLayout, value, checked, isSelectionButtonBelow} = this.props;
|
|
12341
12337
|
const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;
|
|
12342
12338
|
const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';
|
|
12343
12339
|
const holderClassNames = classNames$2(classes.checkboxHolder, {
|
|
@@ -12350,7 +12346,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12350
12346
|
__self: this,
|
|
12351
12347
|
__source: {
|
|
12352
12348
|
fileName: _jsxFileName$3,
|
|
12353
|
-
lineNumber:
|
|
12349
|
+
lineNumber: 240
|
|
12354
12350
|
}
|
|
12355
12351
|
}, displayKey, ".", '\u00A0', React$4.createElement(PreviewPrompt$1, {
|
|
12356
12352
|
className: "label",
|
|
@@ -12359,7 +12355,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12359
12355
|
__self: this,
|
|
12360
12356
|
__source: {
|
|
12361
12357
|
fileName: _jsxFileName$3,
|
|
12362
|
-
lineNumber:
|
|
12358
|
+
lineNumber: 242
|
|
12363
12359
|
}
|
|
12364
12360
|
})) : React$4.createElement(PreviewPrompt$1, {
|
|
12365
12361
|
className: "label",
|
|
@@ -12368,7 +12364,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12368
12364
|
__self: this,
|
|
12369
12365
|
__source: {
|
|
12370
12366
|
fileName: _jsxFileName$3,
|
|
12371
|
-
lineNumber:
|
|
12367
|
+
lineNumber: 245
|
|
12372
12368
|
}
|
|
12373
12369
|
}));
|
|
12374
12370
|
return React$4.createElement('div', {
|
|
@@ -12376,28 +12372,28 @@ class ChoiceInput extends React$4.Component {
|
|
|
12376
12372
|
__self: this,
|
|
12377
12373
|
__source: {
|
|
12378
12374
|
fileName: _jsxFileName$3,
|
|
12379
|
-
lineNumber:
|
|
12375
|
+
lineNumber: 251
|
|
12380
12376
|
}
|
|
12381
12377
|
}, React$4.createElement('div', {
|
|
12382
12378
|
className: classes.row,
|
|
12383
12379
|
__self: this,
|
|
12384
12380
|
__source: {
|
|
12385
12381
|
fileName: _jsxFileName$3,
|
|
12386
|
-
lineNumber:
|
|
12382
|
+
lineNumber: 252
|
|
12387
12383
|
}
|
|
12388
12384
|
}, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
|
|
12389
12385
|
correctness: correctness,
|
|
12390
12386
|
__self: this,
|
|
12391
12387
|
__source: {
|
|
12392
12388
|
fileName: _jsxFileName$3,
|
|
12393
|
-
lineNumber:
|
|
12389
|
+
lineNumber: 253
|
|
12394
12390
|
}
|
|
12395
12391
|
}), React$4.createElement('div', {
|
|
12396
12392
|
className: classNames$2(holderClassNames, 'checkbox-holder'),
|
|
12397
12393
|
__self: this,
|
|
12398
12394
|
__source: {
|
|
12399
12395
|
fileName: _jsxFileName$3,
|
|
12400
|
-
lineNumber:
|
|
12396
|
+
lineNumber: 254
|
|
12401
12397
|
}
|
|
12402
12398
|
}, isSelectionButtonBelow ? React$4.createElement(StyledFormControlLabel, {
|
|
12403
12399
|
label: choicelabel,
|
|
@@ -12409,10 +12405,9 @@ class ChoiceInput extends React$4.Component {
|
|
|
12409
12405
|
__self: this,
|
|
12410
12406
|
__source: {
|
|
12411
12407
|
fileName: _jsxFileName$3,
|
|
12412
|
-
lineNumber:
|
|
12408
|
+
lineNumber: 262
|
|
12413
12409
|
}
|
|
12414
12410
|
}, React$4.createElement(Tag, {
|
|
12415
|
-
accessibility: accessibility,
|
|
12416
12411
|
disabled: disabled,
|
|
12417
12412
|
checked: checked,
|
|
12418
12413
|
correctness: correctness,
|
|
@@ -12425,20 +12420,19 @@ class ChoiceInput extends React$4.Component {
|
|
|
12425
12420
|
__self: this,
|
|
12426
12421
|
__source: {
|
|
12427
12422
|
fileName: _jsxFileName$3,
|
|
12428
|
-
lineNumber:
|
|
12423
|
+
lineNumber: 263
|
|
12429
12424
|
}
|
|
12430
12425
|
}), displayKey, "."),
|
|
12431
12426
|
__self: this,
|
|
12432
12427
|
__source: {
|
|
12433
12428
|
fileName: _jsxFileName$3,
|
|
12434
|
-
lineNumber:
|
|
12429
|
+
lineNumber: 256
|
|
12435
12430
|
}
|
|
12436
12431
|
}) : React$4.createElement(StyledFormControlLabel, {
|
|
12437
12432
|
label: choicelabel,
|
|
12438
12433
|
value: value,
|
|
12439
12434
|
htmlFor: this.choiceId,
|
|
12440
12435
|
control: React$4.createElement(Tag, {
|
|
12441
|
-
accessibility: accessibility,
|
|
12442
12436
|
disabled: disabled,
|
|
12443
12437
|
checked: checked,
|
|
12444
12438
|
correctness: correctness,
|
|
@@ -12448,13 +12442,13 @@ class ChoiceInput extends React$4.Component {
|
|
|
12448
12442
|
__self: this,
|
|
12449
12443
|
__source: {
|
|
12450
12444
|
fileName: _jsxFileName$3,
|
|
12451
|
-
lineNumber:
|
|
12445
|
+
lineNumber: 282
|
|
12452
12446
|
}
|
|
12453
12447
|
}),
|
|
12454
12448
|
__self: this,
|
|
12455
12449
|
__source: {
|
|
12456
12450
|
fileName: _jsxFileName$3,
|
|
12457
|
-
lineNumber:
|
|
12451
|
+
lineNumber: 277
|
|
12458
12452
|
}
|
|
12459
12453
|
}))), rationale && React$4.createElement(PreviewPrompt$1, {
|
|
12460
12454
|
className: "rationale",
|
|
@@ -12463,7 +12457,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12463
12457
|
__self: this,
|
|
12464
12458
|
__source: {
|
|
12465
12459
|
fileName: _jsxFileName$3,
|
|
12466
|
-
lineNumber:
|
|
12460
|
+
lineNumber: 295
|
|
12467
12461
|
}
|
|
12468
12462
|
}), React$4.createElement(Feedback, {
|
|
12469
12463
|
feedback: feedback,
|
|
@@ -12471,7 +12465,7 @@ class ChoiceInput extends React$4.Component {
|
|
|
12471
12465
|
__self: this,
|
|
12472
12466
|
__source: {
|
|
12473
12467
|
fileName: _jsxFileName$3,
|
|
12474
|
-
lineNumber:
|
|
12468
|
+
lineNumber: 296
|
|
12475
12469
|
}
|
|
12476
12470
|
}));
|
|
12477
12471
|
}
|