@pie-element/multiple-choice 8.14.0 → 8.14.1-next.1

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 (42) hide show
  1. package/configure/package.json +1 -1
  2. package/controller/package.json +1 -1
  3. package/package.json +3 -3
  4. package/configure/lib/defaults.js +0 -204
  5. package/configure/lib/defaults.js.map +0 -1
  6. package/configure/lib/index.js +0 -248
  7. package/configure/lib/index.js.map +0 -1
  8. package/configure/lib/main.js +0 -628
  9. package/configure/lib/main.js.map +0 -1
  10. package/configure/lib/utils.js +0 -18
  11. package/configure/lib/utils.js.map +0 -1
  12. package/controller/lib/defaults.js +0 -18
  13. package/controller/lib/defaults.js.map +0 -1
  14. package/controller/lib/index.js +0 -335
  15. package/controller/lib/index.js.map +0 -1
  16. package/controller/lib/utils.js +0 -36
  17. package/controller/lib/utils.js.map +0 -1
  18. package/lib/choice-input.js +0 -332
  19. package/lib/choice-input.js.map +0 -1
  20. package/lib/choice.js +0 -165
  21. package/lib/choice.js.map +0 -1
  22. package/lib/feedback-tick.js +0 -174
  23. package/lib/feedback-tick.js.map +0 -1
  24. package/lib/index.js +0 -156
  25. package/lib/index.js.map +0 -1
  26. package/lib/main.js +0 -96
  27. package/lib/main.js.map +0 -1
  28. package/lib/multiple-choice.js +0 -359
  29. package/lib/multiple-choice.js.map +0 -1
  30. package/lib/print.js +0 -129
  31. package/lib/print.js.map +0 -1
  32. package/lib/session-updater.js +0 -35
  33. package/lib/session-updater.js.map +0 -1
  34. package/module/configure.js +0 -11110
  35. package/module/controller.js +0 -20843
  36. package/module/demo.js +0 -78
  37. package/module/element.js +0 -9747
  38. package/module/index.html +0 -21
  39. package/module/manifest.json +0 -14
  40. package/module/print-demo.js +0 -116
  41. package/module/print.html +0 -18
  42. package/module/print.js +0 -9709
