@pie-lib/mask-markup 1.15.0-beta.0 → 1.16.0

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.
Files changed (53) hide show
  1. package/CHANGELOG.json +1 -871
  2. package/CHANGELOG.md +107 -20
  3. package/lib/choices/choice.js +5 -5
  4. package/lib/choices/choice.js.map +1 -0
  5. package/lib/choices/index.js +1 -1
  6. package/lib/choices/index.js.map +1 -0
  7. package/lib/componentize.js +1 -1
  8. package/lib/componentize.js.map +1 -0
  9. package/lib/components/blank.js +8 -8
  10. package/lib/components/blank.js.map +1 -0
  11. package/lib/components/correct-input.js +9 -9
  12. package/lib/components/correct-input.js.map +1 -0
  13. package/lib/components/dropdown.js +187 -52
  14. package/lib/components/dropdown.js.map +1 -0
  15. package/lib/components/input.js +1 -1
  16. package/lib/components/input.js.map +1 -0
  17. package/lib/constructed-response.js +5 -5
  18. package/lib/constructed-response.js.map +1 -0
  19. package/lib/customizable.js +1 -1
  20. package/lib/customizable.js.map +1 -0
  21. package/lib/drag-in-the-blank.js +1 -1
  22. package/lib/drag-in-the-blank.js.map +1 -0
  23. package/lib/index.js +1 -1
  24. package/lib/index.js.map +1 -0
  25. package/lib/inline-dropdown.js +1 -1
  26. package/lib/inline-dropdown.js.map +1 -0
  27. package/lib/mask.js +1 -1
  28. package/lib/mask.js.map +1 -0
  29. package/lib/serialization.js +1 -1
  30. package/lib/serialization.js.map +1 -0
  31. package/lib/shared/index.js +136 -0
  32. package/lib/with-mask.js +1 -1
  33. package/lib/with-mask.js.map +1 -0
  34. package/package.json +8 -5
  35. package/src/choices/choice.jsx +1 -1
  36. package/src/components/__tests__/__snapshots__/dropdown.test.js.snap +15 -12
  37. package/src/components/__tests__/blank.test.js +1 -1
  38. package/src/components/blank.jsx +1 -1
  39. package/src/components/correct-input.jsx +1 -1
  40. package/src/components/dropdown.jsx +118 -23
  41. package/src/constructed-response.jsx +1 -1
  42. package/src/serialization.js +1 -1
  43. package/lib/__tests__/drag-in-the-blank.test.js +0 -71
  44. package/lib/__tests__/index.test.js +0 -50
  45. package/lib/__tests__/mask.test.js +0 -149
  46. package/lib/__tests__/serialization.test.js +0 -45
  47. package/lib/__tests__/utils.js +0 -17
  48. package/lib/__tests__/with-mask.test.js +0 -65
  49. package/lib/choices/__tests__/index.test.js +0 -85
  50. package/lib/components/__tests__/blank.test.js +0 -234
  51. package/lib/components/__tests__/correct-input.test.js +0 -63
  52. package/lib/components/__tests__/dropdown.test.js +0 -70
  53. package/lib/components/__tests__/input.test.js +0 -64
@@ -21,7 +21,7 @@ var _classnames3 = _interopRequireDefault(require("classnames"));
21
21
 
22
22
  var _styles = require("@material-ui/core/styles");
23
23
 
24
- var _renderUi = require("@pie-lib/render-ui");
24
+ var _index = require("./../shared/index");
25
25
 
26
26
  var _excluded = ["correct", "charactersLimit", "classes", "disabled", "isBox", "isConstructedResponse", "width", "spellCheck"];
27
27
 
