@pie-element/match 4.9.8 → 4.10.1-beta.1443

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.
@@ -288,6 +288,11 @@
288
288
  "type": "boolean",
289
289
  "title": "rationaleEnabled"
290
290
  },
291
+ "spellCheckEnabled": {
292
+ "description": "Indicates if spellcheck is enabled for the author. Default value is true",
293
+ "type": "boolean",
294
+ "title": "spellCheckEnabled"
295
+ },
291
296
  "studentInstructionsEnabled": {
292
297
  "description": "Indicates if Student Instructions are enabled",
293
298
  "type": "boolean",
@@ -308,6 +313,11 @@
308
313
  "type": "string",
309
314
  "title": "toolbarEditorPosition"
310
315
  },
316
+ "rubricEnabled": {
317
+ "description": "Indicates if Rubric is enabled",
318
+ "type": "boolean",
319
+ "title": "rubricEnabled"
320
+ },
311
321
  "id": {
312
322
  "description": "Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.",
313
323
  "type": "string",
@@ -329,6 +339,8 @@
329
339
  "rationale",
330
340
  "rationaleEnabled",
331
341
  "rows",
342
+ "rubricEnabled",
343
+ "spellCheckEnabled",
332
344
  "studentInstructionsEnabled",
333
345
  "teacherInstructionsEnabled"
334
346
  ],
@@ -349,6 +361,32 @@
349
361
  }
350
362
  }
351
363
  },
364
+ "ConfigureMaxImageDimensionsProp": {
365
+ "title": "ConfigureMaxImageDimensionsProp",
366
+ "type": "object",
367
+ "properties": {
368
+ "teacherInstructions": {
369
+ "description": "Indicates the max dimension for images in teacher instructions",
370
+ "type": "number",
371
+ "title": "teacherInstructions"
372
+ },
373
+ "prompt": {
374
+ "description": "Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified",
375
+ "type": "number",
376
+ "title": "prompt"
377
+ },
378
+ "rationale": {
379
+ "description": "Indicates the max dimension for images in rationale",
380
+ "type": "number",
381
+ "title": "rationale"
382
+ },
383
+ "rowTitles": {
384
+ "description": "Indicates the max dimension for images in row labels",
385
+ "type": "number",
386
+ "title": "rowTitles"
387
+ }
388
+ }
389
+ },
352
390
  "ComplexFeedbackType": {
353
391
  "title": "ComplexFeedbackType",
354
392
  "type": "object",
@@ -108,6 +108,10 @@ Indicates if Feedback is enabled
108
108
 
109
109
  Indicates if Rationale are enabled
110
110
 
111
+ # `spellCheckEnabled` (boolean, required)
112
+
113
+ Indicates if spellcheck is enabled for the author. Default value is true
114
+
111
115
  # `studentInstructionsEnabled` (boolean, required)
112
116
 
113
117
  Indicates if Student Instructions are enabled
@@ -127,6 +131,10 @@ This element must be one of the following enum values:
127
131
 
128
132
  Default: `": 'bottom'"`
129
133
 
134
+ # `rubricEnabled` (boolean, required)
135
+
136
+ Indicates if Rubric is enabled
137
+
130
138
  # `id` (string, required)
131
139
 
132
140
  Identifier to identify the Pie Element in html markup, Must be unique within a pie item config.
@@ -153,6 +161,26 @@ Indicates if the item has to be displayed in the Settings Panel
153
161
 
154
162
  Indicates the label for the item that has to be displayed in the Settings Panel
155
163
 
164
+ ## `ConfigureMaxImageDimensionsProp` (object)
165
+
166
+ Properties of the `ConfigureMaxImageDimensionsProp` object:
167
+
168
+ ### `teacherInstructions` (number)
169
+
170
+ Indicates the max dimension for images in teacher instructions
171
+
172
+ ### `prompt` (number)
173
+
174
+ Indicates the max dimension for images in prompt - this is also the default dimension for all other input fields if it's not specified
175
+
176
+ ### `rationale` (number)
177
+
178
+ Indicates the max dimension for images in rationale
179
+
180
+ ### `rowTitles` (number)
181
+
182
+ Indicates the max dimension for images in row labels
183
+
156
184
  ## `ComplexFeedbackType` (object)
157
185
 
158
186
  Properties of the `ComplexFeedbackType` object:
@@ -37,9 +37,9 @@ var _styles = require("@material-ui/core/styles");
37
37
 
38
38
  var _renderUi = require("@pie-lib/render-ui");
39
39
 
40
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
40
+ 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; }
41
41
 