@@ -1,332 +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"] = exports.StyledRadio = exports.StyledFormControlLabel = exports.StyledCheckbox = exports.ChoiceInput = 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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _FormControlLabel = _interopRequireDefault(require("@material-ui/core/FormControlLabel"));
27
-
28
- var _react = _interopRequireDefault(require("react"));
29
-
30
- var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
34
- var _Checkbox = _interopRequireDefault(require("@material-ui/core/Checkbox"));
35
-
36
- var _renderUi = require("@pie-lib/pie-toolbox/render-ui");
37
-
38
- var _feedbackTick = _interopRequireDefault(require("./feedback-tick"));
39
-
40
- var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
41
-
42
- var _classnames = _interopRequireDefault(require("classnames"));
43
-
44
- 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); }; }
45
-
46
- 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; } }
47
-
48
- 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; }
49
-
50
- 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; }
51
-
52
- var CLASS_NAME = 'multiple-choice-component';
53
-
54
- var styleSheet = function styleSheet(theme) {
55
- return {
56
- row: {
57
- display: 'flex',
58
- alignItems: 'center',
59
- backgroundColor: _renderUi.color.background()
60
- },
61
- checkboxHolder: {
62
- display: 'flex',
63
- alignItems: 'center',
64
- backgroundColor: _renderUi.color.background(),
65
- flex: 1,
66
- '& label': {
67
- color: _renderUi.color.text(),
68
- '& > span': {
69
- fontSize: 'inherit'
70
- }
71
- }
72
- },
73
- horizontalLayout: (0, _defineProperty2["default"])({}, "& .".concat(CLASS_NAME), {
74
- paddingRight: theme.spacing.unit
75
- })
76
- };
77
- };
78
-
79
- var formStyleSheet = {
80
- label: {
81
- color: "".concat(_renderUi.color.text(), " !important"),
82
- //'var(--choice-input-color, black)'
83
- backgroundColor: _renderUi.color.background()
84
- }
85
- };
86
- var StyledFormControlLabel = (0, _styles.withStyles)(formStyleSheet, {
87
- name: 'FormControlLabel'
88
- })(function (props) {
89
- return /*#__PURE__*/_react["default"].createElement(_FormControlLabel["default"], (0, _extends2["default"])({}, props, {
90
- classes: {
91
- label: props.classes.label
92
- }
93
- }));
94
- });
95
- exports.StyledFormControlLabel = StyledFormControlLabel;
96
-
97
- var colorStyle = function colorStyle(varName, fallback) {
98
- return (0, _defineProperty2["default"])({}, "&.".concat(CLASS_NAME), {
99
- color: "var(--choice-input-".concat(varName, ", ").concat(fallback, ") !important")
100
- });
101
- };
102
-
103
- var inputStyles = {
104
- 'correct-root': colorStyle('correct-color', _renderUi.color.text()),
105
- 'correct-checked': colorStyle('correct-selected-color', _renderUi.color.correct()),
106
- //green[500]),
107
- 'correct-disabled': colorStyle('correct-disabled-color', _renderUi.color.disabled()),
108
- //'grey'),
109
- 'incorrect-root': colorStyle('incorrect-color', _renderUi.color.incorrect()),
110
- 'incorrect-checked': colorStyle('incorrect-checked', _renderUi.color.incorrect()),
111
- //orange[500]),
112
- 'incorrect-disabled': colorStyle('incorrect-disabled-color', _renderUi.color.disabled()),
113
- root: _objectSpread(_objectSpread({}, colorStyle('color', _renderUi.color.text())), {}, {
114
- '&:hover': {
115
- color: "".concat(_renderUi.color.primaryLight(), " !important")
116
- }
117
- }),
118
- checked: colorStyle('selected-color', _renderUi.color.primary()),
119
- disabled: _objectSpread(_objectSpread({}, colorStyle('disabled-color', _renderUi.color.text())), {}, {
120
- opacity: 0.6,
121
- cursor: 'not-allowed !important',
122
- pointerEvents: 'initial !important'
123
- })
124
- };
125
- var StyledCheckbox = (0, _styles.withStyles)(inputStyles)(function (props) {
126
- var correctness = props.correctness,
127
- classes = props.classes,
128
- checked = props.checked,
129
- onChange = props.onChange,
130
- disabled = props.disabled,
131
- accessibility = props.accessibility,
132
- value = props.value,
133
- id = props.id;
134
-
135
- var key = function key(k) {
136
- return correctness ? "".concat(correctness, "-").concat(k) : k;
137
- };
138
-
139
- var resolved = {
140
- root: classes[key('root')],
141
- checked: classes[key('checked')],
142
- disabled: classes[key('disabled')]
143
- };
144
- var miniProps = {
145
- checked: checked,
146
- onChange: onChange,
147
- disabled: disabled,
148
- value: value
149
- };
150
- return /*#__PURE__*/_react["default"].createElement(_Checkbox["default"], (0, _extends2["default"])({
151
- id: id,
152
- "aria-label": accessibility,
153
- "aria-checked": checked
154
- }, miniProps, {
155
- className: CLASS_NAME,
156
- classes: {
157
- root: resolved.root,
158
- checked: resolved.checked,
159
- disabled: "".concat(correctness ? '' : resolved.disabled)
160
- }
161
- }));
162
- });
163
- exports.StyledCheckbox = StyledCheckbox;
164
- var StyledRadio = (0, _styles.withStyles)(inputStyles)(function (props) {
165
- var correctness = props.correctness,
166
- classes = props.classes,
167
- checked = props.checked,
168
- onChange = props.onChange,
169
- disabled = props.disabled,
170
- accessibility = props.accessibility,
171
- value = props.value,
172
- id = props.id;
173
-
174
- var key = function key(k) {
175
- return correctness ? "".concat(correctness, "-").concat(k) : k;
176
- };
177
-
178
- var resolved = {
179
- root: classes[key('root')],
180
- checked: classes[key('checked')],
181
- disabled: classes[key('disabled')]
182
- };
183
- var miniProps = {
184
- checked: checked,
185
- onChange: onChange,
186
- disabled: disabled,
187
- value: value
188
- };
189
- return /*#__PURE__*/_react["default"].createElement(_Radio["default"], (0, _extends2["default"])({
190
- id: id,
191
- "aria-label": accessibility,
192
- "aria-checked": checked
193
- }, miniProps, {
194
- className: CLASS_NAME,
195
- classes: {
196
- root: resolved.root,
197
- checked: resolved.checked,
198
- disabled: "".concat(correctness ? '' : resolved.disabled)
199
- }
200
- }));
201
- });
202
- exports.StyledRadio = StyledRadio;
203
-
204
- var ChoiceInput = /*#__PURE__*/function (_React$Component) {
205
- (0, _inherits2["default"])(ChoiceInput, _React$Component);
206
-
207
- var _super = _createSuper(ChoiceInput);
208
-
209
- function ChoiceInput(props) {
210
- var _this;
211
-
212
- (0, _classCallCheck2["default"])(this, ChoiceInput);
213
- _this = _super.call(this, props);
214
- _this.onToggleChoice = _this.onToggleChoice.bind((0, _assertThisInitialized2["default"])(_this));
215
- _this.choiceId = _this.generateChoiceId();
216
- return _this;
217
- }
218
-
219
- (0, _createClass2["default"])(ChoiceInput, [{
220
- key: "onToggleChoice",
221
- value: function onToggleChoice(event) {
222
- this.props.onChange(event);
223
- this.props.updateSession({
224
- value: this.props.value,
225
- selected: !this.props.checked
226
- });
227
- }
228
- }, {
229
- key: "generateChoiceId",
230
- value: function generateChoiceId() {
231
- return 'choice-' + (Math.random() * 10000).toFixed();
232
- }
233
- }, {
234
- key: "render",
235
- value: function render() {
236
- var _this$props = this.props,
237
- choiceMode = _this$props.choiceMode,
238
- disabled = _this$props.disabled,
239
- displayKey = _this$props.displayKey,
240
- feedback = _this$props.feedback,
241
- label = _this$props.label,
242
- correctness = _this$props.correctness,
243
- classes = _this$props.classes,
244
- className = _this$props.className,
245
- rationale = _this$props.rationale,
246
- accessibility = _this$props.accessibility,
247
- hideTick = _this$props.hideTick,
248
- isEvaluateMode = _this$props.isEvaluateMode,
249
- choicesLayout = _this$props.choicesLayout,
250
- value = _this$props.value,
251
- checked = _this$props.checked;
252
- var Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;
253
- var classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';
254
- var holderClassNames = (0, _classnames["default"])(classes.checkboxHolder, (0, _defineProperty2["default"])({}, classes.horizontalLayout, choicesLayout === 'horizontal'));
255
-
256
- var choicelabel = /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, displayKey ? /*#__PURE__*/_react["default"].createElement("span", {
257
- className: classes.row
258
- }, displayKey, ".", "\xA0", /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
259
- className: "label",
260
- prompt: label,
261
- tagName: "span"
262
- })) : /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
263
- className: "label",
264
- prompt: label,
265
- tagName: "span"
266
- }));
267
-
268
- return /*#__PURE__*/_react["default"].createElement("div", {
269
- className: (0, _classnames["default"])(className, 'corespring-' + classSuffix, 'choice-input')
270
- }, /*#__PURE__*/_react["default"].createElement("div", {
271
- className: classes.row
272
- }, !hideTick && isEvaluateMode && /*#__PURE__*/_react["default"].createElement(_feedbackTick["default"], {
273
- correctness: correctness
274
- }), /*#__PURE__*/_react["default"].createElement("div", {
275
- className: (0, _classnames["default"])(holderClassNames, 'checkbox-holder')
276
- }, /*#__PURE__*/_react["default"].createElement(StyledFormControlLabel, {
277
- label: choicelabel,
278
- value: value,
279
- htmlFor: this.choiceId,
280
- control: /*#__PURE__*/_react["default"].createElement(Tag, {
281
- accessibility: accessibility,
282
- disabled: disabled,
283
- checked: checked,
284
- correctness: correctness,
285
- value: value,
286
- id: this.choiceId,
287
- onChange: this.onToggleChoice
288
- })
289
- }))), rationale && /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
290
- className: "rationale",
291
- defaultClassName: "rationale",
292
- prompt: rationale
293
- }), /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
294
- feedback: feedback,
295
- correctness: correctness
296
- }));
297
- }
298
- }]);
299
- return ChoiceInput;
300
- }(_react["default"].Component);
301
-
302
- exports.ChoiceInput = ChoiceInput;
303
- (0, _defineProperty2["default"])(ChoiceInput, "propTypes", {
304
- choiceMode: _propTypes["default"].oneOf(['radio', 'checkbox']),
305
- displayKey: _propTypes["default"].string.isRequired,
306
- checked: _propTypes["default"].bool.isRequired,
307
- correctness: _propTypes["default"].string,
308
- disabled: _propTypes["default"].bool.isRequired,
309
- feedback: _propTypes["default"].string,
310
- label: _propTypes["default"].string.isRequired,
311
- rationale: _propTypes["default"].string,
312
- accessibility: _propTypes["default"].string,
313
- onChange: _propTypes["default"].func.isRequired,
314
- value: _propTypes["default"].string.isRequired,
315
- classes: _propTypes["default"].object,
316
- className: _propTypes["default"].string,
317
- hideTick: _propTypes["default"].bool,
318
- isEvaluateMode: _propTypes["default"].bool,
319
- choicesLayout: _propTypes["default"].oneOf(['vertical', 'grid', 'horizontal']),
320
- updateSession: _propTypes["default"].func
321
- });
322
- (0, _defineProperty2["default"])(ChoiceInput, "defaultProps", {
323
- rationale: null,
324
- accessibility: null,
325
- checked: false,
326
- isEvaluateMode: false
327
- });
328
-
329
- var _default = (0, _styles.withStyles)(styleSheet)(ChoiceInput);
330
-
331
- exports["default"] = _default;
332
- //# sourceMappingURL=choice-input.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/choice-input.jsx"],"names":["CLASS_NAME","styleSheet","theme","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","fontSize","horizontalLayout","paddingRight","spacing","unit","formStyleSheet","label","StyledFormControlLabel","name","props","classes","colorStyle","varName","fallback","inputStyles","correct","disabled","incorrect","root","primaryLight","checked","primary","opacity","cursor","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","value","id","key","k","resolved","miniProps","StyledRadio","ChoiceInput","onToggleChoice","bind","choiceId","generateChoiceId","event","updateSession","selected","Math","random","toFixed","choiceMode","displayKey","feedback","className","rationale","hideTick","isEvaluateMode","choicesLayout","Tag","classSuffix","holderClassNames","choicelabel","React","Component","PropTypes","oneOf","string","isRequired","bool","func","object"],"mappings":"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","sourcesContent":["import FormControlLabel from '@material-ui/core/FormControlLabel';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport Checkbox from '@material-ui/core/Checkbox';\nimport { Feedback, color, PreviewPrompt } from '@pie-lib/pie-toolbox/render-ui';\nimport FeedbackTick from './feedback-tick';\nimport Radio from '@material-ui/core/Radio';\nimport classNames from 'classnames';\n\nconst CLASS_NAME = 'multiple-choice-component';\n\nconst styleSheet = (theme) => ({\n row: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n },\n checkboxHolder: {\n display: 'flex',\n alignItems: 'center',\n backgroundColor: color.background(),\n flex: 1,\n '& label': {\n color: color.text(),\n '& > span':{\n fontSize: 'inherit',\n }\n },\n },\n horizontalLayout: {\n [`& .${CLASS_NAME}`]: {\n paddingRight: theme.spacing.unit,\n },\n },\n});\n\nconst formStyleSheet = {\n label: {\n color: `${color.text()} !important`, //'var(--choice-input-color, black)'\n backgroundColor: color.background(),\n },\n};\n\nexport const StyledFormControlLabel = withStyles(formStyleSheet, {\n name: 'FormControlLabel',\n})((props) => <FormControlLabel {...props} classes={{ label: props.classes.label }} />);\n\nconst colorStyle = (varName, fallback) => ({\n [`&.${CLASS_NAME}`]: {\n color: `var(--choice-input-${varName}, ${fallback}) !important`,\n },\n});\n\nconst inputStyles = {\n 'correct-root': colorStyle('correct-color', color.text()),\n 'correct-checked': colorStyle('correct-selected-color', color.correct()), //green[500]),\n 'correct-disabled': colorStyle('correct-disabled-color', color.disabled()), //'grey'),\n 'incorrect-root': colorStyle('incorrect-color', color.incorrect()),\n 'incorrect-checked': colorStyle('incorrect-checked', color.incorrect()), //orange[500]),\n 'incorrect-disabled': colorStyle('incorrect-disabled-color', color.disabled()),\n root: {\n ...colorStyle('color', color.text()),\n '&:hover': { color: `${color.primaryLight()} !important` },\n },\n checked: colorStyle('selected-color', color.primary()),\n disabled: {\n ...colorStyle('disabled-color', color.text()),\n opacity: 0.6,\n cursor: 'not-allowed !important',\n pointerEvents: 'initial !important',\n },\n};\n\nexport const StyledCheckbox = withStyles(inputStyles)((props) => {\n const { correctness, classes, checked, onChange, disabled, accessibility, value, id } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled, value };\n\n return (\n <Checkbox\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n disabled: `${correctness ? '' : resolved.disabled}`,\n }}\n />\n );\n});\n\nexport const StyledRadio = withStyles(inputStyles)((props) => {\n const { correctness, classes, checked, onChange, disabled, accessibility, value, id } = props;\n const key = (k) => (correctness ? `${correctness}-${k}` : k);\n\n const resolved = {\n root: classes[key('root')],\n checked: classes[key('checked')],\n disabled: classes[key('disabled')],\n };\n\n const miniProps = { checked, onChange, disabled, value };\n\n return (\n <Radio\n id={id}\n aria-label={accessibility}\n aria-checked={checked}\n {...miniProps}\n className={CLASS_NAME}\n classes={{\n root: resolved.root,\n checked: resolved.checked,\n disabled: `${correctness ? '' : resolved.disabled}`,\n }}\n />\n );\n});\n\nexport class ChoiceInput extends React.Component {\n static propTypes = {\n choiceMode: PropTypes.oneOf(['radio', 'checkbox']),\n displayKey: PropTypes.string.isRequired,\n checked: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n disabled: PropTypes.bool.isRequired,\n feedback: PropTypes.string,\n label: PropTypes.string.isRequired,\n rationale: PropTypes.string,\n accessibility: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n value: PropTypes.string.isRequired,\n classes: PropTypes.object,\n className: PropTypes.string,\n hideTick: PropTypes.bool,\n isEvaluateMode: PropTypes.bool,\n choicesLayout: PropTypes.oneOf(['vertical', 'grid', 'horizontal']),\n updateSession: PropTypes.func,\n };\n\n static defaultProps = {\n rationale: null,\n accessibility: null,\n checked: false,\n isEvaluateMode: false,\n };\n\n constructor(props) {\n super(props);\n this.onToggleChoice = this.onToggleChoice.bind(this);\n this.choiceId = this.generateChoiceId();\n }\n\n onToggleChoice(event) {\n this.props.onChange(event);\n this.props.updateSession({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n generateChoiceId() {\n return 'choice-' + (Math.random() * 10000).toFixed();\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n choicesLayout,\n value,\n checked,\n } = this.props;\n\n const Tag = choiceMode === 'checkbox' ? StyledCheckbox : StyledRadio;\n const classSuffix = choiceMode === 'checkbox' ? 'checkbox' : 'radio-button';\n\n const holderClassNames = classNames(classes.checkboxHolder, {\n [classes.horizontalLayout]: choicesLayout === 'horizontal',\n });\n\n const choicelabel = (\n <>\n {displayKey ? (\n <span className={classes.row}>\n {displayKey}.{'\\u00A0'}\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n </span>\n ) : (\n <PreviewPrompt className=\"label\" prompt={label} tagName=\"span\" />\n )}\n </>\n );\n\n return (\n <div className={classNames(className, 'corespring-' + classSuffix, 'choice-input')}>\n <div className={classes.row}>\n {!hideTick && isEvaluateMode && <FeedbackTick correctness={correctness} />}\n <div className={classNames(holderClassNames, 'checkbox-holder')}>\n <StyledFormControlLabel\n label={choicelabel}\n value={value}\n htmlFor={this.choiceId}\n control={\n <Tag\n accessibility={accessibility}\n disabled={disabled}\n checked={checked}\n correctness={correctness}\n value={value}\n id={this.choiceId}\n onChange={this.onToggleChoice}\n />\n }\n />\n </div>\n </div>\n {rationale && <PreviewPrompt className=\"rationale\" defaultClassName=\"rationale\" prompt={rationale} />}\n <Feedback feedback={feedback} correctness={correctness} />\n </div>\n );\n }\n}\n\nexport default withStyles(styleSheet)(ChoiceInput);\n"],"file":"choice-input.js"}
package/lib/choice.js DELETED
@@ -1,165 +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"] = exports.Choice = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
- var _react = _interopRequireDefault(require("react"));
27
-
28
- var _propTypes = _interopRequireDefault(require("prop-types"));
29
-
30
- var _styles = require("@material-ui/core/styles");
31
-
32
- var _classnames = _interopRequireDefault(require("classnames"));
33
-
34
- var _choiceInput = _interopRequireDefault(require("./choice-input"));
35
-
36
- 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; }
37
-
38
- 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; }
39
-
40
- 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
-
42
- 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; } }
43
-
44
- var Choice = /*#__PURE__*/function (_React$Component) {
45
- (0, _inherits2["default"])(Choice, _React$Component);
46
-
47
- var _super = _createSuper(Choice);
48
-
49
- function Choice() {
50
- var _this;
51
-
52
- (0, _classCallCheck2["default"])(this, Choice);
53
-
54
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
55
- args[_key] = arguments[_key];
56
- }
57
-
58
- _this = _super.call.apply(_super, [this].concat(args));
59
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (choice) {
60
- var _this$props = _this.props,
61
- disabled = _this$props.disabled,
62
- onChoiceChanged = _this$props.onChoiceChanged;
63
-
64
- if (!disabled) {
65
- onChoiceChanged(choice);
66
- }
67
- });
68
- return _this;
69
- }
70
-
71
- (0, _createClass2["default"])(Choice, [{
72
- key: "render",
73
- value: function render() {
74
- var _classNames;
75
-
76
- var _this$props2 = this.props,
77
- choice = _this$props2.choice,
78
- index = _this$props2.index,
79
- choicesLength = _this$props2.choicesLength,
80
- showCorrect = _this$props2.showCorrect,
81
- isEvaluateMode = _this$props2.isEvaluateMode,
82
- choiceMode = _this$props2.choiceMode,
83
- disabled = _this$props2.disabled,
84
- checked = _this$props2.checked,
85
- correctness = _this$props2.correctness,
86
- displayKey = _this$props2.displayKey,
87
- classes = _this$props2.classes,
88
- choicesLayout = _this$props2.choicesLayout,
89
- gridColumns = _this$props2.gridColumns,
90
- updateSession = _this$props2.updateSession;
91
- var choiceClass = 'choice' + (index === choicesLength - 1 ? ' last' : '');
92
- var feedback = !isEvaluateMode || showCorrect ? '' : choice.feedback;
93
-
94
- var choiceProps = _objectSpread(_objectSpread({}, choice), {}, {
95
- checked: checked,
96
- choiceMode: choiceMode,
97
- disabled: disabled,
98
- feedback: feedback,
99
- correctness: correctness,
100
- displayKey: displayKey,
101
- index: index,
102
- choicesLayout: choicesLayout,
103
- gridColumns: gridColumns,
104
- updateSession: updateSession,
105
- onChange: this.onChange,
106
- isEvaluateMode: isEvaluateMode
107
- });
108
-
109
- var names = (0, _classnames["default"])(classes.choice, (_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.noBorder, index === choicesLength - 1 || choicesLayout !== 'vertical'), (0, _defineProperty2["default"])(_classNames, classes.horizontalLayout, choicesLayout === 'horizontal'), _classNames));
110
- return /*#__PURE__*/_react["default"].createElement("div", {
111
- className: choiceClass,
112
- key: index
113
- }, /*#__PURE__*/_react["default"].createElement(_choiceInput["default"], (0, _extends2["default"])({}, choiceProps, {
114
- className: names
115
- })));
116
- }
117
- }]);
118
- return Choice;
119
- }(_react["default"].Component);
120
-
121
- exports.Choice = Choice;
122
- (0, _defineProperty2["default"])(Choice, "propTypes", {
123
- updateSession: _propTypes["default"].func
124
- });
125
- Choice.propTypes = {
126
- choiceMode: _propTypes["default"].oneOf(['radio', 'checkbox']),
127
- choice: _propTypes["default"].object,
128
- disabled: _propTypes["default"].bool.isRequired,
129
- onChoiceChanged: _propTypes["default"].func,
130
- classes: _propTypes["default"].object.isRequired,
131
- index: _propTypes["default"].number,
132
- choicesLength: _propTypes["default"].number,
133
- showCorrect: _propTypes["default"].bool,
134
- isEvaluateMode: _propTypes["default"].bool,
135
- checked: _propTypes["default"].bool,
136
- correctness: _propTypes["default"].string,
137
- displayKey: _propTypes["default"].string,
138
- choicesLayout: _propTypes["default"].oneOf(['vertical', 'grid', 'horizontal']),
139
- gridColumns: _propTypes["default"].string
140
- };
141
-
142
- var _default = (0, _styles.withStyles)(function (theme) {
143
- return {
144
- choice: {
145
- paddingTop: theme.spacing.unit * 2.5,
146
- paddingBottom: theme.spacing.unit + 2,
147
- borderBottom: "1px solid ".concat(theme.palette.grey[300])
148
- },
149
- noBorder: {
150
- borderBottom: 'none'
151
- },
152
- horizontalLayout: {
153
- paddingRight: theme.spacing.unit * 2.5,
154
- '& label': {
155
- marginRight: theme.spacing.unit // '& span:first-child': {
156
- // paddingRight: 0
157
- // }
158
-
159
- }
160
- }
161
- };
162
- })(Choice);
163
-
164
- exports["default"] = _default;
165
- //# sourceMappingURL=choice.js.map
package/lib/choice.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/choice.jsx"],"names":["Choice","choice","props","disabled","onChoiceChanged","index","choicesLength","showCorrect","isEvaluateMode","choiceMode","checked","correctness","displayKey","classes","choicesLayout","gridColumns","updateSession","choiceClass","feedback","choiceProps","onChange","names","noBorder","horizontalLayout","React","Component","PropTypes","func","propTypes","oneOf","object","bool","isRequired","number","string","theme","paddingTop","spacing","unit","paddingBottom","borderBottom","palette","grey","paddingRight","marginRight"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport ChoiceInput from './choice-input';\n\nexport class Choice extends React.Component {\n static propTypes = {\n updateSession: PropTypes.func,\n };\n\n onChange = (choice) => {\n const { disabled, onChoiceChanged } = this.props;\n\n if (!disabled) {\n onChoiceChanged(choice);\n }\n };\n\n render() {\n const {\n choice,\n index,\n choicesLength,\n showCorrect,\n isEvaluateMode,\n choiceMode,\n disabled,\n checked,\n correctness,\n displayKey,\n classes,\n choicesLayout,\n gridColumns,\n updateSession,\n } = this.props;\n const choiceClass = 'choice' + (index === choicesLength - 1 ? ' last' : '');\n\n const feedback = !isEvaluateMode || showCorrect ? '' : choice.feedback;\n\n const choiceProps = {\n ...choice,\n checked,\n choiceMode,\n disabled,\n feedback,\n correctness,\n displayKey,\n index,\n choicesLayout,\n gridColumns,\n updateSession,\n onChange: this.onChange,\n isEvaluateMode,\n };\n\n const names = classNames(classes.choice, {\n [classes.noBorder]: index === choicesLength - 1 || choicesLayout !== 'vertical',\n [classes.horizontalLayout]: choicesLayout === 'horizontal',\n });\n\n return (\n <div className={choiceClass} key={index}>\n <ChoiceInput {...choiceProps} className={names} />\n </div>\n );\n }\n}\n\nChoice.propTypes = {\n choiceMode: PropTypes.oneOf(['radio', 'checkbox']),\n choice: PropTypes.object,\n disabled: PropTypes.bool.isRequired,\n onChoiceChanged: PropTypes.func,\n classes: PropTypes.object.isRequired,\n index: PropTypes.number,\n choicesLength: PropTypes.number,\n showCorrect: PropTypes.bool,\n isEvaluateMode: PropTypes.bool,\n checked: PropTypes.bool,\n correctness: PropTypes.string,\n displayKey: PropTypes.string,\n choicesLayout: PropTypes.oneOf(['vertical', 'grid', 'horizontal']),\n gridColumns: PropTypes.string,\n};\n\nexport default withStyles((theme) => ({\n choice: {\n paddingTop: theme.spacing.unit * 2.5,\n paddingBottom: theme.spacing.unit + 2,\n borderBottom: `1px solid ${theme.palette.grey[300]}`,\n },\n noBorder: {\n borderBottom: 'none',\n },\n horizontalLayout: {\n paddingRight: theme.spacing.unit * 2.5,\n '& label': {\n marginRight: theme.spacing.unit,\n // '& span:first-child': {\n // paddingRight: 0\n // }\n },\n },\n}))(Choice);\n"],"file":"choice.js"}