@pie-lib/mask-markup 1.13.46 → 1.15.0-beta.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 (76) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/NEXT.CHANGELOG.json +1 -0
  3. package/lib/__tests__/drag-in-the-blank.test.js +71 -0
  4. package/lib/__tests__/index.test.js +50 -0
  5. package/lib/__tests__/mask.test.js +149 -0
  6. package/lib/__tests__/serialization.test.js +45 -0
  7. package/lib/__tests__/utils.js +17 -0
  8. package/lib/__tests__/with-mask.test.js +65 -0
  9. package/lib/choices/__tests__/index.test.js +85 -0
  10. package/lib/choices/choice.js +81 -18
  11. package/lib/choices/index.js +12 -4
  12. package/lib/componentize.js +1 -1
  13. package/lib/components/__tests__/blank.test.js +234 -0
  14. package/lib/components/__tests__/correct-input.test.js +63 -0
  15. package/lib/components/__tests__/dropdown.test.js +70 -0
  16. package/lib/components/__tests__/input.test.js +64 -0
  17. package/lib/components/blank.js +147 -35
  18. package/lib/components/correct-input.js +9 -4
  19. package/lib/components/dropdown.js +183 -50
  20. package/lib/components/input.js +1 -1
  21. package/lib/constructed-response.js +88 -24
  22. package/lib/customizable.js +48 -0
  23. package/lib/drag-in-the-blank.js +35 -9
  24. package/lib/index.js +9 -1
  25. package/lib/inline-dropdown.js +4 -2
  26. package/lib/mask.js +46 -7
  27. package/lib/serialization.js +1 -1
  28. package/lib/with-mask.js +35 -3
  29. package/package.json +5 -5
  30. package/src/__tests__/__snapshots__/drag-in-the-blank.test.js.snap +316 -0
  31. package/src/__tests__/__snapshots__/mask.test.js.snap +55 -0
  32. package/src/__tests__/__snapshots__/with-mask.test.js.snap +62 -0
  33. package/src/__tests__/drag-in-the-blank.test.js +71 -0
  34. package/src/__tests__/index.test.js +39 -0
  35. package/src/__tests__/mask.test.js +152 -0
  36. package/src/__tests__/serialization.test.js +54 -0
  37. package/src/__tests__/utils.js +1 -0
  38. package/src/__tests__/with-mask.test.js +51 -0
  39. package/src/choices/__tests__/__snapshots__/index.test.js.snap +209 -0
  40. package/src/choices/__tests__/index.test.js +62 -0
  41. package/src/choices/choice.jsx +60 -6
  42. package/src/choices/index.jsx +2 -2
  43. package/src/components/__tests__/__snapshots__/blank.test.js.snap +111 -0
  44. package/src/components/__tests__/__snapshots__/correct-input.test.js.snap +64 -0
  45. package/src/components/__tests__/__snapshots__/dropdown.test.js.snap +133 -0
  46. package/src/components/__tests__/__snapshots__/input.test.js.snap +34 -0
  47. package/src/components/__tests__/blank.test.js +202 -0
  48. package/src/components/__tests__/correct-input.test.js +49 -0
  49. package/src/components/__tests__/dropdown.test.js +51 -0
  50. package/src/components/__tests__/input.test.js +50 -0
  51. package/src/components/blank.jsx +139 -28
  52. package/src/components/correct-input.jsx +6 -1
  53. package/src/components/dropdown.jsx +192 -71
  54. package/src/constructed-response.jsx +76 -18
  55. package/src/customizable.jsx +35 -0
  56. package/src/drag-in-the-blank.jsx +26 -3
  57. package/src/index.js +10 -1
  58. package/src/inline-dropdown.jsx +2 -0
  59. package/src/mask.jsx +30 -5
  60. package/src/serialization.js +1 -1
  61. package/src/with-mask.jsx +39 -2
  62. package/README.md +0 -14
  63. package/lib/choices/choice.js.map +0 -1
  64. package/lib/choices/index.js.map +0 -1
  65. package/lib/componentize.js.map +0 -1
  66. package/lib/components/blank.js.map +0 -1
  67. package/lib/components/correct-input.js.map +0 -1
  68. package/lib/components/dropdown.js.map +0 -1
  69. package/lib/components/input.js.map +0 -1
  70. package/lib/constructed-response.js.map +0 -1
  71. package/lib/drag-in-the-blank.js.map +0 -1
  72. package/lib/index.js.map +0 -1
  73. package/lib/inline-dropdown.js.map +0 -1
  74. package/lib/mask.js.map +0 -1
  75. package/lib/serialization.js.map +0 -1
  76. package/lib/with-mask.js.map +0 -1
@@ -11,6 +11,8 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
11
11
 
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
13
 
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
14
16
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
17
 
16
18
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
@@ -21,9 +23,9 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
21
23
 
22
24
  var _react = _interopRequireDefault(require("react"));
23
25
 
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
26
+ var _reactDom = _interopRequireDefault(require("react-dom"));
25
27
 
26
- var _drag = require("@pie-lib/drag");
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
29
 
28
30
  var _styles = require("@material-ui/core/styles");
29
31
 
@@ -31,12 +33,12 @@ var _Chip = _interopRequireDefault(require("@material-ui/core/Chip"));
31
33
 
32
34
  var _classnames = _interopRequireDefault(require("classnames"));
33
35
 
34
- var _reactDom = _interopRequireDefault(require("react-dom"));
35
-
36
36
  var _mathRendering = require("@pie-lib/math-rendering");
37
37
 
38
38
  var _renderUi = require("@pie-lib/render-ui");
39
39
 
40
+ var _drag = require("@pie-lib/drag");
41
+
40
42
  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); }; }
41
43
 
42
44
  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; } }
@@ -50,11 +52,60 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
50
52
  var _super = _createSuper(BlankContentComp);
51
53
 
52
54
  function BlankContentComp() {
55
+ var _this;
56
+
53
57
  (0, _classCallCheck2["default"])(this, BlankContentComp);
54
- return _super.apply(this, arguments);
58
+
59
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
60
+ args[_key] = arguments[_key];
61
+ }
62
+
63
+ _this = _super.call.apply(_super, [this].concat(args));
64
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "startDrag", function () {
65
+ var _this$props = _this.props,
66
+ connectDragSource = _this$props.connectDragSource,
67
+ disabled = _this$props.disabled;
68
+
69
+ if (!disabled) {
70
+ connectDragSource(_this.dragContainerRef);
71
+ }
72
+ });
73
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleTouchStart", function (e) {
74
+ e.preventDefault();
75
+ _this.longPressTimer = setTimeout(function () {
76
+ _this.startDrag(e);
77
+ }, 500);
78
+ });
79
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleTouchEnd", function () {
80
+ clearTimeout(_this.longPressTimer);
81
+ });
82
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleTouchMove", function () {
83
+ clearTimeout(_this.longPressTimer);
84
+ });
85
+ return _this;
55
86
  }
56
87
 