42
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
42
+ 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; }
43
43
 
44
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
45
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/answer-grid.jsx"],"names":["AnswerGrid","rowId","answerIndex","event","props","onAnswerChange","choiceMode","answers","newAnswers","i","length","target","checked","rowValue","rowValueIndex","correctAnswers","classes","showCorrect","headers","rows","disabled","view","Tag","Radio","Checkbox","evaluate","controlsContainer","empty","table","map","header","idx","rowHeader","rowItem","questionText","__html","row","separator","title","id","column","correct","answerIsCorrect","tag","tagDisabled","incorrect","answerIsIncorrect","onRowValueChange","React","Component","PropTypes","object","isRequired","bool","func","string","array","styles","theme","marginLeft","marginRight","marginTop","spacing","unit","marginBottom","padding","color","margin","rowContainer","display","alignItems","textAlign","border","borderTop","primaryLight","width","text","primary","cursor","pointerEvents","opacity","backgroundColor","background","borderCollapse","borderSpacing"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Radio from '@material-ui/core/Radio';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\n\nexport class AnswerGrid extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n correctAnswers: PropTypes.object,\n view: PropTypes.bool.isRequired,\n showCorrect: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n onAnswerChange: PropTypes.func.isRequired,\n choiceMode: PropTypes.string.isRequired,\n rows: PropTypes.array.isRequired,\n headers: PropTypes.array.isRequired,\n answers: PropTypes.object.isRequired\n };\n\n onRowValueChange = (rowId, answerIndex) => event => {\n const { onAnswerChange, choiceMode, answers } = this.props;\n const newAnswers = { ...answers };\n\n if (choiceMode === 'radio') {\n for (let i = 0; i < newAnswers[rowId].length; i++) {\n newAnswers[rowId][i] = false;\n }\n }\n\n newAnswers[rowId][answerIndex] = event.target.checked;\n\n onAnswerChange(newAnswers);\n };\n\n answerIsCorrect = (rowId, rowValue, rowValueIndex) => {\n const { correctAnswers } = this.props;\n\n return correctAnswers[rowId][rowValueIndex] === rowValue && rowValue === true;\n };\n\n // needs a separate method because what isn't correct isn't necessarily incorrect\n answerIsIncorrect = (rowId, rowValue, rowValueIndex) => {\n const { correctAnswers } = this.props;\n\n return correctAnswers[rowId][rowValueIndex] === true && rowValue === false\n || correctAnswers[rowId][rowValueIndex] === false && rowValue === true;\n };\n\n render() {\n const { classes, showCorrect, headers, rows, choiceMode, answers, disabled, view } = this.props;\n const Tag = choiceMode === 'radio' ? Radio : Checkbox;\n const evaluate = disabled && !view;\n\n if (!rows || rows.length === 0) {\n return (\n <div className={classes.controlsContainer}>\n <Typography className={classes.empty} component=\"div\">\n There are currently no questions to show.\n </Typography>\n </div>);\n }\n\n return (\n <div className={classes.controlsContainer}>\n <table className={classes.table}>\n <colgroup>\n {(headers || []).map((header, idx) => (<col key={`col-${idx}`}/>))}\n </colgroup>\n\n <thead>\n <tr>\n {(headers || []).map((header, idx) => (\n <th\n className={classes.rowHeader}\n key={`th-${idx}`}\n data-colno={`${idx}`}\n scope=\"row\"\n >\n <div\n className={cx(classes.rowItem, { [classes.questionText]: idx === 0 })}\n dangerouslySetInnerHTML={{ __html: header }}\n />\n </th>\n ))}\n </tr>\n </thead>\n\n {(rows || []).map((row, idx) => (\n <tbody key={`row-${idx}`} role=\"group\">\n <tr className={classes.separator}>\n <td\n key={`td-title-${idx}`}\n data-colno={'0'}\n >\n <div\n className={cx(classes.rowItem, classes.questionText)}\n dangerouslySetInnerHTML={{ __html: row.title }}\n />\n </td>\n\n {(answers[row.id] || []).map((rowItem, answerIndex) => (\n <td\n key={`td-${idx}-${answerIndex}`}\n className={classes.column}\n data-colno={`${answerIndex + 1}`}\n >\n <div className={classes.rowItem}>\n <Tag\n className={cx({\n [classes.correct]: (\n (showCorrect && rowItem === true) ||\n (evaluate && this.answerIsCorrect(row.id, rowItem, answerIndex))\n ),\n [classes.tag]: true,\n [classes.checked]: rowItem === true && !evaluate,\n [classes.tagDisabled]: disabled,\n [classes.incorrect]: evaluate && this.answerIsIncorrect(row.id, rowItem, answerIndex)\n })}\n disabled={disabled}\n onChange={this.onRowValueChange(row.id, answerIndex)}\n checked={rowItem === true}\n />\n </div>\n </td>\n ))}\n </tr>\n </tbody>\n ))}\n </table>\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n controlsContainer: {\n marginLeft: 'auto',\n marginRight: 'auto',\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit\n },\n column: {\n padding: '5px 0',\n },\n correct: {\n color: `${color.correct()} !important`\n },\n incorrect: {\n color: `${color.incorrect()} !important`\n },\n empty: {\n margin: theme.spacing.unit * 2\n },\n rowContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n rowHeader: {\n padding: 0\n },\n rowItem: {\n padding: '12px',\n textAlign: 'center'\n },\n separator: {\n border: 0,\n borderTop: `2.5px solid ${color.primaryLight()}`,\n width: '100%'\n },\n tag: {\n padding: '6px',\n color: color.text(),\n '&:hover': {\n color: color.primaryLight()\n }\n },\n checked: {\n color: `${color.primary()} !important`\n },\n tagDisabled: {\n color: color.disabled(),\n cursor: 'not-allowed !important',\n pointerEvents: 'initial !important',\n opacity: 0.7,\n '&:hover': {\n color: color.disabled()\n }\n },\n table: {\n color: color.text(),\n backgroundColor: color.background(),\n borderCollapse: 'collapse',\n borderSpacing: 0,\n marginBottom: 0\n },\n questionText: {\n textAlign: 'left'\n },\n});\n\nexport default withStyles(styles)(AnswerGrid);\n"],"file":"answer-grid.js"}
1
+ {"version":3,"sources":["../src/answer-grid.jsx"],"names":["AnswerGrid","rowId","answerIndex","event","props","onAnswerChange","choiceMode","answers","newAnswers","i","length","target","checked","rowValue","rowValueIndex","correctAnswers","classes","showCorrect","headers","rows","disabled","view","Tag","Radio","Checkbox","evaluate","controlsContainer","empty","table","map","header","idx","rowHeader","rowItem","questionText","__html","row","separator","title","id","column","correct","answerIsCorrect","tag","tagDisabled","incorrect","answerIsIncorrect","onRowValueChange","React","Component","PropTypes","object","isRequired","bool","func","string","array","styles","theme","marginLeft","marginRight","marginTop","spacing","unit","marginBottom","padding","color","margin","rowContainer","display","alignItems","textAlign","border","borderTop","primaryLight","width","text","primary","cursor","pointerEvents","opacity","backgroundColor","background","borderCollapse","borderSpacing"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport cx from 'classnames';\nimport Radio from '@material-ui/core/Radio';\nimport Checkbox from '@material-ui/core/Checkbox';\nimport Typography from '@material-ui/core/Typography';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\n\nexport class AnswerGrid extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n correctAnswers: PropTypes.object,\n view: PropTypes.bool.isRequired,\n showCorrect: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n onAnswerChange: PropTypes.func.isRequired,\n choiceMode: PropTypes.string.isRequired,\n rows: PropTypes.array.isRequired,\n headers: PropTypes.array.isRequired,\n answers: PropTypes.object.isRequired,\n };\n\n onRowValueChange = (rowId, answerIndex) => (event) => {\n const { onAnswerChange, choiceMode, answers } = this.props;\n const newAnswers = { ...answers };\n\n if (choiceMode === 'radio') {\n for (let i = 0; i < newAnswers[rowId].length; i++) {\n newAnswers[rowId][i] = false;\n }\n }\n\n newAnswers[rowId][answerIndex] = event.target.checked;\n\n onAnswerChange(newAnswers);\n };\n\n answerIsCorrect = (rowId, rowValue, rowValueIndex) => {\n const { correctAnswers } = this.props;\n\n return correctAnswers[rowId][rowValueIndex] === rowValue && rowValue === true;\n };\n\n // needs a separate method because what isn't correct isn't necessarily incorrect\n answerIsIncorrect = (rowId, rowValue, rowValueIndex) => {\n const { correctAnswers } = this.props;\n\n return (\n (correctAnswers[rowId][rowValueIndex] === true && rowValue === false) ||\n (correctAnswers[rowId][rowValueIndex] === false && rowValue === true)\n );\n };\n\n render() {\n const { classes, showCorrect, headers, rows, choiceMode, answers, disabled, view } = this.props;\n const Tag = choiceMode === 'radio' ? Radio : Checkbox;\n const evaluate = disabled && !view;\n\n if (!rows || rows.length === 0) {\n return (\n <div className={classes.controlsContainer}>\n <Typography className={classes.empty} component=\"div\">\n There are currently no questions to show.\n </Typography>\n </div>\n );\n }\n\n return (\n <div className={classes.controlsContainer}>\n <table className={classes.table}>\n <colgroup>\n {(headers || []).map((header, idx) => (\n <col key={`col-${idx}`} />\n ))}\n </colgroup>\n\n <thead>\n <tr>\n {(headers || []).map((header, idx) => (\n <th className={classes.rowHeader} key={`th-${idx}`} data-colno={`${idx}`} scope=\"row\">\n <div\n className={cx(classes.rowItem, { [classes.questionText]: idx === 0 })}\n dangerouslySetInnerHTML={{ __html: header }}\n />\n </th>\n ))}\n </tr>\n </thead>\n\n {(rows || []).map((row, idx) => (\n <tbody key={`row-${idx}`} role=\"group\">\n <tr className={classes.separator}>\n <td key={`td-title-${idx}`} data-colno={'0'}>\n <div\n className={cx(classes.rowItem, classes.questionText)}\n dangerouslySetInnerHTML={{ __html: row.title }}\n />\n </td>\n\n {(answers[row.id] || []).map((rowItem, answerIndex) => (\n <td key={`td-${idx}-${answerIndex}`} className={classes.column} data-colno={`${answerIndex + 1}`}>\n <div className={classes.rowItem}>\n <Tag\n className={cx({\n [classes.correct]:\n (showCorrect && rowItem === true) ||\n (evaluate && this.answerIsCorrect(row.id, rowItem, answerIndex)),\n [classes.tag]: true,\n [classes.checked]: rowItem === true && !evaluate,\n [classes.tagDisabled]: disabled,\n [classes.incorrect]: evaluate && this.answerIsIncorrect(row.id, rowItem, answerIndex),\n })}\n disabled={disabled}\n onChange={this.onRowValueChange(row.id, answerIndex)}\n checked={rowItem === true}\n />\n </div>\n </td>\n ))}\n </tr>\n </tbody>\n ))}\n </table>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n controlsContainer: {\n marginLeft: 'auto',\n marginRight: 'auto',\n marginTop: theme.spacing.unit,\n marginBottom: theme.spacing.unit,\n },\n column: {\n padding: '5px 0',\n },\n correct: {\n color: `${color.correct()} !important`,\n },\n incorrect: {\n color: `${color.incorrect()} !important`,\n },\n empty: {\n margin: theme.spacing.unit * 2,\n },\n rowContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n rowHeader: {\n padding: 0,\n },\n rowItem: {\n padding: '12px',\n textAlign: 'center',\n },\n separator: {\n border: 0,\n borderTop: `2.5px solid ${color.primaryLight()}`,\n width: '100%',\n },\n tag: {\n padding: '6px',\n color: color.text(),\n '&:hover': {\n color: color.primaryLight(),\n },\n },\n checked: {\n color: `${color.primary()} !important`,\n },\n tagDisabled: {\n color: color.disabled(),\n cursor: 'not-allowed !important',\n pointerEvents: 'initial !important',\n opacity: 0.7,\n '&:hover': {\n color: color.disabled(),\n },\n },\n table: {\n color: color.text(),\n backgroundColor: color.background(),\n borderCollapse: 'collapse',\n borderSpacing: 0,\n marginBottom: 0,\n },\n questionText: {\n textAlign: 'left',\n },\n});\n\nexport default withStyles(styles)(AnswerGrid);\n"],"file":"answer-grid.js"}
package/lib/index.js CHANGED
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "Component", {
11
11
  return _main["default"];
12
12
  }
13
13
  });
