@pie-element/ebsr 10.2.3 → 10.2.4-next.13

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/module/element.js CHANGED
@@ -1,4 +1,4 @@
1
- import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_lodash, _dll_debug, _dll_pie_lib__pie_toolbox_math_rendering_accessible} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.2.1/module/index.js";
1
+ import {_dll_react, _dll_prop_types, _dll_classnames, _dll_react_dom, _dll_lodash, _dll_debug, _dll_pie_lib__pie_toolbox_math_rendering_accessible} from "../../../@pie-lib/pie-toolbox-math-rendering-module@2.3.0/module/index.js";
2
2
  import {_dll_pie_lib__pie_toolbox_render_ui, _dll_pie_lib__pie_toolbox_correct_answer_toggle} from "../../../@pie-lib/pie-toolbox-module@5.2.1/module/index.js";
3
3
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
4
  function getDefaultExportFromCjs(x) {
@@ -8249,6 +8249,143 @@ Checkbox$2.default = _default$3;
8249
8249
  var _Checkbox = _interopRequireDefault(Checkbox$2);
8250
8250
  })(Checkbox$3);
8251
8251
  var Checkbox = getDefaultExportFromCjs(Checkbox$3);
8252
+ var Radio$3 = {};
8253
+ var Radio$2 = {};
8254
+ var RadioButtonUnchecked$1 = {};
8255
+ const require$$1$2 = _dll_react;
8256
+ var _interopRequireDefault$3 = interopRequireDefault.exports;
8257
+ Object.defineProperty(RadioButtonUnchecked$1, "__esModule", {
8258
+ value: true
8259
+ });
8260
+ RadioButtonUnchecked$1.default = void 0;
8261
+ var _react$2 = _interopRequireDefault$3(require$$1$2);
8262
+ var _pure$1 = _interopRequireDefault$3(pure$1);
8263
+ var _SvgIcon$1 = _interopRequireDefault$3(SvgIcon$2);
8264
+ var _ref$2 = _react$2.default.createElement("path", {
8265
+ d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
8266
+ });
8267
+ var RadioButtonUnchecked = function RadioButtonUnchecked(props) {
8268
+ return _react$2.default.createElement(_SvgIcon$1.default, props, _ref$2);
8269
+ };
8270
+ RadioButtonUnchecked = (0, _pure$1.default)(RadioButtonUnchecked);
8271
+ RadioButtonUnchecked.muiName = 'SvgIcon';
8272
+ var _default$2 = RadioButtonUnchecked;
8273
+ RadioButtonUnchecked$1.default = _default$2;
8274
+ var RadioButtonChecked$1 = {};
8275
+ const require$$1$1 = _dll_react;
8276
+ var _interopRequireDefault$2 = interopRequireDefault.exports;
8277
+ Object.defineProperty(RadioButtonChecked$1, "__esModule", {
8278
+ value: true
8279
+ });
8280
+ RadioButtonChecked$1.default = void 0;
8281
+ var _react$1 = _interopRequireDefault$2(require$$1$1);
8282
+ var _pure = _interopRequireDefault$2(pure$1);
8283
+ var _SvgIcon = _interopRequireDefault$2(SvgIcon$2);
8284
+ var _ref$1 = _react$1.default.createElement("path", {
8285
+ d: "M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
8286
+ });
8287
+ var RadioButtonChecked = function RadioButtonChecked(props) {
8288
+ return _react$1.default.createElement(_SvgIcon.default, props, _ref$1);
8289
+ };
8290
+ RadioButtonChecked = (0, _pure.default)(RadioButtonChecked);
8291
+ RadioButtonChecked.muiName = 'SvgIcon';
8292
+ var _default$1 = RadioButtonChecked;
8293
+ RadioButtonChecked$1.default = _default$1;
8294
+ const require$$3$1 = _dll_react;
8295
+ const require$$4 = _dll_prop_types;
8296
+ const require$$5 = _dll_classnames;
8297
+ var _interopRequireDefault$1 = interopRequireDefault.exports;
8298
+ Object.defineProperty(Radio$2, "__esModule", {
8299
+ value: true
8300
+ });
8301
+ Radio$2.default = Radio$2.styles = void 0;
8302
+ var _extends2 = _interopRequireDefault$1(_extends$1.exports);
8303
+ var _objectWithoutProperties2 = _interopRequireDefault$1(objectWithoutProperties.exports);
8304
+ var _react = _interopRequireDefault$1(require$$3$1);
8305
+ var _propTypes = _interopRequireDefault$1(require$$4);
8306
+ var _classnames = _interopRequireDefault$1(require$$5);
8307
+ var _SwitchBase = _interopRequireDefault$1(SwitchBase$1);
8308
+ var _RadioButtonUnchecked = _interopRequireDefault$1(RadioButtonUnchecked$1);
8309
+ var _RadioButtonChecked = _interopRequireDefault$1(RadioButtonChecked$1);
8310
+ var _helpers = helpers;
8311
+ var _withStyles = _interopRequireDefault$1(withStyles);
8312
+ var styles$2 = function styles(theme) {
8313
+ return {
8314
+ root: {
8315
+ color: theme.palette.text.secondary
8316
+ },
8317
+ checked: {},
8318
+ disabled: {},
8319
+ colorPrimary: {
8320
+ '&$checked': {
8321
+ color: theme.palette.primary.main
8322
+ },
8323
+ '&$disabled': {
8324
+ color: theme.palette.action.disabled
8325
+ }
8326
+ },
8327
+ colorSecondary: {
8328
+ '&$checked': {
8329
+ color: theme.palette.secondary.main
8330
+ },
8331
+ '&$disabled': {
8332
+ color: theme.palette.action.disabled
8333
+ }
8334
+ }
8335
+ };
8336
+ };
8337
+ Radio$2.styles = styles$2;
8338
+ var _ref = _react.default.createElement(_RadioButtonUnchecked.default, null);
8339
+ var _ref2 = _react.default.createElement(_RadioButtonChecked.default, null);
8340
+ function Radio$1(props) {
8341
+ var classes = props.classes, color = props.color, other = (0, _objectWithoutProperties2.default)(props, ["classes", "color"]);
8342
+ return _react.default.createElement(_SwitchBase.default, (0, _extends2.default)({
8343
+ type: "radio",
8344
+ icon: _ref,
8345
+ checkedIcon: _ref2,
8346
+ classes: {
8347
+ root: (0, _classnames.default)(classes.root, classes[("color").concat((0, _helpers.capitalize)(color))]),
8348
+ checked: classes.checked,
8349
+ disabled: classes.disabled
8350
+ }
8351
+ }, other));
8352
+ }
8353
+ Radio$1.propTypes = {
8354
+ checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
8355
+ checkedIcon: _propTypes.default.node,
8356
+ classes: _propTypes.default.object.isRequired,
8357
+ color: _propTypes.default.oneOf(['primary', 'secondary', 'default']),
8358
+ disabled: _propTypes.default.bool,
8359
+ disableRipple: _propTypes.default.bool,
8360
+ icon: _propTypes.default.node,
8361
+ id: _propTypes.default.string,
8362
+ inputProps: _propTypes.default.object,
8363
+ inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
8364
+ onChange: _propTypes.default.func,
8365
+ type: _propTypes.default.string,
8366
+ value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool])
8367
+ };
8368
+ Radio$1.defaultProps = {
8369
+ color: 'secondary'
8370
+ };
8371
+ var _default = (0, _withStyles.default)(styles$2, {
8372
+ name: 'MuiRadio'
8373
+ })(Radio$1);
8374
+ Radio$2.default = _default;
8375
+ (function (exports) {
8376
+ var _interopRequireDefault = interopRequireDefault.exports;
8377
+ Object.defineProperty(exports, "__esModule", {
8378
+ value: true
8379
+ });
8380
+ Object.defineProperty(exports, "default", {
8381
+ enumerable: true,
8382
+ get: function get() {
8383
+ return _Radio.default;
8384
+ }
8385
+ });
8386
+ var _Radio = _interopRequireDefault(Radio$2);
8387
+ })(Radio$3);
8388
+ var Radio = getDefaultExportFromCjs(Radio$3);
8252
8389
  var CSSTransition = {
8253
8390
  exports: {}
8254
8391
  };