@@ -34,8 +34,8 @@ var correctStyle = function correctStyle(color) {
34
34
  var _default = (0, _styles.withStyles)(function () {
35
35
  return {
36
36
  input: {
37
- color: _renderUi.color.text(),
38
- backgroundColor: _renderUi.color.background(),
37
+ color: _index.color.text(),
38
+ backgroundColor: _index.color.background(),
39
39
  borderRadius: '4px !important',
40
40
  borderWidth: '1px',
41
41
  borderStyle: 'solid',
@@ -45,20 +45,20 @@ var _default = (0, _styles.withStyles)(function () {
45
45
  cursor: 'not-allowed !important'
46
46
  },
47
47
  '&:hover': {
48
- borderColor: _renderUi.color.primary(),
48
+ borderColor: _index.color.primary(),
49
49
  '&:disabled': {
50
50
  borderColor: 'initial'
51
51
  }
52
52
  },
53
53
  '&:focus': {
54
- borderColor: _renderUi.color.primaryDark()
54
+ borderColor: _index.color.primaryDark()
55
55
  }
56
56
  },
57
57
  crInput: {
58
58
  padding: '8px !important'
59
59
  },
60
- correct: correctStyle(_renderUi.color.correct()),
61
- incorrect: correctStyle(_renderUi.color.incorrect()),
60
+ correct: correctStyle(_index.color.correct()),
61
+ incorrect: correctStyle(_index.color.incorrect()),
62
62
  box: {
63
63
  fontSize: 'inherit',
64
64
  display: 'inline-block',
@@ -72,7 +72,7 @@ var _default = (0, _styles.withStyles)(function () {
72
72
  }
73
73
  },
74
74
  notchedOutline: {
75
- borderColor: _renderUi.color.correct()
75
+ borderColor: _index.color.correct()
76
76
  }
77
77
  };
78
78
  })(function (props) {
@@ -115,4 +115,4 @@ var _default = (0, _styles.withStyles)(function () {
115
115
  });
116
116
 
117
117
  exports["default"] = _default;
118
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2NvcnJlY3QtaW5wdXQuanN4Il0sIm5hbWVzIjpbImNvcnJlY3RTdHlsZSIsImNvbG9yIiwiYm9yZGVyQ29sb3IiLCJpbnB1dCIsInRleHQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJiYWNrZ3JvdW5kIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyV2lkdGgiLCJib3JkZXJTdHlsZSIsInBhZGRpbmciLCJvcGFjaXR5IiwiY3Vyc29yIiwicHJpbWFyeSIsInByaW1hcnlEYXJrIiwiY3JJbnB1dCIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJib3giLCJmb250U2l6ZSIsImRpc3BsYXkiLCJ2ZXJ0aWNhbEFsaWduIiwib3V0bGluZWRJbnB1dCIsImJvcmRlciIsIm5vdGNoZWRPdXRsaW5lIiwicHJvcHMiLCJjaGFyYWN0ZXJzTGltaXQiLCJjbGFzc2VzIiwiZGlzYWJsZWQiLCJpc0JveCIsImlzQ29uc3RydWN0ZWRSZXNwb25zZSIsIndpZHRoIiwic3BlbGxDaGVjayIsInJlc3QiLCJsYWJlbCIsInVuZGVmaW5lZCIsImlucHV0UHJvcHMiLCJtYXhMZW5ndGgiLCJzdHlsZSIsIk1hdGgiLCJyb3VuZCIsImRpc2FibGVkSW5wdXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBRUEsSUFBTUEsWUFBWSxHQUFHLFNBQWZBLFlBQWUsQ0FBQ0MsS0FBRDtBQUFBLFNBQVk7QUFDL0JDLElBQUFBLFdBQVcsWUFBS0QsS0FBTDtBQURvQixHQUFaO0FBQUEsQ0FBckI7O2VBSWUsd0JBQVc7QUFBQSxTQUFPO0FBQy9CRSxJQUFBQSxLQUFLLEVBQUU7QUFDTEYsTUFBQUEsS0FBSyxFQUFFQSxnQkFBTUcsSUFBTixFQURGO0FBRUxDLE1BQUFBLGVBQWUsRUFBRUosZ0JBQU1LLFVBQU4sRUFGWjtBQUdMQyxNQUFBQSxZQUFZLEVBQUUsZ0JBSFQ7QUFJTEMsTUFBQUEsV0FBVyxFQUFF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QUZILEVBRWFBLEtBRmIsa0RBR0pQLE9BQU8sQ0FBQ1osT0FISixFQUdjZSxxQkFIZDtBQURBLEtBTlg7QUFhRSxJQUFBLFVBQVUsRUFBRU0sVUFiZDtBQWNFLElBQUEsVUFBVSxFQUFFLENBZGQ7QUFlRSxJQUFBLFFBQVEsRUFBRVIsUUFmWjtBQWdCRSxJQUFBLFVBQVUsRUFBRUk7QUFoQmQsS0FpQk1DLElBakJOLEVBREY7QUFxQkQsQ0F2RmMsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgT3V0bGluZWRJbnB1dCBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9PdXRsaW5lZElucHV0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5cbmNvbnN0IGNvcnJlY3RTdHlsZSA9IChjb2xvcikgPT4gKHtcbiAgYm9yZGVyQ29sb3I6IGAke2NvbG9yfSAhaW1wb3J0YW50YCxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKCgpID0+ICh7XG4gIGlucHV0OiB7XG4gICAgY29sb3I6IGNvbG9yLnRleHQoKSxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLmJhY2tncm91bmQoKSxcbiAgICBib3JkZXJSYWRpdXM6ICc0cHggIWltcG9ydGFudCcsXG4gICAgYm9yZGVyV2lkdGg6ICcxcHgnLFxuICAgIGJvcmRlclN0eWxlOiAnc29saWQnLFxuICAgIHBhZGRpbmc6ICcxMHB4IDIwcHggMTBweCAxMHB4JyxcbiAgICAnJjpkaXNhYmxlZCc6IHtcbiAgICAgIG9wYWNpdHk6IDAuOCxcbiAgICAgIGN1cnNvcjogJ25vdC1hbGxvd2VkICFpbXBvcnRhbnQnLFxuICAgIH0sXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICBib3JkZXJDb2xvcjogY29sb3IucHJpbWFyeSgpLFxuICAgICAgJyY6ZGlzYWJsZWQnOiB7XG4gICAgICAgIGJvcmRlckNvbG9yOiAnaW5pdGlhbCcsXG4gICAgICB9LFxuICAgIH0sXG4gICAgJyY6Zm9jdXMnOiB7XG4gICAgICBib3JkZXJDb2xvcjogY29sb3IucHJpbWFyeURhcmsoKSxcbiAgICB9LFxuICB9LFxuICBjcklucHV0OiB7XG4gICAgcGFkZGluZzogJzhweCAhaW1wb3J0YW50JyxcbiAgfSxcbiAgY29ycmVjdDogY29ycmVjdFN0eWxlKGNvbG9yLmNvcnJlY3QoKSksXG4gIGluY29ycmVjdDogY29ycmVjdFN0eWxlKGNvbG9yLmluY29ycmVjdCgpKSxcbiAgYm94OiB7XG4gICAgZm9udFNpemU6ICdpbmhlcml0JyxcbiAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcbiAgICB2ZXJ0aWNhbEFsaWduOiAnbWlkZGxlJyxcbiAgfSxcbiAgb3V0bGluZWRJbnB1dDoge1xuICAgIHBhZGRpbmc6ICcycHgnLFxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXG4gICAgJyYgZmllbGRzZXQnOiB7XG4gICAgICBib3JkZXI6IDAsXG4gICAgfSxcbiAgfSxcbiAgbm90Y2hlZE91dGxpbmU6IHtcbiAgICBib3JkZXJDb2xvcjogY29sb3IuY29ycmVjdCgpLFxuICB9LFxufSkpKChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgY29ycmVjdCxcbiAgICBjaGFyYWN0ZXJzTGltaXQsXG4gICAgY2xhc3NlcyxcbiAgICBkaXNhYmxlZCxcbiAgICBpc0JveCxcbiAgICBpc0NvbnN0cnVjdGVkUmVzcG9uc2UsXG4gICAgd2lkdGgsXG4gICAgc3BlbGxDaGVjayxcbiAgICAuLi5yZXN0XG4gIH0gPSBwcm9wcztcblxuICBjb25zdCBsYWJlbCA9IHR5cGVvZiBjb3JyZWN0ID09PSAnYm9vbGVhbicgPyAoY29ycmVjdCA/ICdjb3JyZWN0JyA6ICdpbmNvcnJlY3QnKSA6IHVuZGVmaW5lZDtcbiAgY29uc3QgaW5wdXRQcm9wcyA9IGNoYXJhY3RlcnNMaW1pdFxuICAgID8geyBtYXhMZW5ndGg6IGNoYXJhY3RlcnNMaW1pdCwgJ2FyaWEtbGFiZWwnOiAnRW50ZXIgYW5zd2VyJyB9XG4gICAgOiB7ICdhcmlhLWxhYmVsJzogJ0VudGVyIGFuc3dlcicgfTtcblxuICBpZiAod2lkdGgpIHtcbiAgICBpbnB1dFByb3BzLnN0eWxlID0ge1xuICAgICAgd2lkdGg6IGAke3dpZHRoICsgTWF0aC5yb3VuZCh3aWR0aCAvIDEwKSArIDF9Y2hgLCAvLyBhZGRlZCBzb21lIGV4dHJhIHNwYWNlIGZvciBjYXBpdGFsIGxldHRlcnNcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8T3V0bGluZWRJbnB1dFxuICAgICAgY2xhc3NOYW1lPXtjbGFzc25hbWVzKHtcbiAgICAgICAgW2NsYXNzZXMuZGlzYWJsZWRJbnB1dF06IGRpc2FibGVkLFxuICAgICAgICBbY2xhc3Nlcy5ib3hdOiBpc0JveCxcbiAgICAgICAgW2NsYXNzZXMub3V0bGluZWRJbnB1dF06IHRydWUsXG4gICAgICB9KX1cbiAgICAgIGNsYXNzZXM9e3tcbiAgICAgICAgaW5wdXQ6IGNsYXNzbmFtZXMoe1xuICAgICAgICAgIFtjbGFzc2VzLmlucHV0XTogdHJ1ZSxcbiAgICAgICAgICBbY2xhc3Nlc1tsYWJlbF1dOiBsYWJlbCxcbiAgICAgICAgICBbY2xhc3Nlcy5jcklucHV0XTogaXNDb25zdHJ1Y3RlZFJlc3BvbnNlLFxuICAgICAgICB9KSxcbiAgICAgIH19XG4gICAgICBpbnB1dFByb3BzPXtpbnB1dFByb3BzfVxuICAgICAgbGFiZWxXaWR0aD17MH1cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgIHNwZWxsQ2hlY2s9e3NwZWxsQ2hlY2t9XG4gICAgICB7Li4ucmVzdH1cbiAgICAvPlxuICApO1xufSk7XG4iXX0=
118
+ //# sourceMappingURL=correct-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/correct-input.jsx"],"names":["correctStyle","color","borderColor","input","text","backgroundColor","background","borderRadius","borderWidth","borderStyle","padding","opacity","cursor","primary","primaryDark","crInput","correct","incorrect","box","fontSize","display","verticalAlign","outlinedInput","border","notchedOutline","props","charactersLimit","classes","disabled","isBox","isConstructedResponse","width","spellCheck","rest","label","undefined","inputProps","maxLength","style","Math","round","disabledInput"],"mappings":"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","sourcesContent":["import React from 'react';\nimport OutlinedInput from '@material-ui/core/OutlinedInput';\nimport classnames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '../../../render-ui/src/index';\n\nconst correctStyle = (color) => ({\n borderColor: `${color} !important`,\n});\n\nexport default withStyles(() => ({\n input: {\n color: color.text(),\n backgroundColor: color.background(),\n borderRadius: '4px !important',\n borderWidth: '1px',\n borderStyle: 'solid',\n padding: '10px 20px 10px 10px',\n '&:disabled': {\n opacity: 0.8,\n cursor: 'not-allowed !important',\n },\n '&:hover': {\n borderColor: color.primary(),\n '&:disabled': {\n borderColor: 'initial',\n },\n },\n '&:focus': {\n borderColor: color.primaryDark(),\n },\n },\n crInput: {\n padding: '8px !important',\n },\n correct: correctStyle(color.correct()),\n incorrect: correctStyle(color.incorrect()),\n box: {\n fontSize: 'inherit',\n display: 'inline-block',\n verticalAlign: 'middle',\n },\n outlinedInput: {\n padding: '2px',\n borderRadius: '4px',\n '& fieldset': {\n border: 0,\n },\n },\n notchedOutline: {\n borderColor: color.correct(),\n },\n}))((props) => {\n const {\n correct,\n charactersLimit,\n classes,\n disabled,\n isBox,\n isConstructedResponse,\n width,\n spellCheck,\n ...rest\n } = props;\n\n const label = typeof correct === 'boolean' ? (correct ? 'correct' : 'incorrect') : undefined;\n const inputProps = charactersLimit\n ? { maxLength: charactersLimit, 'aria-label': 'Enter answer' }\n : { 'aria-label': 'Enter answer' };\n\n if (width) {\n inputProps.style = {\n width: `${width + Math.round(width / 10) + 1}ch`, // added some extra space for capital letters\n };\n }\n\n return (\n <OutlinedInput\n className={classnames({\n [classes.disabledInput]: disabled,\n [classes.box]: isBox,\n [classes.outlinedInput]: true,\n })}\n classes={{\n input: classnames({\n [classes.input]: true,\n [classes[label]]: label,\n [classes.crInput]: isConstructedResponse,\n }),\n }}\n inputProps={inputProps}\n labelWidth={0}\n disabled={disabled}\n spellCheck={spellCheck}\n {...rest}\n />\n );\n});\n"],"file":"correct-input.js"}
@@ -35,6 +35,8 @@ var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
35
35
 
36
36
  var _ArrowDropDown = _interopRequireDefault(require("@material-ui/icons/ArrowDropDown"));
37
37
 
38
+ var _ArrowDropUp = _interopRequireDefault(require("@material-ui/icons/ArrowDropUp"));
39
+
38
40
  var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
39
41
 
40
42
  var _Check = _interopRequireDefault(require("@material-ui/icons/Check"));
@@ -43,10 +45,16 @@ var _styles = require("@material-ui/core/styles");
43
45
 
44
46
  var _classnames = _interopRequireDefault(require("classnames"));
45
47
 
46
- var _renderUi = require("@pie-lib/render-ui");
48
+ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
49
+
50
+ var _index = require("./../shared/index");
47
51
 
48
52
  var _mathRendering = require("@pie-lib/math-rendering");
49
53
 
54
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
55
+
56
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
57
+
50
58
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
51
59
 
52
60
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
@@ -67,16 +75,31 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
67
75
  });
68
76
  });
69
77
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleClose", function () {
70
- return _this.setState({
71
- anchorEl: null
72
- });
78
+ var value = _this.props.value;
79
+
80
+ _this.setState({
81
+ anchorEl: null,
82
+ previewValue: null,
83
+ highlightedOptionId: null
84
+ }); // clear displayed preview if no selection
85
+
86
+
87
+ if (!value && _this.previewRef.current) {
88
+ _this.previewRef.current.innerHTML = '';
89
+ }
73
90
  });
74
91
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleHighlight", function (index) {
75
- var highlightedOptionId = "dropdown-option-".concat(_this.props.id, "-").concat(index);
92
+ var highlightedOptionId = "dropdown-option-".concat(_this.props.id, "-").concat(index); // preview on hover if nothing selected
76
93
 
77
- _this.setState({
94
+ var stateUpdate = {
78
95
  highlightedOptionId: highlightedOptionId
79
- });
96
+ };
97
+
98
+ if (!_this.props.value) {
99
+ stateUpdate.previewValue = _this.props.choices[index].value;
100
+ }
101
+
102
+ _this.setState(stateUpdate);
80
103
  });
81
104
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleSelect", function (value, index) {
82
105
  _this.props.onChange(_this.props.id, value);
@@ -85,22 +108,80 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
85
108
 
86
109
  _this.handleClose();
87
110
  });
111
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleHover", function (index) {
112
+ var selectedValue = _this.props.value;
113
+ if (selectedValue) return;
114
+ var highlightedOptionId = "dropdown-option-".concat(_this.props.id, "-").concat(index);
115
+ var previewValue = _this.state.previewValue;
116
+
117
+ _this.setState({
118
+ highlightedOptionId: highlightedOptionId,
119
+ previewValue: previewValue
120
+ }, function () {
121
+ // On hover, preview the math-rendered content inside the button if no value is selected.
122
+ var ref = _this.elementRefs[index];
123
+ var preview = _this.previewRef.current;
124
+
125
+ if (ref && preview) {
126
+ preview.innerHTML = ref.innerHTML;
127
+ }
128
+ });
129
+ });
88
130
  _this.state = {
89
131
  anchorEl: null,
90
- highlightedOptionId: null
132
+ highlightedOptionId: null,
133
+ menuWidth: null,
134
+ previewValue: null
91
135
  };
136
+ _this.hiddenRef = /*#__PURE__*/_react["default"].createRef();
137
+ _this.buttonRef = /*#__PURE__*/_react["default"].createRef();
138
+ _this.previewRef = /*#__PURE__*/_react["default"].createRef();
92
139
  _this.elementRefs = [];
