@pie-element/match 11.0.5-esm.1 → 11.1.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/configure/CHANGELOG.md +63 -0
  3. package/configure/lib/add-row.js +27 -73
  4. package/configure/lib/add-row.js.map +1 -1
  5. package/configure/lib/answer-config-block.js +262 -335
  6. package/configure/lib/answer-config-block.js.map +1 -1
  7. package/configure/lib/common.js +18 -33
  8. package/configure/lib/common.js.map +1 -1
  9. package/configure/lib/configure.js +330 -420
  10. package/configure/lib/configure.js.map +1 -1
  11. package/configure/lib/defaults.js +5 -4
  12. package/configure/lib/defaults.js.map +1 -1
  13. package/configure/lib/general-config-block.js +123 -190
  14. package/configure/lib/general-config-block.js.map +1 -1
  15. package/configure/lib/index.js +117 -190
  16. package/configure/lib/index.js.map +1 -1
  17. package/configure/lib/row.js +269 -377
  18. package/configure/lib/row.js.map +1 -1
  19. package/configure/lib/utils.js +4 -15
  20. package/configure/lib/utils.js.map +1 -1
  21. package/configure/package.json +15 -14
  22. package/controller/CHANGELOG.md +49 -0
  23. package/controller/lib/defaults.js +2 -3
  24. package/controller/lib/defaults.js.map +1 -1
  25. package/controller/lib/index.js +173 -301
  26. package/controller/lib/index.js.map +1 -1
  27. package/controller/package.json +6 -6
  28. package/lib/answer-grid.js +142 -242
  29. package/lib/answer-grid.js.map +1 -1
  30. package/lib/index.js +59 -108
  31. package/lib/index.js.map +1 -1
  32. package/lib/main.js +123 -191
  33. package/lib/main.js.map +1 -1
  34. package/package.json +18 -29
  35. package/esm/configure.js +0 -3936
  36. package/esm/configure.js.map +0 -1
  37. package/esm/controller.js +0 -428
  38. package/esm/controller.js.map +0 -1
  39. package/esm/element.js +0 -472
  40. package/esm/element.js.map +0 -1
package/lib/main.js CHANGED
@@ -1,231 +1,163 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports["default"] = exports.Main = 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
-
7
+ exports.default = exports.Main = void 0;
22
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
9
  var _react = _interopRequireDefault(require("react"));
25
-
26
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
-
28
11
  var _correctAnswerToggle = _interopRequireDefault(require("@pie-lib/correct-answer-toggle"));
29
-
30
12
  var _renderUi = require("@pie-lib/render-ui");
31
-
32
13
  var _answerGrid = _interopRequireDefault(require("./answer-grid"));