@@ -8285,14 +8422,14 @@ var removeClass = function removeClass(element, className) {
8285
8422
  if (element.classList) element.classList.remove(className); else if (typeof element.className === 'string') element.className = replaceClassName(element.className, className); else element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));
8286
8423
  };
8287
8424
  const require$$0$1 = _dll_prop_types;
8288
- const require$$3$1 = _dll_react;
8425
+ const require$$3 = _dll_react;
8289
8426
  (function (module, exports) {
8290
8427
  exports.__esModule = true;
8291
8428
  exports.default = void 0;
8292
8429
  var PropTypes = _interopRequireWildcard(require$$0$1);
8293
8430
  var _addClass = _interopRequireDefault(addClass.exports);
8294
8431
  var _removeClass = _interopRequireDefault(removeClass);
8295
- var _react = _interopRequireDefault(require$$3$1);
8432
+ var _react = _interopRequireDefault(require$$3);
8296
8433
  var _Transition = _interopRequireDefault(Transition$1);
8297
8434
  var _PropTypes = PropTypes$6;
8298
8435
  function _interopRequireDefault(obj) {
@@ -8470,13 +8607,13 @@ var ReplaceTransition = {
8470
8607
  exports: {}
8471
8608
  };
8472
8609
  const require$$0 = _dll_prop_types;
8473
- const require$$1$2 = _dll_react;
8610
+ const require$$1 = _dll_react;
8474
8611
  const require$$2 = _dll_react_dom;
8475
8612
  (function (module, exports) {
8476
8613
  exports.__esModule = true;
8477
8614
  exports.default = void 0;
8478
8615
  var _propTypes = _interopRequireDefault(require$$0);
8479
- var _react = _interopRequireDefault(require$$1$2);
8616
+ var _react = _interopRequireDefault(require$$1);
8480
8617
  var _reactDom = require$$2;
8481
8618
  var _TransitionGroup = _interopRequireDefault(TransitionGroup.exports);
8482
8619
  function _interopRequireDefault(obj) {
@@ -8590,11 +8727,11 @@ const require$$2 = _dll_react_dom;
8590
8727
  module.exports = exports["default"];
8591
8728
  })(ReplaceTransition, ReplaceTransition.exports);
8592
8729
  getDefaultExportFromCjs(ReplaceTransition.exports);
8593
- var _CSSTransition = _interopRequireDefault$3(CSSTransition.exports);
8594
- var _ReplaceTransition = _interopRequireDefault$3(ReplaceTransition.exports);
8595
- var _TransitionGroup = _interopRequireDefault$3(TransitionGroup.exports);
8596
- var _Transition = _interopRequireDefault$3(Transition$1);
8597
- function _interopRequireDefault$3(obj) {
8730
+ var _CSSTransition = _interopRequireDefault(CSSTransition.exports);
8731
+ var _ReplaceTransition = _interopRequireDefault(ReplaceTransition.exports);
8732
+ var _TransitionGroup = _interopRequireDefault(TransitionGroup.exports);
8733
+ var _Transition = _interopRequireDefault(Transition$1);
8734
+ function _interopRequireDefault(obj) {
8598
8735
  return obj && obj.__esModule ? obj : {
8599
8736
  default: obj
8600
8737
  };
@@ -8773,143 +8910,6 @@ FeedbackTick.__initStatic();
8773
8910
  var FeedbackTick$1 = styles$b.withStyles(stylesheet, {
8774
8911
  name: 'FeedbackTick'
8775
8912
  })(FeedbackTick);
8776
- var Radio$3 = {};
8777
- var Radio$2 = {};
8778
- var RadioButtonUnchecked$1 = {};
8779
- const require$$1$1 = _dll_react;
8780
- var _interopRequireDefault$2 = interopRequireDefault.exports;
8781
- Object.defineProperty(RadioButtonUnchecked$1, "__esModule", {
8782
- value: true
8783
- });
8784
- RadioButtonUnchecked$1.default = void 0;
8785
- var _react$2 = _interopRequireDefault$2(require$$1$1);
8786
- var _pure$1 = _interopRequireDefault$2(pure$1);
8787
- var _SvgIcon$1 = _interopRequireDefault$2(SvgIcon$2);
8788
- var _ref$2 = _react$2.default.createElement("path", {
8789
- d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
8790
- });
8791
- var RadioButtonUnchecked = function RadioButtonUnchecked(props) {
8792
- return _react$2.default.createElement(_SvgIcon$1.default, props, _ref$2);
8793
- };
8794
- RadioButtonUnchecked = (0, _pure$1.default)(RadioButtonUnchecked);
8795
- RadioButtonUnchecked.muiName = 'SvgIcon';
8796
- var _default$2 = RadioButtonUnchecked;
8797
- RadioButtonUnchecked$1.default = _default$2;
8798
- var RadioButtonChecked$1 = {};
8799
- const require$$1 = _dll_react;
8800
- var _interopRequireDefault$1 = interopRequireDefault.exports;
8801
- Object.defineProperty(RadioButtonChecked$1, "__esModule", {
8802
- value: true
8803
- });
8804
- RadioButtonChecked$1.default = void 0;
8805
- var _react$1 = _interopRequireDefault$1(require$$1);
8806
- var _pure = _interopRequireDefault$1(pure$1);
8807
- var _SvgIcon = _interopRequireDefault$1(SvgIcon$2);
8808
- var _ref$1 = _react$1.default.createElement("path", {
8809
- d: "M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5zm0-5C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"
8810
- });
8811
- var RadioButtonChecked = function RadioButtonChecked(props) {
8812
- return _react$1.default.createElement(_SvgIcon.default, props, _ref$1);
8813
- };
8814
- RadioButtonChecked = (0, _pure.default)(RadioButtonChecked);
8815
- RadioButtonChecked.muiName = 'SvgIcon';
8816
- var _default$1 = RadioButtonChecked;
8817
- RadioButtonChecked$1.default = _default$1;
8818
- const require$$3 = _dll_react;
8819
- const require$$4 = _dll_prop_types;
8820
- const require$$5 = _dll_classnames;
8821
- var _interopRequireDefault = interopRequireDefault.exports;
8822
- Object.defineProperty(Radio$2, "__esModule", {
8823
- value: true
8824
- });
8825
- Radio$2.default = Radio$2.styles = void 0;
8826
- var _extends2 = _interopRequireDefault(_extends$1.exports);
8827
- var _objectWithoutProperties2 = _interopRequireDefault(objectWithoutProperties.exports);
8828
- var _react = _interopRequireDefault(require$$3);
8829
- var _propTypes = _interopRequireDefault(require$$4);
8830
- var _classnames = _interopRequireDefault(require$$5);
8831
- var _SwitchBase = _interopRequireDefault(SwitchBase$1);
8832
- var _RadioButtonUnchecked = _interopRequireDefault(RadioButtonUnchecked$1);
8833
- var _RadioButtonChecked = _interopRequireDefault(RadioButtonChecked$1);
8834
- var _helpers = helpers;
8835
- var _withStyles = _interopRequireDefault(withStyles);
8836
- var styles$2 = function styles(theme) {
8837
- return {
8838
- root: {
8839
- color: theme.palette.text.secondary
8840
- },
8841
- checked: {},
8842
- disabled: {},
8843
- colorPrimary: {
8844
- '&$checked': {
8845
- color: theme.palette.primary.main
8846
- },
8847
- '&$disabled': {
8848
- color: theme.palette.action.disabled
8849
- }
8850
- },
8851
- colorSecondary: {
8852
- '&$checked': {
8853
- color: theme.palette.secondary.main
8854
- },
8855
- '&$disabled': {
8856
- color: theme.palette.action.disabled
8857
- }
8858
- }
8859
- };
8860
- };
8861
- Radio$2.styles = styles$2;
8862
- var _ref = _react.default.createElement(_RadioButtonUnchecked.default, null);
8863
- var _ref2 = _react.default.createElement(_RadioButtonChecked.default, null);
8864
- function Radio$1(props) {
8865
- var classes = props.classes, color = props.color, other = (0, _objectWithoutProperties2.default)(props, ["classes", "color"]);
8866
- return _react.default.createElement(_SwitchBase.default, (0, _extends2.default)({
8867
- type: "radio",
8868
- icon: _ref,
8869
- checkedIcon: _ref2,
8870
- classes: {
8871
- root: (0, _classnames.default)(classes.root, classes[("color").concat((0, _helpers.capitalize)(color))]),
8872
- checked: classes.checked,
8873
- disabled: classes.disabled
8874
- }
8875
- }, other));
8876
- }
8877
- Radio$1.propTypes = {
8878
- checked: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
8879
- checkedIcon: _propTypes.default.node,
8880
- classes: _propTypes.default.object.isRequired,
8881
- color: _propTypes.default.oneOf(['primary', 'secondary', 'default']),
8882
- disabled: _propTypes.default.bool,
8883
- disableRipple: _propTypes.default.bool,
8884
- icon: _propTypes.default.node,
8885
- id: _propTypes.default.string,
8886
- inputProps: _propTypes.default.object,
8887
- inputRef: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.object]),
8888
- onChange: _propTypes.default.func,
8889
- type: _propTypes.default.string,
8890
- value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number, _propTypes.default.bool])
8891
- };
8892
- Radio$1.defaultProps = {
8893
- color: 'secondary'
8894
- };
8895
- var _default = (0, _withStyles.default)(styles$2, {
8896
- name: 'MuiRadio'
8897
- })(Radio$1);
8898
- Radio$2.default = _default;
8899
- (function (exports) {
8900
- var _interopRequireDefault = interopRequireDefault.exports;
8901
- Object.defineProperty(exports, "__esModule", {
8902
- value: true
8903
- });
8904
- Object.defineProperty(exports, "default", {
8905
- enumerable: true,
8906
- get: function get() {
8907
- return _Radio.default;
8908
- }
8909
- });
8910
- var _Radio = _interopRequireDefault(Radio$2);
8911
- })(Radio$3);
8912
- var Radio = getDefaultExportFromCjs(Radio$3);
8913
8913
  const React$4 = _dll_react;
8914
8914
  const PropTypes$3 = _dll_prop_types;
8915
8915
  const classNames$2 = _dll_classnames;
@@ -8940,6 +8940,24 @@ const styleSheet = theme => ({
8940
8940
  [`& .${CLASS_NAME}`]: {
8941
8941
  paddingRight: theme.spacing.unit
8942
8942
  }
8943
+ },
8944
+ belowLayout: {
8945
+ '& > label': {
8946
+ alignItems: 'flex-start'
8947
+ }
8948
+ },
8949
+ belowLayoutCenter: {
8950
+ justifyContent: 'center',
8951
+ '& > label': {
8952
+ alignItems: 'center'
8953
+ }
8954
+ },
8955
+ belowSelectionComponent: {
8956
+ display: 'flex',
8957
+ alignItems: 'center',
8958
+ '& > span': {
8959
+ paddingLeft: 0
8960
+ }
8943
8961
  }
8944
8962
  });
8945
8963
  const formStyleSheet = {
@@ -8965,7 +8983,7 @@ const StyledFormControlLabel = styles$b.withStyles(formStyleSheet, {
8965
8983
  __self: undefined,
8966
8984
  __source: {
8967
8985
  fileName: _jsxFileName$3,
8968
- lineNumber: 56
8986
+ lineNumber: 74
8969
8987
  }
8970
8988
  }));
8971
8989
  const colorStyle = (varName, fallback) => ({
@@ -9022,7 +9040,7 @@ const StyledCheckbox = styles$b.withStyles(inputStyles)(props => {
9022
9040
  __self: undefined,
9023
9041
  __source: {
9024
9042
  fileName: _jsxFileName$3,
9025
- lineNumber: 101
9043
+ lineNumber: 119
9026
9044
  }
9027
9045
  });
9028
9046
  });
@@ -9054,7 +9072,7 @@ const StyledRadio = styles$b.withStyles(inputStyles)(props => {
9054
9072
  __self: undefined,
9055
9073
  __source: {
9056
9074
  fileName: _jsxFileName$3,
9057
- lineNumber: 129
9075
+ lineNumber: 147
9058
9076
  }
9059
9077
  });
9060
9078
  });