57
88
  (0, _createClass2["default"])(BlankContentComp, [{
89
+ key: "componentDidMount",
90
+ value: function componentDidMount() {
91
+ if (this.dragContainerRef) {
92
+ this.dragContainerRef.addEventListener('touchstart', this.handleTouchStart, {
93
+ passive: false
94
+ });
95
+ this.dragContainerRef.addEventListener('touchend', this.handleTouchEnd);
96
+ this.dragContainerRef.addEventListener('touchmove', this.handleTouchMove);
97
+ }
98
+ }
99
+ }, {
100
+ key: "componentWillUnmount",
101
+ value: function componentWillUnmount() {
102
+ if (this.dragContainerRef) {
103
+ this.dragContainerRef.removeEventListener('touchstart', this.handleTouchStart);
104
+ this.dragContainerRef.removeEventListener('touchend', this.handleTouchEnd);
105
+ this.dragContainerRef.removeEventListener('touchmove', this.handleTouchMove);
106
+ }
107
+ }
108
+ }, {
58
109
  key: "componentDidUpdate",
59
110
  value: function componentDidUpdate() {
60
111
  (0, _mathRendering.renderMath)(this.rootRef);
@@ -62,22 +113,26 @@ var BlankContentComp = /*#__PURE__*/function (_React$Component) {
62
113
  }, {
63
114
  key: "render",
64
115
  value: function render() {
65
- var _this = this;
116
+ var _this2 = this;
66
117
 
67
- var _this$props = this.props,
68
- connectDragSource = _this$props.connectDragSource,
69
- choice = _this$props.choice,
70
- classes = _this$props.classes,
71
- disabled = _this$props.disabled; // TODO the Chip element is causing drag problems on touch devices. Avoid using Chip and consider refactoring the code. Keep in mind that Chip is a span with a button role, which interferes with seamless touch device dragging.
118
+ var _this$props2 = this.props,
119
+ connectDragSource = _this$props2.connectDragSource,
120
+ choice = _this$props2.choice,
121
+ classes = _this$props2.classes,
122
+ disabled = _this$props2.disabled; // TODO the Chip element is causing drag problems on touch devices. Avoid using Chip and consider refactoring the code. Keep in mind that Chip is a span with a button role, which interferes with seamless touch device dragging.
72
123
 
73
124
  return connectDragSource( /*#__PURE__*/_react["default"].createElement("span", {
74
- className: (0, _classnames["default"])(classes.choice, disabled && classes.disabled)
125
+ className: (0, _classnames["default"])(classes.choice, disabled && classes.disabled),
126
+ ref: function ref(_ref3) {
127
+ //eslint-disable-next-line
128
+ _this2.dragContainerRef = _reactDom["default"].findDOMNode(_ref3);
129
+ }
75
130
  }, /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
76
131
  clickable: false,
77
132
  disabled: true,
78
133
  ref: function ref(_ref2) {
79
134
  //eslint-disable-next-line
80
- _this.rootRef = _reactDom["default"].findDOMNode(_ref2);
135
+ _this2.rootRef = _reactDom["default"].findDOMNode(_ref2);
81
136
  },
82
137
  className: classes.chip,
83
138
  label: /*#__PURE__*/_react["default"].createElement("span", {
@@ -110,7 +165,7 @@ var BlankContent = (0, _styles.withStyles)(function (theme) {
110
165
  transform: 'translate(0, 0)'
111
166
  },
112
167
  chip: {
113
- backgroundColor: _renderUi.color.background(),
168
+ backgroundColor: _renderUi.color.white(),
114
169
  border: "1px solid ".concat(_renderUi.color.text()),
115
170
  color: _renderUi.color.text(),
116
171
  alignItems: 'center',
@@ -123,16 +178,24 @@ var BlankContent = (0, _styles.withStyles)(function (theme) {
123
178
  // Added for touch devices, for image content.
124
179
  // This will prevent the context menu from appearing and not allowing other interactions with the image.
125
180
  // If interactions with the image in the token will be requested we should handle only the context Menu.
126
- pointerEvents: 'none'
181
+ pointerEvents: 'none',
182
+ borderRadius: '3px',
183
+ paddingTop: '12px',
184
+ paddingBottom: '12px'
127
185
  },
128
186
  chipLabel: {
129
- whiteSpace: 'pre-wrap',
187
+ whiteSpace: 'normal',
130
188
  '& img': {
131
189
  display: 'block',
132
190
  padding: '2px 0'
191
+ },
192
+ '& mjx-frac': {
193
+ fontSize: '120% !important'
133
194
  }
134
195
  },
135
- disabled: {}
196
+ disabled: {
197
+ opacity: 0.6
198
+ }
136
199
  };
137
200
  })(BlankContentComp);
138
201
  exports.BlankContent = BlankContent;
@@ -155,4 +218,4 @@ var DragDropTile = (0, _drag.DragSource)(DRAG_TYPE, tileSource, function (connec
155
218
  })(BlankContent);
156
219
  var _default = DragDropTile;
157
220
  exports["default"] = _default;
158
- //# sourceMappingURL=choice.js.map
221
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaG9pY2VzL2Nob2ljZS5qc3giXSwibmFtZXMiOlsiRFJBR19UWVBFIiwiQmxhbmtDb250ZW50Q29tcCIsInByb3BzIiwiY29ubmVjdERyYWdTb3VyY2UiLCJkaXNhYmxlZCIsImRyYWdDb250YWluZXJSZWYiLCJlIiwicHJldmVudERlZmF1bHQiLCJsb25nUHJlc3NUaW1lciIsInNldFRpbWVvdXQiLCJzdGFydERyYWciLCJjbGVhclRpbWVvdXQiLCJhZGRFdmVudExpc3RlbmVyIiwiaGFuZGxlVG91Y2hTdGFydCIsInBhc3NpdmUiLCJoYW5kbGVUb3VjaEVuZCIsImhhbmRsZVRvdWNoTW92ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJyb290UmVmIiwiY2hvaWNlIiwiY2xhc3NlcyIsInJlZiIsIlJlYWN0RE9NIiwiZmluZERPTU5vZGUiLCJjaGlwIiwiY2hpcExhYmVsIiwiaW5uZXJIVE1MIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsImJvb2wiLCJvYmplY3QiLCJmdW5jIiwiQmxhbmtDb250ZW50IiwidGhlbWUiLCJib3JkZXIiLCJwYWxldHRlIiwicHJpbWFyeSIsIm1haW4iLCJib3JkZXJSYWRpdXMiLCJzcGFjaW5nIiwidW5pdCIsIm1hcmdpbiIsInRyYW5zZm9ybSIsImJhY2tncm91bmRDb2xvciIsImNvbG9yIiwid2hpdGUiLCJ0ZXh0IiwiYWxpZ25JdGVtcyIsImRpc3BsYXkiLCJoZWlnaHQiLCJtaW5IZWlnaHQiLCJmb250U2l6ZSIsIndoaXRlU3BhY2UiLCJtYXhXaWR0aCIsInBvaW50ZXJFdmVudHMiLCJwYWRkaW5nVG9wIiwicGFkZGluZ0JvdHRvbSIsInBhZGRpbmciLCJvcGFjaXR5IiwidGlsZVNvdXJjZSIsImNhbkRyYWciLCJiZWdpbkRyYWciLCJpbnN0YW5jZUlkIiwiRHJhZ0Ryb3BUaWxlIiwiY29ubmVjdCIsIm1vbml0b3IiLCJkcmFnU291cmNlIiwiaXNE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LEdBQUcsc0JBQVdsRSxTQUFYLEVBQXNCOEQsVUFBdEIsRUFBa0MsVUFBQ0ssT0FBRCxFQUFVQyxPQUFWO0FBQUEsU0FBdUI7QUFDNUVqRSxJQUFBQSxpQkFBaUIsRUFBRWdFLE9BQU8sQ0FBQ0UsVUFBUixFQUR5RDtBQUU1RUMsSUFBQUEsVUFBVSxFQUFFRixPQUFPLENBQUNFLFVBQVI7QUFGZ0UsR0FBdkI7QUFBQSxDQUFsQyxFQUdqQm5DLFlBSGlCLENBQXJCO2VBS2UrQixZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuaW1wb3J0IENoaXAgZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvQ2hpcCc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IHsgcmVuZGVyTWF0aCB9IGZyb20gJ0BwaWUtbGliL21hdGgtcmVuZGVyaW5nJztcbmltcG9ydCB7IGNvbG9yIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbmltcG9ydCB7IERyYWdTb3VyY2UgfSBmcm9tICdAcGllLWxpYi9kcmFnJztcblxuZXhwb3J0IGNvbnN0IERSQUdfVFlQRSA9ICdNYXNrQmxhbmsnO1xuXG5jbGFzcyBCbGFua0NvbnRlbnRDb21wIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgY2hvaWNlOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgY29ubmVjdERyYWdTb3VyY2U6IFByb3BUeXBlcy5mdW5jLFxuICB9O1xuXG4gIHN0YXJ0RHJhZyA9ICgpID0+IHtcbiAgICBjb25zdCB7IGNvbm5lY3REcmFnU291cmNlLCBkaXNhYmxlZCB9ID0gdGhpcy5wcm9wcztcbiAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICBjb25uZWN0RHJhZ1NvdXJjZSh0aGlzLmRyYWdDb250YWluZXJSZWYpO1xuICAgIH1cbiAgfTtcblxuICAvLyBzdGFydCBkcmFnIGFmdGVyIDUwMG1zICh0b3VjaCBhbmQgaG9sZCBkdXJhdGlvbikgZm9yIGNocm9tZWJvb2tzIGFuZCBvdGhlciB0b3VjaCBkZXZpY2VzIFBELTQ4ODhcbiAgaGFuZGxlVG91Y2hTdGFydCA9IChlKSA9PiB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMubG9uZ1ByZXNzVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuc3RhcnREcmFnKGUpO1xuICAgIH0sIDUwMCk7XG4gIH07XG5cbiAgaGFuZGxlVG91Y2hFbmQgPSAoKSA9PiB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMubG9uZ1ByZXNzVGltZXIpO1xuICB9O1xuXG4gIGhhbmRsZVRvdWNoTW92ZSA9ICgpID0+IHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5sb25nUHJlc3NUaW1lcik7XG4gIH07XG5cbiAgY29tcG9uZW50RGlkTW91bnQoKSB7XG4gICAgaWYgKHRoaXMuZHJhZ0NvbnRhaW5lclJlZikge1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmhhbmRsZVRvdWNoU3RhcnQsIHsgcGFzc2l2ZTogZmFsc2UgfSk7XG4gICAgICB0aGlzLmRyYWdDb250YWluZXJSZWYuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hlbmQnLCB0aGlzLmhhbmRsZVRvdWNoRW5kKTtcbiAgICAgIHRoaXMuZHJhZ0NvbnRhaW5lclJlZi5hZGRFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCB0aGlzLmhhbmRsZVRvdWNoTW92ZSk7XG4gICAgfVxuICB9XG5cbiAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XG4gICAgaWYgKHRoaXMuZHJhZ0NvbnRhaW5lclJlZikge1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCB0aGlzLmhhbmRsZVRvdWNoU3RhcnQpO1xuICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgdGhpcy5oYW5kbGVUb3VjaEVuZCk7XG4gICAgICB0aGlzLmRyYWdDb250YWluZXJSZWYucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgdGhpcy5oYW5kbGVUb3VjaE1vdmUpO1xuICAgIH1cbiAgfVxuXG4gIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICByZW5kZXJNYXRoKHRoaXMucm9vdFJlZik7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBjb25uZWN0RHJhZ1NvdXJjZSwgY2hvaWNlLCBjbGFzc2VzLCBkaXNhYmxlZCB9ID0gdGhpcy5wcm9wcztcblxuICAgIC8vIFRPRE8gdGhlIENoaXAgZWxlbWVudCBpcyBjYXVzaW5nIGRyYWcgcHJvYmxlbXMgb24gdG91Y2ggZGV2aWNlcy4gQXZvaWQgdXNpbmcgQ2hpcCBhbmQgY29uc2lkZXIgcmVmYWN0b3JpbmcgdGhlIGNvZGUuIEtlZXAgaW4gbWluZCB0aGF0IENoaXAgaXMgYSBzcGFuIHdpdGggYSBidXR0b24gcm9sZSwgd2hpY2ggaW50ZXJmZXJlcyB3aXRoIHNlYW1sZXNzIHRvdWNoIGRldmljZSBkcmFnZ2luZy5cblxuICAgIHJldHVybiBjb25uZWN0RHJhZ1NvdXJjZShcbiAgICAgIDxzcGFuXG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcyhjbGFzc2VzLmNob2ljZSwgZGlzYWJsZWQgJiYgY2xhc3Nlcy5kaXNhYmxlZCl9XG4gICAgICAgIHJlZj17KHJlZikgPT4ge1xuICAgICAgICAgIC8vZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgICAgdGhpcy5kcmFnQ29udGFpbmVyUmVmID0gUmVhY3RET00uZmluZERPTU5vZGUocmVmKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPENoaXBcbiAgICAgICAgICBjbGlja2FibGU9e2ZhbHNlfVxuICAgICAgICAgIGRpc2FibGVkPXt0cnVlfVxuICAgICAgICAgIHJlZj17KHJlZikgPT4ge1xuICAgICAgICAgICAgLy9lc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgICAgICAgIHRoaXMucm9vdFJlZiA9IFJlYWN0RE9NLmZpbmRET01Ob2RlKHJlZik7XG4gICAgICAgICAgfX1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMuY2hpcH1cbiAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzZXMuY2hpcExhYmVsfVxuICAgICAgICAgICAgICByZWY9eyhyZWYpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVmKSB7XG4gICAgICAgICAgICAgICAgICByZWYuaW5uZXJIVE1MID0gY2hvaWNlLnZhbHVlIHx8ICcgJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgfVxuICAgICAgICAgIHZhcmlhbnQ9e2Rpc2FibGVkID8gJ291dGxpbmVkJyA6IHVuZGVmaW5lZH1cbiAgICAgICAgLz5cbiAgICAgIDwvc3Bhbj4sXG4gICAgICB7fSxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBCbGFua0NvbnRlbnQgPSB3aXRoU3R5bGVzKCh0aGVtZSkgPT4gKHtcbiAgY2hvaWNlOiB7XG4gICAgYm9yZGVyOiBgc29saWQgMHB4ICR7dGhlbWUucGFsZXR0ZS5wcmltYXJ5Lm1haW59YCxcbiAgICBib3JkZXJSYWRpdXM6IHRoZW1lLnNwYWNpbmcudW5pdCAqIDIsXG4gICAgbWFyZ2luOiB0aGVtZS5zcGFjaW5nLnVuaXQgLyAyLFxuICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZSgwLCAwKScsXG4gIH0sXG4gIGNoaXA6IHtcbiAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLndoaXRlKCksXG4gICAgYm9yZGVyOiBgMXB4IHNvbGlkICR7Y29sb3IudGV4dCgpfWAsXG4gICAgY29sb3I6IGNvbG9yLnRleHQoKSxcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICBkaXNwbGF5OiAnaW5saW5lLWZsZXgnLFxuICAgIGhlaWdodDogJ2luaXRpYWwnLFxuICAgIG1pbkhlaWdodDogJzMycHgnLFxuICAgIGZvbnRTaXplOiAnaW5oZXJpdCcsXG4gICAgd2hpdGVTcGFjZTogJ3ByZS13cmFwJyxcbiAgICBtYXhXaWR0aDogJzM3NHB4JyxcbiAgICAvLyBBZGRlZCBmb3IgdG91Y2ggZGV2aWNlcywgZm9yIGltYWdlIGNvbnRlbnQuXG4gICAgLy8gVGhpcyB3aWxsIHByZXZlbnQgdGhlIGNvbnRleHQgbWVudSBmcm9tIGFwcGVhcmluZyBhbmQgbm90IGFsbG93aW5nIG90aGVyIGludGVyYWN0aW9ucyB3aXRoIHRoZSBpbWFnZS5cbiAgICAvLyBJZiBpbnRlcmFjdGlvbnMgd2l0aCB0aGUgaW1hZ2UgaW4gdGhlIHRva2VuIHdpbGwgYmUgcmVxdWVzdGVkIHdlIHNob3VsZCBoYW5kbGUgb25seSB0aGUgY29udGV4dCBNZW51LlxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICBib3JkZXJSYWRpdXM6ICczcHgnLFxuICAgIHBhZGRpbmdUb3A6ICcxMnB4JyxcbiAgICBwYWRkaW5nQm90dG9tOiAnMTJweCcsXG4gIH0sXG4gIGNoaXBMYWJlbDoge1xuICAgIHdoaXRlU3BhY2U6ICdub3JtYWwnLFxuICAgICcmIGltZyc6IHtcbiAgICAgIGRpc3BsYXk6ICdibG9jaycsXG4gICAgICBwYWRkaW5nOiAnMnB4IDAnLFxuICAgIH0sXG4gICAgJyYgbWp4LWZyYWMnOiB7XG4gICAgICBmb250U2l6ZTogJzEyMCUgIWltcG9ydGFudCcsXG4gICAgfSxcbiAgfSxcbiAgZGlzYWJsZWQ6IHtcbiAgICBvcGFjaXR5OiAwLjYsXG4gIH0sXG59KSkoQmxhbmtDb250ZW50Q29tcCk7XG5cbmNvbnN0IHRpbGVTb3VyY2UgPSB7XG4gIGNhbkRyYWcocHJvcHMpIHtcbiAgICByZXR1cm4gIXByb3BzLmRpc2FibGVkO1xuICB9LFxuICBiZWdpbkRyYWcocHJvcHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2hvaWNlOiBwcm9wcy5jaG9pY2UsXG4gICAgICBpbnN0YW5jZUlkOiBwcm9wcy5pbnN0YW5jZUlkLFxuICAgIH07XG4gIH0sXG59O1xuXG5jb25zdCBEcmFnRHJvcFRpbGUgPSBEcmFnU291cmNlKERSQUdfVFlQRSwgdGlsZVNvdXJjZSwgKGNvbm5lY3QsIG1vbml0b3IpID0+ICh7XG4gIGNvbm5lY3REcmFnU291cmNlOiBjb25uZWN0LmRyYWdTb3VyY2UoKSxcbiAgaXNEcmFnZ2luZzogbW9uaXRvci5pc0RyYWdnaW5nKCksXG59KSkoQmxhbmtDb250ZW50KTtcblxuZXhwb3J0IGRlZmF1bHQgRHJhZ0Ryb3BUaWxlO1xuIl19
@@ -29,7 +29,11 @@ var _findKey = _interopRequireDefault(require("lodash/findKey"));
29
29
 
30
30
  var _choice = _interopRequireDefault(require("./choice"));
31
31
 
32
- var _dragInTheBlankDp = _interopRequireDefault(require("@pie-lib/drag/lib/drag-in-the-blank-dp"));
32
+ var _drag = require("@pie-lib/drag");
33
+
34
+ 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; }
35
+
36
+ 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; }
33
37
 
34
38
  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); }; }
35
39
 
@@ -96,10 +100,14 @@ var Choices = /*#__PURE__*/function (_React$Component) {
96
100
  });
97
101
  return foundChoice === undefined;
98
102
  });
99
- var elementStyle = this.getStyleForWrapper();
103
+
104
+ var elementStyle = _objectSpread(_objectSpread({}, this.getStyleForWrapper()), {}, {
105
+ minWidth: '100px'
106
+ });
107
+
100
108
  return /*#__PURE__*/_react["default"].createElement("div", {
101
109
  style: elementStyle
102
- }, /*#__PURE__*/_react["default"].createElement(_dragInTheBlankDp["default"], {
110
+ }, /*#__PURE__*/_react["default"].createElement(_drag.DragDroppablePlaceholder, {
103
111
  disabled: disabled
104
112
  }, filteredChoices.map(function (c, index) {
105
113
  return /*#__PURE__*/_react["default"].createElement(_choice["default"], {
@@ -124,4 +132,4 @@ exports["default"] = Choices;
124
132
  value: _propTypes["default"].object,
125
133
  choicePosition: _propTypes["default"].string.isRequired
126
134
  });
127
- //# sourceMappingURL=index.js.map
135
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaG9pY2VzL2luZGV4LmpzeCJdLCJuYW1lcyI6WyJDaG9pY2VzIiwiY2hvaWNlUG9zaXRpb24iLCJwcm9wcyIsIm1hcmdpbiIsImRpc2FibGVkIiwiZHVwbGljYXRlcyIsImNob2ljZXMiLCJ2YWx1ZSIsImZpbHRlcmVkQ2hvaWNlcyIsImZpbHRlciIsImMiLCJmb3VuZENob2ljZSIsInYiLCJpZCIsInVuZGVmaW5lZCIsImVsZW1lbnRTdHlsZSIsImdldFN0eWxlRm9yV3JhcHBlciIsIm1pbldpZHRoIiwibWFwIiwiaW5kZXgiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsImJvb2wiLCJhcnJheU9mIiwic2hhcGUiLCJsYWJlbCIsInN0cmluZyIsIm9iamVjdCIsImlzUmVxdWlyZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7SUFFcUJBLE87Ozs7Ozs7Ozs7Ozs7OzsyR0FTRSxZQUFNO0FBQ3pCLFVBQVFDLGNBQVIsR0FBMkIsTUFBS0MsS0FBaEMsQ0FBUUQsY0FBUjs7QUFFQSxjQUFRQSxjQUFSO0FBQ0UsYUFBSyxPQUFMO0FBQ0UsaUJBQU87QUFDTEUsWUFBQUEsTUFBTSxFQUFFO0FBREgsV0FBUDs7QUFJRixhQUFLLE9BQUw7QUFDRSxpQkFBTztBQUNMQSxZQUFBQSxNQUFNLEVBQUU7QUFESCxXQUFQOztBQUlGLGFBQUssT0FBTDtBQUNFLGlCQUFPO0FBQ0xBLFlBQUFBLE1BQU0sRUFBRTtBQURILFdBQVA7O0FBSUY7QUFDRSxpQkFBTztBQUNMQSxZQUFBQSxNQUFNLEVBQUU7QUFESCxXQUFQO0FBakJKO0FBcUJELEs7Ozs7OztXQUVELGtCQUFTO0FBQ1Asd0JBQWlELEtBQUtELEtBQXREO0FBQUEsVUFBUUUsUUFBUixlQUFRQSxRQUFSO0FBQUEsVUFBa0JDLFVBQWxCLGVBQWtCQSxVQUFsQjtBQUFBLFVBQThCQyxPQUE5QixlQUE4QkEsT0FBOUI7QUFBQSxVQUF1Q0MsS0FBdkMsZUFBdUNBLEtBQXZDO0FBQ0EsVUFBTUMsZUFBZSxHQUFHRixPQUFPLENBQUNHLE1BQVIsQ0FBZSxVQUFDQyxDQUFELEVBQU87QUFDNUMsWUFBSUwsVUFBVSxLQUFLLElBQW5CLEVBQXlCO0FBQ3ZCLGlCQUFPLElBQVA7QUFDRDs7QUFDRCxZQUFNTSxXQUFXLEdBQUcseUJBQVFKLEtBQVIsRUFBZSxVQUFDSyxDQUFEO0FBQUEsaUJBQU9BLENBQUMsS0FBS0YsQ0FBQyxDQUFDRyxFQUFmO0FBQUEsU0FBZixDQUFwQjtBQUNBLGVBQU9GLFdBQVcsS0FBS0csU0FBdkI7QUFDRCxPQU51QixDQUF4Qjs7QUFPQSxVQUFNQyxZQUFZLG1DQUFRLEtBQUtDLGtCQUFMLEVBQVI7QUFBbUNDLFFBQUFBLFFBQVEsRUFBRTtBQUE3QyxRQUFsQjs7QUFFQSwwQkFDRTtBQUFLLFFBQUEsS0FBSyxFQUFFRjtBQUFaLHNCQUNFLGdDQUFDLDhCQUFEO0FBQTBCLFFBQUEsUUFBUSxFQUFFWDtBQUFwQyxTQUNHSSxlQUFlLENBQUNVLEdBQWhCLENBQW9CLFVBQUNSLENBQUQsRUFBSVMsS0FBSjtBQUFBLDRCQUNuQixnQ0FBQyxrQkFBRDtBQUFRLFVBQUEsR0FBRyxZQUFLVCxDQUFDLENBQUNILEtBQVAsY0FBZ0JZLEtBQWhCLENBQVg7QUFBb0MsVUFBQSxRQUFRLEVBQUVmLFFBQTlDO0FBQXdELFVBQUEsTUFBTSxFQUFFTTtBQUFoRSxVQURtQjtBQUFBLE9BQXBCLENBREgsQ0FERixDQURGO0FBU0Q7OztFQXZEa0NVLGtCQUFNQyxTOzs7aUNBQXRCckIsTyxlQUNBO0FBQ2pCSSxFQUFBQSxRQUFRLEVBQUVrQixzQkFBVUMsSUFESDtBQUVqQmxCLEVBQUFBLFVBQVUsRUFBRWlCLHNCQUFVQyxJQUZMO0FBR2pCakIsRUFBQUEsT0FBTyxFQUFFZ0Isc0JBQVVFLE9BQVYsQ0FBa0JGLHNCQUFVRyxLQUFWLENBQWdCO0FBQUVDLElBQUFBLEtBQUssRUFBRUosc0JBQVVLLE1BQW5CO0FBQTJCcEIsSUFBQUEsS0FBSyxFQUFFZSxzQkFBVUs7QUFBNUMsR0FBaEIsQ0FBbEIsQ0FIUTtBQUlqQnBCLEVBQUFBLEtBQUssRUFBRWUsc0JBQVVNLE1BSkE7QUFLakIzQixFQUFBQSxjQUFjLEVBQUVxQixzQkFBVUssTUFBVixDQUFpQkU7QUFMaEIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IGZpbmRLZXkgZnJvbSAnbG9kYXNoL2ZpbmRLZXknO1xuaW1wb3J0IENob2ljZSBmcm9tICcuL2Nob2ljZSc7XG5pbXBvcnQgeyBEcmFnRHJvcHBhYmxlUGxhY2Vob2xkZXIgfSBmcm9tICdAcGllLWxpYi9kcmFnJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ2hvaWNlcyBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGR1cGxpY2F0ZXM6IFByb3BUeXBlcy5ib29sLFxuICAgIGNob2ljZXM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5zaGFwZSh7IGxhYmVsOiBQcm9wVHlwZXMuc3RyaW5nLCB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZyB9KSksXG4gICAgdmFsdWU6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgY2hvaWNlUG9zaXRpb246IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgfTtcblxuICBnZXRTdHlsZUZvcldyYXBwZXIgPSAoKSA9PiB7XG4gICAgY29uc3QgeyBjaG9pY2VQb3NpdGlvbiB9ID0gdGhpcy5wcm9wcztcblxuICAgIHN3aXRjaCAoY2hvaWNlUG9zaXRpb24pIHtcbiAgICAgIGNhc2UgJ2Fib3ZlJzpcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtYXJnaW46ICcwIDAgNDBweCAwJyxcbiAgICAgICAgfTtcblxuICAgICAgY2FzZSAnYmVsb3cnOlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG1hcmdpbjogJzQwcHggMCAwIDAnLFxuICAgICAgICB9O1xuXG4gICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWFyZ2luOiAnMCAwIDAgNDBweCcsXG4gICAgICAgIH07XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWFyZ2luOiAnMCA0MHB4IDAgMCcsXG4gICAgICAgIH07XG4gICAgfVxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IGRpc2FibGVkLCBkdXBsaWNhdGVzLCBjaG9pY2VzLCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBmaWx0ZXJlZENob2ljZXMgPSBjaG9pY2VzLmZpbHRlcigoYykgPT4ge1xuICAgICAgaWYgKGR1cGxpY2F0ZXMgPT09IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICBjb25zdCBmb3VuZENob2ljZSA9IGZpbmRLZXkodmFsdWUsICh2KSA9PiB2ID09PSBjLmlkKTtcbiAgICAgIHJldHVybiBmb3VuZENob2ljZSA9PT0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICAgIGNvbnN0IGVsZW1lbnRTdHlsZSA9IHsgLi4udGhpcy5nZXRTdHlsZUZvcldyYXBwZXIoKSwgbWluV2lkdGg6ICcxMDBweCcgfTtcblxuICAgIHJldHVybiAoXG4gICAgICA8ZGl2IHN0eWxlPXtlbGVtZW50U3R5bGV9PlxuICAgICAgICA8RHJhZ0Ryb3BwYWJsZVBsYWNlaG9sZGVyIGRpc2FibGVkPXtkaXNhYmxlZH0+XG4gICAgICAgICAge2ZpbHRlcmVkQ2hvaWNlcy5tYXAoKGMsIGluZGV4KSA9PiAoXG4gICAgICAgICAgICA8Q2hvaWNlIGtleT17YCR7Yy52YWx1ZX0tJHtpbmRleH1gfSBkaXNhYmxlZD17ZGlzYWJsZWR9IGNob2ljZT17Y30gLz5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9EcmFnRHJvcHBhYmxlUGxhY2Vob2xkZXI+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG4iXX0=
@@ -22,4 +22,4 @@ var _default = function _default(s, t) {
22
22
  };
23
23
 
24
24
  exports["default"] = _default;
25
- //# sourceMappingURL=componentize.js.map
25
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb25lbnRpemUuanMiXSwibmFtZXMiOlsiUkVHRVgiLCJzIiwidCIsIm1hcmt1cCIsInJlcGxhY2UiLCJtYXRjaCIsImciXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQU1BLEtBQUssR0FBRyxnQkFBZDs7ZUFFZSxrQkFBQ0MsQ0FBRCxFQUFJQyxDQUFKLEVBQVU7QUFDdkIsTUFBSSxDQUFDRCxDQUFMLEVBQVE7QUFDTixXQUFPO0FBQUVFLE1BQUFBLE1BQU0sRUFBRTtBQUFWLEtBQVA7QUFDRDs7QUFFRCxNQUFNQSxNQUFNLEdBQUdGLENBQUMsQ0FBQ0csT0FBRixDQUFVSixLQUFWLEVBQWlCLFVBQUNLLEtBQUQsRUFBUUMsQ0FBUixFQUFjO0FBQzVDLDRDQUFnQ0osQ0FBaEMsMEJBQStDSSxDQUEvQztBQUNELEdBRmMsQ0FBZjtBQUlBLFNBQU87QUFBRUgsSUFBQUEsTUFBTSxFQUFOQTtBQUFGLEdBQVA7QUFDRCxDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgUkVHRVggPSAvXFx7XFx7KFxcZCspXFx9XFx9L2c7XG5cbmV4cG9ydCBkZWZhdWx0IChzLCB0KSA9PiB7XG4gIGlmICghcykge1xuICAgIHJldHVybiB7IG1hcmt1cDogJycgfTtcbiAgfVxuXG4gIGNvbnN0IG1hcmt1cCA9IHMucmVwbGFjZShSRUdFWCwgKG1hdGNoLCBnKSA9PiB7XG4gICAgcmV0dXJuIGA8c3BhbiBkYXRhLWNvbXBvbmVudD1cIiR7dH1cIiBkYXRhLWlkPVwiJHtnfVwiPjwvc3Bhbj5gO1xuICB9KTtcblxuICByZXR1cm4geyBtYXJrdXAgfTtcbn07XG4iXX0=
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ var React = _interopRequireWildcard(require("react"));
6
+
7
+ var _enzyme = require("enzyme");
8
+
9
+ var _blank = require("../blank");
10
+
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+
15
+ describe('Blank', function () {
16
+ var onChange = jest.fn();
17
+ var defaultProps = {
18
+ disabled: false,
19
+ value: 'Cow',
20
+ classes: {},
21
+ isOver: false,
22
+ dragItem: {},
23
+ correct: false,
24
+ onChange: onChange
25
+ };
26
+ var wrapper;
27
+ var instance;
28
+ beforeEach(function () {
29
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_blank.BlankContent, defaultProps));
30
+ instance = wrapper.instance();
31
+ });
32
+ describe('render', function () {
33
+ it('renders correctly with default props', function () {
34
+ expect(wrapper).toMatchSnapshot();
35
+ });
36
+ it('renders correctly with disabled prop as true', function () {
37
+ wrapper.setProps({
38
+ disabled: true
39
+ });
40
+ expect(wrapper).toMatchSnapshot();
41
+ });
42
+ it('renders correctly with draggedItem', function () {
43
+ wrapper.setProps({
44
+ dragItem: {
45
+ choice: {
46
+ value: 'Dog'
47
+ }
48
+ }
49
+ });
50
+ expect(wrapper).toMatchSnapshot();
51
+ });
52
+ it('renders correctly with draggedItem and isOver', function () {
53
+ wrapper.setProps({
54
+ dragItem: {
55
+ choice: {
56
+ value: 'Dog'
57
+ }
58
+ },
59
+ isOver: true
60
+ });
61
+ expect(wrapper).toMatchSnapshot();
62
+ });
63
+ });
64
+ describe('onDelete', function () {
65
+ it('should be undefined if disabled is true', function () {
66
+ wrapper.setProps({
67
+ disabled: true
68
+ });
69
+ expect(wrapper.props().onDelete).toEqual(undefined);
70
+ });
71
+ it('should be undefined if no value is set', function () {
72
+ wrapper.setProps({
73
+ disabled: false,
74
+ value: undefined
75
+ });
76
+ expect(wrapper.props().onDelete).toEqual(undefined);
77
+ });
78
+ });
79
+ describe('updateDimensions', function () {
80
+ var span;
81
+ var rootRef;
82
+
83
+ var setSpanDimensions = function setSpanDimensions(height, width) {
84
+ Object.defineProperty(span, 'offsetHeight', {
85
+ value: height,
86
+ configurable: true
87
+ });
88
+ Object.defineProperty(span, 'offsetWidth', {
89
+ value: width,
90
+ configurable: true
91
+ });
92
+ };
93
+
94
+ beforeEach(function () {
95
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_blank.BlankContent, defaultProps));
96
+ instance = wrapper.instance();
97
+ span = document.createElement('span');
98
+ rootRef = document.createElement('span');
99
+ instance.spanRef = span;
100
+ instance.rootRef = rootRef;
101
+ Object.defineProperty(span, 'offsetHeight', {
102
+ value: 0,
103
+ configurable: true
104
+ });
105
+ Object.defineProperty(span, 'offsetWidth', {
106
+ value: 0,
107
+ configurable: true
108
+ });
109
+ });
110
+ it('should update dimensions if span size exceeds the response area size', function () {
111
+ setSpanDimensions(50, 50);
112
+ instance.updateDimensions();
113
+ expect(instance.state).toEqual({
114
+ width: 74,
115
+ height: 74
116
+ });
117
+ });
118
+ it('should not update dimensions if span size does not exceed the response area size', function () {
119
+ wrapper.setProps({
120
+ emptyResponseAreaHeight: 50,
121
+ emptyResponseAreaWidth: 50
122
+ });
123
+ setSpanDimensions(30, 30);
124
+ instance.updateDimensions();
125
+ expect(instance.state).toEqual({
126
+ width: 54,
127
+ // with padding it does exceed (30 + 24 > 50) so it's updating
128
+ height: 54 // with padding it does exceed (30 + 24 > 50) so it's updating
129
+
130
+ });
131
+ });
132
+ it('should handle non-numeric emptyResponseAreaHeight and emptyResponseAreaWidth', function () {
133
+ wrapper.setProps({
134
+ emptyResponseAreaHeight: 'non-numeric',
135
+ emptyResponseAreaWidth: 'non-numeric'
136
+ });
137
+ setSpanDimensions(50, 50);
138
+ instance.updateDimensions();
139
+ expect(instance.state).toEqual({
140
+ width: 74,
141
+ height: 74
142
+ });
143
+ });
144
+ });
145
+ describe('getRootDimensions', function () {
146
+ it('should return state dimensions if set', function () {
147
+ instance.setState({
148
+ height: 50,
149
+ width: 50
150
+ });
151
+ var dimensions = instance.getRootDimensions();
152
+ expect(dimensions).toEqual({
153
+ height: 50,
154
+ width: 50,
155
+ minWidth: 90,
156
+ minHeight: 32
157
+ });
158
+ });
159
+ it('should return state height and props width if state width is not set', function () {
160
+ instance.setState({
161
+ height: 50,
162
+ width: 0
163
+ });
164
+ var dimensions = instance.getRootDimensions();
165
+ expect(dimensions).toEqual({
166
+ height: 50,
167
+ width: 0,
168
+ minWidth: 90,
169
+ minHeight: 32
170
+ });
171
+ });
172
+ it('should return props height and state width if state height is not set', function () {
173
+ instance.setState({
174
+ height: 0,
175
+ width: 50
176
+ });
177
+ var dimensions = instance.getRootDimensions();
178
+ expect(dimensions).toEqual({
179
+ height: 0,
180
+ width: 50,
181
+ minWidth: 90,
182
+ minHeight: 32
183
+ });
184
+ });
185
+ it('should return props dimensions if state dimensions are zero', function () {
186
+ instance.setState({
187
+ height: 0,
188
+ width: 0
189
+ });
190
+ wrapper.setProps({
191
+ emptyResponseAreaHeight: 60,
192
+ emptyResponseAreaWidth: 60
193
+ });
194
+ var dimensions = instance.getRootDimensions();
195
+ expect(dimensions).toEqual({
196
+ height: 60,
197
+ width: 60
198
+ });
199
+ });
200
+ it('should return state dimensions over props dimensions if both are set', function () {
201
+ instance.setState({
202
+ height: 50,
203
+ width: 50
204
+ });
205
+ wrapper.setProps({
206
+ emptyResponseAreaHeight: 60,
207
+ emptyResponseAreaWidth: 60
208
+ });
209
+ var dimensions = instance.getRootDimensions();
210
+ expect(dimensions).toEqual({
211
+ height: 50,
212
+ width: 50
213
+ });
214
+ });
215
+ it('should return minWidth and minHeight if state and props dimensions are zero or undefined', function () {
216
+ instance.setState({
217
+ height: 0,
218
+ width: 0
219
+ });
220
+ wrapper.setProps({
221
+ emptyResponseAreaHeight: undefined,
222
+ emptyResponseAreaWidth: undefined
223
+ });
224
+ var dimensions = instance.getRootDimensions();
225
+ expect(dimensions).toEqual({
226
+ height: 0,
227
+ width: 0,
228
+ minWidth: 90,
229
+ minHeight: 32
230
+ });
231
+ });
232
+ });
233
+ });
234
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL19fdGVzdHNfXy9ibGFuay50ZXN0LmpzIl0sIm5hbWVzIjpbImRlc2NyaWJlIiwib25DaGFuZ2UiLCJqZXN0IiwiZm4iLCJkZWZhdWx0UHJvcHMiLCJkaXNhYmxlZCIsInZhbHVlIiwiY2xhc3NlcyIsImlzT3ZlciIsImRyYWdJdGVtIiwiY29ycmVjdCIsIndyYXBwZXIiLCJpbnN0YW5jZSIsImJlZm9yZUVhY2giLCJpdCIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsInNldFByb3BzIiwiY2hvaWNlIiwicHJvcHMiLCJvbkRlbGV0ZSIsInRvRXF1YWwiLCJ1bmRlZmluZWQiLCJzcGFuIiwicm9vdFJlZiIsInNldFNwYW5EaW1lbnNpb25zIiwiaGVpZ2h0Iiwid2lkdGgiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImNvbmZpZ3VyYWJsZSIsImRvY3VtZW50IiwiY3JlYXRlRWxlbWVudCIsInNwYW5SZWYiLCJ1cGRhdGVEaW1lbnNpb25zIiwic3RhdGUiLCJlbXB0eVJlc3BvbnNlQXJlYUhlaWdodCIsImVtcHR5UmVzcG9uc2VBcmVhV2lkdGgiLCJzZXRTdGF0ZSIsImRpbWVuc2lvbnMiLCJnZXRSb290RGltZW5zaW9ucyIsIm1pbldpZHRoIiwibWluSGVpZ2h0Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBQSxRQUFRLENBQUMsT0FBRCxFQUFVLFlBQU07QUFDdEIsTUFBTUMsUUFBUSxHQUFHQyxJQUFJLENBQUNDLEVBQUwsRUFBakI7QUFDQSxNQUFNQyxZQUFZLEdBQUc7QUFDbkJDLElBQUFBLFFBQVEsRUFBRSxLQURTO0FBRW5CQyxJQUFBQSxLQUFLLEVBQUUsS0FGWTtBQUduQkMsSUFBQUEsT0FBTyxFQUFFLEVBSFU7QUFJbkJDLElBQUFBLE1BQU0sRUFBRSxLQUpXO0FBS25CQyxJQUFBQSxRQUFRLEVBQUUsRUFMUztBQU1uQkMsSUFBQUEsT0FBTyxFQUFFLEtBTlU7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VUFBRCxDQUFOLENBQW1CbEIsT0FBbkIsQ0FBMkI7QUFDekJLLFFBQUFBLE1BQU0sRUFBRSxFQURpQjtBQUV6QkMsUUFBQUEsS0FBSyxFQUFFO0FBRmtCLE9BQTNCO0FBSUQsS0FWQyxDQUFGO0FBWUFiLElBQUFBLEVBQUUsQ0FBQywwRkFBRCxFQUE2RixZQUFNO0FBQ25HRixNQUFBQSxRQUFRLENBQUMwQixRQUFULENBQWtCO0FBQUVaLFFBQUFBLE1BQU0sRUFBRSxDQUFWO0FBQWFDLFFBQUFBLEtBQUssRUFBRTtBQUFwQixPQUFsQjtBQUNBaEIsTUFBQUEsT0FBTyxDQUFDTSxRQUFSLENBQWlCO0FBQUVtQixRQUFBQSx1QkFBdUIsRUFBRWQsU0FBM0I7QUFBc0NlLFFBQUFBLHNCQUFzQixFQUFFZjtBQUE5RCxPQUFqQjtBQUVBLFVBQU1pQixVQUFVLEdBQUczQixRQUFRLENBQUM0QixpQkFBVCxFQUFuQjtBQUVBekIsTUFBQUEsTUFBTSxDQUFDd0IsVUFBRCxDQUFOLENBQW1CbEIsT0FBbkIsQ0FBMkI7QUFDekJLLFFBQUFBLE1BQU0sRUFBRSxDQURpQjtBQUV6QkMsUUFBQUEsS0FBSyxFQUFFLENBRmtCO0FBR3pCYyxRQUFBQSxRQUFRLEVBQUUsRUFIZTtBQUl6QkMsUUFBQUEsU0FBUyxFQUFFO0FBSmMsT0FBM0I7QUFNRCxLQVpDLENBQUY7QUFhRCxHQTdFTyxDQUFSO0FBOEVELENBck1PLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCB7IEJsYW5rQ29udGVudCBhcyBCbGFuayB9IGZyb20gJy4uL2JsYW5rJztcblxuZGVzY3JpYmUoJ0JsYW5rJywgKCkgPT4ge1xuICBjb25zdCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICB2YWx1ZTogJ0NvdycsXG4gICAgY2xhc3Nlczoge30sXG4gICAgaXNPdmVyOiBmYWxzZSxcbiAgICBkcmFnSXRlbToge30sXG4gICAgY29ycmVjdDogZmFsc2UsXG4gICAgb25DaGFuZ2UsXG4gIH07XG4gIGxldCB3cmFwcGVyO1xuICBsZXQgaW5zdGFuY2U7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgd3JhcHBlciA9IHNoYWxsb3coPEJsYW5rIHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgICBpbnN0YW5jZSA9IHdyYXBwZXIuaW5zdGFuY2UoKTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkZWZhdWx0IHByb3BzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGlzYWJsZWQgcHJvcCBhcyB0cnVlJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGRpc2FibGVkOiB0cnVlIH0pO1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZHJhZ2dlZEl0ZW0nLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHsgZHJhZ0l0ZW06IHsgY2hvaWNlOiB7IHZhbHVlOiAnRG9nJyB9IH0gfSk7XG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkcmFnZ2VkSXRlbSBhbmQgaXNPdmVyJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGRyYWdJdGVtOiB7IGNob2ljZTogeyB2YWx1ZTogJ0RvZycgfSB9LCBpc092ZXI6IHRydWUgfSk7XG4gICAgICBleHBlY3Qod3JhcHBlcikudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdvbkRlbGV0ZScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGJlIHVuZGVmaW5lZCBpZiBkaXNhYmxlZCBpcyB0cnVlJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGRpc2FibGVkOiB0cnVlIH0pO1xuXG4gICAgICBleHBlY3Qod3JhcHBlci5wcm9wcygpLm9uRGVsZXRlKS50b0VxdWFsKHVuZGVmaW5lZCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJlIHVuZGVmaW5lZCBpZiBubyB2YWx1ZSBpcyBzZXQnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHsgZGlzYWJsZWQ6IGZhbHNlLCB2YWx1ZTogdW5kZWZpbmVkIH0pO1xuXG4gICAgICBleHBlY3Qod3JhcHBlci5wcm9wcygpLm9uRGVsZXRlKS50b0VxdWFsKHVuZGVmaW5lZCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCd1cGRhdGVEaW1lbnNpb25zJywgKCkgPT4ge1xuICAgIGxldCBzcGFuO1xuICAgIGxldCByb290UmVmO1xuXG4gICAgY29uc3Qgc2V0U3BhbkRpbWVuc2lvbnMgPSAoaGVpZ2h0LCB3aWR0aCkgPT4ge1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNwYW4sICdvZmZzZXRIZWlnaHQnLCB7IHZhbHVlOiBoZWlnaHQsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzcGFuLCAnb2Zmc2V0V2lkdGgnLCB7IHZhbHVlOiB3aWR0aCwgY29uZmlndXJhYmxlOiB0cnVlIH0pO1xuICAgIH07XG5cbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIHdyYXBwZXIgPSBzaGFsbG93KDxCbGFuayB7Li4uZGVmYXVsdFByb3BzfSAvPik7XG4gICAgICBpbnN0YW5jZSA9IHdyYXBwZXIuaW5zdGFuY2UoKTtcblxuICAgICAgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgIHJvb3RSZWYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG5cbiAgICAgIGluc3RhbmNlLnNwYW5SZWYgPSBzcGFuO1xuICAgICAgaW5zdGFuY2Uucm9vdFJlZiA9IHJvb3RSZWY7XG5cbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShzcGFuLCAnb2Zmc2V0SGVpZ2h0JywgeyB2YWx1ZTogMCwgY29uZmlndXJhYmxlOiB0cnVlIH0pO1xuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHNwYW4sICdvZmZzZXRXaWR0aCcsIHsgdmFsdWU6IDAsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdXBkYXRlIGRpbWVuc2lvbnMgaWYgc3BhbiBzaXplIGV4Y2VlZHMgdGhlIHJlc3BvbnNlIGFyZWEgc2l6ZScsICgpID0+IHtcbiAgICAgIHNldFNwYW5EaW1lbnNpb25zKDUwLCA1MCk7XG5cbiAgICAgIGluc3RhbmNlLnVwZGF0ZURpbWVuc2lvbnMoKTtcblxuICAgICAgZXhwZWN0KGluc3RhbmNlLnN0YXRlKS50b0VxdWFsKHtcbiAgICAgICAgd2lkdGg6IDc0LFxuICAgICAgICBoZWlnaHQ6IDc0LFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIG5vdCB1cGRhdGUgZGltZW5zaW9ucyBpZiBzcGFuIHNpemUgZG9lcyBub3QgZXhjZWVkIHRoZSByZXNwb25zZSBhcmVhIHNpemUnLCAoKSA9PiB7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHtcbiAgICAgICAgZW1wdHlSZXNwb25zZUFyZWFIZWlnaHQ6IDUwLFxuICAgICAgICBlbXB0eVJlc3BvbnNlQXJlYVdpZHRoOiA1MCxcbiAgICAgIH0pO1xuICAgICAgc2V0U3BhbkRpbWVuc2lvbnMoMzAsIDMwKTtcblxuICAgICAgaW5zdGFuY2UudXBkYXRlRGltZW5zaW9ucygpO1xuXG4gICAgICBleHBlY3QoaW5zdGFuY2Uuc3RhdGUpLnRvRXF1YWwoe1xuICAgICAgICB3aWR0aDogNTQsICAvLyB3aXRoIHBhZGRpbmcgaXQgZG9lcyBleGNlZWQgKDMwICsgMjQgPiA1MCkgc28gaXQncyB1cGRhdGluZ1xuICAgICAgICBoZWlnaHQ6IDU0LCAvLyB3aXRoIHBhZGRpbmcgaXQgZG9lcyBleGNlZWQgKDMwICsgMjQgPiA1MCkgc28gaXQncyB1cGRhdGluZ1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGhhbmRsZSBub24tbnVtZXJpYyBlbXB0eVJlc3BvbnNlQXJlYUhlaWdodCBhbmQgZW1wdHlSZXNwb25zZUFyZWFXaWR0aCcsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoe1xuICAgICAgICBlbXB0eVJlc3BvbnNlQXJlYUhlaWdodDogJ25vbi1udW1lcmljJyxcbiAgICAgICAgZW1wdHlSZXNwb25zZUFyZWFXaWR0aDogJ25vbi1udW1lcmljJyxcbiAgICAgIH0pO1xuICAgICAgc2V0U3BhbkRpbWVuc2lvbnMoNTAsIDUwKTtcblxuICAgICAgaW5zdGFuY2UudXBkYXRlRGltZW5zaW9ucygpO1xuXG4gICAgICBleHBlY3QoaW5zdGFuY2Uuc3RhdGUpLnRvRXF1YWwoe1xuICAgICAgICB3aWR0aDogNzQsXG4gICAgICAgIGhlaWdodDogNzQsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2dldFJvb3REaW1lbnNpb25zJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgcmV0dXJuIHN0YXRlIGRpbWVuc2lvbnMgaWYgc2V0JywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2Uuc2V0U3RhdGUoeyBoZWlnaHQ6IDUwLCB3aWR0aDogNTAgfSk7XG5cbiAgICAgIGNvbnN0IGRpbWVuc2lvbnMgPSBpbnN0YW5jZS5nZXRSb290RGltZW5zaW9ucygpO1xuXG4gICAgICBleHBlY3QoZGltZW5zaW9ucykudG9FcXVhbCh7XG4gICAgICAgIGhlaWdodDogNTAsXG4gICAgICAgIHdpZHRoOiA1MCxcbiAgICAgICAgbWluV2lkdGg6IDkwLFxuICAgICAgICBtaW5IZWlnaHQ6IDMyLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBzdGF0ZSBoZWlnaHQgYW5kIHByb3BzIHdpZHRoIGlmIHN0YXRlIHdpZHRoIGlzIG5vdCBzZXQnLCAoKSA9PiB7XG4gICAgICBpbnN0YW5jZS5zZXRTdGF0ZSh7IGhlaWdodDogNTAsIHdpZHRoOiAwIH0pO1xuXG4gICAgICBjb25zdCBkaW1lbnNpb25zID0gaW5zdGFuY2UuZ2V0Um9vdERpbWVuc2lvbnMoKTtcblxuICAgICAgZXhwZWN0KGRpbWVuc2lvbnMpLnRvRXF1YWwoe1xuICAgICAgICBoZWlnaHQ6IDUwLFxuICAgICAgICB3aWR0aDogMCxcbiAgICAgICAgbWluV2lkdGg6IDkwLFxuICAgICAgICBtaW5IZWlnaHQ6IDMyLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBwcm9wcyBoZWlnaHQgYW5kIHN0YXRlIHdpZHRoIGlmIHN0YXRlIGhlaWdodCBpcyBub3Qgc2V0JywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2Uuc2V0U3RhdGUoeyBoZWlnaHQ6IDAsIHdpZHRoOiA1MCB9KTtcblxuICAgICAgY29uc3QgZGltZW5zaW9ucyA9IGluc3RhbmNlLmdldFJvb3REaW1lbnNpb25zKCk7XG5cbiAgICAgIGV4cGVjdChkaW1lbnNpb25zKS50b0VxdWFsKHtcbiAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICB3aWR0aDogNTAsXG4gICAgICAgIG1pbldpZHRoOiA5MCxcbiAgICAgICAgbWluSGVpZ2h0OiAzMixcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gcHJvcHMgZGltZW5zaW9ucyBpZiBzdGF0ZSBkaW1lbnNpb25zIGFyZSB6ZXJvJywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2Uuc2V0U3RhdGUoeyBoZWlnaHQ6IDAsIHdpZHRoOiAwIH0pO1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGVtcHR5UmVzcG9uc2VBcmVhSGVpZ2h0OiA2MCwgZW1wdHlSZXNwb25zZUFyZWFXaWR0aDogNjAgfSk7XG5cbiAgICAgIGNvbnN0IGRpbWVuc2lvbnMgPSBpbnN0YW5jZS5nZXRSb290RGltZW5zaW9ucygpO1xuXG4gICAgICBleHBlY3QoZGltZW5zaW9ucykudG9FcXVhbCh7XG4gICAgICAgIGhlaWdodDogNjAsXG4gICAgICAgIHdpZHRoOiA2MCxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZXR1cm4gc3RhdGUgZGltZW5zaW9ucyBvdmVyIHByb3BzIGRpbWVuc2lvbnMgaWYgYm90aCBhcmUgc2V0JywgKCkgPT4ge1xuICAgICAgaW5zdGFuY2Uuc2V0U3RhdGUoeyBoZWlnaHQ6IDUwLCB3aWR0aDogNTAgfSk7XG4gICAgICB3cmFwcGVyLnNldFByb3BzKHsgZW1wdHlSZXNwb25zZUFyZWFIZWlnaHQ6IDYwLCBlbXB0eVJlc3BvbnNlQXJlYVdpZHRoOiA2MCB9KTtcblxuICAgICAgY29uc3QgZGltZW5zaW9ucyA9IGluc3RhbmNlLmdldFJvb3REaW1lbnNpb25zKCk7XG5cbiAgICAgIGV4cGVjdChkaW1lbnNpb25zKS50b0VxdWFsKHtcbiAgICAgICAgaGVpZ2h0OiA1MCxcbiAgICAgICAgd2lkdGg6IDUwLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHJldHVybiBtaW5XaWR0aCBhbmQgbWluSGVpZ2h0IGlmIHN0YXRlIGFuZCBwcm9wcyBkaW1lbnNpb25zIGFyZSB6ZXJvIG9yIHVuZGVmaW5lZCcsICgpID0+IHtcbiAgICAgIGluc3RhbmNlLnNldFN0YXRlKHsgaGVpZ2h0OiAwLCB3aWR0aDogMCB9KTtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoeyBlbXB0eVJlc3BvbnNlQXJlYUhlaWdodDogdW5kZWZpbmVkLCBlbXB0eVJlc3BvbnNlQXJlYVdpZHRoOiB1bmRlZmluZWQgfSk7XG5cbiAgICAgIGNvbnN0IGRpbWVuc2lvbnMgPSBpbnN0YW5jZS5nZXRSb290RGltZW5zaW9ucygpO1xuXG4gICAgICBleHBlY3QoZGltZW5zaW9ucykudG9FcXVhbCh7XG4gICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgd2lkdGg6IDAsXG4gICAgICAgIG1pbldpZHRoOiA5MCxcbiAgICAgICAgbWluSGVpZ2h0OiAzMixcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var React = _interopRequireWildcard(require("react"));
8
+
9
+ var _enzyme = require("enzyme");
10
+
11
+ var _correctInput = _interopRequireDefault(require("../correct-input"));
12
+
13
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
+
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+
17
+ describe('CorrectInput', function () {
18
+ var onChange = jest.fn();
19
+ var defaultProps = {
20
+ disabled: false,
21
+ correct: false,
22
+ variant: 'outlined',
23
+ value: 'Cow',
24
+ onChange: onChange
25
+ };
26
+ var wrapper;
27
+ beforeEach(function () {
28
+ wrapper = (0, _enzyme.shallow)( /*#__PURE__*/React.createElement(_correctInput["default"], defaultProps));
29
+ });
30
+ describe('render', function () {
31
+ it('renders correctly with default props', function () {
32
+ expect(wrapper).toMatchSnapshot();
33
+ });
34
+ it('renders correctly with disabled prop as true', function () {
35
+ wrapper.setProps({
36
+ disabled: true
37
+ });
38
+ expect(wrapper).toMatchSnapshot();
39
+ });
40
+ it('renders correctly with correct as false', function () {
41
+ wrapper.setProps({
42
+ correct: false
43
+ });
44
+ expect(wrapper).toMatchSnapshot();
45
+ });
46
+ });
47
+ describe('onChange', function () {
48
+ var event = function event(value) {
49
+ return {
50
+ target: {
51
+ value: value
52
+ }
53
+ };
54
+ };
55
+
56
+ it('should be called', function () {
57
+ var e = event('1');
58
+ wrapper.simulate('change', e);
59
+ expect(onChange).toBeCalledWith(e);
60
+ });
61
+ });
62
+ });
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL19fdGVzdHNfXy9jb3JyZWN0LWlucHV0LnRlc3QuanMiXSwibmFtZXMiOlsiZGVzY3JpYmUiLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsImRlZmF1bHRQcm9wcyIsImRpc2FibGVkIiwiY29ycmVjdCIsInZhcmlhbnQiLCJ2YWx1ZSIsIndyYXBwZXIiLCJiZWZvcmVFYWNoIiwiaXQiLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiLCJzZXRQcm9wcyIsImV2ZW50IiwidGFyZ2V0IiwiZSIsInNpbXVsYXRlIiwidG9CZUNhbGxlZFdpdGgiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsUUFBUSxDQUFDLGNBQUQsRUFBaUIsWUFBTTtBQUM3QixNQUFNQyxRQUFRLEdBQUdDLElBQUksQ0FBQ0MsRUFBTCxFQUFqQjtBQUNBLE1BQU1DLFlBQVksR0FBRztBQUNuQkMsSUFBQUEsUUFBUSxFQUFFLEtBRFM7QUFFbkJDLElBQUFBLE9BQU8sRUFBRSxLQUZVO0FBR25CQyxJQUFBQSxPQUFPLEVBQUUsVUFIVTtBQUluQkMsSUFBQUEsS0FBSyxFQUFFLEtBSlk7QUFLbkJQLElBQUFBLFFBQVEsRUFBUkE7QUFMbUIsR0FBckI7QUFPQSxNQUFJUSxPQUFKO0FBRUFDLEVBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2ZELElBQUFBLE9BQU8sR0FBRyxtQ0FBUSxvQkFBQyx3QkFBRCxFQUFrQkwsWUFBbEIsQ0FBUixDQUFWO0FBQ0QsR0FGUyxDQUFWO0FBSUFKLEVBQUFBLFFBQVEsQ0FBQyxRQUFELEVBQVcsWUFBTTtBQUN2QlcsSUFBQUEsRUFBRSxDQUFDLHNDQUFELEVBQXlDLFlBQU07QUFDL0NDLE1BQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELEtBRkMsQ0FBRjtBQUlBRixJQUFBQSxFQUFFLENBQUMsOENBQUQsRUFBaUQsWUFBTTtBQUN2REYsTUFBQUEsT0FBTyxDQUFDSyxRQUFSLENBQWlCO0FBQUVULFFBQUFBLFFBQVEsRUFBRTtBQUFaLE9BQWpCO0FBQ0FPLE1BQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELEtBSEMsQ0FBRjtBQUtBRixJQUFBQSxFQUFFLENBQUMseUNBQUQsRUFBNEMsWUFBTTtBQUNsREYsTUFBQUEsT0FBTyxDQUFDSyxRQUFSLENBQWlCO0FBQUVSLFFBQUFBLE9BQU8sRUFBRTtBQUFYLE9BQWpCO0FBQ0FNLE1BQUFBLE1BQU0sQ0FBQ0gsT0FBRCxDQUFOLENBQWdCSSxlQUFoQjtBQUNELEtBSEMsQ0FBRjtBQUlELEdBZE8sQ0FBUjtBQWdCQWIsRUFBQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCLFFBQU1lLEtBQUssR0FBRyxTQUFSQSxLQUFRLENBQUNQLEtBQUQ7QUFBQSxhQUFZO0FBQ3hCUSxRQUFBQSxNQUFNLEVBQUU7QUFBRVIsVUFBQUEsS0FBSyxFQUFMQTtBQUFGO0FBRGdCLE9BQVo7QUFBQSxLQUFkOztBQUlBRyxJQUFBQSxFQUFFLENBQUMsa0JBQUQsRUFBcUIsWUFBTTtBQUMzQixVQUFNTSxDQUFDLEdBQUdGLEtBQUssQ0FBQyxHQUFELENBQWY7QUFFQU4sTUFBQUEsT0FBTyxDQUFDUyxRQUFSLENBQWlCLFFBQWpCLEVBQTJCRCxDQUEzQjtBQUVBTCxNQUFBQSxNQUFNLENBQUNYLFFBQUQsQ0FBTixDQUFpQmtCLGNBQWpCLENBQWdDRixDQUFoQztBQUNELEtBTkMsQ0FBRjtBQU9ELEdBWk8sQ0FBUjtBQWFELENBNUNPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBDb3JyZWN0SW5wdXQgZnJvbSAnLi4vY29ycmVjdC1pbnB1dCc7XG5cbmRlc2NyaWJlKCdDb3JyZWN0SW5wdXQnLCAoKSA9PiB7XG4gIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBjb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIGNvcnJlY3Q6IGZhbHNlLFxuICAgIHZhcmlhbnQ6ICdvdXRsaW5lZCcsXG4gICAgdmFsdWU6ICdDb3cnLFxuICAgIG9uQ2hhbmdlLFxuICB9O1xuICBsZXQgd3JhcHBlcjtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICB3cmFwcGVyID0gc2hhbGxvdyg8Q29ycmVjdElucHV0IHsuLi5kZWZhdWx0UHJvcHN9IC8+KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyBjb3JyZWN0bHkgd2l0aCBkZWZhdWx0IHByb3BzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggZGlzYWJsZWQgcHJvcCBhcyB0cnVlJywgKCkgPT4ge1xuICAgICAgd3JhcHBlci5zZXRQcm9wcyh7IGRpc2FibGVkOiB0cnVlIH0pO1xuICAgICAgZXhwZWN0KHdyYXBwZXIpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgY29ycmVjdGx5IHdpdGggY29ycmVjdCBhcyBmYWxzZScsICgpID0+IHtcbiAgICAgIHdyYXBwZXIuc2V0UHJvcHMoeyBjb3JyZWN0OiBmYWxzZSB9KTtcbiAgICAgIGV4cGVjdCh3cmFwcGVyKS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ29uQ2hhbmdlJywgKCkgPT4ge1xuICAgIGNvbnN0IGV2ZW50ID0gKHZhbHVlKSA9PiAoe1xuICAgICAgdGFyZ2V0OiB7IHZhbHVlIH0sXG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJlIGNhbGxlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGUgPSBldmVudCgnMScpO1xuXG4gICAgICB3cmFwcGVyLnNpbXVsYXRlKCdjaGFuZ2UnLCBlKTtcblxuICAgICAgZXhwZWN0KG9uQ2hhbmdlKS50b0JlQ2FsbGVkV2l0aChlKTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==