93
140
  return _this;
94
141
  }
95
142
 
96
143
  (0, _createClass2["default"])(Dropdown, [{
144
+ key: "componentDidMount",
145
+ value: function componentDidMount() {
146
+ // measure hidden menu width once
147
+ if (this.hiddenRef.current && this.state.menuWidth === null) {
148
+ this.setState({
149
+ menuWidth: this.hiddenRef.current.clientWidth
150
+ });
151
+ }
152
+ }
153
+ }, {
97
154
  key: "componentDidUpdate",
98
- value: function componentDidUpdate() {
99
- this.elementRefs.forEach(function (ref) {
100
- if (ref) {
101
- (0, _mathRendering.renderMath)(ref);
155
+ value: function componentDidUpdate(prevProps, prevState) {
156
+ var hiddenEl = this.hiddenRef.current;
157
+ var dropdownJustOpened = !prevState.anchorEl && this.state.anchorEl;
158
+
159
+ if (dropdownJustOpened) {
160
+ this.elementRefs.forEach(function (ref) {
161
+ if (!ref) return;
162
+ var containsLatex = ref.querySelector('[data-latex], [data-raw]');
163
+ var hasMathJax = ref.querySelector('mjx-container');
164
+ var mathHandled = ref.querySelector('[data-math-handled="true"]');
165
+
166
+ if (containsLatex && (!mathHandled || !hasMathJax)) {
167
+ (0, _mathRendering.renderMath)(ref);
168
+ }
169
+ });
170
+ }
171
+
172
+ if (hiddenEl) {
173
+ var newWidth = hiddenEl.clientWidth;
174
+
175
+ if (newWidth !== this.state.menuWidth) {
176
+ this.elementRefs.forEach(function (ref) {
177
+ if (ref) (0, _mathRendering.renderMath)(ref);
178
+ });
179
+ (0, _mathRendering.renderMath)(hiddenEl);
180
+ this.setState({
181
+ menuWidth: newWidth
182
+ });
102
183
  }
103
- });
184
+ }
104
185
  }
105
186
  }, {
106
187
  key: "getLabel",
@@ -154,10 +235,38 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
154
235
  });
155
236
  }
156
237
 
157
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], {
238
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
239
+ ref: this.hiddenRef,
240
+ style: {
241
+ position: 'absolute',
242
+ visibility: 'hidden',
243
+ top: 0,
244
+ left: 0
245
+ }
246
+ }, (choices || []).map(function (c, index) {
247
+ return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
248
+ key: index,
249
+ classes: {
250
+ root: classes.menuRoot,
251
+ selected: classes.selected
252
+ }
253
+ }, /*#__PURE__*/_react["default"].createElement("span", {
254
+ className: classes.label,
255
+ dangerouslySetInnerHTML: {
256
+ __html: c.label
257
+ }
258
+ }));
259
+ })), /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], {
158
260
  className: classes.srOnly,
159
261
  id: labelId
160
262
  }, labelText), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
263
+ ref: this.buttonRef,
264
+ style: _objectSpread(_objectSpread({}, this.state.menuWidth && {
265
+ minWidth: "calc(".concat(this.state.menuWidth, "px + 8px)")
266
+ }), {}, {
267
+ borderWidth: open ? '2px' : '1px',
268
+ transition: 'border-width 0.2s ease-in-out'
269
+ }),
161
270
  "aria-controls": open ? menuId : undefined,
162
271
  "aria-haspopup": "listbox",
163
272
  "aria-expanded": open ? 'true' : undefined,
@@ -174,20 +283,37 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
174
283
  "aria-labelledby": valueDisplayId
175
284
  }, correctnessIcon, /*#__PURE__*/_react["default"].createElement("span", {
176
285
  id: valueDisplayId,
286
+ ref: this.previewRef,
177
287
  className: classes.label,
178
288
  dangerouslySetInnerHTML: {
179
- __html: correctValue ? correctValue : this.getLabel(choices, value) ? this.getLabel(choices, value) : ''
289
+ __html: correctValue ? correctValue : open && this.state.previewValue ? this.getLabel(choices, this.state.previewValue) : this.getLabel(choices, value) || ''
180
290
  }
181
- }), /*#__PURE__*/_react["default"].createElement(_ArrowDropDown["default"], null)), /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
291
+ }), open ? /*#__PURE__*/_react["default"].createElement(_ArrowDropUp["default"], null) : /*#__PURE__*/_react["default"].createElement(_ArrowDropDown["default"], null)), /*#__PURE__*/_react["default"].createElement(_Menu["default"], {
182
292
  id: menuId,
183
293
  anchorEl: anchorEl,
184
294
  className: classes.selectMenu,
185
295
  keepMounted: true,
186
296
  open: open,
187
297
  onClose: this.handleClose,
298
+ getContentAnchorEl: null,
299
+ anchorOrigin: {
300
+ vertical: 'bottom',
301
+ horizontal: 'left'
302
+ },
303
+ transformOrigin: {
304
+ vertical: 'top',
305
+ horizontal: 'left'
306
+ },
307
+ PaperProps: this.state.menuWidth ? {
308
+ style: {
309
+ minWidth: this.state.menuWidth,
310
+ padding: '4px'
311
+ }
312
+ } : undefined,
188
313
  MenuListProps: {
189
314
  'aria-labelledby': buttonId,
190
- role: 'listbox'
315
+ role: 'listbox',
316
+ disablePadding: true
191
317
  }
192
318
  }, (choices || []).map(function (c, index) {
193
319
  var optionId = "dropdown-option-".concat(id, "-").concat(index);
@@ -203,7 +329,10 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
203
329
  return _this2.handleSelect(c.value, index);
204
330
  },
205
331
  role: "option",
206
- "aria-selected": _this2.state.highlightedOptionId === optionId ? 'true' : undefined
332
+ "aria-selected": _this2.state.highlightedOptionId === optionId ? 'true' : undefined,
333
+ onMouseOver: function onMouseOver() {
334
+ return _this2.handleHover(index);
335
+ }
207
336
  }, /*#__PURE__*/_react["default"].createElement("span", {
208
337
  ref: function ref(_ref) {
209
338
  return _this2.elementRefs[index] = _ref;
@@ -213,7 +342,7 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
213
342
  __html: c.label
214
343
  }
215
344
  }), /*#__PURE__*/_react["default"].createElement("span", {
216
- className: classes.label,
345
+ className: classes.selectedIndicator,
217
346
  dangerouslySetInnerHTML: {
218
347
  __html: c.value === value ? ' &check;' : ''
219
348
  }
@@ -235,17 +364,19 @@ var Dropdown = /*#__PURE__*/function (_React$Component) {
235
364
  value: _propTypes["default"].string,
236
365
  label: _propTypes["default"].string
237
366
  })),
238
- showCorrectAnswer: _propTypes["default"].bool
367
+ showCorrectAnswer: _propTypes["default"].bool,
368
+ singleQuery: _propTypes["default"].bool,
369
+ correctValue: _propTypes["default"].string
239
370
  });
240
371
 