33
-
34
- var _styles = require("@material-ui/core/styles");
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 Main = /*#__PURE__*/function (_React$Component) {
45
- (0, _inherits2["default"])(Main, _React$Component);
46
-
47
- var _super = _createSuper(Main);
48
-
49
- function Main(props) {
50
- var _this;
51
-
52
- (0, _classCallCheck2["default"])(this, Main);
53
- _this = _super.call(this, props);
54
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "generateAnswers", function (model) {
55
- var _model$rows;
56
-
57
- var answers = {};
58
- (_model$rows = model.rows) === null || _model$rows === void 0 ? void 0 : _model$rows.forEach(function (row) {
14
+ var _styles = require("@mui/material/styles");
15
+ const StyledPrompt = (0, _styles.styled)('div')({
16
+ verticalAlign: 'middle'
17
+ });
18
+ const StyledCollapsible = (0, _styles.styled)(_renderUi.Collapsible)(({
19
+ theme
20
+ }) => ({
21
+ marginBottom: theme.spacing(2)
22
+ }));
23
+ class Main extends _react.default.Component {
24
+ constructor(props) {
25
+ super(props);
26
+ (0, _defineProperty2.default)(this, "generateAnswers", model => {
27
+ const answers = {};
28
+ model.rows?.forEach(row => {
59
29
  answers[row.id] = new Array(model.layout - 1).fill(false);
60
30
  });
61
31
  return answers;
62
32
  });
63
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "isAnswerRegenerationRequired", function (nextProps) {
64
- var _this$props$model = _this.props.model;
65
- _this$props$model = _this$props$model === void 0 ? {} : _this$props$model;
66
- var choiceMode = _this$props$model.choiceMode,
67
- layout = _this$props$model.layout,
68
- rows = _this$props$model.rows;
69
- var _nextProps$session = nextProps.session;
70
- _nextProps$session = _nextProps$session === void 0 ? {} : _nextProps$session;
71
- var answers = _nextProps$session.answers;
72
- var isRequired = false;
73
-
33
+ (0, _defineProperty2.default)(this, "isAnswerRegenerationRequired", nextProps => {
34
+ const {
35
+ model: {
36
+ choiceMode,
37
+ layout,
38
+ rows
39
+ } = {}
40
+ } = this.props;
41
+ const {
42
+ session: {
43
+ answers
44
+ } = {}
45
+ } = nextProps;
46
+ let isRequired = false;
74
47
  if (choiceMode !== nextProps.model.choiceMode) {
75
48
  isRequired = true;
76
49
  }
77
-
78
50
  if (layout !== nextProps.model.layout) {
79
51
  isRequired = true;
80
52
  }
81
-
82
53
  if (rows.length !== nextProps.model.rows.length || answers && nextProps.model.rows.length !== Object.keys(answers).length) {
83
54
  isRequired = true;
84
55
  }
85
-
86
56
  return isRequired || !answers;
87
57
  });
88
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "callOnSessionChange", function () {
89
- var onSessionChange = _this.props.onSessionChange;
90
-
58
+ (0, _defineProperty2.default)(this, "callOnSessionChange", () => {
59
+ const {
60
+ onSessionChange
61
+ } = this.props;
91
62
  if (onSessionChange) {
92
- onSessionChange(_this.state.session);
63
+ onSessionChange(this.state.session);
93
64
  }
94
65
  });
95
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "toggleShowCorrect", function (show) {
96
- _this.setState({
66
+ (0, _defineProperty2.default)(this, "toggleShowCorrect", show => {
67
+ this.setState({
97
68
  showCorrect: show
98
69
  });
99
70
  });
100
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onAnswerChange", function (newAnswers) {
101
- _this.setState(function (state) {
102
- return {
103
- session: _objectSpread(_objectSpread({}, state.session), {}, {
104
- answers: newAnswers
105
- })
106
- };
107
- }, _this.callOnSessionChange);
71
+ (0, _defineProperty2.default)(this, "onAnswerChange", newAnswers => {
72
+ this.setState(state => ({
73
+ session: {
74
+ ...state.session,
75
+ answers: newAnswers
76
+ }
77
+ }), this.callOnSessionChange);
108
78
  });
109
- _this.state = {
110
- session: _objectSpread(_objectSpread({}, props.session), {}, {
111
- answers: props.session && props.session.answers || _this.generateAnswers(props.model)
112
- }),
79
+ this.state = {
80
+ session: {
81
+ ...props.session,
82
+ answers: props.session && props.session.answers || this.generateAnswers(props.model)
83
+ },
113
84
  showCorrect: false
114
85
  };
115
-
116
- _this.callOnSessionChange();
117
-
118
- return _this;
86
+ this.callOnSessionChange();
119
87
  }
120
-
121
- (0, _createClass2["default"])(Main, [{
122
- key: "UNSAFE_componentWillReceiveProps",
123
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
124
- var _this2 = this;
125
-
126
- var regenAnswers = this.isAnswerRegenerationRequired(nextProps);
127
- this.setState(function (state) {
128
- return {
129
- session: _objectSpread(_objectSpread({}, nextProps.session), {}, {
130
- // regenerate answers if layout or choiceMode change
131
- answers: regenAnswers ? _this2.generateAnswers(nextProps.model) : nextProps.session.answers
132
- }),
133
- showCorrect: _this2.props.model.disabled && !nextProps.model.disabled && state.showCorrect ? false : state.showCorrect
134
- };
135
- }, function () {
136
- if (regenAnswers) _this2.callOnSessionChange();
137
- });
138
- }
139
- }, {
140
- key: "render",
141
- value: function render() {
142
- var _this$props = this.props,
143
- model = _this$props.model,
144
- classes = _this$props.classes;
145
- var _this$state = this.state,
146
- showCorrect = _this$state.showCorrect,
147
- session = _this$state.session;
148
- var _model$correctness = model.correctness,
149
- correctness = _model$correctness === void 0 ? {} : _model$correctness,
150
- extraCSSRules = model.extraCSSRules,
151
- language = model.language;
152
- var showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';
153
- var showRationale = model.rationale && ((0, _renderUi.hasText)(model.rationale) || (0, _renderUi.hasMedia)(model.rationale));
154
- var showTeacherInstructions = model.teacherInstructions && ((0, _renderUi.hasText)(model.teacherInstructions) || (0, _renderUi.hasMedia)(model.teacherInstructions));
155
- return /*#__PURE__*/_react["default"].createElement(_renderUi.UiLayout, {
156
- extraCSSRules: extraCSSRules,
157
- className: classes.mainContainer
158
- }, showTeacherInstructions && /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
159
- labels: {
160
- hidden: 'Show Teacher Instructions',
161
- visible: 'Hide Teacher Instructions'
162
- },
163
- className: classes.collapsible
164
- }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
165
- prompt: model.teacherInstructions
166
- })), model.prompt && /*#__PURE__*/_react["default"].createElement("div", {
167
- className: classes.prompt
168
- }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
169
- prompt: model.prompt
170
- })), /*#__PURE__*/_react["default"].createElement(_correctAnswerToggle["default"], {
171
- language: language,
172
- show: showCorrectAnswerToggle,
173
- toggled: showCorrect,
174
- onToggle: this.toggleShowCorrect
175
- }), /*#__PURE__*/_react["default"].createElement(_answerGrid["default"], {
176
- showCorrect: showCorrect,
177
- correctAnswers: model.correctResponse,
178
- disabled: model.disabled,
179
- view: model.view,
180
- onAnswerChange: this.onAnswerChange,
181
- choiceMode: model.choiceMode,
182
- answers: showCorrect ? model.correctResponse || {} : session.answers,
183
- headers: model.headers,
184
- rows: model.rows
185
- }), showRationale && /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
186
- labels: {
187
- hidden: 'Show Rationale',
188
- visible: 'Hide Rationale'
189
- },
190
- className: classes.collapsible
191
- }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
192
- prompt: model.rationale
193
- })), model.feedback && /*#__PURE__*/_react["default"].createElement(_renderUi.Feedback, {
194
- correctness: correctness.correctness,
195
- feedback: model.feedback
196
- }));
197
- }
198
- }]);
199
- return Main;
200
- }(_react["default"].Component);
201
-
88
+ UNSAFE_componentWillReceiveProps(nextProps) {
89
+ const regenAnswers = this.isAnswerRegenerationRequired(nextProps);
90
+ this.setState(state => ({
91
+ session: {
92
+ ...nextProps.session,
93
+ // regenerate answers if layout or choiceMode change
94
+ answers: regenAnswers ? this.generateAnswers(nextProps.model) : nextProps.session.answers
95
+ },
96
+ showCorrect: this.props.model.disabled && !nextProps.model.disabled && state.showCorrect ? false : state.showCorrect
97
+ }), () => {
98
+ if (regenAnswers) this.callOnSessionChange();
99
+ });
100
+ }
101
+ render() {
102
+ const {
103
+ model
104
+ } = this.props;
105
+ const {
106
+ showCorrect,
107
+ session
108
+ } = this.state;
109
+ const {
110
+ correctness = {},
111
+ extraCSSRules,
112
+ language
113
+ } = model;
114
+ const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';
115
+ const showRationale = model.rationale && ((0, _renderUi.hasText)(model.rationale) || (0, _renderUi.hasMedia)(model.rationale));
116
+ const showTeacherInstructions = model.teacherInstructions && ((0, _renderUi.hasText)(model.teacherInstructions) || (0, _renderUi.hasMedia)(model.teacherInstructions));
117
+ return /*#__PURE__*/_react.default.createElement(_renderUi.UiLayout, {
118
+ extraCSSRules: extraCSSRules
119
+ }, showTeacherInstructions && /*#__PURE__*/_react.default.createElement(StyledCollapsible, {
120
+ labels: {
121
+ hidden: 'Show Teacher Instructions',
122
+ visible: 'Hide Teacher Instructions'
123
+ }
124
+ }, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
125
+ prompt: model.teacherInstructions
126
+ })), model.prompt && /*#__PURE__*/_react.default.createElement(StyledPrompt, null, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
127
+ prompt: model.prompt
128
+ })), /*#__PURE__*/_react.default.createElement(_correctAnswerToggle.default, {
129
+ language: language,
130
+ show: showCorrectAnswerToggle,
131
+ toggled: showCorrect,
132
+ onToggle: this.toggleShowCorrect
133
+ }), /*#__PURE__*/_react.default.createElement(_answerGrid.default, {
134
+ showCorrect: showCorrect,
135
+ correctAnswers: model.correctResponse,
136
+ disabled: model.disabled,
137
+ view: model.view,
138
+ onAnswerChange: this.onAnswerChange,
139
+ choiceMode: model.choiceMode,
140
+ answers: showCorrect ? model.correctResponse || {} : session.answers,
141
+ headers: model.headers,
142
+ rows: model.rows
143
+ }), showRationale && /*#__PURE__*/_react.default.createElement(_renderUi.Collapsible, {
144
+ labels: {
145
+ hidden: 'Show Rationale',
146
+ visible: 'Hide Rationale'
147
+ }
148
+ }, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
149
+ prompt: model.rationale
150
+ })), model.feedback && /*#__PURE__*/_react.default.createElement(_renderUi.Feedback, {
151
+ correctness: correctness.correctness,
152
+ feedback: model.feedback
153
+ }));
154
+ }
155
+ }
202
156
  exports.Main = Main;
