@pie-lib/mask-markup 1.13.46 → 1.14.1-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.
- package/CHANGELOG.md +15 -56
- package/NEXT.CHANGELOG.json +1 -0
- package/package.json +9 -5
- package/src/__tests__/__snapshots__/drag-in-the-blank.test.js.snap +316 -0
- package/src/__tests__/__snapshots__/mask.test.js.snap +55 -0
- package/src/__tests__/__snapshots__/with-mask.test.js.snap +62 -0
- package/src/__tests__/drag-in-the-blank.test.js +71 -0
- package/src/__tests__/index.test.js +39 -0
- package/src/__tests__/mask.test.js +152 -0
- package/src/__tests__/serialization.test.js +54 -0
- package/src/__tests__/utils.js +1 -0
- package/src/__tests__/with-mask.test.js +51 -0
- package/src/choices/__tests__/__snapshots__/index.test.js.snap +209 -0
- package/src/choices/__tests__/index.test.js +62 -0
- package/src/choices/choice.jsx +60 -6
- package/src/choices/index.jsx +2 -2
- package/src/components/__tests__/__snapshots__/blank.test.js.snap +111 -0
- package/src/components/__tests__/__snapshots__/correct-input.test.js.snap +64 -0
- package/src/components/__tests__/__snapshots__/dropdown.test.js.snap +133 -0
- package/src/components/__tests__/__snapshots__/input.test.js.snap +34 -0
- package/src/components/__tests__/blank.test.js +202 -0
- package/src/components/__tests__/correct-input.test.js +49 -0
- package/src/components/__tests__/dropdown.test.js +51 -0
- package/src/components/__tests__/input.test.js +50 -0
- package/src/components/blank.jsx +139 -28
- package/src/components/correct-input.jsx +6 -1
- package/src/components/dropdown.jsx +192 -71
- package/src/constructed-response.jsx +76 -18
- package/src/customizable.jsx +35 -0
- package/src/drag-in-the-blank.jsx +26 -3
- package/src/index.js +10 -1
- package/src/inline-dropdown.jsx +2 -0
- package/src/mask.jsx +30 -5
- package/src/with-mask.jsx +39 -2
- package/README.md +0 -14
- package/lib/choices/choice.js +0 -158
- package/lib/choices/choice.js.map +0 -1
- package/lib/choices/index.js +0 -127
- package/lib/choices/index.js.map +0 -1
- package/lib/componentize.js +0 -25
- package/lib/componentize.js.map +0 -1
- package/lib/components/blank.js +0 -303
- package/lib/components/blank.js.map +0 -1
- package/lib/components/correct-input.js +0 -113
- package/lib/components/correct-input.js.map +0 -1
- package/lib/components/dropdown.js +0 -216
- package/lib/components/dropdown.js.map +0 -1
- package/lib/components/input.js +0 -57
- package/lib/components/input.js.map +0 -1
- package/lib/constructed-response.js +0 -52
- package/lib/constructed-response.js.map +0 -1
- package/lib/drag-in-the-blank.js +0 -191
- package/lib/drag-in-the-blank.js.map +0 -1
- package/lib/index.js +0 -54
- package/lib/index.js.map +0 -1
- package/lib/inline-dropdown.js +0 -46
- package/lib/inline-dropdown.js.map +0 -1
- package/lib/mask.js +0 -215
- package/lib/mask.js.map +0 -1
- package/lib/serialization.js +0 -207
- package/lib/serialization.js.map +0 -1
- package/lib/with-mask.js +0 -93
- package/lib/with-mask.js.map +0 -1
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
|
-
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
|
-
var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
|
|
29
|
-
|
|
30
|
-
var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
|
|
31
|
-
|
|
32
|
-
var _correctInput = _interopRequireDefault(require("./correct-input"));
|
|
33
|
-
|
|
34
|
-
var _styles = require("@material-ui/core/styles");
|
|
35
|
-
|
|
36
|
-
var _renderUi = require("@pie-lib/render-ui");
|
|
37
|
-
|
|
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); }; }
|
|
39
|
-
|
|
40
|
-
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; } }
|
|
41
|
-
|
|
42
|
-
var Dropdown = /*#__PURE__*/function (_React$Component) {
|
|
43
|
-
(0, _inherits2["default"])(Dropdown, _React$Component);
|
|
44
|
-
|
|
45
|
-
var _super = _createSuper(Dropdown);
|
|
46
|
-
|
|
47
|
-
function Dropdown(props) {
|
|
48
|
-
var _this;
|
|
49
|
-
|
|
50
|
-
(0, _classCallCheck2["default"])(this, Dropdown);
|
|
51
|
-
_this = _super.call(this, props);
|
|
52
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "showCheckmarkAndOpen", function () {
|
|
53
|
-
_this.setState({
|
|
54
|
-
showCheckmark: true,
|
|
55
|
-
open: true
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "hideCheckmarkAndClose", function () {
|
|
59
|
-
_this.setState({
|
|
60
|
-
showCheckmark: false,
|
|
61
|
-
open: false
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
_this.state = {
|
|
65
|
-
showCheckmark: false,
|
|
66
|
-
open: false
|
|
67
|
-
};
|
|
68
|
-
return _this;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
(0, _createClass2["default"])(Dropdown, [{
|
|
72
|
-
key: "render",
|
|
73
|
-
value: function render() {
|
|
74
|
-
var _this$props = this.props,
|
|
75
|
-
classes = _this$props.classes,
|
|
76
|
-
id = _this$props.id,
|
|
77
|
-
correct = _this$props.correct,
|
|
78
|
-
disabled = _this$props.disabled,
|
|
79
|
-
value = _this$props.value,
|
|
80
|
-
_onChange = _this$props.onChange,
|
|
81
|
-
choices = _this$props.choices,
|
|
82
|
-
showCorrectAnswer = _this$props.showCorrectAnswer;
|
|
83
|
-
var _this$state = this.state,
|
|
84
|
-
showCheckmark = _this$state.showCheckmark,
|
|
85
|
-
open = _this$state.open;
|
|
86
|
-
return /*#__PURE__*/_react["default"].createElement(_Select["default"], {
|
|
87
|
-
classes: {
|
|
88
|
-
root: classes.root,
|
|
89
|
-
icon: classes.icon,
|
|
90
|
-
selectMenu: classes.selectMenu,
|
|
91
|
-
select: classes.select
|
|
92
|
-
},
|
|
93
|
-
disabled: disabled,
|
|
94
|
-
value: value || '',
|
|
95
|
-
onOpen: this.showCheckmarkAndOpen,
|
|
96
|
-
onClose: this.hideCheckmarkAndClose,
|
|
97
|
-
open: open,
|
|
98
|
-
input: /*#__PURE__*/_react["default"].createElement(_correctInput["default"], {
|
|
99
|
-
correct: showCorrectAnswer || correct
|
|
100
|
-
}),
|
|
101
|
-
MenuProps: {
|
|
102
|
-
keepMounted: true,
|
|
103
|
-
disablePortal: true
|
|
104
|
-
},
|
|
105
|
-
onChange: function onChange(e) {
|
|
106
|
-
_onChange(id, e.target.value);
|
|
107
|
-
}
|
|
108
|
-
}, (choices || []).map(function (c, index) {
|
|
109
|
-
return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
|
|
110
|
-
classes: {
|
|
111
|
-
root: classes.menuRoot,
|
|
112
|
-
selected: classes.selected
|
|
113
|
-
},
|
|
114
|
-
key: "".concat(c.label, "-").concat(index),
|
|
115
|
-
value: c.value
|
|
116
|
-
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
117
|
-
className: classes.label,
|
|
118
|
-
dangerouslySetInnerHTML: {
|
|
119
|
-
__html: c.label
|
|
120
|
-
}
|
|
121
|
-
}), showCheckmark && /*#__PURE__*/_react["default"].createElement("span", {
|
|
122
|
-
className: classes.label,
|
|
123
|
-
dangerouslySetInnerHTML: {
|
|
124
|
-
__html: c.value === value ? ' ✓' : ''
|
|
125
|
-
}
|
|
126
|
-
}));
|
|
127
|
-
}));
|
|
128
|
-
}
|
|
129
|
-
}]);
|
|
130
|
-
return Dropdown;
|
|
131
|
-
}(_react["default"].Component);
|
|
132
|
-
|
|
133
|
-
(0, _defineProperty2["default"])(Dropdown, "propTypes", {
|
|
134
|
-
id: _propTypes["default"].string,
|
|
135
|
-
value: _propTypes["default"].string,
|
|
136
|
-
disabled: _propTypes["default"].bool,
|
|
137
|
-
onChange: _propTypes["default"].func,
|
|
138
|
-
classes: _propTypes["default"].object,
|
|
139
|
-
correct: _propTypes["default"].bool,
|
|
140
|
-
choices: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
141
|
-
value: _propTypes["default"].string,
|
|
142
|
-
label: _propTypes["default"].string
|
|
143
|
-
})),
|
|
144
|
-
showCorrectAnswer: _propTypes["default"].bool
|
|
145
|
-
});
|
|
146
|
-
|
|
147
|
-
var styles = function styles() {
|
|
148
|
-
return {
|
|
149
|
-
root: {
|
|
150
|
-
color: _renderUi.color.text(),
|
|
151
|
-
backgroundColor: _renderUi.color.background(),
|
|
152
|
-
borderColor: _renderUi.color.secondaryLight(),
|
|
153
|
-
'& ul': {
|
|
154
|
-
paddingTop: 0,
|
|
155
|
-
paddingBottom: 0,
|
|
156
|
-
border: "1px solid ".concat(_renderUi.color.text()),
|
|
157
|
-
borderRadius: '5px',
|
|
158
|
-
color: _renderUi.color.text(),
|
|
159
|
-
backgroundColor: _renderUi.color.background()
|
|
160
|
-
}
|
|
161
|
-
},
|
|
162
|
-
select: {
|
|
163
|
-
'&:focus': {
|
|
164
|
-
borderRadius: '4px'
|
|
165
|
-
}
|
|
166
|
-
},
|
|
167
|
-
selectMenu: {
|
|
168
|
-
backgroundColor: _renderUi.color.background(),
|
|
169
|
-
'&:hover': {
|
|
170
|
-
borderColor: 'initial'
|
|
171
|
-
},
|
|
172
|
-
'&:focus': {
|
|
173
|
-
borderColor: 'initial'
|
|
174
|
-
}
|
|
175
|
-
},
|
|
176
|
-
icon: {
|
|
177
|
-
color: _renderUi.color.text()
|
|
178
|
-
},
|
|
179
|
-
selected: {
|
|
180
|
-
color: "".concat(_renderUi.color.text(), " !important"),
|
|
181
|
-
backgroundColor: "".concat(_renderUi.color.background(), " !important"),
|
|
182
|
-
'&:hover': {
|
|
183
|
-
color: _renderUi.color.text(),
|
|
184
|
-
backgroundColor: "".concat(_renderUi.color.secondaryLight(), " !important")
|
|
185
|
-
}
|
|
186
|
-
},
|
|
187
|
-
menuRoot: {
|
|
188
|
-
color: _renderUi.color.text(),
|
|
189
|
-
backgroundColor: _renderUi.color.background(),
|
|
190
|
-
'&:focus': {
|
|
191
|
-
color: _renderUi.color.text(),
|
|
192
|
-
backgroundColor: _renderUi.color.background()
|
|
193
|
-
},
|
|
194
|
-
'&:hover': {
|
|
195
|
-
color: _renderUi.color.text(),
|
|
196
|
-
backgroundColor: _renderUi.color.secondaryLight()
|
|
197
|
-
},
|
|
198
|
-
boxSizing: 'border-box',
|
|
199
|
-
padding: '25px',
|
|
200
|
-
'&:first-of-type': {
|
|
201
|
-
borderRadius: '3px 3px 0 0'
|
|
202
|
-
},
|
|
203
|
-
'&:last-of-type': {
|
|
204
|
-
borderRadius: '0 0 3px 3px'
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
|
-
label: {
|
|
208
|
-
fontSize: 'max(1rem, 14px)'
|
|
209
|
-
}
|
|
210
|
-
};
|
|
211
|
-
};
|
|
212
|
-
|
|
213
|
-
var _default = (0, _styles.withStyles)(styles)(Dropdown);
|
|
214
|
-
|
|
215
|
-
exports["default"] = _default;
|
|
216
|
-
//# sourceMappingURL=dropdown.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/dropdown.jsx"],"names":["Dropdown","props","setState","showCheckmark","open","state","classes","id","correct","disabled","value","onChange","choices","showCorrectAnswer","root","icon","selectMenu","select","showCheckmarkAndOpen","hideCheckmarkAndClose","keepMounted","disablePortal","e","target","map","c","index","menuRoot","selected","label","__html","React","Component","PropTypes","string","bool","func","object","arrayOf","shape","styles","color","text","backgroundColor","background","borderColor","secondaryLight","paddingTop","paddingBottom","border","borderRadius","boxSizing","padding","fontSize"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport CorrectInput from './correct-input';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\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 };\n\n constructor(props) {\n super(props);\n\n this.state = {\n showCheckmark: false,\n open: false,\n };\n }\n\n showCheckmarkAndOpen = () => {\n this.setState({\n showCheckmark: true,\n open: true,\n });\n };\n\n hideCheckmarkAndClose = () => {\n this.setState({\n showCheckmark: false,\n open: false,\n });\n };\n\n render() {\n const { classes, id, correct, disabled, value, onChange, choices, showCorrectAnswer } = this.props;\n\n const { showCheckmark, open } = this.state;\n\n return (\n <Select\n classes={{\n root: classes.root,\n icon: classes.icon,\n selectMenu: classes.selectMenu,\n select: classes.select,\n }}\n disabled={disabled}\n value={value || ''}\n onOpen={this.showCheckmarkAndOpen}\n onClose={this.hideCheckmarkAndClose}\n open={open}\n input={<CorrectInput correct={showCorrectAnswer || correct} />}\n MenuProps={{\n keepMounted: true,\n disablePortal: true,\n }}\n onChange={(e) => {\n onChange(id, e.target.value);\n }}\n >\n {(choices || []).map((c, index) => (\n <MenuItem\n classes={{ root: classes.menuRoot, selected: classes.selected }}\n key={`${c.label}-${index}`}\n value={c.value}\n >\n <span\n className={classes.label}\n dangerouslySetInnerHTML={{\n __html: c.label,\n }}\n />\n {showCheckmark && (\n <span\n className={classes.label}\n dangerouslySetInnerHTML={{ __html: c.value === value ? ' ✓' : '' }}\n />\n )}\n </MenuItem>\n ))}\n </Select>\n );\n }\n}\n\nconst styles = () => ({\n root: {\n color: color.text(),\n backgroundColor: color.background(),\n borderColor: color.secondaryLight(),\n '& ul': {\n paddingTop: 0,\n paddingBottom: 0,\n border: `1px solid ${color.text()}`,\n borderRadius: '5px',\n color: color.text(),\n backgroundColor: color.background(),\n },\n },\n select: {\n '&:focus': {\n borderRadius: '4px',\n },\n },\n selectMenu: {\n backgroundColor: color.background(),\n '&:hover': {\n borderColor: 'initial',\n },\n '&:focus': {\n borderColor: 'initial',\n },\n },\n icon: {\n color: color.text(),\n },\n selected: {\n color: `${color.text()} !important`,\n backgroundColor: `${color.background()} !important`,\n '&:hover': {\n color: color.text(),\n backgroundColor: `${color.secondaryLight()} !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.secondaryLight(),\n },\n boxSizing: 'border-box',\n padding: '25px',\n '&:first-of-type': {\n borderRadius: '3px 3px 0 0',\n },\n '&:last-of-type': {\n borderRadius: '0 0 3px 3px',\n },\n },\n label: {\n fontSize: 'max(1rem, 14px)',\n },\n});\n\nexport default withStyles(styles)(Dropdown);\n"],"file":"dropdown.js"}
|
package/lib/components/input.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
-
|
|
14
|
-
var _correctInput = _interopRequireDefault(require("./correct-input"));
|
|
15
|
-
|
|
16
|
-
var Input = function Input(_ref) {
|
|
17
|
-
var disabled = _ref.disabled,
|
|
18
|
-
correct = _ref.correct,
|
|
19
|
-
charactersLimit = _ref.charactersLimit,
|
|
20
|
-
id = _ref.id,
|
|
21
|
-
isConstructedResponse = _ref.isConstructedResponse,
|
|
22
|
-
value = _ref.value,
|
|
23
|
-
_onChange = _ref.onChange,
|
|
24
|
-
showCorrectAnswer = _ref.showCorrectAnswer,
|
|
25
|
-
spellCheck = _ref.spellCheck,
|
|
26
|
-
width = _ref.width;
|
|
27
|
-
return /*#__PURE__*/_react["default"].createElement(_correctInput["default"], {
|
|
28
|
-
disabled: disabled,
|
|
29
|
-
correct: showCorrectAnswer || correct,
|
|
30
|
-
charactersLimit: charactersLimit,
|
|
31
|
-
variant: "outlined",
|
|
32
|
-
value: value,
|
|
33
|
-
isConstructedResponse: isConstructedResponse,
|
|
34
|
-
spellCheck: spellCheck,
|
|
35
|
-
isBox: true,
|
|
36
|
-
width: width,
|
|
37
|
-
onChange: function onChange(e) {
|
|
38
|
-
_onChange(id, e.target.value);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
Input.propTypes = {
|
|
44
|
-
id: _propTypes["default"].string,
|
|
45
|
-
value: _propTypes["default"].string,
|
|
46
|
-
onChange: _propTypes["default"].func,
|
|
47
|
-
disabled: _propTypes["default"].bool,
|
|
48
|
-
spellCheck: _propTypes["default"].bool,
|
|
49
|
-
correct: _propTypes["default"].bool,
|
|
50
|
-
showCorrectAnswer: _propTypes["default"].bool,
|
|
51
|
-
charactersLimit: _propTypes["default"].number,
|
|
52
|
-
width: _propTypes["default"].number,
|
|
53
|
-
isConstructedResponse: _propTypes["default"].bool
|
|
54
|
-
};
|
|
55
|
-
var _default = Input;
|
|
56
|
-
exports["default"] = _default;
|
|
57
|
-
//# sourceMappingURL=input.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
|
-
var _input = _interopRequireDefault(require("./components/input"));
|
|
13
|
-
|
|
14
|
-
var _withMask = require("./with-mask");
|
|
15
|
-
|
|
16
|
-
// eslint-disable-next-line react/display-name
|
|
17
|
-
var _default = (0, _withMask.withMask)('input', function (props) {
|
|
18
|
-
return function (node, data, onChange) {
|
|
19
|
-
var dataset = node.data ? node.data.dataset || {} : {};
|
|
20
|
-
|
|
21
|
-
if (dataset.component === 'input') {
|
|
22
|
-
// eslint-disable-next-line react/prop-types
|
|
23
|
-
var adjustedLimit = props.adjustedLimit,
|
|
24
|
-
disabled = props.disabled,
|
|
25
|
-
feedback = props.feedback,
|
|
26
|
-
showCorrectAnswer = props.showCorrectAnswer,
|
|
27
|
-
maxLength = props.maxLength,
|
|
28
|
-
spellCheck = props.spellCheck; // the first answer is the correct one
|
|
29
|
-
// eslint-disable-next-line react/prop-types
|
|
30
|
-
|
|
31
|
-
var correctAnswer = (props.choices && dataset && props.choices[dataset.id] || [])[0];
|
|
32
|
-
var finalValue = showCorrectAnswer ? correctAnswer && correctAnswer.label : data[dataset.id] || '';
|
|
33
|
-
var width = maxLength && maxLength[dataset.id];
|
|
34
|
-
return /*#__PURE__*/_react["default"].createElement(_input["default"], {
|
|
35
|
-
key: "".concat(node.type, "-input-").concat(dataset.id),
|
|
36
|
-
correct: feedback && feedback[dataset.id] && feedback[dataset.id] === 'correct',
|
|
37
|
-
disabled: showCorrectAnswer || disabled,
|
|
38
|
-
value: finalValue,
|
|
39
|
-
id: dataset.id,
|
|
40
|
-
onChange: onChange,
|
|
41
|
-
showCorrectAnswer: showCorrectAnswer,
|
|
42
|
-
width: width,
|
|
43
|
-
charactersLimit: adjustedLimit ? width : 25,
|
|
44
|
-
isConstructedResponse: true,
|
|
45
|
-
spellCheck: spellCheck
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
exports["default"] = _default;
|
|
52
|
-
//# sourceMappingURL=constructed-response.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/constructed-response.jsx"],"names":["props","node","data","onChange","dataset","component","adjustedLimit","disabled","feedback","showCorrectAnswer","maxLength","spellCheck","correctAnswer","choices","id","finalValue","label","width","type"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AAEA;eACe,wBAAS,OAAT,EAAkB,UAACA,KAAD;AAAA,SAAW,UAACC,IAAD,EAAOC,IAAP,EAAaC,QAAb,EAA0B;AACpE,QAAMC,OAAO,GAAGH,IAAI,CAACC,IAAL,GAAYD,IAAI,CAACC,IAAL,CAAUE,OAAV,IAAqB,EAAjC,GAAsC,EAAtD;;AACA,QAAIA,OAAO,CAACC,SAAR,KAAsB,OAA1B,EAAmC;AACjC;AACA,UAAQC,aAAR,GAAwFN,KAAxF,CAAQM,aAAR;AAAA,UAAuBC,QAAvB,GAAwFP,KAAxF,CAAuBO,QAAvB;AAAA,UAAiCC,QAAjC,GAAwFR,KAAxF,CAAiCQ,QAAjC;AAAA,UAA2CC,iBAA3C,GAAwFT,KAAxF,CAA2CS,iBAA3C;AAAA,UAA8DC,SAA9D,GAAwFV,KAAxF,CAA8DU,SAA9D;AAAA,UAAyEC,UAAzE,GAAwFX,KAAxF,CAAyEW,UAAzE,CAFiC,CAIjC;AACA;;AACA,UAAMC,aAAa,GAAG,CAAEZ,KAAK,CAACa,OAAN,IAAiBT,OAAjB,IAA4BJ,KAAK,CAACa,OAAN,CAAcT,OAAO,CAACU,EAAtB,CAA7B,IAA2D,EAA5D,EAAgE,CAAhE,CAAtB;AACA,UAAMC,UAAU,GAAGN,iBAAiB,GAAGG,aAAa,IAAIA,aAAa,CAACI,KAAlC,GAA0Cd,IAAI,CAACE,OAAO,CAACU,EAAT,CAAJ,IAAoB,EAAlG;AACA,UAAMG,KAAK,GAAGP,SAAS,IAAIA,SAAS,CAACN,OAAO,CAACU,EAAT,CAApC;AAEA,0BACE,gCAAC,iBAAD;AACE,QAAA,GAAG,YAAKb,IAAI,CAACiB,IAAV,oBAAwBd,OAAO,CAACU,EAAhC,CADL;AAEE,QAAA,OAAO,EAAEN,QAAQ,IAAIA,QAAQ,CAACJ,OAAO,CAACU,EAAT,CAApB,IAAoCN,QAAQ,CAACJ,OAAO,CAACU,EAAT,CAAR,KAAyB,SAFxE;AAGE,QAAA,QAAQ,EAAEL,iBAAiB,IAAIF,QAHjC;AAIE,QAAA,KAAK,EAAEQ,UAJT;AAKE,QAAA,EAAE,EAAEX,OAAO,CAACU,EALd;AAME,QAAA,QAAQ,EAAEX,QANZ;AAOE,QAAA,iBAAiB,EAAEM,iBAPrB;AAQE,QAAA,KAAK,EAAEQ,KART;AASE,QAAA,eAAe,EAAEX,aAAa,GAAGW,KAAH,GAAW,EAT3C;AAUE,QAAA,qBAAqB,EAAE,IAVzB;AAWE,QAAA,UAAU,EAAEN;AAXd,QADF;AAeD;AACF,GA5BgC;AAAA,CAAlB,C","sourcesContent":["import React from 'react';\nimport Input from './components/input';\nimport { withMask } from './with-mask';\n\n// eslint-disable-next-line react/display-name\nexport default withMask('input', (props) => (node, data, onChange) => {\n const dataset = node.data ? node.data.dataset || {} : {};\n if (dataset.component === 'input') {\n // eslint-disable-next-line react/prop-types\n const { adjustedLimit, disabled, feedback, showCorrectAnswer, maxLength, spellCheck } = props;\n\n // the first answer is the correct one\n // eslint-disable-next-line react/prop-types\n const correctAnswer = ((props.choices && dataset && props.choices[dataset.id]) || [])[0];\n const finalValue = showCorrectAnswer ? correctAnswer && correctAnswer.label : data[dataset.id] || '';\n const width = maxLength && maxLength[dataset.id];\n\n return (\n <Input\n key={`${node.type}-input-${dataset.id}`}\n correct={feedback && feedback[dataset.id] && feedback[dataset.id] === 'correct'}\n disabled={showCorrectAnswer || disabled}\n value={finalValue}\n id={dataset.id}\n onChange={onChange}\n showCorrectAnswer={showCorrectAnswer}\n width={width}\n charactersLimit={adjustedLimit ? width : 25}\n isConstructedResponse={true}\n spellCheck={spellCheck}\n />\n );\n }\n});\n"],"file":"constructed-response.js"}
|
package/lib/drag-in-the-blank.js
DELETED
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
15
|
-
|
|
16
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
|
-
var _react = _interopRequireDefault(require("react"));
|
|
25
|
-
|
|
26
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
27
|
-
|
|
28
|
-
var _mathRendering = require("@pie-lib/math-rendering");
|
|
29
|
-
|
|
30
|
-
var _choices = _interopRequireDefault(require("./choices"));
|
|
31
|
-
|
|
32
|
-
var _blank = _interopRequireDefault(require("./components/blank"));
|
|
33
|
-
|
|
34
|
-
var _withMask = require("./with-mask");
|
|
35
|
-
|
|
36
|
-
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); }; }
|
|
37
|
-
|
|
38
|
-
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; } }
|
|
39
|
-
|
|
40
|
-
// eslint-disable-next-line react/display-name
|
|
41
|
-
var Masked = (0, _withMask.withMask)('blank', function (props) {
|
|
42
|
-
return function (node, data, onChange) {
|
|
43
|
-
var dataset = node.data ? node.data.dataset || {} : {};
|
|
44
|
-
|
|
45
|
-
if (dataset.component === 'blank') {
|
|
46
|
-
// eslint-disable-next-line react/prop-types
|
|
47
|
-
var disabled = props.disabled,
|
|
48
|
-
duplicates = props.duplicates,
|
|
49
|
-
correctResponse = props.correctResponse,
|
|
50
|
-
feedback = props.feedback,
|
|
51
|
-
showCorrectAnswer = props.showCorrectAnswer;
|
|
52
|
-
var choiceId = showCorrectAnswer ? correctResponse[dataset.id] : data[dataset.id]; // eslint-disable-next-line react/prop-types
|
|
53
|
-
|
|
54
|
-
var choice = choiceId && props.choices.find(function (c) {
|
|
55
|
-
return c.id === choiceId;
|
|
56
|
-
});
|
|
57
|
-
return /*#__PURE__*/_react["default"].createElement(_blank["default"], {
|
|
58
|
-
key: "".concat(node.type, "-").concat(dataset.id),
|
|
59
|
-
correct: showCorrectAnswer || feedback && feedback[dataset.id],
|
|
60
|
-
disabled: disabled,
|
|
61
|
-
duplicates: duplicates,
|
|
62
|
-
choice: choice,
|
|
63
|
-
id: dataset.id,
|
|
64
|
-
onChange: onChange
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
var DragInTheBlank = /*#__PURE__*/function (_React$Component) {
|
|
71
|
-
(0, _inherits2["default"])(DragInTheBlank, _React$Component);
|
|
72
|
-
|
|
73
|
-
var _super = _createSuper(DragInTheBlank);
|
|
74
|
-
|
|
75
|
-
function DragInTheBlank() {
|
|
76
|
-
var _this;
|
|
77
|
-
|
|
78
|
-
(0, _classCallCheck2["default"])(this, DragInTheBlank);
|
|
79
|
-
|
|
80
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
81
|
-
args[_key] = arguments[_key];
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
85
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getPositionDirection", function (choicePosition) {
|
|
86
|
-
var flexDirection;
|
|
87
|
-
|
|
88
|
-
switch (choicePosition) {
|
|
89
|
-
case 'left':
|
|
90
|
-
flexDirection = 'row';
|
|
91
|
-
break;
|
|
92
|
-
|
|
93
|
-
case 'right':
|
|
94
|
-
flexDirection = 'row-reverse';
|
|
95
|
-
break;
|
|
96
|
-
|
|
97
|
-
case 'below':
|
|
98
|
-
flexDirection = 'column-reverse';
|
|
99
|
-
break;
|
|
100
|
-
|
|
101
|
-
default:
|
|
102
|
-
// above
|
|
103
|
-
flexDirection = 'column';
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
return flexDirection;
|
|
108
|
-
});
|
|
109
|
-
return _this;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
(0, _createClass2["default"])(DragInTheBlank, [{
|
|
113
|
-
key: "UNSAFE_componentWillReceiveProps",
|
|
114
|
-
value: function UNSAFE_componentWillReceiveProps() {
|
|
115
|
-
if (this.rootRef) {
|
|
116
|
-
(0, _mathRendering.renderMath)(this.rootRef);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}, {
|
|
120
|
-
key: "componentDidUpdate",
|
|
121
|
-
value: function componentDidUpdate() {
|
|
122
|
-
(0, _mathRendering.renderMath)(this.rootRef);
|
|
123
|
-
}
|
|
124
|
-
}, {
|
|
125
|
-
key: "render",
|
|
126
|
-
value: function render() {
|
|
127
|
-
var _this2 = this;
|
|
128
|
-
|
|
129
|
-
var _this$props = this.props,
|
|
130
|
-
markup = _this$props.markup,
|
|
131
|
-
duplicates = _this$props.duplicates,
|
|
132
|
-
layout = _this$props.layout,
|
|
133
|
-
value = _this$props.value,
|
|
134
|
-
onChange = _this$props.onChange,
|
|
135
|
-
choicesPosition = _this$props.choicesPosition,
|
|
136
|
-
choices = _this$props.choices,
|
|
137
|
-
correctResponse = _this$props.correctResponse,
|
|
138
|
-
disabled = _this$props.disabled,
|
|
139
|
-
feedback = _this$props.feedback,
|
|
140
|
-
showCorrectAnswer = _this$props.showCorrectAnswer;
|
|
141
|
-
var choicePosition = choicesPosition || 'below';
|
|
142
|
-
var style = {
|
|
143
|
-
display: 'flex',
|
|
144
|
-
flexDirection: this.getPositionDirection(choicePosition)
|
|
145
|
-
};
|
|
146
|
-
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
147
|
-
ref: function ref(_ref) {
|
|
148
|
-
return _ref && (_this2.rootRef = _ref);
|
|
149
|
-
},
|
|
150
|
-
style: style
|
|
151
|
-
}, /*#__PURE__*/_react["default"].createElement(_choices["default"], {
|
|
152
|
-
choicePosition: choicePosition,
|
|
153
|
-
duplicates: duplicates,
|
|
154
|
-
choices: choices,
|
|
155
|
-
value: value,
|
|
156
|
-
disabled: disabled
|
|
157
|
-
}), /*#__PURE__*/_react["default"].createElement(Masked, {
|
|
158
|
-
markup: markup,
|
|
159
|
-
layout: layout,
|
|
160
|
-
value: value,
|
|
161
|
-
choices: choices,
|
|
162
|
-
onChange: onChange,
|
|
163
|
-
disabled: disabled,
|
|
164
|
-
duplicates: duplicates,
|
|
165
|
-
feedback: feedback,
|
|
166
|
-
correctResponse: correctResponse,
|
|
167
|
-
showCorrectAnswer: showCorrectAnswer
|
|
168
|
-
}));
|
|
169
|
-
}
|
|
170
|
-
}]);
|
|
171
|
-
return DragInTheBlank;
|
|
172
|
-
}(_react["default"].Component);
|
|
173
|
-
|
|
174
|
-
exports["default"] = DragInTheBlank;
|
|
175
|
-
(0, _defineProperty2["default"])(DragInTheBlank, "propTypes", {
|
|
176
|
-
markup: _propTypes["default"].string,
|
|
177
|
-
layout: _propTypes["default"].object,
|
|
178
|
-
choicesPosition: _propTypes["default"].string,
|
|
179
|
-
choices: _propTypes["default"].arrayOf(_propTypes["default"].shape({
|
|
180
|
-
label: _propTypes["default"].string,
|
|
181
|
-
value: _propTypes["default"].string
|
|
182
|
-
})),
|
|
183
|
-
value: _propTypes["default"].object,
|
|
184
|
-
onChange: _propTypes["default"].func,
|
|
185
|
-
duplicates: _propTypes["default"].bool,
|
|
186
|
-
disabled: _propTypes["default"].bool,
|
|
187
|
-
feedback: _propTypes["default"].object,
|
|
188
|
-
correctResponse: _propTypes["default"].object,
|
|
189
|
-
showCorrectAnswer: _propTypes["default"].bool
|
|
190
|
-
});
|
|
191
|
-
//# sourceMappingURL=drag-in-the-blank.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/drag-in-the-blank.jsx"],"names":["Masked","props","node","data","onChange","dataset","component","disabled","duplicates","correctResponse","feedback","showCorrectAnswer","choiceId","id","choice","choices","find","c","type","DragInTheBlank","choicePosition","flexDirection","rootRef","markup","layout","value","choicesPosition","style","display","getPositionDirection","ref","React","Component","PropTypes","string","object","arrayOf","shape","label","func","bool"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport Choices from './choices';\nimport Blank from './components/blank';\nimport { withMask } from './with-mask';\n\n// eslint-disable-next-line react/display-name\nconst Masked = withMask('blank', (props) => (node, data, onChange) => {\n const dataset = node.data ? node.data.dataset || {} : {};\n if (dataset.component === 'blank') {\n // eslint-disable-next-line react/prop-types\n const { disabled, duplicates, correctResponse, feedback, showCorrectAnswer } = props;\n const choiceId = showCorrectAnswer ? correctResponse[dataset.id] : data[dataset.id];\n // eslint-disable-next-line react/prop-types\n const choice = choiceId && props.choices.find((c) => c.id === choiceId);\n\n return (\n <Blank\n key={`${node.type}-${dataset.id}`}\n correct={showCorrectAnswer || (feedback && feedback[dataset.id])}\n disabled={disabled}\n duplicates={duplicates}\n choice={choice}\n id={dataset.id}\n onChange={onChange}\n />\n );\n }\n});\n\nexport default class DragInTheBlank extends React.Component {\n static propTypes = {\n markup: PropTypes.string,\n layout: PropTypes.object,\n choicesPosition: PropTypes.string,\n choices: PropTypes.arrayOf(PropTypes.shape({ label: PropTypes.string, value: PropTypes.string })),\n value: PropTypes.object,\n onChange: PropTypes.func,\n duplicates: PropTypes.bool,\n disabled: PropTypes.bool,\n feedback: PropTypes.object,\n correctResponse: PropTypes.object,\n showCorrectAnswer: PropTypes.bool,\n };\n\n UNSAFE_componentWillReceiveProps() {\n if (this.rootRef) {\n renderMath(this.rootRef);\n }\n }\n\n componentDidUpdate() {\n renderMath(this.rootRef);\n }\n\n getPositionDirection = (choicePosition) => {\n let flexDirection;\n\n switch (choicePosition) {\n case 'left':\n flexDirection = 'row';\n break;\n case 'right':\n flexDirection = 'row-reverse';\n break;\n case 'below':\n flexDirection = 'column-reverse';\n break;\n default:\n // above\n flexDirection = 'column';\n break;\n }\n\n return flexDirection;\n };\n\n render() {\n const {\n markup,\n duplicates,\n layout,\n value,\n onChange,\n choicesPosition,\n choices,\n correctResponse,\n disabled,\n feedback,\n showCorrectAnswer,\n } = this.props;\n\n const choicePosition = choicesPosition || 'below';\n const style = {\n display: 'flex',\n flexDirection: this.getPositionDirection(choicePosition),\n };\n\n return (\n <div ref={(ref) => ref && (this.rootRef = ref)} style={style}>\n <Choices\n choicePosition={choicePosition}\n duplicates={duplicates}\n choices={choices}\n value={value}\n disabled={disabled}\n />\n <Masked\n markup={markup}\n layout={layout}\n value={value}\n choices={choices}\n onChange={onChange}\n disabled={disabled}\n duplicates={duplicates}\n feedback={feedback}\n correctResponse={correctResponse}\n showCorrectAnswer={showCorrectAnswer}\n />\n </div>\n );\n }\n}\n"],"file":"drag-in-the-blank.js"}
|
package/lib/index.js
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
Object.defineProperty(exports, "ConstructedResponse", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function get() {
|
|
11
|
-
return _constructedResponse["default"];
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
Object.defineProperty(exports, "DragInTheBlank", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function get() {
|
|
17
|
-
return _dragInTheBlank["default"];
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(exports, "InlineDropdown", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: function get() {
|
|
23
|
-
return _inlineDropdown["default"];
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
Object.defineProperty(exports, "buildLayoutFromMarkup", {
|
|
27
|
-
enumerable: true,
|
|
28
|
-
get: function get() {
|
|
29
|
-
return _withMask.buildLayoutFromMarkup;
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(exports, "componentize", {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function get() {
|
|
35
|
-
return _componentize["default"];
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
Object.defineProperty(exports, "withMask", {
|
|
39
|
-
enumerable: true,
|
|
40
|
-
get: function get() {
|
|
41
|
-
return _withMask.withMask;
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
var _withMask = require("./with-mask");
|
|
46
|
-
|
|
47
|
-
var _dragInTheBlank = _interopRequireDefault(require("./drag-in-the-blank"));
|
|
48
|
-
|
|
49
|
-
var _constructedResponse = _interopRequireDefault(require("./constructed-response"));
|
|
50
|
-
|
|
51
|
-
var _inlineDropdown = _interopRequireDefault(require("./inline-dropdown"));
|
|
52
|
-
|
|
53
|
-
var _componentize = _interopRequireDefault(require("./componentize"));
|
|
54
|
-
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import { withMask, buildLayoutFromMarkup } from './with-mask';\nimport DragInTheBlank from './drag-in-the-blank';\nimport ConstructedResponse from './constructed-response';\nimport InlineDropdown from './inline-dropdown';\nimport componentize from './componentize';\n\nexport { withMask, buildLayoutFromMarkup, DragInTheBlank, ConstructedResponse, InlineDropdown, componentize };\n"],"file":"index.js"}
|