241
372
  var styles = function styles() {
242
373
  return {
243
374
  root: {
244
- color: _renderUi.color.text(),
245
- border: "1px solid ".concat(_renderUi.color.text()),
375
+ color: _index.color.text(),
376
+ border: "1px solid ".concat(_index.color.borderGray()),
246
377
  borderRadius: '4px',
247
378
  justifyContent: 'space-between',
248
- backgroundColor: _renderUi.color.background(),
379
+ backgroundColor: _index.color.background(),
249
380
  position: 'relative',
250
381
  height: '45px',
251
382
  width: 'fit-content',
@@ -259,63 +390,67 @@ var styles = function styles() {
259
390
  right: 0,
260
391
  top: 'calc(50% - 12px)',
261
392
  pointerEvents: 'none',
262
- color: _renderUi.color.text(),
393
+ color: _index.color.text(),
263
394
  marginLeft: '5px'
264
395
  }
265
396
  },
266
397
  disabledCorrect: {
267
398
  borderWidth: '2px',
268
- borderColor: _renderUi.color.correct(),
269
- color: "".concat(_renderUi.color.text(), " !important")
399
+ borderColor: _index.color.correct(),
400
+ color: "".concat(_index.color.text(), " !important")
270
401
  },
271
402
  disabledIncorrect: {
272
403
  borderWidth: '2px',
273
- borderColor: _renderUi.color.incorrectWithIcon(),
274
- color: "".concat(_renderUi.color.text(), " !important")
404
+ borderColor: _index.color.incorrectWithIcon(),
405
+ color: "".concat(_index.color.text(), " !important")
275
406
  },
276
407
  selectMenu: {
277
- backgroundColor: _renderUi.color.background(),
278
- border: "1px solid ".concat(_renderUi.color.correct(), " !important"),
408
+ backgroundColor: _index.color.background(),
409
+ border: "1px solid ".concat(_index.color.correct(), " !important"),
279
410
  '&:hover': {
280
- border: "1px solid ".concat(_renderUi.color.text(), " "),
411
+ border: "1px solid ".concat(_index.color.text(), " "),
281
412
  borderColor: 'initial'
282
413
  },
283
414
  '&:focus': {
284
- border: "1px solid ".concat(_renderUi.color.text()),
415
+ border: "1px solid ".concat(_index.color.text()),
285
416
  borderColor: 'initial'
417
+ },
418
+ // remove default padding on the inner list
419
+ '& .MuiList-root': {
420
+ padding: 0
286
421
  }
287
422
  },
288
423
  selected: {
289
- color: "".concat(_renderUi.color.text(), " !important"),
290
- backgroundColor: "".concat(_renderUi.color.background(), " !important"),
424
+ color: "".concat(_index.color.text(), " !important"),
425
+ backgroundColor: "".concat(_index.color.background(), " !important"),
291
426
  '&:hover': {
292
- color: _renderUi.color.text(),
293
- backgroundColor: "".concat(_renderUi.color.secondaryLight(), " !important")
427
+ color: _index.color.text(),
428
+ backgroundColor: "".concat(_index.color.dropdownBackground(), " !important")
294
429
  }
295
430
  },
296
431
  menuRoot: {
297
- color: _renderUi.color.text(),
298
- backgroundColor: _renderUi.color.background(),
432
+ color: _index.color.text(),
433
+ backgroundColor: _index.color.background(),
299
434
  '&:focus': {
300
- color: _renderUi.color.text(),
301
- backgroundColor: _renderUi.color.background()
435
+ color: _index.color.text(),
436
+ backgroundColor: _index.color.background()
302
437
  },
303
438
  '&:hover': {
304
- color: _renderUi.color.text(),
305
- backgroundColor: _renderUi.color.secondaryLight()
439
+ color: _index.color.text(),
440
+ backgroundColor: _index.color.dropdownBackground()
306
441
  },
307
442
  boxSizing: 'border-box',
308
443
  padding: '25px',
309
- '&:first-of-type': {
310
- borderRadius: '3px 3px 0 0'
311
- },
312
- '&:last-of-type': {
313
- borderRadius: '0 0 3px 3px'
314
- }
444
+ borderRadius: '4px'
315
445
  },
316
446
  label: {
317
447
  fontSize: 'max(1rem, 14px)'
318
448
  },
449
+ selectedIndicator: {
450
+ fontSize: 'max(1rem, 14px)',
451
+ position: 'absolute',
452
+ right: '10px'
453
+ },
319
454
  srOnly: {
320
455
  position: 'absolute',
321
456
  left: '-10000px',
@@ -325,7 +460,7 @@ var styles = function styles() {
325
460
  overflow: 'hidden'
326
461
  },
327
462
  correctnessIndicatorIcon: {
328
- color: "".concat(_renderUi.color.white(), " !important"),
463
+ color: "".concat(_index.color.white(), " !important"),
329
464
  position: 'absolute',
330
465
  top: '-8px !important',
331
466
  left: '-8px',
@@ -335,10 +470,10 @@ var styles = function styles() {
335
470
  padding: '2px'
336
471
  },
337
472
  correctIcon: {
338
- backgroundColor: _renderUi.color.correct()
473
+ backgroundColor: _index.color.correct()
339
474
  },
340
475
  incorrectIcon: {
341
- backgroundColor: _renderUi.color.incorrectWithIcon()
476
+ backgroundColor: _index.color.incorrectWithIcon()
342
477
  }
343
478
  };
344
479
  };
@@ -346,4 +481,4 @@ var styles = function styles() {
346
481
  var _default = (0, _styles.withStyles)(styles)(Dropdown);
347
482
 
348
483
  exports["default"] = _default;
349
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2Ryb3Bkb3duLmpzeCJdLCJuYW1lcyI6WyJEcm9wZG93biIsInByb3BzIiwiZXZlbnQiLCJzZXRTdGF0ZSIsImFuY2hvckVsIiwiY3VycmVudFRhcmdldCIsImluZGV4IiwiaGlnaGxpZ2h0ZWRPcHRpb25JZCIsImlkIiwidmFsdWUiLCJvbkNoYW5nZSIsImhhbmRsZUhpZ2hsaWdodCIsImhhbmRsZUNsb3NlIiwic3RhdGUiLCJlbGVtZW50UmVmcyIsImZvckVhY2giLCJyZWYiLCJjaG9pY2VzIiwiZm91bmQiLCJmaW5kIiwiY2hvaWNlIiwibGFiZWwiLCJ0cmltIiwidW5kZWZpbmVkIiwiY2xhc3NlcyIsImNvcnJlY3QiLCJkaXNhYmxlZCIsInNob3dDb3JyZWN0QW5zd2VyIiwic2luZ2xlUXVlcnkiLCJjb3JyZWN0VmFsdWUiLCJvcGVuIiwiQm9vbGVhbiIsImJ1dHRvbklkIiwibWVudUlkIiwidmFsdWVEaXNwbGF5SWQiLCJkaXNhYmxlZENsYXNzIiwiZGlzYWJsZWRDb3JyZWN0IiwiZGlzYWJsZWRJbmNvcnJlY3QiLCJpbmNyZW1lbnRlZElkIiwicGFyc2VJbnQiLCJsYWJlbElkIiwibGFiZWxUZXh0IiwiY29ycmVjdG5lc3NJY29uIiwiY29ycmVjdG5lc3NJbmRpY2F0b3JJY29uIiwiY29ycmVjdEljb24iLCJpbmNvcnJlY3RJY29uIiwic3JPbmx5IiwiaGFuZGxlQ2xpY2siLCJyb290IiwiX19odG1sIiwiZ2V0TGFiZWwiLCJzZWxlY3RNZW51Iiwicm9sZSIsIm1hcCIsImMiLCJvcHRpb25JZCIsIm1lbnVSb290Iiwic2VsZWN0ZWQiLCJoYW5kbGVTZWxlY3QiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsInN0cmluZyIsImJvb2wiLCJmdW5jIiwib2JqZWN0IiwiYXJyYXlPZiIsInNoYXBlIiwic3R5bGVzIiwiY29sb3IiLCJ0ZXh0IiwiYm9yZGVyIiwiYm9yZGVyUmFkaXVzIiwianVzdGlmeUNvbnRlbnQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJiYWNrZ3JvdW5kIiwicG9zaXRpb24iLCJoZWlnaHQiLCJ3aWR0aCIsIm1hcmdpbiIsInRleHRUcmFuc2Zvcm0iLCJwYWRkaW5nUmlnaHQiLCJyaWdodCIsInRvcCIsInBvaW50ZXJFdmVudHMiLCJtYXJnaW5MZWZ0IiwiYm9yZGVyV2lkdGgiLCJib3JkZXJDb2xvciIsImluY29ycmVjdFdpdGhJY29uIiwic2Vjb25kYXJ5TGlnaHQiLCJib3hTaXppbmciLCJwYWRkaW5nIiwiZm9udFNpemUiLCJsZWZ0Iiwib3ZlcmZsb3ciLCJ3aGl0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7Ozs7O0lBRU1BLFE7Ozs7O0FBWUosb0JBQVlDLEtBQVosRUFBbUI7QUFBQTs7QUFBQTtBQUNqQiw4QkFBTUEsS0FBTjtBQURpQixvR0FtQkwsVUFBQ0MsS0FBRDtBQUFBLGFBQVcsTUFBS0MsUUFBTCxDQUFjO0FBQUVDLFFBQUFBLFFBQVEsRUFBRUYsS0FBSyxDQUFDRztBQUFsQixPQUFkLENBQVg7QUFBQSxLQW5CSztBQUFBLG9HQXFCTDtBQUFBLGFBQU0sTUFBS0YsUUFBTCxDQUFjO0FBQUVDLFFBQUFBLFFBQVEsRUFBRTtBQUFaLE9BQWQsQ0FBTjtBQUFBLEtBckJLO0FBQUEsd0dBdUJELFVBQUNFLEtBQUQsRUFBVztBQUMzQixVQUFNQyxtQkFBbUIsNkJBQXNCLE1BQUtOLEtBQUwsQ0FBV08sRUFBakMsY0FBdUNGLEtBQXZDLENBQXpCOztBQUVBLFlBQUtILFFBQUwsQ0FBYztBQUFFSSxRQUFBQSxtQkFBbUIsRUFBbkJBO0FBQUYsT0FBZDtBQUNELEtBM0JrQjtBQUFBLHFHQTZCSixVQUFDRSxLQUFELEVBQVFILEtBQVIsRUFBa0I7QUFDL0IsWUFBS0wsS0FBTCxDQUFXUyxRQUFYLENBQW9CLE1BQUtULEtB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QUFRLEVBQUU7QUFETCxLQTFFYTtBQTZFcEI5QyxJQUFBQSxNQUFNLEVBQUU7QUFDTjhCLE1BQUFBLFFBQVEsRUFBRSxVQURKO0FBRU5pQixNQUFBQSxJQUFJLEVBQUUsVUFGQTtBQUdOVixNQUFBQSxHQUFHLEVBQUUsTUFIQztBQUlOTCxNQUFBQSxLQUFLLEVBQUUsS0FKRDtBQUtORCxNQUFBQSxNQUFNLEVBQUUsS0FMRjtBQU1OaUIsTUFBQUEsUUFBUSxFQUFFO0FBTkosS0E3RVk7QUFxRnBCbkQsSUFBQUEsd0JBQXdCLEVBQUU7QUFDeEIwQixNQUFBQSxLQUFLLFlBQUtBLGdCQUFNMEIsS0FBTixFQUFMLGdCQURtQjtBQUV4Qm5CLE1BQUFBLFFBQVEsRUFBRSxVQUZjO0FBR3hCTyxNQUFBQSxHQUFHLEVBQUUsaUJBSG1CO0FBSXhCVSxNQUFBQSxJQUFJLEVBQUUsTUFKa0I7QUFLeEJSLE1BQUFBLFVBQVUsRUFBRSxjQUxZO0FBTXhCYixNQUFBQSxZQUFZLEVBQUUsS0FOVTtBQU94Qm9CLE1BQUFBLFFBQVEsRUFBRSxNQVBjO0FBUXhCRCxNQUFBQSxPQUFPLEVBQUU7QUFSZSxLQXJGTjtBQStGcEIvQyxJQUFBQSxXQUFXLEVBQUU7QUFDWDhCLE1BQUFBLGVBQWUsRUFBRUwsZ0JBQU01QyxPQUFOO0FBRE4sS0EvRk87QUFrR3BCb0IsSUFBQUEsYUFBYSxFQUFFO0FBQ2I2QixNQUFBQSxlQUFlLEVBQUVMLGdCQUFNbUIsaUJBQU47QUFESjtBQWxHSyxHQUFQO0FBQUEsQ0FBZjs7ZUF1R2Usd0JBQVdwQixNQUFYLEVBQW1CcEUsUUFBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IEJ1dHRvbiBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9CdXR0b24nO1xuaW1wb3J0IElucHV0TGFiZWwgZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvSW5wdXRMYWJlbCc7XG5pbXBvcnQgTWVudSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9NZW51JztcbmltcG9ydCBNZW51SXRlbSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9NZW51SXRlbSc7XG5pbXBvcnQgQXJyb3dEcm9wRG93bkljb24gZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0Fycm93RHJvcERvd24nO1xuaW1wb3J0IENsb3NlIGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9DbG9zZSc7XG5pbXBvcnQgQ2hlY2sgZnJvbSAnQG1hdGVyaWFsLXVpL2ljb25zL0NoZWNrJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5cbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCB7IHJlbmRlck1hdGggfSBmcm9tICdAcGllLWxpYi9tYXRoLXJlbmRlcmluZyc7XG5cbmNsYXNzIERyb3Bkb3duIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBpZDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgY29ycmVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgY2hvaWNlczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnNoYXBlKHsgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsIGxhYmVsOiBQcm9wVHlwZXMuc3RyaW5nIH0pKSxcbiAgICBzaG93Q29ycmVjdEFuc3dlcjogUHJvcFR5cGVzLmJvb2wsXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICBzdXBlcihwcm9wcyk7XG5cbiAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgYW5jaG9yRWw6IG51bGwsXG4gICAgICBoaWdobGlnaHRlZE9wdGlvbklkOiBudWxsLFxuICAgIH07XG5cbiAgICB0aGlzLmVsZW1lbnRSZWZzID0gW107XG4gIH1cblxuICBjb21wb25lbnREaWRVcGRhdGUoKSB7XG4gICAgdGhpcy5lbGVtZW50UmVmcy5mb3JFYWNoKChyZWYpID0+IHtcbiAgICAgIGlmIChyZWYpIHtcbiAgICAgICAgcmVuZGVyTWF0aChyZWYpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlQ2xpY2sgPSAoZXZlbnQpID0+IHRoaXMuc2V0U3RhdGUoeyBhbmNob3JFbDogZXZlbnQuY3VycmVudFRhcmdldCB9KTtcblxuICBoYW5kbGVDbG9zZSA9ICgpID0+IHRoaXMuc2V0U3RhdGUoeyBhbmNob3JFbDogbnVsbCB9KTtcblxuICBoYW5kbGVIaWdobGlnaHQgPSAoaW5kZXgpID0+IHtcbiAgICBjb25zdCBoaWdobGlnaHRlZE9wdGlvbklkID0gYGRyb3Bkb3duLW9wdGlvbi0ke3RoaXMucHJvcHMuaWR9LSR7aW5kZXh9YDtcblxuICAgIHRoaXMuc2V0U3RhdGUoeyBoaWdobGlnaHRlZE9wdGlvbklkIH0pO1xuICB9O1xuXG4gIGhhbmRsZVNlbGVjdCA9ICh2YWx1ZSwgaW5kZXgpID0+IHtcbiAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKHRoaXMucHJvcHMuaWQsIHZhbHVlKTtcbiAgICB0aGlzLmhhbmRsZUhpZ2hsaWdodChpbmRleCk7XG4gICAgdGhpcy5oYW5kbGVDbG9zZSgpO1xuICB9O1xuXG4gIGdldExhYmVsKGNob2ljZXMsIHZhbHVlKSB7XG4gICAgY29uc3QgZm91bmQgPSAoY2hvaWNlcyB8fCBbXSkuZmluZCgoY2hvaWNlKSA9PiBjaG9pY2UudmFsdWUgPT09IHZhbHVlKTtcblxuICAgIHJldHVybiBmb3VuZCA/IGZvdW5kLmxhYmVsLnRyaW0oKSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IGNsYXNzZXMsIGlkLCBjb3JyZWN0LCBkaXNhYmxlZCwgdmFsdWUsIGNob2ljZXMsIHNob3dDb3JyZWN0QW5zd2VyLCBzaW5nbGVRdWVyeSwgY29ycmVjdFZhbHVlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgeyBhbmNob3JFbCB9ID0gdGhpcy5zdGF0ZTtcbiAgICBjb25zdCBvcGVuID0gQm9vbGVhbihhbmNob3JFbCk7XG4gICAgY29uc3QgYnV0dG9uSWQgPSBgZHJvcGRvd24tYnV0dG9uLSR7aWR9YDtcbiAgICBjb25zdCBtZW51SWQgPSBgZHJvcGRvd24tbWVudS0ke2lkfWA7XG4gICAgY29uc3QgdmFsdWVEaXNwbGF5SWQgPSBgZHJvcGRvd24tdmFsdWUtJHtpZH1gO1xuXG4gICAgLy8gRGV0ZXJtaW5lIHRoZSBjbGFzcyBmb3IgZGlzYWJsZWQgc3RhdGUsIHZpZXcgbW9kZSBhbmQgZXZhbHVhdGUgbW9kZVxuICAgIGxldCBkaXNhYmxlZENsYXNzO1xuICAgIC8vIFJlc2V0IGVsZW1lbnRSZWZzIGJlZm9yZSBlYWNoIHJlbmRlciB0byBhdm9pZCBzdGFsZSByZWZlcmVuY2VzXG4gICAgdGhpcy5lbGVtZW50UmVmcyA9IFtdO1xuXG4gICAgaWYgKGRpc2FibGVkICYmIGNvcnJlY3QgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZGlzYWJsZWRDbGFzcyA9IGNvcnJlY3QgfHwgc2hvd0NvcnJlY3RBbnN3ZXIgPyBjbGFzc2VzLmRpc2FibGVkQ29ycmVjdCA6IGNsYXNzZXMuZGlzYWJsZWRJbmNvcnJlY3Q7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGRpc3RpbmN0LCB2aXN1YWxseSBoaWRkZW4gbGFiZWxzIGZvciBlYWNoIGRyb3Bkb3duXG4gICAgY29uc3QgaW5jcmVtZW50ZWRJZCA9IHBhcnNlSW50KGlkLCAxMCkgKyAxO1xuICAgIGNvbnN0IGxhYmVsSWQgPSBzaW5nbGVRdWVyeSA/ICdRdWVyeS1sYWJlbCcgOiBgUXVlcnktbGFiZWwtJHtpbmNyZW1lbnRlZElkfWA7XG4gICAgY29uc3QgbGFiZWxUZXh0ID0gc2luZ2xlUXVlcnkgPyAnUXVlcnknIDogYFF1ZXJ5ICR7aW5jcmVtZW50ZWRJZH1gO1xuXG4gICAgLy8gQ2hhbmdlZCBmcm9tIFNlbGVjdCB0byBCdXR0b24gZm9yIGRyb3Bkb3duIHRvIGVuaGFuY2UgYWNjZXNzaWJpbGl0eS4gVGhpcyBtb2RpZmljYXRpb24gb2ZmZXJzIGV4cGxpY2l0IGNvbnRyb2wgb3ZlciBhcmlhIGF0dHJpYnV0ZXMgYW5kIGZvY3VzZXMgbWFuYWdlbWVudCwgZW5zdXJpbmcgdGhlIGRyb3Bkb3duIGlzIGNvbXBsaWFudCB3aXRoIGFjY2Vzc2liaWxpdHkgc3RhbmRhcmRzLiBUaGUgdXNlIG9mIEJ1dHRvbiBhbmQgTWVudSBjb21wb25lbnRzIGFsbG93cyBmb3IgYmV0dGVyIGhhbmRsaW5nIG9mIGtleWJvYXJkIGludGVyYWN0aW9ucyBhbmQgcHJvdmlkZXMgYWNjZXNzaWJsZSBsYWJlbHMgYW5kIG1lbnVzLCBhbGlnbmluZyB3aXRoIFdDQUcgZ3VpZGVsaW5lcyBhbmQgaW1wcm92aW5nIHVzYWJpbGl0eSBmb3IgYXNzaXN0aXZlIHRlY2hub2xvZ3kgdXNlcnMuXG5cbiAgICBsZXQgY29ycmVjdG5lc3NJY29uID0gbnVsbDtcbiAgICBpZiAoZGlzYWJsZWQgJiYgY29ycmVjdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb3JyZWN0bmVzc0ljb24gPVxuICAgICAgICBjb3JyZWN0IHx8IHNob3dDb3JyZWN0QW5zd2VyID8gKFxuICAgICAgICAgIDxDaGVjayBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlcy5jb3JyZWN0bmVzc0luZGljYXRvckljb24sIGNsYXNzZXMuY29ycmVjdEljb24pfSAvPlxuICAgICAgICApIDogKFxuICAgICAgICAgIDxDbG9zZSBjbGFzc05hbWU9e2NsYXNzTmFtZXMoY2xhc3Nlcy5jb3JyZWN0bmVzc0luZGljYXRvckljb24sIGNsYXNzZXMuaW5jb3JyZWN0SWNvbil9IC8+XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxJbnB1dExhYmVsIGNsYXNzTmFtZT17Y2xhc3Nlcy5zck9ubHl9IGlkPXtsYWJlbElkfT5cbiAgICAgICAgICB7bGFiZWxUZXh0fVxuICAgICAgICA8L0lucHV0TGFiZWw+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPXtvcGVuID8gbWVudUlkIDogdW5kZWZpbmVkfVxuICAgICAgICAgIGFyaWEtaGFzcG9wdXA9XCJsaXN0Ym94XCJcbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPXtvcGVuID8gJ3RydWUnIDogdW5kZWZpbmVkfVxuICAgICAgICAgIGFyaWEtYWN0aXZlZGVzY2VuZGFudD17dGhpcy5zdGF0ZS5oaWdobGlnaHRlZE9wdGlvbklkfVxuICAgICAgICAgIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2xpY2t9XG4gICAgICAgICAgY2xhc3Nlcz17e1xuICAgICAgICAgICAgcm9vdDogY2xhc3Nlcy5yb290LFxuICAgICAgICAgICAgZGlzYWJsZWQ6IGRpc2FibGVkQ2xhc3MsXG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgaWQ9e2J1dHRvbklkfVxuICAgICAgICAgIHJvbGU9XCJjb21ib2JveFwiXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIlNlbGVjdCBhbnN3ZXJcIlxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17dmFsdWVEaXNwbGF5SWR9XG4gICAgICAgID5cbiAgICAgICAgICB7Y29ycmVjdG5lc3NJY29ufVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBpZD17dmFsdWVEaXNwbGF5SWR9XG4gICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMubGFiZWx9XG4gICAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgICBfX2h0bWw6IGNvcnJlY3RWYWx1ZSA/IGNvcnJlY3RWYWx1ZSA6IHRoaXMuZ2V0TGFiZWwoY2hvaWNlcywgdmFsdWUpID8gdGhpcy5nZXRMYWJlbChjaG9pY2VzLCB2YWx1ZSkgOiAnJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8QXJyb3dEcm9wRG93bkljb24gLz5cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICAgIDxNZW51XG4gICAgICAgICAgaWQ9e21lbnVJZH1cbiAgICAgICAgICBhbmNob3JFbD17YW5jaG9yRWx9XG4gICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLnNlbGVjdE1lbnV9XG4gICAgICAgICAga2VlcE1vdW50ZWRcbiAgICAgICAgICBvcGVuPXtvcGVufVxuICAgICAgICAgIG9uQ2xvc2U9e3RoaXMuaGFuZGxlQ2xvc2V9XG4gICAgICAgICAgTWVudUxpc3RQcm9wcz17e1xuICAgICAgICAgICAgJ2FyaWEtbGFiZWxsZWRieSc6IGJ1dHRvbklkLFxuICAgICAgICAgICAgcm9sZTogJ2xpc3Rib3gnLFxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICB7KGNob2ljZXMgfHwgW10pLm1hcCgoYywgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbklkID0gYGRyb3Bkb3duLW9wdGlvbi0ke2lkfS0ke2luZGV4fWA7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgIDxNZW51SXRlbVxuICAgICAgICAgICAgICAgIGlkPXtvcHRpb25JZH1cbiAgICAgICAgICAgICAgICBjbGFzc2VzPXt7IHJvb3Q6IGNsYXNzZXMubWVudVJvb3QsIHNlbGVjdGVkOiBjbGFzc2VzLnNlbGVjdGVkIH19XG4gICAgICAgICAgICAgICAga2V5PXtgJHtjLmxhYmVsfS0ke2luZGV4fWB9XG4gICAgICAgICAgICAgICAgdmFsdWU9e2MudmFsdWV9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdGhpcy5oYW5kbGVTZWxlY3QoYy52YWx1ZSwgaW5kZXgpfVxuICAgICAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e3RoaXMuc3RhdGUuaGlnaGxpZ2h0ZWRPcHRpb25JZCA9PT0gb3B0aW9uSWQgPyAndHJ1ZScgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgcmVmPXsocmVmKSA9PiAodGhpcy5lbGVtZW50UmVmc1tpbmRleF0gPSByZWYpfVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmxhYmVsfVxuICAgICAgICAgICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3sgX19odG1sOiBjLmxhYmVsIH19XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc2VzLmxhYmVsfVxuICAgICAgICAgICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3sgX19odG1sOiBjLnZhbHVlID09PSB2YWx1ZSA/ICcgJmNoZWNrOycgOiAnJyB9fVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvTWVudUl0ZW0+XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pfVxuICAgICAgICA8L01lbnU+XG4gICAgICA8Lz5cbiAgICApO1xuICB9XG59XG5cbmNvbnN0IHN0eWxlcyA9ICgpID0+ICh7XG4gIHJvb3Q6IHtcbiAgICBjb2xvcjogY29sb3IudGV4dCgpLFxuICAgIGJvcmRlcjogYDFweCBzb2xpZCAke2NvbG9yLnRleHQoKX1gLFxuICAgIGJvcmRlclJhZGl1czogJzRweCcsXG4gICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLmJhY2tncm91bmQoKSxcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgICBoZWlnaHQ6ICc0NXB4JyxcbiAgICB3aWR0aDogJ2ZpdC1jb250ZW50JyxcbiAgICBtYXJnaW46ICcycHgnLFxuICAgIHRleHRUcmFuc2Zvcm06ICdub25lJyxcbiAgICAnJiBzcGFuJzoge1xuICAgICAgcGFkZGluZ1JpZ2h0OiAnNXB4JyxcbiAgICB9LFxuICAgICcmIHN2Zyc6IHtcbiAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgcmlnaHQ6IDAsXG4gICAgICB0b3A6ICdjYWxjKDUwJSAtIDEycHgpJyxcbiAgICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICAgIGNvbG9yOiBjb2xvci50ZXh0KCksXG4gICAgICBtYXJnaW5MZWZ0OiAnNXB4JyxcbiAgICB9LFxuICB9LFxuICBkaXNhYmxlZENvcnJlY3Q6IHtcbiAgICBib3JkZXJXaWR0aDogJzJweCcsXG4gICAgYm9yZGVyQ29sb3I6IGNvbG9yLmNvcnJlY3QoKSxcbiAgICBjb2xvcjogYCR7Y29sb3IudGV4dCgpfSAhaW1wb3J0YW50YCxcbiAgfSxcbiAgZGlzYWJsZWRJbmNvcnJlY3Q6IHtcbiAgICBib3JkZXJXaWR0aDogJzJweCcsXG4gICAgYm9yZGVyQ29sb3I6IGNvbG9yLmluY29ycmVjdFdpdGhJY29uKCksXG4gICAgY29sb3I6IGAke2NvbG9yLnRleHQoKX0gIWltcG9ydGFudGAsXG4gIH0sXG4gIHNlbGVjdE1lbnU6IHtcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLmJhY2tncm91bmQoKSxcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHtjb2xvci5jb3JyZWN0KCl9ICFpbXBvcnRhbnRgLFxuICAgICcmOmhvdmVyJzoge1xuICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Y29sb3IudGV4dCgpfSBgLFxuICAgICAgYm9yZGVyQ29sb3I6ICdpbml0aWFsJyxcbiAgICB9LFxuICAgICcmOmZvY3VzJzoge1xuICAgICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Y29sb3IudGV4dCgpfWAsXG4gICAgICBib3JkZXJDb2xvcjogJ2luaXRpYWwnLFxuICAgIH0sXG4gIH0sXG4gIHNlbGVjdGVkOiB7XG4gICAgY29sb3I6IGAke2NvbG9yLnRleHQoKX0gIWltcG9ydGFudGAsXG4gICAgYmFja2dyb3VuZENvbG9yOiBgJHtjb2xvci5iYWNrZ3JvdW5kKCl9ICFpbXBvcnRhbnRgLFxuICAgICcmOmhvdmVyJzoge1xuICAgICAgY29sb3I6IGNvbG9yLnRleHQoKSxcbiAgICAgIGJhY2tncm91bmRDb2xvcjogYCR7Y29sb3Iuc2Vjb25kYXJ5TGlnaHQoKX0gIWltcG9ydGFudGAsXG4gICAgfSxcbiAgfSxcbiAgbWVudVJvb3Q6IHtcbiAgICBjb2xvcjogY29sb3IudGV4dCgpLFxuICAgIGJhY2tncm91bmRDb2xvcjogY29sb3IuYmFja2dyb3VuZCgpLFxuICAgICcmOmZvY3VzJzoge1xuICAgICAgY29sb3I6IGNvbG9yLnRleHQoKSxcbiAgICAgIGJhY2tncm91bmRDb2xvcjogY29sb3IuYmFja2dyb3VuZCgpLFxuICAgIH0sXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICBjb2xvcjogY29sb3IudGV4dCgpLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBjb2xvci5zZWNvbmRhcnlMaWdodCgpLFxuICAgIH0sXG4gICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgcGFkZGluZzogJzI1cHgnLFxuICAgICcmOmZpcnN0LW9mLXR5cGUnOiB7XG4gICAgICBib3JkZXJSYWRpdXM6ICczcHggM3B4IDAgMCcsXG4gICAgfSxcbiAgICAnJjpsYXN0LW9mLXR5cGUnOiB7XG4gICAgICBib3JkZXJSYWRpdXM6ICcwIDAgM3B4IDNweCcsXG4gICAgfSxcbiAgfSxcbiAgbGFiZWw6IHtcbiAgICBmb250U2l6ZTogJ21heCgxcmVtLCAxNHB4KScsXG4gIH0sXG4gIHNyT25seToge1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIGxlZnQ6ICctMTAwMDBweCcsXG4gICAgdG9wOiAnYXV0bycsXG4gICAgd2lkdGg6ICcxcHgnLFxuICAgIGhlaWdodDogJzFweCcsXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICB9LFxuICBjb3JyZWN0bmVzc0luZGljYXRvckljb246IHtcbiAgICBjb2xvcjogYCR7Y29sb3Iud2hpdGUoKX0gIWltcG9ydGFudGAsXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAnLThweCAhaW1wb3J0YW50JyxcbiAgICBsZWZ0OiAnLThweCcsXG4gICAgbWFyZ2luTGVmdDogJzAgIWltcG9ydGFudCcsXG4gICAgYm9yZGVyUmFkaXVzOiAnNTAlJyxcbiAgICBmb250U2l6ZTogJzE2cHgnLFxuICAgIHBhZGRpbmc6ICcycHgnLFxuICB9LFxuICBjb3JyZWN0SWNvbjoge1xuICAgIGJhY2tncm91bmRDb2xvcjogY29sb3IuY29ycmVjdCgpLFxuICB9LFxuICBpbmNvcnJlY3RJY29uOiB7XG4gICAgYmFja2dyb3VuZENvbG9yOiBjb2xvci5pbmNvcnJlY3RXaXRoSWNvbigpLFxuICB9LFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZXMoc3R5bGVzKShEcm9wZG93bik7XG4iXX0=
484
+ //# sourceMappingURL=dropdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/dropdown.jsx"],"names":["Dropdown","props","event","setState","anchorEl","currentTarget","value","previewValue","highlightedOptionId","previewRef","current","innerHTML","index","id","stateUpdate","choices","onChange","handleHighlight","handleClose","selectedValue","state","ref","elementRefs","preview","menuWidth","hiddenRef","React","createRef","buttonRef","clientWidth","prevProps","prevState","hiddenEl","dropdownJustOpened","forEach","containsLatex","querySelector","hasMathJax","mathHandled","newWidth","found","find","choice","label","trim","undefined","classes","correct","disabled","showCorrectAnswer","singleQuery","correctValue","open","Boolean","buttonId","menuId","valueDisplayId","disabledClass","disabledCorrect","disabledIncorrect","incrementedId","parseInt","labelId","labelText","correctnessIcon","correctnessIndicatorIcon","correctIcon","incorrectIcon","position","visibility","top","left","map","c","root","menuRoot","selected","__html","srOnly","minWidth","borderWidth","transition","handleClick","getLabel","selectMenu","vertical","horizontal","style","padding","role","disablePadding","optionId","handleSelect","handleHover","selectedIndicator","Component","PropTypes","string","bool","func","object","arrayOf","shape","styles","color","text","border","borderGray","borderRadius","justifyContent","backgroundColor","background","height","width","margin","textTransform","paddingRight","right","pointerEvents","marginLeft","borderColor","incorrectWithIcon","dropdownBackground","boxSizing","fontSize","overflow","white"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport Menu from '@material-ui/core/Menu';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\nimport ArrowDropUpIcon from '@material-ui/icons/ArrowDropUp';\nimport Close from '@material-ui/icons/Close';\nimport Check from '@material-ui/icons/Check';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport isEqual from 'lodash/isEqual';\n\nimport { color } from '../../../render-ui/src/index';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nclass Dropdown extends React.Component {\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.string,\n disabled: PropTypes.bool,\n onChange: PropTypes.func,\n classes: PropTypes.object,\n correct: PropTypes.bool,\n choices: PropTypes.arrayOf(PropTypes.shape({ value: PropTypes.string, label: PropTypes.string })),\n showCorrectAnswer: PropTypes.bool,\n singleQuery: PropTypes.bool,\n correctValue: PropTypes.string,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n anchorEl: null,\n highlightedOptionId: null,\n menuWidth: null,\n previewValue: null,\n };\n this.hiddenRef = React.createRef();\n this.buttonRef = React.createRef();\n this.previewRef = React.createRef();\n this.elementRefs = [];\n }\n\n componentDidMount() {\n // measure hidden menu width once\n if (this.hiddenRef.current && this.state.menuWidth === null) {\n this.setState({ menuWidth: this.hiddenRef.current.clientWidth });\n }\n }\n\n componentDidUpdate(prevProps, prevState) {\n const hiddenEl = this.hiddenRef.current;\n\n const dropdownJustOpened = !prevState.anchorEl && this.state.anchorEl;\n if (dropdownJustOpened) {\n this.elementRefs.forEach((ref) => {\n if (!ref) return;\n\n const containsLatex = ref.querySelector('[data-latex], [data-raw]');\n const hasMathJax = ref.querySelector('mjx-container');\n const mathHandled = ref.querySelector('[data-math-handled=\"true\"]');\n\n if (containsLatex && (!mathHandled || !hasMathJax)) {\n renderMath(ref);\n }\n });\n }\n\n if (hiddenEl) {\n const newWidth = hiddenEl.clientWidth;\n if (newWidth !== this.state.menuWidth) {\n this.elementRefs.forEach((ref) => {\n if (ref) renderMath(ref);\n });\n\n renderMath(hiddenEl);\n this.setState({ menuWidth: newWidth });\n }\n }\n }\n\n handleClick = (event) => this.setState({ anchorEl: event.currentTarget });\n\n handleClose = () => {\n const { value } = this.props;\n this.setState({ anchorEl: null, previewValue: null, highlightedOptionId: null });\n // clear displayed preview if no selection\n if (!value && this.previewRef.current) {\n this.previewRef.current.innerHTML = '';\n }\n };\n\n handleHighlight = (index) => {\n const highlightedOptionId = `dropdown-option-${this.props.id}-${index}`;\n\n // preview on hover if nothing selected\n const stateUpdate = { highlightedOptionId };\n if (!this.props.value) {\n stateUpdate.previewValue = this.props.choices[index].value;\n }\n this.setState(stateUpdate);\n };\n\n handleSelect = (value, index) => {\n this.props.onChange(this.props.id, value);\n this.handleHighlight(index);\n this.handleClose();\n };\n\n handleHover = (index) => {\n const selectedValue = this.props.value;\n\n if (selectedValue) return;\n\n const highlightedOptionId = `dropdown-option-${this.props.id}-${index}`;\n const previewValue = this.state.previewValue;\n\n this.setState({ highlightedOptionId, previewValue }, () => {\n // On hover, preview the math-rendered content inside the button if no value is selected.\n const ref = this.elementRefs[index];\n const preview = this.previewRef.current;\n\n if (ref && preview) {\n preview.innerHTML = ref.innerHTML;\n }\n });\n };\n\n getLabel(choices, value) {\n const found = (choices || []).find((choice) => choice.value === value);\n\n return found ? found.label.trim() : undefined;\n }\n\n render() {\n const { classes, id, correct, disabled, value, choices, showCorrectAnswer, singleQuery, correctValue } = this.props;\n const { anchorEl } = this.state;\n const open = Boolean(anchorEl);\n const buttonId = `dropdown-button-${id}`;\n const menuId = `dropdown-menu-${id}`;\n const valueDisplayId = `dropdown-value-${id}`;\n\n // Determine the class for disabled state, view mode and evaluate mode\n let disabledClass;\n // Reset elementRefs before each render to avoid stale references\n this.elementRefs = [];\n\n if (disabled && correct !== undefined) {\n disabledClass = correct || showCorrectAnswer ? classes.disabledCorrect : classes.disabledIncorrect;\n }\n\n // Create distinct, visually hidden labels for each dropdown\n const incrementedId = parseInt(id, 10) + 1;\n const labelId = singleQuery ? 'Query-label' : `Query-label-${incrementedId}`;\n const labelText = singleQuery ? 'Query' : `Query ${incrementedId}`;\n\n // Changed from Select to Button for dropdown to enhance accessibility. This modification offers explicit control over aria attributes and focuses management, ensuring the dropdown is compliant with accessibility standards. The use of Button and Menu components allows for better handling of keyboard interactions and provides accessible labels and menus, aligning with WCAG guidelines and improving usability for assistive technology users.\n let correctnessIcon = null;\n if (disabled && correct !== undefined) {\n correctnessIcon =\n correct || showCorrectAnswer ? (\n <Check className={classNames(classes.correctnessIndicatorIcon, classes.correctIcon)} />\n ) : (\n <Close className={classNames(classes.correctnessIndicatorIcon, classes.incorrectIcon)} />\n );\n }\n\n return (\n <>\n <div ref={this.hiddenRef} style={{ position: 'absolute', visibility: 'hidden', top: 0, left: 0 }}>\n {(choices || []).map((c, index) => (\n <MenuItem key={index} classes={{ root: classes.menuRoot, selected: classes.selected }}>\n <span className={classes.label} dangerouslySetInnerHTML={{ __html: c.label }} />\n </MenuItem>\n ))}\n </div>\n <InputLabel className={classes.srOnly} id={labelId}>\n {labelText}\n </InputLabel>\n <Button\n ref={this.buttonRef}\n style={{\n ...(this.state.menuWidth && { minWidth: `calc(${this.state.menuWidth}px + 8px)` }),\n borderWidth: open ? '2px' : '1px',\n transition: 'border-width 0.2s ease-in-out',\n }}\n aria-controls={open ? menuId : undefined}\n aria-haspopup=\"listbox\"\n aria-expanded={open ? 'true' : undefined}\n aria-activedescendant={this.state.highlightedOptionId}\n onClick={this.handleClick}\n classes={{\n root: classes.root,\n disabled: disabledClass,\n }}\n disabled={disabled}\n id={buttonId}\n role=\"combobox\"\n aria-label=\"Select answer\"\n aria-labelledby={valueDisplayId}\n >\n {correctnessIcon}\n <span\n id={valueDisplayId}\n ref={this.previewRef}\n className={classes.label}\n dangerouslySetInnerHTML={{\n __html: correctValue\n ? correctValue\n : open && this.state.previewValue\n ? this.getLabel(choices, this.state.previewValue)\n : this.getLabel(choices, value) || '',\n }}\n />\n {open ? <ArrowDropUpIcon /> : <ArrowDropDownIcon />}\n </Button>\n <Menu\n id={menuId}\n anchorEl={anchorEl}\n className={classes.selectMenu}\n keepMounted\n open={open}\n onClose={this.handleClose}\n getContentAnchorEl={null}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'left' }}\n transformOrigin={{ vertical: 'top', horizontal: 'left' }}\n PaperProps={this.state.menuWidth ? { style: { minWidth: this.state.menuWidth, padding: '4px' } } : undefined}\n MenuListProps={{\n 'aria-labelledby': buttonId,\n role: 'listbox',\n disablePadding: true,\n }}\n >\n {(choices || []).map((c, index) => {\n const optionId = `dropdown-option-${id}-${index}`;\n\n return (\n <MenuItem\n id={optionId}\n classes={{ root: classes.menuRoot, selected: classes.selected }}\n key={`${c.label}-${index}`}\n value={c.value}\n onClick={() => this.handleSelect(c.value, index)}\n role=\"option\"\n aria-selected={this.state.highlightedOptionId === optionId ? 'true' : undefined}\n onMouseOver={() => this.handleHover(index)}\n >\n <span\n ref={(ref) => (this.elementRefs[index] = ref)}\n className={classes.label}\n dangerouslySetInnerHTML={{ __html: c.label }}\n />\n <span\n className={classes.selectedIndicator}\n dangerouslySetInnerHTML={{ __html: c.value === value ? ' &check;' : '' }}\n />\n </MenuItem>\n );\n })}\n </Menu>\n </>\n );\n }\n}\n\nconst styles = () => ({\n root: {\n color: color.text(),\n border: `1px solid ${color.borderGray()}`,\n borderRadius: '4px',\n justifyContent: 'space-between',\n backgroundColor: color.background(),\n position: 'relative',\n height: '45px',\n width: 'fit-content',\n margin: '2px',\n textTransform: 'none',\n '& span': {\n paddingRight: '5px',\n },\n '& svg': {\n position: 'absolute',\n right: 0,\n top: 'calc(50% - 12px)',\n pointerEvents: 'none',\n color: color.text(),\n marginLeft: '5px',\n },\n },\n disabledCorrect: {\n borderWidth: '2px',\n borderColor: color.correct(),\n color: `${color.text()} !important`,\n },\n disabledIncorrect: {\n borderWidth: '2px',\n borderColor: color.incorrectWithIcon(),\n color: `${color.text()} !important`,\n },\n selectMenu: {\n backgroundColor: color.background(),\n border: `1px solid ${color.correct()} !important`,\n '&:hover': {\n border: `1px solid ${color.text()} `,\n borderColor: 'initial',\n },\n '&:focus': {\n border: `1px solid ${color.text()}`,\n borderColor: 'initial',\n },\n // remove default padding on the inner list\n '& .MuiList-root': {\n padding: 0,\n },\n },\n selected: {\n color: `${color.text()} !important`,\n backgroundColor: `${color.background()} !important`,\n '&:hover': {\n color: color.text(),\n backgroundColor: `${color.dropdownBackground()} !important`,\n },\n },\n menuRoot: {\n color: color.text(),\n backgroundColor: color.background(),\n '&:focus': {\n color: color.text(),\n backgroundColor: color.background(),\n },\n '&:hover': {\n color: color.text(),\n backgroundColor: color.dropdownBackground(),\n },\n boxSizing: 'border-box',\n padding: '25px',\n borderRadius: '4px',\n },\n label: {\n fontSize: 'max(1rem, 14px)',\n },\n selectedIndicator: {\n fontSize: 'max(1rem, 14px)',\n position: 'absolute',\n right: '10px',\n },\n srOnly: {\n position: 'absolute',\n left: '-10000px',\n top: 'auto',\n width: '1px',\n height: '1px',\n overflow: 'hidden',\n },\n correctnessIndicatorIcon: {\n color: `${color.white()} !important`,\n position: 'absolute',\n top: '-8px !important',\n left: '-8px',\n marginLeft: '0 !important',\n borderRadius: '50%',\n fontSize: '16px',\n padding: '2px',\n },\n correctIcon: {\n backgroundColor: color.correct(),\n },\n incorrectIcon: {\n backgroundColor: color.incorrectWithIcon(),\n },\n});\n\nexport default withStyles(styles)(Dropdown);\n"],"file":"dropdown.js"}
@@ -54,4 +54,4 @@ Input.propTypes = {
54
54
  };
55
55
  var _default = Input;
56
56
  exports["default"] = _default;
57
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2lucHV0LmpzeCJdLCJuYW1lcyI6WyJJbnB1dCIsImRpc2FibGVkIiwiY29ycmVjdCIsImNoYXJhY3RlcnNMaW1pdCIsImlkIiwiaXNDb25zdHJ1Y3RlZFJlc3BvbnNlIiwidmFsdWUiLCJvbkNoYW5nZSIsInNob3dDb3JyZWN0QW5zd2VyIiwic3BlbGxDaGVjayIsIndpZHRoIiwiZSIsInRhcmdldCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsImZ1bmMiLCJib29sIiwibnVtYmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQSxJQUFNQSxLQUFLLEdBQUcsU0FBUkEsS0FBUSxPQVdSO0FBQUEsTUFWSkMsUUFVSSxRQVZKQSxRQVVJO0FBQUEsTUFUSkMsT0FTSSxRQVRKQSxPQVNJO0FBQUEsTUFSSkMsZUFRSSxRQVJKQSxlQVFJO0FBQUEsTUFQSkMsRUFPSSxRQVBKQSxFQU9JO0FBQUEsTUFOSkMscUJBTUksUUFOSkEscUJBTUk7QUFBQSxNQUxKQyxLQUtJLFFBTEpBLEtBS0k7QUFBQSxNQUpKQyxTQUlJLFFBSkpBLFFBSUk7QUFBQSxNQUhKQyxpQkFHSSxRQUhKQSxpQkFHSTtBQUFBLE1BRkpDLFVBRUksUUFGSkEsVUFFSTtBQUFBLE1BREpDLEtBQ0ksUUFESkEsS0FDSTtBQUNKLHNCQUNFLGdDQUFDLHdCQUFEO0FBQ0UsSUFBQSxRQUFRLEVBQUVULFFBRFo7QUFFRSxJQUFBLE9BQU8sRUFBRU8saUJBQWlCLElBQUlOLE9BRmhDO0FBR0UsSUFBQSxlQUFlLEVBQUVDLGVBSG5CO0FBSUUsSUFBQSxPQUFPLEVBQUMsVUFKVjtBQUtFLElBQUEsS0FBSyxFQUFFRyxLQUxUO0FBTUUsSUFBQSxxQkFBcUIsRUFBRUQscUJBTnpCO0FBT0UsSUFBQSxVQUFVLEVBQUVJLFVBUGQ7QUFRRSxJQUFBLEtBQUssRUFBRSxJQVJUO0FBU0UsSUFBQSxLQUFLLEVBQUVDLEtBVFQ7QUFVRSxJQUFBLFFBQVEsRUFBRSxrQkFBQ0MsQ0FBRCxFQUFPO0FBQ2ZKLE1BQUFBLFNBQVEsQ0FBQ0gsRUFBRCxFQUFLTyxDQUFDLENBQUNDLE1BQUYsQ0FBU04sS0FBZCxDQUFSO0FBQ0Q7QUFaSCxJQURGO0FBZ0JELENBNUJEOztBQThCQU4sS0FBSyxDQUFDYSxTQUFOLEdBQWtCO0FBQ2hCVCxFQUFBQSxFQUFFLEVBQUVVLHNCQUFVQyxNQURFO0FBRWhCVCxFQUFBQSxLQUFLLEVBQUVRLHNCQUFVQyxNQUZEO0FBR2hCUixFQUFBQSxRQUFRLEVBQUVPLHNCQUFVRSxJQUhKO0FBSWhCZixFQUFBQSxRQUFRLEVBQUVhLHNCQUFVRyxJQUpKO0FBS2hCUixFQUFBQSxVQUFVLEVBQUVLLHNCQUFVRyxJQUxOO0FBTWhCZixFQUFBQSxPQUFPLEVBQUVZLHNCQUFVRyxJQU5IO0FBT2hCVCxFQUFBQSxpQkFBaUIsRUFBRU0sc0JBQVVHLElBUGI7QUFRaEJkLEVBQUFBLGVBQWUsRUFBRVcsc0JBQVVJLE1BUlg7QUFTaEJSLEVBQUFBLEtBQUssRUFBRUksc0JBQVVJLE1BVEQ7QUFVaEJiLEVBQUFBLHFCQUFxQixFQUFFUyxzQkFBVUc7QUFWakIsQ0FBbEI7ZUFhZWpCLEsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBDb3JyZWN0SW5wdXQgZnJvbSAnLi9jb3JyZWN0LWlucHV0JztcblxuY29uc3QgSW5wdXQgPSAoe1xuICBkaXNhYmxlZCxcbiAgY29ycmVjdCxcbiAgY2hhcmFjdGVyc0xpbWl0LFxuICBpZCxcbiAgaXNDb25zdHJ1Y3RlZFJlc3BvbnNlLFxuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIHNob3dDb3JyZWN0QW5zd2VyLFxuICBzcGVsbENoZWNrLFxuICB3aWR0aCxcbn0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8Q29ycmVjdElucHV0XG4gICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBjb3JyZWN0PXtzaG93Q29ycmVjdEFuc3dlciB8fCBjb3JyZWN0fVxuICAgICAgY2hhcmFjdGVyc0xpbWl0PXtjaGFyYWN0ZXJzTGltaXR9XG4gICAgICB2YXJpYW50PVwib3V0bGluZWRcIlxuICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgaXNDb25zdHJ1Y3RlZFJlc3BvbnNlPXtpc0NvbnN0cnVjdGVkUmVzcG9uc2V9XG4gICAgICBzcGVsbENoZWNrPXtzcGVsbENoZWNrfVxuICAgICAgaXNCb3g9e3RydWV9XG4gICAgICB3aWR0aD17d2lkdGh9XG4gICAgICBvbkNoYW5nZT17KGUpID0+IHtcbiAgICAgICAgb25DaGFuZ2UoaWQsIGUudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH19XG4gICAgLz5cbiAgKTtcbn07XG5cbklucHV0LnByb3BUeXBlcyA9IHtcbiAgaWQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHZhbHVlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgc3BlbGxDaGVjazogUHJvcFR5cGVzLmJvb2wsXG4gIGNvcnJlY3Q6IFByb3BUeXBlcy5ib29sLFxuICBzaG93Q29ycmVjdEFuc3dlcjogUHJvcFR5cGVzLmJvb2wsXG4gIGNoYXJhY3RlcnNMaW1pdDogUHJvcFR5cGVzLm51bWJlcixcbiAgd2lkdGg6IFByb3BUeXBlcy5udW1iZXIsXG4gIGlzQ29uc3RydWN0ZWRSZXNwb25zZTogUHJvcFR5cGVzLmJvb2wsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBJbnB1dDtcbiJdfQ==
57
+ //# sourceMappingURL=input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/components/input.jsx"],"names":["Input","disabled","correct","charactersLimit","id","isConstructedResponse","value","onChange","showCorrectAnswer","spellCheck","width","e","target","propTypes","PropTypes","string","func","bool","number"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAQ,OAWR;AAAA,MAVJC,QAUI,QAVJA,QAUI;AAAA,MATJC,OASI,QATJA,OASI;AAAA,MARJC,eAQI,QARJA,eAQI;AAAA,MAPJC,EAOI,QAPJA,EAOI;AAAA,MANJC,qBAMI,QANJA,qBAMI;AAAA,MALJC,KAKI,QALJA,KAKI;AAAA,MAJJC,SAII,QAJJA,QAII;AAAA,MAHJC,iBAGI,QAHJA,iBAGI;AAAA,MAFJC,UAEI,QAFJA,UAEI;AAAA,MADJC,KACI,QADJA,KACI;AACJ,sBACE,gCAAC,wBAAD;AACE,IAAA,QAAQ,EAAET,QADZ;AAEE,IAAA,OAAO,EAAEO,iBAAiB,IAAIN,OAFhC;AAGE,IAAA,eAAe,EAAEC,eAHnB;AAIE,IAAA,OAAO,EAAC,UAJV;AAKE,IAAA,KAAK,EAAEG,KALT;AAME,IAAA,qBAAqB,EAAED,qBANzB;AAOE,IAAA,UAAU,EAAEI,UAPd;AAQE,IAAA,KAAK,EAAE,IART;AASE,IAAA,KAAK,EAAEC,KATT;AAUE,IAAA,QAAQ,EAAE,kBAACC,CAAD,EAAO;AACfJ,MAAAA,SAAQ,CAACH,EAAD,EAAKO,CAAC,CAACC,MAAF,CAASN,KAAd,CAAR;AACD;AAZH,IADF;AAgBD,CA5BD;;AA8BAN,KAAK,CAACa,SAAN,GAAkB;AAChBT,EAAAA,EAAE,EAAEU,sBAAUC,MADE;AAEhBT,EAAAA,KAAK,EAAEQ,sBAAUC,MAFD;AAGhBR,EAAAA,QAAQ,EAAEO,sBAAUE,IAHJ;AAIhBf,EAAAA,QAAQ,EAAEa,sBAAUG,IAJJ;AAKhBR,EAAAA,UAAU,EAAEK,sBAAUG,IALN;AAMhBf,EAAAA,OAAO,EAAEY,sBAAUG,IANH;AAOhBT,EAAAA,iBAAiB,EAAEM,sBAAUG,IAPb;AAQhBd,EAAAA,eAAe,EAAEW,sBAAUI,MARX;AAShBR,EAAAA,KAAK,EAAEI,sBAAUI,MATD;AAUhBb,EAAAA,qBAAqB,EAAES,sBAAUG;AAVjB,CAAlB;eAaejB,K","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CorrectInput from './correct-input';\n\nconst Input = ({\n disabled,\n correct,\n charactersLimit,\n id,\n isConstructedResponse,\n value,\n onChange,\n showCorrectAnswer,\n spellCheck,\n width,\n}) => {\n return (\n <CorrectInput\n disabled={disabled}\n correct={showCorrectAnswer || correct}\n charactersLimit={charactersLimit}\n variant=\"outlined\"\n value={value}\n isConstructedResponse={isConstructedResponse}\n spellCheck={spellCheck}\n isBox={true}\n width={width}\n onChange={(e) => {\n onChange(id, e.target.value);\n }}\n />\n );\n};\n\nInput.propTypes = {\n id: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n disabled: PropTypes.bool,\n spellCheck: PropTypes.bool,\n correct: PropTypes.bool,\n showCorrectAnswer: PropTypes.bool,\n charactersLimit: PropTypes.number,\n width: PropTypes.number,\n isConstructedResponse: PropTypes.bool,\n};\n\nexport default Input;\n"],"file":"input.js"}