@pie-element/multiple-choice 7.6.1-beta.3 → 7.6.1-beta.4
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/configure/lib/defaults.js +119 -0
- package/configure/lib/defaults.js.map +1 -0
- package/configure/lib/index.js +168 -0
- package/configure/lib/index.js.map +1 -0
- package/configure/lib/main.js +546 -0
- package/configure/lib/main.js.map +1 -0
- package/configure/lib/utils.js +16 -0
- package/configure/lib/utils.js.map +1 -0
- package/controller/lib/defaults.js +18 -0
- package/controller/lib/defaults.js.map +1 -0
- package/controller/lib/index.js +249 -0
- package/controller/lib/index.js.map +1 -0
- package/controller/lib/utils.js +28 -0
- package/controller/lib/utils.js.map +1 -0
- package/lib/choice-input.js +259 -0
- package/lib/choice-input.js.map +1 -0
- package/lib/choice.js +125 -0
- package/lib/choice.js.map +1 -0
- package/lib/feedback-tick.js +148 -0
- package/lib/feedback-tick.js.map +1 -0
- package/lib/index.js +117 -0
- package/lib/index.js.map +1 -0
- package/lib/main.js +78 -0
- package/lib/main.js.map +1 -0
- package/lib/multiple-choice.js +231 -0
- package/lib/multiple-choice.js.map +1 -0
- package/lib/print.js +103 -0
- package/lib/print.js.map +1 -0
- package/lib/session-updater.js +28 -0
- package/lib/session-updater.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice-input.js","names":["_FormControlLabel","_interopRequireDefault","require","_react","_propTypes","_styles","_Checkbox","_renderUi","_feedbackTick","_Radio","_classnames","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","target","i","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","CLASS_NAME","styleSheet","row","display","alignItems","backgroundColor","color","background","checkboxHolder","flex","text","horizontalLayout","concat","paddingRight","formStyleSheet","label","StyledFormControlLabel","withStyles","name","props","createElement","_extends2","classes","exports","colorStyle","varName","fallback","inputStyles","correct","disabled","incorrect","root","primaryLight","checked","primary","opacity","cursor","pointerEvents","StyledCheckbox","correctness","onChange","accessibility","k","resolved","miniProps","className","StyledRadio","ChoiceInput","_React$Component","_inherits2","_super","_this","_classCallCheck2","onToggleChoice","bind","_assertThisInitialized2","_createClass2","value","selected","render","_this$props","choiceMode","displayKey","feedback","rationale","hideTick","isEvaluateMode","choicesLayout","Tag","classSuffix","holderClassNames","classNames","control","PreviewPrompt","onClick","prompt","tagName","defaultClassName","Feedback","React","Component","PropTypes","oneOf","string","isRequired","bool","func","_default"],"sources":["../src/choice-input.jsx"],"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/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 = () => ({\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 },\n },\n horizontalLayout: {\n [`& .${CLASS_NAME}`]: {\n paddingRight: '8px',\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 } = 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 };\n return (\n <Checkbox\n aria-label={accessibility}\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 } = 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 };\n\n return (\n <Radio\n aria-label={accessibility}\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 };\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 }\n\n onToggleChoice() {\n this.props.onChange({\n value: this.props.value,\n selected: !this.props.checked,\n });\n }\n\n render() {\n const {\n choiceMode,\n disabled,\n displayKey,\n feedback,\n label,\n checked,\n correctness,\n classes,\n className,\n rationale,\n accessibility,\n hideTick,\n isEvaluateMode,\n choicesLayout,\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 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 disabled={disabled}\n label={displayKey ? displayKey + '. ' : ''}\n control={\n <Tag\n accessibility={accessibility}\n checked={checked}\n correctness={correctness}\n onChange={this.onToggleChoice}\n />\n }\n />\n <PreviewPrompt className=\"label\" onClick={this.onToggleChoice} prompt={label} tagName=\"span\" />\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"],"mappings":"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"}
|
package/lib/choice.js
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = exports.Choice = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
18
|
+
var _styles = require("@material-ui/core/styles");
|
|
19
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
20
|
+
var _choiceInput = _interopRequireDefault(require("./choice-input"));
|
|
21
|
+
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; }
|
|
22
|
+
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; }
|
|
23
|
+
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); }; }
|
|
24
|
+
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; } }
|
|
25
|
+
var Choice = /*#__PURE__*/function (_React$Component) {
|
|
26
|
+
(0, _inherits2["default"])(Choice, _React$Component);
|
|
27
|
+
var _super = _createSuper(Choice);
|
|
28
|
+
function Choice() {
|
|
29
|
+
var _this;
|
|
30
|
+
(0, _classCallCheck2["default"])(this, Choice);
|
|
31
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
32
|
+
args[_key] = arguments[_key];
|
|
33
|
+
}
|
|
34
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
|
35
|
+
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (choice) {
|
|
36
|
+
var _this$props = _this.props,
|
|
37
|
+
disabled = _this$props.disabled,
|
|
38
|
+
onChoiceChanged = _this$props.onChoiceChanged;
|
|
39
|
+
if (!disabled) {
|
|
40
|
+
onChoiceChanged(choice);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
return _this;
|
|
44
|
+
}
|
|
45
|
+
(0, _createClass2["default"])(Choice, [{
|
|
46
|
+
key: "render",
|
|
47
|
+
value: function render() {
|
|
48
|
+
var _classNames;
|
|
49
|
+
var _this$props2 = this.props,
|
|
50
|
+
choice = _this$props2.choice,
|
|
51
|
+
index = _this$props2.index,
|
|
52
|
+
choicesLength = _this$props2.choicesLength,
|
|
53
|
+
showCorrect = _this$props2.showCorrect,
|
|
54
|
+
isEvaluateMode = _this$props2.isEvaluateMode,
|
|
55
|
+
choiceMode = _this$props2.choiceMode,
|
|
56
|
+
disabled = _this$props2.disabled,
|
|
57
|
+
checked = _this$props2.checked,
|
|
58
|
+
correctness = _this$props2.correctness,
|
|
59
|
+
displayKey = _this$props2.displayKey,
|
|
60
|
+
classes = _this$props2.classes,
|
|
61
|
+
choicesLayout = _this$props2.choicesLayout,
|
|
62
|
+
gridColumns = _this$props2.gridColumns;
|
|
63
|
+
var choiceClass = 'choice' + (index === choicesLength - 1 ? ' last' : '');
|
|
64
|
+
var feedback = !isEvaluateMode || showCorrect ? '' : choice.feedback;
|
|
65
|
+
var choiceProps = _objectSpread(_objectSpread({}, choice), {}, {
|
|
66
|
+
checked: checked,
|
|
67
|
+
choiceMode: choiceMode,
|
|
68
|
+
disabled: disabled,
|
|
69
|
+
feedback: feedback,
|
|
70
|
+
correctness: correctness,
|
|
71
|
+
displayKey: displayKey,
|
|
72
|
+
choicesLayout: choicesLayout,
|
|
73
|
+
gridColumns: gridColumns,
|
|
74
|
+
onChange: this.onChange,
|
|
75
|
+
isEvaluateMode: isEvaluateMode
|
|
76
|
+
});
|
|
77
|
+
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));
|
|
78
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
79
|
+
className: choiceClass,
|
|
80
|
+
key: index
|
|
81
|
+
}, /*#__PURE__*/_react["default"].createElement(_choiceInput["default"], (0, _extends2["default"])({}, choiceProps, {
|
|
82
|
+
className: names
|
|
83
|
+
})));
|
|
84
|
+
}
|
|
85
|
+
}]);
|
|
86
|
+
return Choice;
|
|
87
|
+
}(_react["default"].Component);
|
|
88
|
+
exports.Choice = Choice;
|
|
89
|
+
Choice.propTypes = {
|
|
90
|
+
choiceMode: _propTypes["default"].oneOf(['radio', 'checkbox']),
|
|
91
|
+
choice: _propTypes["default"].object,
|
|
92
|
+
disabled: _propTypes["default"].bool.isRequired,
|
|
93
|
+
onChoiceChanged: _propTypes["default"].func,
|
|
94
|
+
classes: _propTypes["default"].object.isRequired,
|
|
95
|
+
index: _propTypes["default"].number,
|
|
96
|
+
choicesLength: _propTypes["default"].number,
|
|
97
|
+
showCorrect: _propTypes["default"].bool,
|
|
98
|
+
isEvaluateMode: _propTypes["default"].bool,
|
|
99
|
+
checked: _propTypes["default"].bool,
|
|
100
|
+
correctness: _propTypes["default"].string,
|
|
101
|
+
displayKey: _propTypes["default"].string,
|
|
102
|
+
choicesLayout: _propTypes["default"].oneOf(['vertical', 'grid', 'horizontal']),
|
|
103
|
+
gridColumns: _propTypes["default"].string
|
|
104
|
+
};
|
|
105
|
+
var _default = (0, _styles.withStyles)({
|
|
106
|
+
choice: {
|
|
107
|
+
paddingTop: '20px',
|
|
108
|
+
paddingBottom: '10px',
|
|
109
|
+
borderBottom: '1px solid #E0DEE0'
|
|
110
|
+
},
|
|
111
|
+
noBorder: {
|
|
112
|
+
borderBottom: 'none'
|
|
113
|
+
},
|
|
114
|
+
horizontalLayout: {
|
|
115
|
+
paddingRight: '20px',
|
|
116
|
+
'& label': {
|
|
117
|
+
marginRight: '8px'
|
|
118
|
+
// '& span:first-child': {
|
|
119
|
+
// paddingRight: 0
|
|
120
|
+
// }
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
})(Choice);
|
|
124
|
+
exports["default"] = _default;
|
|
125
|
+
//# sourceMappingURL=choice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_classnames","_choiceInput","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","Choice","_React$Component","_inherits2","_super","_this","_classCallCheck2","_len","args","Array","_key","concat","_assertThisInitialized2","choice","_this$props","props","disabled","onChoiceChanged","_createClass2","value","render","_classNames","_this$props2","index","choicesLength","showCorrect","isEvaluateMode","choiceMode","checked","correctness","displayKey","classes","choicesLayout","gridColumns","choiceClass","feedback","choiceProps","onChange","names","classNames","noBorder","horizontalLayout","createElement","className","_extends2","React","Component","exports","propTypes","PropTypes","oneOf","bool","isRequired","func","number","string","_default","withStyles","paddingTop","paddingBottom","borderBottom","paddingRight","marginRight"],"sources":["../src/choice.jsx"],"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 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 } = 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 choicesLayout,\n gridColumns,\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({\n choice: {\n paddingTop: '20px',\n paddingBottom: '10px',\n borderBottom: '1px solid #E0DEE0',\n },\n noBorder: {\n borderBottom: 'none',\n },\n horizontalLayout: {\n paddingRight: '20px',\n '& label': {\n marginRight: '8px',\n // '& span:first-child': {\n // paddingRight: 0\n // }\n },\n },\n})(Choice);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
11
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
12
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
+
var _react = _interopRequireDefault(require("react"));
|
|
15
|
+
var _reactTransitionGroup = require("react-transition-group");
|
|
16
|
+
var _styles = require("@material-ui/core/styles");
|
|
17
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
18
|
+
var _renderUi = require("@pie-lib/render-ui");
|
|
19
|
+
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); }; }
|
|
20
|
+
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; } }
|
|
21
|
+
var stylesheet = {
|
|
22
|
+
incorrect: {
|
|
23
|
+
fill: "var(--feedback-incorrect-bg-color, ".concat(_renderUi.color.incorrect(), ")")
|
|
24
|
+
},
|
|
25
|
+
correct: {
|
|
26
|
+
fill: "var(--feedback-correct-bg-color, ".concat(_renderUi.color.correct(), ")")
|
|
27
|
+
},
|
|
28
|
+
feedbackTick: {
|
|
29
|
+
width: '33px',
|
|
30
|
+
height: '33px',
|
|
31
|
+
'& svg': {
|
|
32
|
+
position: 'absolute',
|
|
33
|
+
display: 'inline-block',
|
|
34
|
+
width: '33px',
|
|
35
|
+
height: '33px',
|
|
36
|
+
verticalAlign: 'middle',
|
|
37
|
+
'& hide': {
|
|
38
|
+
display: 'none'
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
feedbackTickEnter: {
|
|
43
|
+
opacity: '0',
|
|
44
|
+
left: '-50px'
|
|
45
|
+
},
|
|
46
|
+
feedbackTickEnterActive: {
|
|
47
|
+
opacity: '1',
|
|
48
|
+
left: '0px',
|
|
49
|
+
transition: 'left 500ms ease-in 200ms, opacity 500ms linear 200ms'
|
|
50
|
+
},
|
|
51
|
+
feedbackTickLeave: {
|
|
52
|
+
opacity: '1',
|
|
53
|
+
left: '0px'
|
|
54
|
+
},
|
|
55
|
+
feedbackTickLeaveActive: {
|
|
56
|
+
opacity: '0',
|
|
57
|
+
left: '-50px',
|
|
58
|
+
transition: 'left 300ms ease-in, opacity 300ms'
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
var FeedbackTick = /*#__PURE__*/function (_React$Component) {
|
|
62
|
+
(0, _inherits2["default"])(FeedbackTick, _React$Component);
|
|
63
|
+
var _super = _createSuper(FeedbackTick);
|
|
64
|
+
function FeedbackTick(props) {
|
|
65
|
+
var _this;
|
|
66
|
+
(0, _classCallCheck2["default"])(this, FeedbackTick);
|
|
67
|
+
_this = _super.call(this, props);
|
|
68
|
+
_this.incorrectIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
69
|
+
key: "1",
|
|
70
|
+
preserveAspectRatio: "xMinYMin meet",
|
|
71
|
+
x: "0px",
|
|
72
|
+
y: "0px",
|
|
73
|
+
viewBox: "0 0 44 40",
|
|
74
|
+
style: {
|
|
75
|
+
enableBackground: 'new 0 0 44 40'
|
|
76
|
+
}
|
|
77
|
+
}, /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("rect", {
|
|
78
|
+
x: "11",
|
|
79
|
+
y: "17.3",
|
|
80
|
+
transform: "matrix(0.7071 -0.7071 0.7071 0.7071 -7.852 19.2507)",
|
|
81
|
+
className: _this.props.classes.incorrect,
|
|
82
|
+
width: "16.6",
|
|
83
|
+
height: "3.7"
|
|
84
|
+
}), /*#__PURE__*/_react["default"].createElement("rect", {
|
|
85
|
+
x: "17.4",
|
|
86
|
+
y: "10.7",
|
|
87
|
+
transform: "matrix(0.7071 -0.7071 0.7071 0.7071 -7.8175 19.209)",
|
|
88
|
+
className: _this.props.classes.incorrect,
|
|
89
|
+
width: "3.7",
|
|
90
|
+
height: "16.6"
|
|
91
|
+
})));
|
|
92
|
+
_this.correctIcon = /*#__PURE__*/_react["default"].createElement("svg", {
|
|
93
|
+
key: "2",
|
|
94
|
+
preserveAspectRatio: "xMinYMin meet",
|
|
95
|
+
version: "1.1",
|
|
96
|
+
x: "0px",
|
|
97
|
+
y: "0px",
|
|
98
|
+
viewBox: "0 0 44 40",
|
|
99
|
+
style: {
|
|
100
|
+
enableBackground: 'new 0 0 44 40'
|
|
101
|
+
}
|
|
102
|
+
}, /*#__PURE__*/_react["default"].createElement("polygon", {
|
|
103
|
+
className: _this.props.classes.correct,
|
|
104
|
+
points: "19.1,28.6 11.8,22.3 14.4,19.2 17.9,22.1 23.9,11.4 27.5,13.4"
|
|
105
|
+
}));
|
|
106
|
+
return _this;
|
|
107
|
+
}
|
|
108
|
+
(0, _createClass2["default"])(FeedbackTick, [{
|
|
109
|
+
key: "render",
|
|
110
|
+
value: function render() {
|
|
111
|
+
var _this2 = this;
|
|
112
|
+
var _this$props = this.props,
|
|
113
|
+
correctness = _this$props.correctness,
|
|
114
|
+
classes = _this$props.classes;
|
|
115
|
+
var icon = function () {
|
|
116
|
+
if (correctness === 'incorrect') {
|
|
117
|
+
return _this2.incorrectIcon;
|
|
118
|
+
} else if (correctness === 'correct') {
|
|
119
|
+
return _this2.correctIcon;
|
|
120
|
+
}
|
|
121
|
+
}();
|
|
122
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
123
|
+
className: classes.feedbackTick
|
|
124
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactTransitionGroup.TransitionGroup, null, correctness && /*#__PURE__*/_react["default"].createElement(_reactTransitionGroup.CSSTransition, {
|
|
125
|
+
classNames: {
|
|
126
|
+
enter: classes.feedbackTickEnter,
|
|
127
|
+
enterActive: classes.feedbackTickEnterActive,
|
|
128
|
+
exit: classes.feedbackTickLeave,
|
|
129
|
+
exitActive: classes.feedbackTickLeaveActive
|
|
130
|
+
},
|
|
131
|
+
timeout: {
|
|
132
|
+
enter: 700,
|
|
133
|
+
exit: 300
|
|
134
|
+
}
|
|
135
|
+
}, icon)));
|
|
136
|
+
}
|
|
137
|
+
}]);
|
|
138
|
+
return FeedbackTick;
|
|
139
|
+
}(_react["default"].Component);
|
|
140
|
+
(0, _defineProperty2["default"])(FeedbackTick, "propTypes", {
|
|
141
|
+
classes: _propTypes["default"].object.isRequired,
|
|
142
|
+
correctness: _propTypes["default"].string
|
|
143
|
+
});
|
|
144
|
+
var _default = (0, _styles.withStyles)(stylesheet, {
|
|
145
|
+
name: 'FeedbackTick'
|
|
146
|
+
})(FeedbackTick);
|
|
147
|
+
exports["default"] = _default;
|
|
148
|
+
//# sourceMappingURL=feedback-tick.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback-tick.js","names":["_react","_interopRequireDefault","require","_reactTransitionGroup","_styles","_propTypes","_renderUi","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","stylesheet","incorrect","fill","concat","color","correct","feedbackTick","width","height","position","display","verticalAlign","feedbackTickEnter","opacity","left","feedbackTickEnterActive","transition","feedbackTickLeave","feedbackTickLeaveActive","FeedbackTick","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","incorrectIcon","createElement","key","preserveAspectRatio","x","y","viewBox","style","enableBackground","transform","className","classes","correctIcon","version","points","_createClass2","value","render","_this2","_this$props","correctness","icon","TransitionGroup","CSSTransition","classNames","enter","enterActive","exit","exitActive","timeout","React","Component","_defineProperty2","PropTypes","object","isRequired","string","_default","withStyles","name","exports"],"sources":["../src/feedback-tick.jsx"],"sourcesContent":["import React from 'react';\nimport { TransitionGroup, CSSTransition } from 'react-transition-group';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\n\nconst stylesheet = {\n incorrect: {\n fill: `var(--feedback-incorrect-bg-color, ${color.incorrect()})`,\n },\n correct: {\n fill: `var(--feedback-correct-bg-color, ${color.correct()})`,\n },\n feedbackTick: {\n width: '33px',\n height: '33px',\n '& svg': {\n position: 'absolute',\n display: 'inline-block',\n width: '33px',\n height: '33px',\n verticalAlign: 'middle',\n '& hide': {\n display: 'none',\n },\n },\n },\n feedbackTickEnter: {\n opacity: '0',\n left: '-50px',\n },\n feedbackTickEnterActive: {\n opacity: '1',\n left: '0px',\n transition: 'left 500ms ease-in 200ms, opacity 500ms linear 200ms',\n },\n feedbackTickLeave: {\n opacity: '1',\n left: '0px',\n },\n feedbackTickLeaveActive: {\n opacity: '0',\n left: '-50px',\n transition: 'left 300ms ease-in, opacity 300ms',\n },\n};\n\nclass FeedbackTick extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n correctness: PropTypes.string,\n };\n constructor(props) {\n super(props);\n this.incorrectIcon = (\n <svg\n key=\"1\"\n preserveAspectRatio=\"xMinYMin meet\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 44 40\"\n style={{ enableBackground: 'new 0 0 44 40' }}\n >\n <g>\n <rect\n x=\"11\"\n y=\"17.3\"\n transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -7.852 19.2507)\"\n className={this.props.classes.incorrect}\n width=\"16.6\"\n height=\"3.7\"\n />\n <rect\n x=\"17.4\"\n y=\"10.7\"\n transform=\"matrix(0.7071 -0.7071 0.7071 0.7071 -7.8175 19.209)\"\n className={this.props.classes.incorrect}\n width=\"3.7\"\n height=\"16.6\"\n />\n </g>\n </svg>\n );\n\n this.correctIcon = (\n <svg\n key=\"2\"\n preserveAspectRatio=\"xMinYMin meet\"\n version=\"1.1\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 44 40\"\n style={{ enableBackground: 'new 0 0 44 40' }}\n >\n <polygon\n className={this.props.classes.correct}\n points=\"19.1,28.6 11.8,22.3 14.4,19.2 17.9,22.1 23.9,11.4 27.5,13.4\"\n />\n </svg>\n );\n }\n\n render() {\n const { correctness, classes } = this.props;\n\n const icon = (() => {\n if (correctness === 'incorrect') {\n return this.incorrectIcon;\n } else if (correctness === 'correct') {\n return this.correctIcon;\n }\n })();\n\n return (\n <div className={classes.feedbackTick}>\n <TransitionGroup>\n {correctness && (\n <CSSTransition\n classNames={{\n enter: classes.feedbackTickEnter,\n enterActive: classes.feedbackTickEnterActive,\n exit: classes.feedbackTickLeave,\n exitActive: classes.feedbackTickLeaveActive,\n }}\n timeout={{ enter: 700, exit: 300 }}\n >\n {icon}\n </CSSTransition>\n )}\n </TransitionGroup>\n </div>\n );\n }\n}\n\nexport default withStyles(stylesheet, { name: 'FeedbackTick' })(FeedbackTick);\n"],"mappings":"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"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.isComplete = exports["default"] = void 0;
|
|
8
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
9
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
10
|
+
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
11
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
12
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
14
|
+
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
|
|
15
|
+
var _main = _interopRequireDefault(require("./main"));
|
|
16
|
+
var _react = _interopRequireDefault(require("react"));
|
|
17
|
+
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
18
|
+
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
|
19
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
20
|
+
var _mathRendering = require("@pie-lib/math-rendering");
|
|
21
|
+
var _sessionUpdater = require("./session-updater");
|
|
22
|
+
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); }; }
|
|
23
|
+
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; } }
|
|
24
|
+
var log = (0, _debug["default"])('pie-ui:multiple-choice');
|
|
25
|
+
var isComplete = function isComplete(session) {
|
|
26
|
+
return !!(session && session.value && session.value.length);
|
|
27
|
+
};
|
|
28
|
+
exports.isComplete = isComplete;
|
|
29
|
+
var MultipleChoice = /*#__PURE__*/function (_HTMLElement) {
|
|
30
|
+
(0, _inherits2["default"])(MultipleChoice, _HTMLElement);
|
|
31
|
+
var _super = _createSuper(MultipleChoice);
|
|
32
|
+
function MultipleChoice() {
|
|
33
|
+
var _this;
|
|
34
|
+
(0, _classCallCheck2["default"])(this, MultipleChoice);
|
|
35
|
+
_this = _super.call(this);
|
|
36
|
+
_this._model = null;
|
|
37
|
+
_this._session = null;
|
|
38
|
+
_this._rerender = (0, _debounce["default"])(function () {
|
|
39
|
+
if (_this._model && _this._session) {
|
|
40
|
+
var element = /*#__PURE__*/_react["default"].createElement(_main["default"], {
|
|
41
|
+
model: _this._model,
|
|
42
|
+
session: _this._session,
|
|
43
|
+
onChoiceChanged: _this._onChange.bind((0, _assertThisInitialized2["default"])(_this))
|
|
44
|
+
});
|
|
45
|
+
_reactDom["default"].render(element, (0, _assertThisInitialized2["default"])(_this), function () {
|
|
46
|
+
log('render complete - render math');
|
|
47
|
+
(0, _mathRendering.renderMath)((0, _assertThisInitialized2["default"])(_this));
|
|
48
|
+
});
|
|
49
|
+
} else {
|
|
50
|
+
log('skip');
|
|
51
|
+
}
|
|
52
|
+
}, 50, {
|
|
53
|
+
leading: false,
|
|
54
|
+
trailing: true
|
|
55
|
+
});
|
|
56
|
+
_this._dispatchResponseChanged = (0, _debounce["default"])(function () {
|
|
57
|
+
var event = new CustomEvent('session-changed', {
|
|
58
|
+
bubbles: true,
|
|
59
|
+
composed: true,
|
|
60
|
+
detail: {
|
|
61
|
+
complete: isComplete(_this._session),
|
|
62
|
+
component: _this.tagName.toLowerCase()
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
_this.dispatchEvent(event);
|
|
66
|
+
});
|
|
67
|
+
_this._dispatchModelSet = (0, _debounce["default"])(function () {
|
|
68
|
+
_this.dispatchEvent(new CustomEvent('model-set', {
|
|
69
|
+
bubbles: true,
|
|
70
|
+
composed: true,
|
|
71
|
+
detail: {
|
|
72
|
+
complete: isComplete(_this._session),
|
|
73
|
+
component: _this.tagName.toLowerCase(),
|
|
74
|
+
hasModel: _this._model !== undefined
|
|
75
|
+
}
|
|
76
|
+
}));
|
|
77
|
+
}, 50, {
|
|
78
|
+
leading: false,
|
|
79
|
+
trailing: true
|
|
80
|
+
});
|
|
81
|
+
return _this;
|
|
82
|
+
}
|
|
83
|
+
(0, _createClass2["default"])(MultipleChoice, [{
|
|
84
|
+
key: "model",
|
|
85
|
+
set: function set(s) {
|
|
86
|
+
this._model = s;
|
|
87
|
+
this._rerender();
|
|
88
|
+
this._dispatchModelSet();
|
|
89
|
+
}
|
|
90
|
+
}, {
|
|
91
|
+
key: "session",
|
|
92
|
+
get: function get() {
|
|
93
|
+
return this._session;
|
|
94
|
+
},
|
|
95
|
+
set: function set(s) {
|
|
96
|
+
this._session = s;
|
|
97
|
+
this._rerender();
|
|
98
|
+
//TODO: remove this session-changed should only be emit on user change
|
|
99
|
+
this._dispatchResponseChanged();
|
|
100
|
+
}
|
|
101
|
+
}, {
|
|
102
|
+
key: "_onChange",
|
|
103
|
+
value: function _onChange(data) {
|
|
104
|
+
(0, _sessionUpdater.updateSessionValue)(this._session, this._model.choiceMode, data);
|
|
105
|
+
this._dispatchResponseChanged();
|
|
106
|
+
this._rerender();
|
|
107
|
+
}
|
|
108
|
+
}, {
|
|
109
|
+
key: "connectedCallback",
|
|
110
|
+
value: function connectedCallback() {
|
|
111
|
+
this._rerender();
|
|
112
|
+
}
|
|
113
|
+
}]);
|
|
114
|
+
return MultipleChoice;
|
|
115
|
+
}( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
|
|
116
|
+
exports["default"] = MultipleChoice;
|
|
117
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_main","_interopRequireDefault","require","_react","_reactDom","_debounce","_debug","_mathRendering","_sessionUpdater","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","log","debug","isComplete","session","value","length","exports","MultipleChoice","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_model","_session","_rerender","debounce","element","React","createElement","Main","model","onChoiceChanged","_onChange","bind","_assertThisInitialized2","ReactDOM","render","renderMath","leading","trailing","_dispatchResponseChanged","event","CustomEvent","bubbles","composed","detail","complete","component","tagName","toLowerCase","dispatchEvent","_dispatchModelSet","hasModel","undefined","_createClass2","key","set","s","get","data","updateSessionValue","choiceMode","connectedCallback","_wrapNativeSuper2","HTMLElement"],"sources":["../src/index.js"],"sourcesContent":["import Main from './main';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport debounce from 'lodash/debounce';\nimport debug from 'debug';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport { updateSessionValue } from './session-updater';\n\nconst log = debug('pie-ui:multiple-choice');\n\nexport const isComplete = (session) => !!(session && session.value && session.value.length);\n\nexport default class MultipleChoice extends HTMLElement {\n constructor() {\n super();\n this._model = null;\n this._session = null;\n\n this._rerender = debounce(\n () => {\n if (this._model && this._session) {\n var element = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onChoiceChanged: this._onChange.bind(this),\n });\n\n ReactDOM.render(element, this, () => {\n log('render complete - render math');\n renderMath(this);\n });\n } else {\n log('skip');\n }\n },\n 50,\n { leading: false, trailing: true },\n );\n\n this._dispatchResponseChanged = debounce(() => {\n var event = new CustomEvent('session-changed', {\n bubbles: true,\n composed: true,\n detail: {\n complete: isComplete(this._session),\n component: this.tagName.toLowerCase(),\n },\n });\n\n this.dispatchEvent(event);\n });\n\n this._dispatchModelSet = debounce(\n () => {\n this.dispatchEvent(\n new CustomEvent('model-set', {\n bubbles: true,\n composed: true,\n detail: {\n complete: isComplete(this._session),\n component: this.tagName.toLowerCase(),\n hasModel: this._model !== undefined,\n },\n }),\n );\n },\n 50,\n { leading: false, trailing: true },\n );\n }\n\n set model(s) {\n this._model = s;\n this._rerender();\n this._dispatchModelSet();\n }\n\n get session() {\n return this._session;\n }\n\n set session(s) {\n this._session = s;\n this._rerender();\n //TODO: remove this session-changed should only be emit on user change\n this._dispatchResponseChanged();\n }\n\n _onChange(data) {\n updateSessionValue(this._session, this._model.choiceMode, data);\n this._dispatchResponseChanged();\n this._rerender();\n }\n\n connectedCallback() {\n this._rerender();\n }\n}\n"],"mappings":"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"}
|
package/lib/main.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
12
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
14
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
+
var _react = _interopRequireDefault(require("react"));
|
|
16
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
|
+
var _styles = require("@material-ui/core/styles");
|
|
18
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
|
+
var _renderUi = require("@pie-lib/render-ui");
|
|
20
|
+
var _multipleChoice = _interopRequireDefault(require("./multiple-choice"));
|
|
21
|
+
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); }; }
|
|
22
|
+
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; } }
|
|
23
|
+
var Main = /*#__PURE__*/function (_React$Component) {
|
|
24
|
+
(0, _inherits2["default"])(Main, _React$Component);
|
|
25
|
+
var _super = _createSuper(Main);
|
|
26
|
+
function Main(props) {
|
|
27
|
+
(0, _classCallCheck2["default"])(this, Main);
|
|
28
|
+
return _super.call(this, props);
|
|
29
|
+
}
|
|
30
|
+
(0, _createClass2["default"])(Main, [{
|
|
31
|
+
key: "render",
|
|
32
|
+
value: function render() {
|
|
33
|
+
var _this$props = this.props,
|
|
34
|
+
model = _this$props.model,
|
|
35
|
+
onChoiceChanged = _this$props.onChoiceChanged,
|
|
36
|
+
session = _this$props.session,
|
|
37
|
+
classes = _this$props.classes;
|
|
38
|
+
|
|
39
|
+
// model.partLabel is a property used for ebsr
|
|
40
|
+
return /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewLayout, {
|
|
41
|
+
ariaLabel: model.choiceMode == 'radio' ? 'Multiple Choice Question' : 'Multiple Correct Answer Question',
|
|
42
|
+
role: "region"
|
|
43
|
+
}, model.partLabel && /*#__PURE__*/_react["default"].createElement("p", null, model.partLabel), /*#__PURE__*/_react["default"].createElement("div", {
|
|
44
|
+
className: (0, _classnames["default"])(classes.root, classes[model.className])
|
|
45
|
+
}, /*#__PURE__*/_react["default"].createElement(_multipleChoice["default"], (0, _extends2["default"])({}, model, {
|
|
46
|
+
session: session,
|
|
47
|
+
onChoiceChanged: onChoiceChanged
|
|
48
|
+
}))));
|
|
49
|
+
}
|
|
50
|
+
}]);
|
|
51
|
+
return Main;
|
|
52
|
+
}(_react["default"].Component);
|
|
53
|
+
(0, _defineProperty2["default"])(Main, "propTypes", {
|
|
54
|
+
model: _propTypes["default"].object,
|
|
55
|
+
session: _propTypes["default"].object,
|
|
56
|
+
onChoiceChanged: _propTypes["default"].func,
|
|
57
|
+
classes: _propTypes["default"].object.isRequired
|
|
58
|
+
});
|
|
59
|
+
(0, _defineProperty2["default"])(Main, "defaultProps", {
|
|
60
|
+
model: {},
|
|
61
|
+
session: {}
|
|
62
|
+
});
|
|
63
|
+
var Styled = (0, _styles.withStyles)({}, {
|
|
64
|
+
name: 'Main'
|
|
65
|
+
})(Main);
|
|
66
|
+
var theme = (0, _styles.createMuiTheme)({
|
|
67
|
+
typography: {
|
|
68
|
+
useNextVariants: true
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
var Root = function Root(props) {
|
|
72
|
+
return /*#__PURE__*/_react["default"].createElement(_styles.MuiThemeProvider, {
|
|
73
|
+
theme: theme
|
|
74
|
+
}, /*#__PURE__*/_react["default"].createElement(Styled, props));
|
|
75
|
+
};
|
|
76
|
+
var _default = Root;
|
|
77
|
+
exports["default"] = _default;
|
|
78
|
+
//# sourceMappingURL=main.js.map
|
package/lib/main.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_classnames","_renderUi","_multipleChoice","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","Main","_React$Component","_inherits2","_super","props","_classCallCheck2","_createClass2","key","value","render","_this$props","model","onChoiceChanged","session","classes","createElement","PreviewLayout","ariaLabel","choiceMode","role","partLabel","className","classNames","root","_extends2","React","Component","_defineProperty2","PropTypes","object","func","isRequired","Styled","withStyles","name","theme","createMuiTheme","typography","useNextVariants","Root","MuiThemeProvider","_default","exports"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { createMuiTheme, MuiThemeProvider } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { PreviewLayout } from '@pie-lib/render-ui';\nimport MultipleChoice from './multiple-choice';\n\nclass Main extends React.Component {\n static propTypes = {\n model: PropTypes.object,\n session: PropTypes.object,\n onChoiceChanged: PropTypes.func,\n classes: PropTypes.object.isRequired,\n };\n\n static defaultProps = {\n model: {},\n session: {},\n };\n constructor(props) {\n super(props);\n }\n\n render() {\n const { model, onChoiceChanged, session, classes } = this.props;\n\n // model.partLabel is a property used for ebsr\n return (\n <PreviewLayout\n ariaLabel={(model.choiceMode == 'radio' ? 'Multiple Choice Question' : 'Multiple Correct Answer Question')}\n role=\"region\"\n > \n {model.partLabel && <p>{model.partLabel}</p>}\n <div className={classNames(classes.root, classes[model.className])}>\n <MultipleChoice {...model} session={session} onChoiceChanged={onChoiceChanged} />\n </div>\n </PreviewLayout>\n );\n }\n}\n\nconst Styled = withStyles({}, { name: 'Main' })(Main);\n\nconst theme = createMuiTheme({\n typography: {\n useNextVariants: true,\n },\n});\n\nconst Root = (props) => (\n <MuiThemeProvider theme={theme}>\n <Styled {...props} />\n </MuiThemeProvider>\n);\n\nexport default Root;\n"],"mappings":"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"}
|