@@ -9077,7 +9095,8 @@ class ChoiceInput extends React$4.Component {
9077
9095
  hideTick: PropTypes$3.bool,
9078
9096
  isEvaluateMode: PropTypes$3.bool,
9079
9097
  choicesLayout: PropTypes$3.oneOf(['vertical', 'grid', 'horizontal']),
9080
- updateSession: PropTypes$3.func
9098
+ updateSession: PropTypes$3.func,
9099
+ isSelectionButtonBelow: PropTypes$3.bool
9081
9100
  };
9082
9101
  }
9083
9102
  static __initStatic2() {
@@ -9104,18 +9123,20 @@ class ChoiceInput extends React$4.Component {
9104
9123
  return 'choice-' + (Math.random() * 10000).toFixed();
9105
9124
  }
9106
9125
  render() {
9107
- const {choiceMode, disabled, displayKey, feedback, label, correctness, classes, className, rationale, accessibility, hideTick, isEvaluateMode, choicesLayout, value, checked} = this.props;
9126
+ const {choiceMode, disabled, displayKey, feedback, label, correctness, classes, className, rationale, accessibility, hideTick, isEvaluateMode, choicesLayout, value, checked, isSelectionButtonBelow} = this.props;
9108
9127
  const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;
9109
9128
  const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';
9110
9129
  const holderClassNames = classNames$2(classes.checkboxHolder, {
9111
- [classes.horizontalLayout]: choicesLayout === 'horizontal'
9130
+ [classes.horizontalLayout]: choicesLayout === 'horizontal',
9131
+ [classes.belowLayout]: isSelectionButtonBelow && choicesLayout !== 'grid',
9132
+ [classes.belowLayoutCenter]: isSelectionButtonBelow && choicesLayout === 'grid'
9112
9133
  });
9113
- const choicelabel = React$4.createElement(React$4.Fragment, null, displayKey ? React$4.createElement('span', {
9134
+ const choicelabel = React$4.createElement(React$4.Fragment, null, displayKey && !isSelectionButtonBelow ? React$4.createElement('span', {
9114
9135
  className: classes.row,
9115
9136
  __self: this,
9116
9137
  __source: {
9117
9138
  fileName: _jsxFileName$3,
9118
- lineNumber: 219
9139
+ lineNumber: 242
9119
9140
  }
9120
9141
  }, displayKey, ".", '\u00A0', React$4.createElement(PreviewPrompt$1, {
9121
9142
  className: "label",
@@ -9124,7 +9145,7 @@ class ChoiceInput extends React$4.Component {
9124
9145
  __self: this,
9125
9146
  __source: {
9126
9147
  fileName: _jsxFileName$3,
9127
- lineNumber: 221
9148
+ lineNumber: 244
9128
9149
  }
9129
9150
  })) : React$4.createElement(PreviewPrompt$1, {
9130
9151
  className: "label",
@@ -9133,7 +9154,7 @@ class ChoiceInput extends React$4.Component {
9133
9154
  __self: this,
9134
9155
  __source: {
9135
9156
  fileName: _jsxFileName$3,
9136
- lineNumber: 224
9157
+ lineNumber: 247
9137
9158
  }
9138
9159
  }));
9139
9160
  return React$4.createElement('div', {
@@ -9141,30 +9162,64 @@ class ChoiceInput extends React$4.Component {
9141
9162
  __self: this,
9142
9163
  __source: {
9143
9164
  fileName: _jsxFileName$3,
9144
- lineNumber: 230
9165
+ lineNumber: 253
9145
9166
  }
9146
9167
  }, React$4.createElement('div', {
9147
9168
  className: classes.row,
9148
9169
  __self: this,
9149
9170
  __source: {
9150
9171
  fileName: _jsxFileName$3,
9151
- lineNumber: 231
9172
+ lineNumber: 254
9152
9173
  }
9153
9174
  }, !hideTick && isEvaluateMode && React$4.createElement(FeedbackTick$1, {
9154
9175
  correctness: correctness,
9155
9176
  __self: this,
9156
9177
  __source: {
9157
9178
  fileName: _jsxFileName$3,
9158
- lineNumber: 232
9179
+ lineNumber: 255
9159
9180
  }
9160
9181
  }), React$4.createElement('div', {
9161
9182
  className: classNames$2(holderClassNames, 'checkbox-holder'),
9162
9183
  __self: this,
9163
9184
  __source: {
9164
9185
  fileName: _jsxFileName$3,
9165
- lineNumber: 233
9186
+ lineNumber: 256
9187
+ }
9188
+ }, isSelectionButtonBelow ? React$4.createElement(StyledFormControlLabel, {
9189
+ label: choicelabel,
9190
+ value: value,
9191
+ htmlFor: this.choiceId,
9192
+ labelPlacement: 'top',
9193
+ control: React$4.createElement('span', {
9194
+ className: classes.belowSelectionComponent,
9195
+ __self: this,
9196
+ __source: {
9197
+ fileName: _jsxFileName$3,
9198
+ lineNumber: 264
9199
+ }
9200
+ }, React$4.createElement(Tag, {
9201
+ accessibility: accessibility,
9202
+ disabled: disabled,
9203
+ checked: checked,
9204
+ correctness: correctness,
9205
+ value: value,
9206
+ id: this.choiceId,
9207
+ onChange: this.onToggleChoice,
9208
+ style: {
9209
+ padding: 0
9210
+ },
9211
+ __self: this,
9212
+ __source: {
9213
+ fileName: _jsxFileName$3,
9214
+ lineNumber: 265
9215
+ }
9216
+ }), displayKey, "."),
9217
+ __self: this,
9218
+ __source: {
9219
+ fileName: _jsxFileName$3,
9220
+ lineNumber: 258
9166
9221
  }
9167
- }, React$4.createElement(StyledFormControlLabel, {
9222
+ }) : React$4.createElement(StyledFormControlLabel, {
9168
9223
  label: choicelabel,
9169
9224
  value: value,
9170
9225
  htmlFor: this.choiceId,
@@ -9179,13 +9234,13 @@ class ChoiceInput extends React$4.Component {
9179
9234
  __self: this,
9180
9235
  __source: {
9181
9236
  fileName: _jsxFileName$3,
9182
- lineNumber: 239
9237
+ lineNumber: 285
9183
9238
  }
9184
9239
  }),
9185
9240
  __self: this,
9186
9241
  __source: {
9187
9242
  fileName: _jsxFileName$3,
9188
- lineNumber: 234
9243
+ lineNumber: 280
9189
9244
  }
9190
9245
  }))), rationale && React$4.createElement(PreviewPrompt$1, {
9191
9246
  className: "rationale",
@@ -9194,7 +9249,7 @@ class ChoiceInput extends React$4.Component {
9194
9249
  __self: this,
9195
9250
  __source: {
9196
9251
  fileName: _jsxFileName$3,
9197
- lineNumber: 252
9252
+ lineNumber: 297
9198
9253
  }
9199
9254
  }), React$4.createElement(Feedback, {
9200
9255
  feedback: feedback,
@@ -9202,7 +9257,7 @@ class ChoiceInput extends React$4.Component {
9202
9257
  __self: this,
9203
9258
  __source: {
9204
9259
  fileName: _jsxFileName$3,
9205
- lineNumber: 253
9260
+ lineNumber: 298
9206
9261
  }
9207
9262
  }));
9208
9263
  }
@@ -9233,7 +9288,7 @@ class Choice extends React$3.Component {
9233
9288
  };
9234
9289
  }
9235
9290
  render() {
9236
- const {choice, index, choicesLength, showCorrect, isEvaluateMode, choiceMode, disabled, checked, correctness, displayKey, classes, choicesLayout, gridColumns, updateSession} = this.props;
9291
+ const {choice, index, choicesLength, showCorrect, isEvaluateMode, choiceMode, disabled, checked, correctness, displayKey, classes, choicesLayout, gridColumns, updateSession, isSelectionButtonBelow} = this.props;
9237
9292
  const choiceClass = 'choice' + (index === choicesLength - 1 ? ' last' : '');
9238
9293
  const feedback = !isEvaluateMode || showCorrect ? '' : choice.feedback;
9239
9294
  const choiceProps = {
@@ -9249,7 +9304,8 @@ class Choice extends React$3.Component {
9249
9304
  gridColumns,
9250
9305
  updateSession,
9251
9306
  onChange: this.onChange,
9252
- isEvaluateMode
9307
+ isEvaluateMode,
9308
+ isSelectionButtonBelow
9253
9309
  };
9254
9310
  const names = classNames$1(classes.choice, {
9255
9311
  [classes.noBorder]: index === choicesLength - 1 || choicesLayout !== 'vertical',
@@ -9261,7 +9317,7 @@ class Choice extends React$3.Component {
9261
9317
  __self: this,
9262
9318
  __source: {
9263
9319
  fileName: _jsxFileName$2,
9264
- lineNumber: 63
9320
+ lineNumber: 66
9265
9321
  }
9266
9322
  }, React$3.createElement(ChoiceInput$1, {
9267
9323
  ...choiceProps,
@@ -9269,7 +9325,7 @@ class Choice extends React$3.Component {
9269
9325
  __self: this,
9270
9326
  __source: {
9271
9327
  fileName: _jsxFileName$2,
9272
- lineNumber: 64
9328
+ lineNumber: 67
9273
9329
  }
9274
9330
  }));
9275
9331
  }
@@ -9289,7 +9345,8 @@ Choice.propTypes = {
9289
9345
  correctness: PropTypes$2.string,
9290
9346
  displayKey: PropTypes$2.string,
9291
9347
  choicesLayout: PropTypes$2.oneOf(['vertical', 'grid', 'horizontal']),
9292
- gridColumns: PropTypes$2.string
9348
+ gridColumns: PropTypes$2.string,
9349
+ isSelectionButtonBelow: PropTypes$2.bool
9293
9350
  };
9294
9351
  var StyledChoice = styles$b.withStyles(theme => ({
9295
9352
  choice: {
@@ -9378,7 +9435,8 @@ class MultipleChoice$1 extends React$2.Component {
9378
9435
  alwaysShowCorrect: PropTypes$1.bool,
9379
9436
  animationsDisabled: PropTypes$1.bool,
9380
9437
  language: PropTypes$1.string,
9381
- onShowCorrectToggle: PropTypes$1.func
9438
+ onShowCorrectToggle: PropTypes$1.func,
9439
+ isSelectionButtonBelow: PropTypes$1.bool
9382
9440
  };
9383
9441
  }
9384
9442
  constructor(props) {
@@ -9505,19 +9563,19 @@ class MultipleChoice$1 extends React$2.Component {
9505
9563
  __self: this,
9506
9564
  __source: {
9507
9565
  fileName: _jsxFileName$1,
9508
- lineNumber: 208
9566
+ lineNumber: 210
9509
9567
  }
9510
9568
  }, "Multiple Choice Question") : React$2.createElement('h2', {
9511
9569
  className: classes.srOnly,
9512
9570
  __self: this,
9513
9571
  __source: {
9514
9572
  fileName: _jsxFileName$1,
9515
- lineNumber: 210
9573
+ lineNumber: 212
9516
9574
  }
9517
9575
  }, "Multiple Select Question");
9518
9576
  }
9519
9577
  render() {
9520
- const {mode, disabled, className, choices = [], choiceMode, gridColumns, partLabel, prompt, onChoiceChanged, responseCorrect, teacherInstructions, classes, alwaysShowCorrect, animationsDisabled, language} = this.props;
9578
+ const {mode, disabled, className, choices = [], choiceMode, gridColumns, partLabel, prompt, onChoiceChanged, responseCorrect, teacherInstructions, classes, alwaysShowCorrect, animationsDisabled, language, isSelectionButtonBelow} = this.props;
9521
9579
  const {showCorrect} = this.state;
9522
9580
  const isEvaluateMode = mode === 'evaluate';
9523
9581
  const showCorrectAnswerToggle = isEvaluateMode && !responseCorrect;
@@ -9532,7 +9590,7 @@ class MultipleChoice$1 extends React$2.Component {
9532
9590
  __self: this,
9533
9591
  __source: {
9534
9592
  fileName: _jsxFileName$1,
9535
- lineNumber: 238
9593
+ lineNumber: 241
9536
9594
  }
9537
9595
  });
9538
9596
  return React$2.createElement('div', {
@@ -9540,21 +9598,21 @@ class MultipleChoice$1 extends React$2.Component {
9540
9598
  __self: this,
9541
9599
  __source: {
9542
9600
  fileName: _jsxFileName$1,
9543
- lineNumber: 247
9601
+ lineNumber: 250
9544
9602
  }
9545
9603
  }, partLabel && React$2.createElement('h3', {
9546
9604
  className: classes.partLabel,
9547
9605
  __self: this,
9548
9606
  __source: {
9549
9607
  fileName: _jsxFileName$1,
9550
- lineNumber: 248
9608
+ lineNumber: 251
9551
9609
  }
9552
9610
  }, partLabel), this.renderHeading(), teacherInstructions && React$2.createElement('div', {
9553
9611
  className: classes.teacherInstructions,
9554
9612
  __self: this,
9555
9613
  __source: {
9556
9614
  fileName: _jsxFileName$1,
9557
- lineNumber: 253
9615
+ lineNumber: 256
9558
9616
  }
9559
9617
  }, !animationsDisabled ? React$2.createElement(Collapsible, {
9560
9618
  labels: {
@@ -9564,14 +9622,14 @@ class MultipleChoice$1 extends React$2.Component {
9564
9622
  __self: this,
9565
9623
  __source: {
9566
9624
  fileName: _jsxFileName$1,
9567
- lineNumber: 255
9625
+ lineNumber: 258
9568
9626
  }
9569
9627
  }, teacherInstructionsDiv) : teacherInstructionsDiv), React$2.createElement('fieldset', {
9570
9628
  className: classes.fieldset,
9571
9629
  __self: this,
9572
9630
  __source: {
9573
9631
  fileName: _jsxFileName$1,
9574
- lineNumber: 269
9632
+ lineNumber: 272
9575
9633
  }
9576
9634
  }, React$2.createElement(PreviewPrompt, {
9577
9635
  className: "prompt",
@@ -9581,7 +9639,7 @@ class MultipleChoice$1 extends React$2.Component {
9581
9639
  __self: this,
9582
9640
  __source: {
9583
9641
  fileName: _jsxFileName$1,
9584
- lineNumber: 270
9642
+ lineNumber: 273
9585
9643
  }
9586
9644
  }), !alwaysShowCorrect && React$2.createElement(CorrectAnswerToggle, {
9587
9645
  show: showCorrectAnswerToggle,
@@ -9591,7 +9649,7 @@ class MultipleChoice$1 extends React$2.Component {
9591
9649
  __self: this,
9592
9650
  __source: {
9593
9651
  fileName: _jsxFileName$1,
9594
- lineNumber: 273
9652
+ lineNumber: 276
9595
9653
  }
9596
9654
  }), React$2.createElement('div', {
9597
9655
  className: classNames({
@@ -9602,7 +9660,7 @@ class MultipleChoice$1 extends React$2.Component {
9602
9660
  __self: this,
9603
9661
  __source: {
9604
9662
  fileName: _jsxFileName$1,
9605
- lineNumber: 281
9663
+ lineNumber: 284
9606
9664
  }
9607
9665
  }, choices.map((choice, index) => React$2.createElement(StyledChoice, {
9608
9666
  choicesLayout: this.props.choicesLayout,
@@ -9621,10 +9679,11 @@ class MultipleChoice$1 extends React$2.Component {
9621
9679
  checked: this.getChecked(choice),
9622
9680
  correctness: isEvaluateMode ? this.getCorrectness(choice) : undefined,
9623
9681
  displayKey: this.indexToSymbol(index),
9682
+ isSelectionButtonBelow: isSelectionButtonBelow,
9624
9683
  __self: this,
9625
9684
  __source: {
9626
9685
  fileName: _jsxFileName$1,
9627
- lineNumber: 289
9686
+ lineNumber: 292
9628
9687
  }
9629
9688
  })))));
9630
9689
  }