203
- (0, _defineProperty2["default"])(Main, "propTypes", {
204
- classes: _propTypes["default"].object,
205
- session: _propTypes["default"].object.isRequired,
206
- onSessionChange: _propTypes["default"].func,
207
- model: _propTypes["default"].object.isRequired
157
+ (0, _defineProperty2.default)(Main, "propTypes", {
158
+ session: _propTypes.default.object.isRequired,
159
+ onSessionChange: _propTypes.default.func,
160
+ model: _propTypes.default.object.isRequired
208
161
  });
209
-
210
- var styles = function styles(theme) {
211
- return {
212
- mainContainer: {
213
- color: _renderUi.color.text(),
214
- backgroundColor: _renderUi.color.background()
215
- },
216
- main: {
217
- width: '100%'
218
- },
219
- prompt: {
220
- verticalAlign: 'middle'
221
- },
222
- collapsible: {
223
- marginBottom: theme.spacing.unit * 2
224
- }
225
- };
226
- };
227
-
228
- var _default = (0, _styles.withStyles)(styles)(Main);
229
-
230
- exports["default"] = _default;
162
+ var _default = exports.default = Main;
231
163
  //# sourceMappingURL=main.js.map
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Main","props","model","answers","rows","forEach","row","id","Array","layout","fill","nextProps","choiceMode","session","isRequired","length","Object","keys","onSessionChange","state","show","setState","showCorrect","newAnswers","callOnSessionChange","generateAnswers","regenAnswers","isAnswerRegenerationRequired","disabled","classes","correctness","extraCSSRules","language","showCorrectAnswerToggle","showRationale","rationale","showTeacherInstructions","teacherInstructions","mainContainer","hidden","visible","collapsible","prompt","toggleShowCorrect","correctResponse","view","onAnswerChange","headers","feedback","React","Component","PropTypes","object","func","styles","theme","color","text","backgroundColor","background","main","width","verticalAlign","marginBottom","spacing","unit"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CorrectAnswerToggle from '@pie-lib/correct-answer-toggle';\nimport { color, Collapsible, Feedback, hasText, PreviewPrompt, UiLayout, hasMedia } from '@pie-lib/render-ui';\nimport AnswerGrid from './answer-grid';\nimport { withStyles } from '@material-ui/core/styles';\n\nexport class Main extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n session: PropTypes.object.isRequired,\n onSessionChange: PropTypes.func,\n model: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n session: {\n ...props.session,\n answers: (props.session && props.session.answers) || this.generateAnswers(props.model),\n },\n showCorrect: false,\n };\n\n this.callOnSessionChange();\n }\n\n generateAnswers = (model) => {\n const answers = {};\n\n model.rows?.forEach((row) => {\n answers[row.id] = new Array(model.layout - 1).fill(false);\n });\n\n return answers;\n };\n\n isAnswerRegenerationRequired = (nextProps) => {\n const { model: { choiceMode, layout, rows } = {} } = this.props;\n const { session: { answers } = {} } = nextProps;\n let isRequired = false;\n\n if (choiceMode !== nextProps.model.choiceMode) {\n isRequired = true;\n }\n\n if (layout !== nextProps.model.layout) {\n isRequired = true;\n }\n\n if (\n rows.length !== nextProps.model.rows.length ||\n (answers && nextProps.model.rows.length !== Object.keys(answers).length)\n ) {\n isRequired = true;\n }\n\n return isRequired || !answers;\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n const regenAnswers = this.isAnswerRegenerationRequired(nextProps);\n\n this.setState(\n (state) => ({\n session: {\n ...nextProps.session,\n // regenerate answers if layout or choiceMode change\n answers: regenAnswers ? this.generateAnswers(nextProps.model) : nextProps.session.answers,\n },\n showCorrect:\n this.props.model.disabled && !nextProps.model.disabled && state.showCorrect ? false : state.showCorrect,\n }),\n () => {\n if (regenAnswers) this.callOnSessionChange();\n },\n );\n }\n\n callOnSessionChange = () => {\n const { onSessionChange } = this.props;\n\n if (onSessionChange) {\n onSessionChange(this.state.session);\n }\n };\n\n toggleShowCorrect = (show) => {\n this.setState({ showCorrect: show });\n };\n\n onAnswerChange = (newAnswers) => {\n this.setState(\n (state) => ({\n session: {\n ...state.session,\n answers: newAnswers,\n },\n }),\n this.callOnSessionChange,\n );\n };\n\n render() {\n const { model, classes } = this.props;\n const { showCorrect, session } = this.state;\n const { correctness = {}, extraCSSRules, language } = model;\n const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';\n\n const showRationale = model.rationale && (hasText(model.rationale) || hasMedia(model.rationale));\n const showTeacherInstructions =\n model.teacherInstructions && (hasText(model.teacherInstructions) || hasMedia(model.teacherInstructions));\n\n return (\n <UiLayout extraCSSRules={extraCSSRules} className={classes.mainContainer}>\n {showTeacherInstructions && (\n <Collapsible\n labels={{\n hidden: 'Show Teacher Instructions',\n visible: 'Hide Teacher Instructions',\n }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.teacherInstructions} />\n </Collapsible>\n )}\n\n {model.prompt && (\n <div className={classes.prompt}>\n <PreviewPrompt prompt={model.prompt} />\n </div>\n )}\n\n <CorrectAnswerToggle\n language={language}\n show={showCorrectAnswerToggle}\n toggled={showCorrect}\n onToggle={this.toggleShowCorrect}\n />\n\n <AnswerGrid\n showCorrect={showCorrect}\n correctAnswers={model.correctResponse}\n disabled={model.disabled}\n view={model.view}\n onAnswerChange={this.onAnswerChange}\n choiceMode={model.choiceMode}\n answers={showCorrect ? model.correctResponse || {} : session.answers}\n headers={model.headers}\n rows={model.rows}\n />\n\n {showRationale && (\n <Collapsible labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }} className={classes.collapsible}>\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n )}\n\n {model.feedback && <Feedback correctness={correctness.correctness} feedback={model.feedback} />}\n </UiLayout>\n );\n }\n}\n\nconst styles = (theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n },\n main: {\n width: '100%',\n },\n prompt: {\n verticalAlign: 'middle',\n },\n collapsible: {\n marginBottom: theme.spacing.unit * 2,\n },\n});\n\nexport default withStyles(styles)(Main);\n"],"file":"main.js"}
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_correctAnswerToggle","_renderUi","_answerGrid","_styles","StyledPrompt","styled","verticalAlign","StyledCollapsible","Collapsible","theme","marginBottom","spacing","Main","React","Component","constructor","props","_defineProperty2","default","model","answers","rows","forEach","row","id","Array","layout","fill","nextProps","choiceMode","session","isRequired","length","Object","keys","onSessionChange","state","show","setState","showCorrect","newAnswers","callOnSessionChange","generateAnswers","UNSAFE_componentWillReceiveProps","regenAnswers","isAnswerRegenerationRequired","disabled","render","correctness","extraCSSRules","language","showCorrectAnswerToggle","showRationale","rationale","hasText","hasMedia","showTeacherInstructions","teacherInstructions","createElement","UiLayout","labels","hidden","visible","PreviewPrompt","prompt","toggled","onToggle","toggleShowCorrect","correctAnswers","correctResponse","view","onAnswerChange","headers","feedback","Feedback","exports","PropTypes","object","func","_default"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport CorrectAnswerToggle from '@pie-lib/correct-answer-toggle';\nimport { Collapsible, Feedback, hasText, PreviewPrompt, UiLayout, hasMedia } from '@pie-lib/render-ui';\nimport AnswerGrid from './answer-grid';\nimport { styled } from '@mui/material/styles';\n\nconst StyledPrompt = styled('div')({\n verticalAlign: 'middle',\n});\n\nconst StyledCollapsible = styled(Collapsible)(({ theme }) => ({\n marginBottom: theme.spacing(2),\n}));\n\nexport class Main extends React.Component {\n static propTypes = {\n session: PropTypes.object.isRequired,\n onSessionChange: PropTypes.func,\n model: PropTypes.object.isRequired,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n session: {\n ...props.session,\n answers: (props.session && props.session.answers) || this.generateAnswers(props.model),\n },\n showCorrect: false,\n };\n\n this.callOnSessionChange();\n }\n\n generateAnswers = (model) => {\n const answers = {};\n\n model.rows?.forEach((row) => {\n answers[row.id] = new Array(model.layout - 1).fill(false);\n });\n\n return answers;\n };\n\n isAnswerRegenerationRequired = (nextProps) => {\n const { model: { choiceMode, layout, rows } = {} } = this.props;\n const { session: { answers } = {} } = nextProps;\n let isRequired = false;\n\n if (choiceMode !== nextProps.model.choiceMode) {\n isRequired = true;\n }\n\n if (layout !== nextProps.model.layout) {\n isRequired = true;\n }\n\n if (\n rows.length !== nextProps.model.rows.length ||\n (answers && nextProps.model.rows.length !== Object.keys(answers).length)\n ) {\n isRequired = true;\n }\n\n return isRequired || !answers;\n };\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n const regenAnswers = this.isAnswerRegenerationRequired(nextProps);\n\n this.setState(\n (state) => ({\n session: {\n ...nextProps.session,\n // regenerate answers if layout or choiceMode change\n answers: regenAnswers ? this.generateAnswers(nextProps.model) : nextProps.session.answers,\n },\n showCorrect:\n this.props.model.disabled && !nextProps.model.disabled && state.showCorrect ? false : state.showCorrect,\n }),\n () => {\n if (regenAnswers) this.callOnSessionChange();\n },\n );\n }\n\n callOnSessionChange = () => {\n const { onSessionChange } = this.props;\n\n if (onSessionChange) {\n onSessionChange(this.state.session);\n }\n };\n\n toggleShowCorrect = (show) => {\n this.setState({ showCorrect: show });\n };\n\n onAnswerChange = (newAnswers) => {\n this.setState(\n (state) => ({\n session: {\n ...state.session,\n answers: newAnswers,\n },\n }),\n this.callOnSessionChange,\n );\n };\n\n render() {\n const { model } = this.props;\n const { showCorrect, session } = this.state;\n const { correctness = {}, extraCSSRules, language } = model;\n const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';\n\n const showRationale = model.rationale && (hasText(model.rationale) || hasMedia(model.rationale));\n const showTeacherInstructions =\n model.teacherInstructions && (hasText(model.teacherInstructions) || hasMedia(model.teacherInstructions));\n\n return (\n <UiLayout extraCSSRules={extraCSSRules}>\n {showTeacherInstructions && (\n <StyledCollapsible\n labels={{\n hidden: 'Show Teacher Instructions',\n visible: 'Hide Teacher Instructions',\n }}\n >\n <PreviewPrompt prompt={model.teacherInstructions} />\n </StyledCollapsible>\n )}\n\n {model.prompt && (\n <StyledPrompt>\n <PreviewPrompt prompt={model.prompt} />\n </StyledPrompt>\n )}\n\n <CorrectAnswerToggle\n language={language}\n show={showCorrectAnswerToggle}\n toggled={showCorrect}\n onToggle={this.toggleShowCorrect}\n />\n\n <AnswerGrid\n showCorrect={showCorrect}\n correctAnswers={model.correctResponse}\n disabled={model.disabled}\n view={model.view}\n onAnswerChange={this.onAnswerChange}\n choiceMode={model.choiceMode}\n answers={showCorrect ? model.correctResponse || {} : session.answers}\n headers={model.headers}\n rows={model.rows}\n />\n\n {showRationale && (\n <Collapsible labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}>\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n )}\n\n {model.feedback && <Feedback correctness={correctness.correctness} feedback={model.feedback} />}\n </UiLayout>\n );\n }\n}\n\nexport default Main;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,48 +1,37 @@
1
1
  {
2
2
  "name": "@pie-element/match",
3
+ "repository": {
4
+ "type": "git",
5
+ "url": "https://github.com/pie-framework/pie-elements"
6
+ },
3
7
  "publishConfig": {
4
8
  "access": "public"
5
9
  },
6
- "repository": "pie-framework/pie-elements",
7
- "version": "11.0.5-esm.1",
10
+ "version": "11.1.0-next.0+20d879b",
8
11
  "main": "lib/index.js",
9
12
  "description": "",
10
13
  "scripts": {
11
14
  "postpublish": "../../scripts/postpublish"
12
15
  },
13
16
  "dependencies": {
14
- "@material-ui/core": "^3.9.2",
17
+ "@emotion/react": "^11.14.0",
18
+ "@emotion/style": "^0.8.0",
19
+ "@mui/icons-material": "^7.3.4",
20
+ "@mui/material": "^7.3.4",
15
21
  "@pie-framework/pie-player-events": "^0.1.0",
16
- "@pie-lib/correct-answer-toggle": "^2.22.3",
17
- "@pie-lib/math-rendering": "^3.19.2",
18
- "@pie-lib/render-ui": "^4.32.3",
19
- "@pie-lib/test-utils": "^0.19.3",
22
+ "@pie-lib/correct-answer-toggle": "3.1.1-next.1",
23
+ "@pie-lib/math-rendering": "4.1.1-next.1",
24
+ "@pie-lib/render-ui": "5.1.1-next.1",
25
+ "@pie-lib/test-utils": "1.1.1-next.1",
20
26
  "classnames": "^2.2.5",
21
27
  "debug": "^4.1.1",
22
- "lodash": "^4.17.10",
28
+ "lodash-es": "^4.17.23",
23
29
  "prop-types": "^15.6.1",
24
- "react": "^16.8.1",
25
- "react-dom": "^16.8.1"
30
+ "react": "18.3.1",
31
+ "react-dom": "18.3.1"
26
32
  },
27
33
  "author": "",
28
34
  "license": "ISC",
29
- "gitHead": "a2a70ca496469571771f6b28bc73f618758bbfec",
30
- "module": "src/index.js",
31
- "exports": {
32
- ".": {
33
- "import": "./esm/element.js",
34
- "require": "./lib/index.js",
35
- "default": "./esm/element.js"
36
- },
37
- "./configure": {
38
- "import": "./esm/configure.js",
39
- "require": "./configure/lib/index.js",
40
- "default": "./esm/configure.js"
41
- },
42
- "./controller": {
43
- "import": "./esm/controller.js",
44
- "require": "./controller/lib/index.js",
45
- "default": "./esm/controller.js"
46
- }
47
- }
35
+ "gitHead": "20d879b8b8fa74decf5028d860d54cd09cbdf051",
36
+ "module": "src/index.js"
48
37
  }