14
- exports["default"] = exports.isComplete = void 0;
14
+ exports.isComplete = exports["default"] = void 0;
15
15
 
16
16
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
17
 
@@ -78,6 +78,9 @@ var Match = /*#__PURE__*/function (_HTMLElement) {
78
78
  }
79
79
  }, {
80
80
  key: "session",
81
+ get: function get() {
82
+ return this._session;
83
+ },
81
84
  set: function set(s) {
82
85
  this._session = s;
83
86
 
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["isComplete","session","model","rows","ids","map","r","id","reduce","acc","arr","answers","hasChoice","Array","isArray","includes","Match","m","_model","_render","s","_session","complete","dispatchEvent","SessionChangedEvent","tagName","toLowerCase","el","React","createElement","Main","onSessionChange","sessionChanged","bind","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAIO,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,OAAD,EAAUC,KAAV,EAAoB;AAC5C,MAAMC,IAAI,GAAG,qBAAID,KAAJ,EAAW,aAAX,CAAb;AACA,MAAME,GAAG,GAAGD,IAAI,CAACE,GAAL,CAAS,UAAAC,CAAC;AAAA,WAAIA,CAAC,CAACC,EAAN;AAAA,GAAV,CAAZ;AACA,SAAOH,GAAG,CAACI,MAAJ,CAAW,UAACC,GAAD,EAAMF,EAAN,EAAa;AAC7B,QAAI,CAACE,GAAL,EAAU;AACR,aAAO,KAAP;AACD;;AACD,QAAMC,GAAG,GAAGT,OAAO,CAACU,OAAR,IAAmBV,OAAO,CAACU,OAAR,CAAgBJ,EAAhB,CAA/B;AACA,QAAMK,SAAS,GAAGC,KAAK,CAACC,OAAN,CAAcJ,GAAd,KAAsBA,GAAG,CAACK,QAAJ,CAAa,IAAb,CAAxC;AACA,WAAOH,SAAS,IAAIH,GAApB;AACD,GAPM,EAOJ,IAPI,CAAP;AAQD,CAXM;;;;IAacO,K;;;;;AACnB,mBAAc;AAAA;AAAA;AAEb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKC,MAAL,GAAcD,CAAd;;AACA,WAAKE,OAAL;AACD;;;SAED,aAAYC,CAAZ,EAAe;AACb,WAAKC,QAAL,GAAgBD,CAAhB;;AACA,WAAKD,OAAL;AACD;;;WAED,wBAAeC,CAAf,EAAkB;AAChB,WAAKC,QAAL,CAAcV,OAAd,GAAwBS,CAAC,CAACT,OAA1B;AACA,UAAMW,QAAQ,GAAGtB,UAAU,CAAC,KAAKqB,QAAN,EAAgB,KAAKH,MAArB,CAA3B;AAEA,WAAKK,aAAL,CACE,IAAIC,oCAAJ,CAAwB,KAAKC,OAAL,CAAaC,WAAb,EAAxB,EAAoDJ,QAApD,CADF;;AAIA,WAAKH,OAAL;AACD;;;WAED,6BAAoB;AAClB,WAAKA,OAAL;AACD;;;WAED,mBAAU;AAAA;;AACR,UAAI,CAAC,KAAKD,MAAN,IAAgB,CAAC,KAAKG,QAA1B,EAAoC;AAClC;AACD;;AAED,UAAMM,EAAE,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACnC5B,QAAAA,KAAK,EAAE,KAAKgB,MADuB;AAEnCjB,QAAAA,OAAO,EAAE,KAAKoB,QAFqB;AAGnCU,QAAAA,eAAe,EAAE,KAAKC,cAAL,CAAoBC,IAApB,CAAyB,IAAzB;AAHkB,OAA1B,CAAX;;AAMAC,2BAASC,MAAT,CAAgBR,EAAhB,EAAoB,IAApB,EAA0B,YAAM;AAC9B,uCAAW,KAAX;AACD,OAFD;AAGD;;;kDA5CgCS,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport Main from './main';\nimport { SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nimport get from 'lodash/get';\n\nexport { Main as Component };\n\nexport const isComplete = (session, model) => {\n const rows = get(model, 'config.rows');\n const ids = rows.map(r => r.id);\n return ids.reduce((acc, id) => {\n if (!acc) {\n return false;\n }\n const arr = session.answers && session.answers[id];\n const hasChoice = Array.isArray(arr) && arr.includes(true);\n return hasChoice && acc;\n }, true);\n};\n\nexport default class Match extends HTMLElement {\n constructor() {\n super();\n }\n\n set model(m) {\n this._model = m;\n this._render();\n }\n\n set session(s) {\n this._session = s;\n this._render();\n }\n\n sessionChanged(s) {\n this._session.answers = s.answers;\n const complete = isComplete(this._session, this._model);\n\n this.dispatchEvent(\n new SessionChangedEvent(this.tagName.toLowerCase(), complete)\n );\n\n this._render();\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n if (!this._model || !this._session) {\n return;\n }\n\n const el = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onSessionChange: this.sessionChanged.bind(this)\n });\n\n ReactDOM.render(el, this, () => {\n renderMath(this);\n });\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../src/index.js"],"names":["isComplete","session","model","rows","ids","map","r","id","reduce","acc","arr","answers","hasChoice","Array","isArray","includes","Match","m","_model","_render","_session","s","complete","dispatchEvent","SessionChangedEvent","tagName","toLowerCase","el","React","createElement","Main","onSessionChange","sessionChanged","bind","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAIO,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,OAAD,EAAUC,KAAV,EAAoB;AAC5C,MAAMC,IAAI,GAAG,qBAAID,KAAJ,EAAW,aAAX,CAAb;AACA,MAAME,GAAG,GAAGD,IAAI,CAACE,GAAL,CAAS,UAACC,CAAD;AAAA,WAAOA,CAAC,CAACC,EAAT;AAAA,GAAT,CAAZ;AACA,SAAOH,GAAG,CAACI,MAAJ,CAAW,UAACC,GAAD,EAAMF,EAAN,EAAa;AAC7B,QAAI,CAACE,GAAL,EAAU;AACR,aAAO,KAAP;AACD;;AACD,QAAMC,GAAG,GAAGT,OAAO,CAACU,OAAR,IAAmBV,OAAO,CAACU,OAAR,CAAgBJ,EAAhB,CAA/B;AACA,QAAMK,SAAS,GAAGC,KAAK,CAACC,OAAN,CAAcJ,GAAd,KAAsBA,GAAG,CAACK,QAAJ,CAAa,IAAb,CAAxC;AACA,WAAOH,SAAS,IAAIH,GAApB;AACD,GAPM,EAOJ,IAPI,CAAP;AAQD,CAXM;;;;IAacO,K;;;;;AACnB,mBAAc;AAAA;AAAA;AAEb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKC,MAAL,GAAcD,CAAd;;AACA,WAAKE,OAAL;AACD;;;SAOD,eAAc;AACZ,aAAO,KAAKC,QAAZ;AACD,K;SAPD,aAAYC,CAAZ,EAAe;AACb,WAAKD,QAAL,GAAgBC,CAAhB;;AACA,WAAKF,OAAL;AACD;;;WAMD,wBAAeE,CAAf,EAAkB;AAChB,WAAKD,QAAL,CAAcT,OAAd,GAAwBU,CAAC,CAACV,OAA1B;AACA,UAAMW,QAAQ,GAAGtB,UAAU,CAAC,KAAKoB,QAAN,EAAgB,KAAKF,MAArB,CAA3B;AAEA,WAAKK,aAAL,CAAmB,IAAIC,oCAAJ,CAAwB,KAAKC,OAAL,CAAaC,WAAb,EAAxB,EAAoDJ,QAApD,CAAnB;;AAEA,WAAKH,OAAL;AACD;;;WAED,6BAAoB;AAClB,WAAKA,OAAL;AACD;;;WAED,mBAAU;AAAA;;AACR,UAAI,CAAC,KAAKD,MAAN,IAAgB,CAAC,KAAKE,QAA1B,EAAoC;AAClC;AACD;;AAED,UAAMO,EAAE,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AACnC5B,QAAAA,KAAK,EAAE,KAAKgB,MADuB;AAEnCjB,QAAAA,OAAO,EAAE,KAAKmB,QAFqB;AAGnCW,QAAAA,eAAe,EAAE,KAAKC,cAAL,CAAoBC,IAApB,CAAyB,IAAzB;AAHkB,OAA1B,CAAX;;AAMAC,2BAASC,MAAT,CAAgBR,EAAhB,EAAoB,IAApB,EAA0B,YAAM;AAC9B,uCAAW,KAAX;AACD,OAFD;AAGD;;;kDA9CgCS,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport Main from './main';\nimport { SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport { renderMath } from '@pie-lib/math-rendering';\nimport get from 'lodash/get';\n\nexport { Main as Component };\n\nexport const isComplete = (session, model) => {\n const rows = get(model, 'config.rows');\n const ids = rows.map((r) => r.id);\n return ids.reduce((acc, id) => {\n if (!acc) {\n return false;\n }\n const arr = session.answers && session.answers[id];\n const hasChoice = Array.isArray(arr) && arr.includes(true);\n return hasChoice && acc;\n }, true);\n};\n\nexport default class Match extends HTMLElement {\n constructor() {\n super();\n }\n\n set model(m) {\n this._model = m;\n this._render();\n }\n\n set session(s) {\n this._session = s;\n this._render();\n }\n\n get session() {\n return this._session;\n }\n\n sessionChanged(s) {\n this._session.answers = s.answers;\n const complete = isComplete(this._session, this._model);\n\n this.dispatchEvent(new SessionChangedEvent(this.tagName.toLowerCase(), complete));\n\n this._render();\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n if (!this._model || !this._session) {\n return;\n }\n\n const el = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onSessionChange: this.sessionChanged.bind(this),\n });\n\n ReactDOM.render(el, this, () => {\n renderMath(this);\n });\n }\n}\n"],"file":"index.js"}
package/lib/main.js CHANGED
@@ -33,9 +33,9 @@ var _answerGrid = _interopRequireDefault(require("./answer-grid"));
33
33
 
34
34
  var _styles = require("@material-ui/core/styles");
35
35
 
36
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
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
37
 
38
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
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
39
 
40
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
41
 
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Main","props","model","config","answers","rows","forEach","row","id","Array","layout","fill","nextProps","isRequired","choiceMode","length","session","Object","keys","onSessionChange","state","show","setState","showCorrect","newAnswers","callOnSessionChange","generateAnswers","regenAnswers","isAnswerRegenerationRequired","disabled","classes","correctness","showCorrectAnswerToggle","mainContainer","teacherInstructions","hidden","visible","collapsible","prompt","main","toggleShowCorrect","correctResponse","view","onAnswerChange","headers","rationale","feedback","React","Component","PropTypes","object","func","styles","theme","color","text","backgroundColor","background","display","flexDirection","justifyContent","width","toggle","paddingBottom","spacing","unit","verticalAlign","marginBottom","paddingTop"],"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} 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:\n (props.session && props.session.answers) ||\n this.generateAnswers(props.model)\n },\n showCorrect: false\n };\n\n this.callOnSessionChange();\n }\n\n generateAnswers = model => {\n const { config } = model;\n const answers = {};\n\n config.rows.forEach(row => {\n answers[row.id] = new Array(config.layout - 1).fill(false);\n });\n\n return answers;\n };\n\n isAnswerRegenerationRequired = nextProps => {\n let isRequired = false;\n\n if (\n this.props.model.config.choiceMode !== nextProps.model.config.choiceMode\n ) {\n isRequired = true;\n }\n\n if (this.props.model.config.layout !== nextProps.model.config.layout) {\n isRequired = true;\n }\n\n if (\n this.props.model.config.rows.length !==\n nextProps.model.config.rows.length ||\n (nextProps.session.answers &&\n nextProps.model.config.rows.length !==\n Object.keys(nextProps.session.answers).length)\n ) {\n isRequired = true;\n }\n\n return isRequired || !nextProps.session.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\n ? this.generateAnswers(nextProps.model)\n : nextProps.session.answers\n },\n showCorrect:\n this.props.model.disabled &&\n !nextProps.model.disabled &&\n state.showCorrect\n ? false\n : 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 = {} } = model;\n const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';\n\n return (\n <div className={classes.mainContainer}>\n {model.teacherInstructions && hasText(model.teacherInstructions) && (\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 <div className={classes.main}>\n <CorrectAnswerToggle\n show={showCorrectAnswerToggle}\n toggled={showCorrect}\n onToggle={this.toggleShowCorrect}\n />\n {showCorrectAnswerToggle && <br />}\n <AnswerGrid\n showCorrect={showCorrect}\n correctAnswers={model.correctResponse}\n disabled={model.disabled}\n view={model.view}\n onAnswerChange={this.onAnswerChange}\n choiceMode={model.config.choiceMode}\n answers={showCorrect ? model.correctResponse : session.answers}\n headers={model.config.headers}\n rows={model.config.rows}\n />\n </div>\n {model.rationale && hasText(model.rationale) && (\n <Collapsible\n labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }}\n className={classes.collapsible}\n >\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n )}\n {model.feedback && (\n <Feedback\n correctness={model.correctness.correctness}\n feedback={model.feedback}\n />\n )}\n </div>\n );\n }\n}\n\nconst styles = theme => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center'\n },\n main: {\n width: '100%'\n },\n toggle: {\n paddingBottom: theme.spacing.unit * 3\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: theme.spacing.unit * 2\n },\n collapsible: {\n paddingTop: theme.spacing.unit * 2,\n paddingBottom: theme.spacing.unit * 2\n }\n});\n\nexport default withStyles(styles)(Main);\n"],"file":"main.js"}
1
+ {"version":3,"sources":["../src/main.jsx"],"names":["Main","props","model","config","answers","rows","forEach","row","id","Array","layout","fill","nextProps","isRequired","choiceMode","length","session","Object","keys","onSessionChange","state","show","setState","showCorrect","newAnswers","callOnSessionChange","generateAnswers","regenAnswers","isAnswerRegenerationRequired","disabled","classes","correctness","showCorrectAnswerToggle","mainContainer","teacherInstructions","hidden","visible","collapsible","prompt","main","toggleShowCorrect","correctResponse","view","onAnswerChange","headers","rationale","feedback","React","Component","PropTypes","object","func","styles","theme","color","text","backgroundColor","background","display","flexDirection","justifyContent","width","toggle","paddingBottom","spacing","unit","verticalAlign","marginBottom","paddingTop"],"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 } 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 { config } = model;\n const answers = {};\n\n config.rows.forEach((row) => {\n answers[row.id] = new Array(config.layout - 1).fill(false);\n });\n\n return answers;\n };\n\n isAnswerRegenerationRequired = (nextProps) => {\n let isRequired = false;\n\n if (this.props.model.config.choiceMode !== nextProps.model.config.choiceMode) {\n isRequired = true;\n }\n\n if (this.props.model.config.layout !== nextProps.model.config.layout) {\n isRequired = true;\n }\n\n if (\n this.props.model.config.rows.length !== nextProps.model.config.rows.length ||\n (nextProps.session.answers &&\n nextProps.model.config.rows.length !== Object.keys(nextProps.session.answers).length)\n ) {\n isRequired = true;\n }\n\n return isRequired || !nextProps.session.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 = {} } = model;\n const showCorrectAnswerToggle = correctness.correctness && correctness.correctness !== 'correct';\n\n return (\n <div className={classes.mainContainer}>\n {model.teacherInstructions && hasText(model.teacherInstructions) && (\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 <div className={classes.main}>\n <CorrectAnswerToggle show={showCorrectAnswerToggle} toggled={showCorrect} onToggle={this.toggleShowCorrect} />\n {showCorrectAnswerToggle && <br />}\n <AnswerGrid\n showCorrect={showCorrect}\n correctAnswers={model.correctResponse}\n disabled={model.disabled}\n view={model.view}\n onAnswerChange={this.onAnswerChange}\n choiceMode={model.config.choiceMode}\n answers={showCorrect ? model.correctResponse : session.answers}\n headers={model.config.headers}\n rows={model.config.rows}\n />\n </div>\n {model.rationale && hasText(model.rationale) && (\n <Collapsible labels={{ hidden: 'Show Rationale', visible: 'Hide Rationale' }} className={classes.collapsible}>\n <PreviewPrompt prompt={model.rationale} />\n </Collapsible>\n )}\n {model.feedback && <Feedback correctness={model.correctness.correctness} feedback={model.feedback} />}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n mainContainer: {\n color: color.text(),\n backgroundColor: color.background(),\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n },\n main: {\n width: '100%',\n },\n toggle: {\n paddingBottom: theme.spacing.unit * 3,\n },\n prompt: {\n verticalAlign: 'middle',\n marginBottom: theme.spacing.unit * 2,\n },\n collapsible: {\n paddingTop: theme.spacing.unit * 2,\n paddingBottom: theme.spacing.unit * 2,\n },\n});\n\nexport default withStyles(styles)(Main);\n"],"file":"main.js"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "repository": "pie-framework/pie-elements",
7
- "version": "4.9.8",
7
+ "version": "4.10.1-beta.1443+449763c04",
8
8
  "main": "lib/index.js",
9
9
  "description": "",
10
10
  "scripts": {
@@ -14,9 +14,9 @@
14
14
  "dependencies": {
15
15
  "@material-ui/core": "^3.9.2",
16
16
  "@pie-framework/pie-player-events": "^0.1.0",
17
- "@pie-lib/correct-answer-toggle": "^2.3.34",
18
- "@pie-lib/math-rendering": "^2.3.12",
19
- "@pie-lib/render-ui": "^4.12.4",
17
+ "@pie-lib/correct-answer-toggle": "^2.3.62",
18
+ "@pie-lib/math-rendering": "^2.5.12",
19
+ "@pie-lib/render-ui": "^4.14.12",
20
20
  "classnames": "^2.2.5",
21
21
  "debug": "^4.1.1",
22
22
  "lodash": "^4.17.10",
@@ -26,6 +26,6 @@
26
26
  },
27
27
  "author": "",
28
28
  "license": "ISC",
29
- "gitHead": "62c971b852c1b1405f96fbb19712f882a9f1504e",
29
+ "gitHead": "449763c046b78327513c38ea5367b8d4da120760",
30
30
  "module": "src/index.js"
31
31
  }