@pie-element/matrix 0.7.1-beta.3 → 0.7.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.
Files changed (41) hide show
  1. package/configure/lib/HeaderCommon.js +19 -0
  2. package/configure/lib/HeaderCommon.js.map +1 -0
  3. package/configure/lib/Main.js +186 -0
  4. package/configure/lib/Main.js.map +1 -0
  5. package/configure/lib/MatrixColumnsSizeHeaderInput.js +56 -0
  6. package/configure/lib/MatrixColumnsSizeHeaderInput.js.map +1 -0
  7. package/configure/lib/MatrixLabelEditableButton.js +173 -0
  8. package/configure/lib/MatrixLabelEditableButton.js.map +1 -0
  9. package/configure/lib/MatrixLabelTypeHeaderInput.js +94 -0
  10. package/configure/lib/MatrixLabelTypeHeaderInput.js.map +1 -0
  11. package/configure/lib/MatrixRowsSizeHeaderInput.js +56 -0
  12. package/configure/lib/MatrixRowsSizeHeaderInput.js.map +1 -0
  13. package/configure/lib/MatrixValues.js +184 -0
  14. package/configure/lib/MatrixValues.js.map +1 -0
  15. package/configure/lib/NumberInput.js +83 -0
  16. package/configure/lib/NumberInput.js.map +1 -0
  17. package/configure/lib/columnLabelsGenerator.js +53 -0
  18. package/configure/lib/columnLabelsGenerator.js.map +1 -0
  19. package/configure/lib/defaults.js +38 -0
  20. package/configure/lib/defaults.js.map +1 -0
  21. package/configure/lib/index.js +125 -0
  22. package/configure/lib/index.js.map +1 -0
  23. package/configure/lib/isNumeric.js +11 -0
  24. package/configure/lib/isNumeric.js.map +1 -0
  25. package/configure/lib/matrixEntities.js +17 -0
  26. package/configure/lib/matrixEntities.js.map +1 -0
  27. package/controller/lib/defaults.js +15 -0
  28. package/controller/lib/defaults.js.map +1 -0
  29. package/controller/lib/index.js +93 -0
  30. package/controller/lib/index.js.map +1 -0
  31. package/lib/ChoiceInput.js +61 -0
  32. package/lib/ChoiceInput.js.map +1 -0
  33. package/lib/Main.js +54 -0
  34. package/lib/Main.js.map +1 -0
  35. package/lib/Matrix.js +92 -0
  36. package/lib/Matrix.js.map +1 -0
  37. package/lib/index.js +94 -0
  38. package/lib/index.js.map +1 -0
  39. package/lib/session-updater.js +10 -0
  40. package/lib/session-updater.js.map +1 -0
  41. package/package.json +2 -2
@@ -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"] = 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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _react = _interopRequireDefault(require("react"));
17
+ var _reactDom = _interopRequireDefault(require("react-dom"));
18
+ var _debug = _interopRequireDefault(require("debug"));
19
+ var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
20
+ var _Main = _interopRequireDefault(require("./Main"));
21
+ var _defaults = _interopRequireDefault(require("lodash/defaults"));
22
+ var _defaults2 = _interopRequireDefault(require("./defaults"));
23
+ 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; }
24
+ 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; }
25
+ 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); }; }
26
+ 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; } }
27
+ var log = (0, _debug["default"])('matrix:configure');
28
+ var prepareCustomizationObject = function prepareCustomizationObject(config, model) {
29
+ var configuration = (0, _defaults["default"])(config, _defaults2["default"].configuration);
30
+ return {
31
+ configuration: configuration,
32
+ model: model
33
+ };
34
+ };
35
+ var Matrix = /*#__PURE__*/function (_HTMLElement) {
36
+ (0, _inherits2["default"])(Matrix, _HTMLElement);
37
+ var _super = _createSuper(Matrix);
38
+ function Matrix() {
39
+ var _this;
40
+ (0, _classCallCheck2["default"])(this, Matrix);
41
+ _this = _super.call(this);
42
+ _this._model = Matrix.createDefaultModel();
43
+ _this._configuration = _defaults2["default"].configuration;
44
+ _this.onModelChanged = _this.onModelChanged.bind((0, _assertThisInitialized2["default"])(_this));
45
+ _this.onConfigurationChanged = _this.onConfigurationChanged.bind((0, _assertThisInitialized2["default"])(_this));
46
+ return _this;
47
+ }
48
+ (0, _createClass2["default"])(Matrix, [{
49
+ key: "model",
50
+ set: function set(s) {
51
+ this._model = Matrix.createDefaultModel(s);
52
+ this._render();
53
+ }
54
+ }, {
55
+ key: "configuration",
56
+ set: function set(c) {
57
+ var info = prepareCustomizationObject(c, this._model);
58
+ this.onModelChanged(info.model);
59
+ this._configuration = info.configuration;
60
+ this._render();
61
+ }
62
+ }, {
63
+ key: "disableSidePanel",
64
+ set: function set(s) {
65
+ this._disableSidePanel = s;
66
+ this._render();
67
+ }
68
+ }, {
69
+ key: "dispatchModelUpdated",
70
+ value: function dispatchModelUpdated(reset) {
71
+ var resetValue = !!reset;
72
+ this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, resetValue));
73
+ }
74
+ }, {
75
+ key: "onModelChanged",
76
+ value: function onModelChanged(m, reset) {
77
+ this._model = m;
78
+ this._render();
79
+ this.dispatchModelUpdated(reset);
80
+ }
81
+ }, {
82
+ key: "onConfigurationChanged",
83
+ value: function onConfigurationChanged(c) {
84
+ this._configuration = prepareCustomizationObject(c, this._model).configuration;
85
+ if (this._model) {
86
+ this.onModelChanged(this._model);
87
+ }
88
+ this._render();
89
+ }
90
+ }, {
91
+ key: "insertSound",
92
+ value: function insertSound(handler) {
93
+ this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
94
+ }
95
+ }, {
96
+ key: "onDeleteSound",
97
+ value: function onDeleteSound(src, done) {
98
+ this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
99
+ }
100
+ }, {
101
+ key: "_render",
102
+ value: function _render() {
103
+ log('_render');
104
+ var element = /*#__PURE__*/_react["default"].createElement(_Main["default"], {
105
+ model: this._model,
106
+ configuration: this._configuration,
107
+ onModelChanged: this.onModelChanged,
108
+ onConfigurationChanged: this.onConfigurationChanged,
109
+ disableSidePanel: this._disableSidePanel,
110
+ uploadSoundSupport: {
111
+ add: this.insertSound.bind(this),
112
+ "delete": this.onDeleteSound.bind(this)
113
+ }
114
+ });
115
+ _reactDom["default"].render(element, this);
116
+ }
117
+ }]);
118
+ return Matrix;
119
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
120
+ exports["default"] = Matrix;
121
+ (0, _defineProperty2["default"])(Matrix, "createDefaultModel", function () {
122
+ var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
123
+ return _objectSpread(_objectSpread({}, _defaults2["default"].model), model);
124
+ });
125
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_reactDom","_debug","_pieConfigureEvents","_Main","_defaults","_defaults2","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","log","debug","prepareCustomizationObject","config","model","configuration","defaults","sensibleDefaults","Matrix","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_model","createDefaultModel","_configuration","onModelChanged","bind","_assertThisInitialized2","onConfigurationChanged","_createClass2","set","s","_render","c","info","_disableSidePanel","value","dispatchModelUpdated","reset","resetValue","dispatchEvent","ModelUpdatedEvent","m","insertSound","handler","InsertSoundEvent","onDeleteSound","src","done","DeleteSoundEvent","element","React","createElement","Main","disableSidePanel","uploadSoundSupport","add","ReactDOM","render","_wrapNativeSuper2","HTMLElement","exports","undefined"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport debug from 'debug';\nimport { ModelUpdatedEvent, InsertSoundEvent, DeleteSoundEvent } from '@pie-framework/pie-configure-events';\n\nimport Main from './Main';\nimport defaults from 'lodash/defaults';\n\nimport sensibleDefaults from './defaults';\n\nconst log = debug('matrix:configure');\n\nconst prepareCustomizationObject = (config, model) => {\n const configuration = defaults(config, sensibleDefaults.configuration);\n\n return {\n configuration,\n model,\n };\n};\n\nexport default class Matrix extends HTMLElement {\n static createDefaultModel = (model = {}) => ({\n ...sensibleDefaults.model,\n ...model,\n });\n\n constructor() {\n super();\n this._model = Matrix.createDefaultModel();\n this._configuration = sensibleDefaults.configuration;\n this.onModelChanged = this.onModelChanged.bind(this);\n this.onConfigurationChanged = this.onConfigurationChanged.bind(this);\n }\n\n set model(s) {\n this._model = Matrix.createDefaultModel(s);\n this._render();\n }\n\n set configuration(c) {\n const info = prepareCustomizationObject(c, this._model);\n\n this.onModelChanged(info.model);\n this._configuration = info.configuration;\n this._render();\n }\n\n set disableSidePanel(s) {\n this._disableSidePanel = s;\n this._render();\n }\n\n dispatchModelUpdated(reset) {\n const resetValue = !!reset;\n\n this.dispatchEvent(new ModelUpdatedEvent(this._model, resetValue));\n }\n\n onModelChanged(m, reset) {\n this._model = m;\n this._render();\n this.dispatchModelUpdated(reset);\n }\n\n onConfigurationChanged(c) {\n this._configuration = prepareCustomizationObject(c, this._model).configuration;\n\n if (this._model) {\n this.onModelChanged(this._model);\n }\n\n this._render();\n }\n\n insertSound(handler) {\n this.dispatchEvent(new InsertSoundEvent(handler));\n }\n\n onDeleteSound(src, done) {\n this.dispatchEvent(new DeleteSoundEvent(src, done));\n }\n\n _render() {\n log('_render');\n let element = React.createElement(Main, {\n model: this._model,\n configuration: this._configuration,\n onModelChanged: this.onModelChanged,\n onConfigurationChanged: this.onConfigurationChanged,\n disableSidePanel: this._disableSidePanel,\n uploadSoundSupport: {\n add: this.insertSound.bind(this),\n delete: this.onDeleteSound.bind(this),\n },\n });\n ReactDOM.render(element, this);\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = function _default(value) {
8
+ return /^-?\d+$/.test(value);
9
+ };
10
+ exports["default"] = _default;
11
+ //# sourceMappingURL=isNumeric.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isNumeric.js","names":["_default","value","test","exports"],"sources":["../src/isNumeric.js"],"sourcesContent":["export default (value) => {\n return /^-?\\d+$/.test(value);\n};\n"],"mappings":";;;;;;eAAe,SAAAA,SAACC,KAAK,EAAK;EACxB,OAAO,SAAS,CAACC,IAAI,CAACD,KAAK,CAAC;AAC9B,CAAC;AAAAE,OAAA,cAAAH,QAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MATRIX_LABEL_TYPE = void 0;
7
+ var MATRIX_LABEL_TYPE = {
8
+ agreement: 'agreement',
9
+ frequency: 'frequency',
10
+ yesNo: 'yesNo',
11
+ importance: 'importance',
12
+ likelihood: 'likelihood',
13
+ like: 'like',
14
+ custom: 'custom'
15
+ };
16
+ exports.MATRIX_LABEL_TYPE = MATRIX_LABEL_TYPE;
17
+ //# sourceMappingURL=matrixEntities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrixEntities.js","names":["MATRIX_LABEL_TYPE","agreement","frequency","yesNo","importance","likelihood","like","custom","exports"],"sources":["../src/matrixEntities.js"],"sourcesContent":["export const MATRIX_LABEL_TYPE = {\n agreement: 'agreement',\n frequency: 'frequency',\n yesNo: 'yesNo',\n importance: 'importance',\n likelihood: 'likelihood',\n like: 'like',\n custom: 'custom',\n};\n"],"mappings":";;;;;;AAAO,IAAMA,iBAAiB,GAAG;EAC/BC,SAAS,EAAE,WAAW;EACtBC,SAAS,EAAE,WAAW;EACtBC,KAAK,EAAE,OAAO;EACdC,UAAU,EAAE,YAAY;EACxBC,UAAU,EAAE,YAAY;EACxBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE;AACV,CAAC;AAACC,OAAA,CAAAR,iBAAA,GAAAA,iBAAA"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = {
8
+ labelType: 'agreement',
9
+ rowLabels: ["I'm interested in politics.", "I'm interested in economics."],
10
+ columnLabels: ['Disagree', 'Unsure', 'Agree'],
11
+ matrixValues: {},
12
+ prompt: 'How interested are you in the following domains?'
13
+ };
14
+ exports["default"] = _default;
15
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","names":["labelType","rowLabels","columnLabels","matrixValues","prompt","exports","_default"],"sources":["../src/defaults.js"],"sourcesContent":["export default {\n labelType: 'agreement',\n rowLabels: [\"I'm interested in politics.\", \"I'm interested in economics.\"],\n columnLabels: ['Disagree', 'Unsure', 'Agree'],\n matrixValues: {},\n prompt: 'How interested are you in the following domains?',\n};\n"],"mappings":";;;;;;eAAe;EACbA,SAAS,EAAE,WAAW;EACtBC,SAAS,EAAE,CAAC,6BAA6B,EAAE,8BAA8B,CAAC;EAC1EC,YAAY,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;EAC7CC,YAAY,EAAE,CAAC,CAAC;EAChBC,MAAM,EAAE;AACV,CAAC;AAAAC,OAAA,cAAAC,QAAA"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createDefaultModel = exports.createCorrectResponseSession = void 0;
8
+ exports.model = model;
9
+ exports.outcome = outcome;
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var _defaults = _interopRequireDefault(require("./defaults"));
14
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
15
+ 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; }
16
+ 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; }
17
+ var createDefaultModel = function createDefaultModel() {
18
+ var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
19
+ return new Promise(function (resolve) {
20
+ return resolve(_objectSpread(_objectSpread({}, _defaults["default"]), model));
21
+ });
22
+ };
23
+
24
+ /**
25
+ *
26
+ * @param {*} question
27
+ * @param {*} session
28
+ * @param {*} env
29
+ */
30
+ exports.createDefaultModel = createDefaultModel;
31
+ function model(_x, _x2, _x3) {
32
+ return _model.apply(this, arguments);
33
+ }
34
+ function _model() {
35
+ _model = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(question, session, env) {
36
+ var normalizedQuestion, out, _ref2, role, mode;
37
+ return _regenerator["default"].wrap(function _callee$(_context) {
38
+ while (1) switch (_context.prev = _context.next) {
39
+ case 0:
40
+ normalizedQuestion = _objectSpread(_objectSpread({}, _defaults["default"]), question);
41
+ out = _objectSpread(_objectSpread({}, normalizedQuestion), {}, {
42
+ disabled: env.mode !== 'gather',
43
+ mode: env.mode
44
+ });
45
+ _ref2 = env || {}, role = _ref2.role, mode = _ref2.mode;
46
+ if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {
47
+ out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;
48
+ } else {
49
+ out.teacherInstructions = null;
50
+ }
51
+ return _context.abrupt("return", out);
52
+ case 5:
53
+ case "end":
54
+ return _context.stop();
55
+ }
56
+ }, _callee);
57
+ }));
58
+ return _model.apply(this, arguments);
59
+ }
60
+ function outcome(model, session) {
61
+ return new Promise(function (resolve) {
62
+ if (!session || (0, _isEmpty["default"])(session)) {
63
+ return resolve({
64
+ score: 0,
65
+ empty: true
66
+ });
67
+ }
68
+ var score = Object.keys(session.value).reduce(function (acc, key) {
69
+ var matrixValue = model.matrixValues[key];
70
+ return acc + (matrixValue || 0);
71
+ }, 0);
72
+ resolve({
73
+ score: score,
74
+ empty: false
75
+ });
76
+ });
77
+ }
78
+ var createCorrectResponseSession = function createCorrectResponseSession(question, env) {
79
+ return new Promise(function (resolve) {
80
+ if (env.mode !== 'evaluate' && env.role === 'instructor') {
81
+ var _ref = question || [],
82
+ matrixValues = _ref.matrixValues;
83
+ resolve({
84
+ id: '1',
85
+ value: matrixValues
86
+ });
87
+ } else {
88
+ resolve(null);
89
+ }
90
+ });
91
+ };
92
+ exports.createCorrectResponseSession = createCorrectResponseSession;
93
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_defaults","_interopRequireDefault","require","_isEmpty","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","createDefaultModel","model","undefined","Promise","resolve","defaults","exports","_x","_x2","_x3","_model","_asyncToGenerator2","_regenerator","mark","_callee","question","session","env","normalizedQuestion","out","_ref2","role","mode","wrap","_callee$","_context","prev","next","disabled","teacherInstructions","teacherInstructionsEnabled","abrupt","stop","outcome","isEmpty","score","empty","value","reduce","acc","matrixValue","matrixValues","createCorrectResponseSession","_ref","id"],"sources":["../src/index.js"],"sourcesContent":["import defaults from './defaults';\nimport isEmpty from 'lodash/isEmpty';\n\nexport const createDefaultModel = (model = {}) => new Promise((resolve) => resolve({ ...defaults, ...model }));\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = { ...defaults, ...question };\n\n const out = {\n ...normalizedQuestion,\n disabled: env.mode !== 'gather',\n mode: env.mode,\n };\n\n const { role, mode } = env || {};\n\n if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {\n out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled\n ? normalizedQuestion.teacherInstructions\n : null;\n } else {\n out.teacherInstructions = null;\n }\n\n return out;\n}\n\nexport function outcome(model, session) {\n return new Promise((resolve) => {\n if (!session || isEmpty(session)) {\n return resolve({ score: 0, empty: true });\n }\n\n const score = Object.keys(session.value).reduce((acc, key) => {\n const matrixValue = model.matrixValues[key];\n return acc + (matrixValue || 0);\n }, 0);\n\n resolve({ score, empty: false });\n });\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise((resolve) => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n const { matrixValues } = question || [];\n\n resolve({\n id: '1',\n value: matrixValues,\n });\n } else {\n resolve(null);\n }\n });\n};\n"],"mappings":"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"}
@@ -0,0 +1,61 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _styles = require("@material-ui/core/styles");
11
+ var _renderUi = require("@pie-lib/render-ui");
12
+ var _Radio = _interopRequireDefault(require("@material-ui/core/Radio"));
13
+ var radioStyles = {
14
+ root: {
15
+ color: "var(--choice-input-color, ".concat(_renderUi.color.text(), ")")
16
+ },
17
+ checked: {
18
+ color: "var(--choice-input-selected-color, ".concat(_renderUi.color.text(), ")")
19
+ }
20
+ };
21
+ var ChoiceInput = (0, _styles.withStyles)(radioStyles)(function (props) {
22
+ var disabled = props.disabled,
23
+ checked = props.checked,
24
+ matrixKey = props.matrixKey,
25
+ matrixValue = props.matrixValue,
26
+ classes = props.classes,
27
+ onChange = props.onChange;
28
+ var onChangeWrapper = function onChangeWrapper() {
29
+ if (disabled) {
30
+ return;
31
+ }
32
+ onChange({
33
+ matrixValue: matrixValue,
34
+ matrixKey: matrixKey
35
+ });
36
+ };
37
+ return /*#__PURE__*/_react["default"].createElement(_Radio["default"], {
38
+ checked: checked,
39
+ onChange: onChangeWrapper,
40
+ disabled: disabled,
41
+ classes: {
42
+ root: classes.root,
43
+ checked: classes.checked
44
+ }
45
+ });
46
+ });
47
+ ChoiceInput.propTypes = {
48
+ checked: _propTypes["default"].bool.isRequired,
49
+ disabled: _propTypes["default"].bool.isRequired,
50
+ matrixValue: _propTypes["default"].number.isRequired,
51
+ matrixKey: _propTypes["default"].string.isRequired,
52
+ classes: _propTypes["default"].object,
53
+ onChange: _propTypes["default"].func.isRequired
54
+ };
55
+ ChoiceInput.defaultProps = {
56
+ checked: false,
57
+ disabled: false
58
+ };
59
+ var _default = ChoiceInput;
60
+ exports["default"] = _default;
61
+ //# sourceMappingURL=ChoiceInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChoiceInput.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_renderUi","_Radio","radioStyles","root","color","concat","text","checked","ChoiceInput","withStyles","props","disabled","matrixKey","matrixValue","classes","onChange","onChangeWrapper","createElement","propTypes","PropTypes","bool","isRequired","number","string","object","func","defaultProps","_default","exports"],"sources":["../src/ChoiceInput.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\n\nimport { color } from '@pie-lib/render-ui';\nimport Radio from '@material-ui/core/Radio';\n\nconst radioStyles = {\n root: {\n color: `var(--choice-input-color, ${color.text()})`,\n },\n checked: {\n color: `var(--choice-input-selected-color, ${color.text()})`,\n },\n};\n\nconst ChoiceInput = withStyles(radioStyles)((props) => {\n const { disabled, checked, matrixKey, matrixValue, classes, onChange } = props;\n\n const onChangeWrapper = () => {\n if (disabled) {\n return;\n }\n onChange({\n matrixValue,\n matrixKey,\n });\n };\n\n return (\n <Radio\n checked={checked}\n onChange={onChangeWrapper}\n disabled={disabled}\n classes={{\n root: classes.root,\n checked: classes.checked,\n }}\n />\n );\n});\n\nChoiceInput.propTypes = {\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n matrixValue: PropTypes.number.isRequired,\n matrixKey: PropTypes.string.isRequired,\n classes: PropTypes.object,\n onChange: PropTypes.func.isRequired,\n};\n\nChoiceInput.defaultProps = {\n checked: false,\n disabled: false,\n};\n\nexport default ChoiceInput;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAL,sBAAA,CAAAC,OAAA;AAEA,IAAMK,WAAW,GAAG;EAClBC,IAAI,EAAE;IACJC,KAAK,+BAAAC,MAAA,CAA+BD,eAAK,CAACE,IAAI,CAAC,CAAC;EAClD,CAAC;EACDC,OAAO,EAAE;IACPH,KAAK,wCAAAC,MAAA,CAAwCD,eAAK,CAACE,IAAI,CAAC,CAAC;EAC3D;AACF,CAAC;AAED,IAAME,WAAW,GAAG,IAAAC,kBAAU,EAACP,WAAW,CAAC,CAAC,UAACQ,KAAK,EAAK;EACrD,IAAQC,QAAQ,GAAyDD,KAAK,CAAtEC,QAAQ;IAAEJ,OAAO,GAAgDG,KAAK,CAA5DH,OAAO;IAAEK,SAAS,GAAqCF,KAAK,CAAnDE,SAAS;IAAEC,WAAW,GAAwBH,KAAK,CAAxCG,WAAW;IAAEC,OAAO,GAAeJ,KAAK,CAA3BI,OAAO;IAAEC,QAAQ,GAAKL,KAAK,CAAlBK,QAAQ;EAEpE,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC5B,IAAIL,QAAQ,EAAE;MACZ;IACF;IACAI,QAAQ,CAAC;MACPF,WAAW,EAAXA,WAAW;MACXD,SAAS,EAATA;IACF,CAAC,CAAC;EACJ,CAAC;EAED,oBACEjB,MAAA,YAAAsB,aAAA,CAAChB,MAAA,WAAK;IACJM,OAAO,EAAEA,OAAQ;IACjBQ,QAAQ,EAAEC,eAAgB;IAC1BL,QAAQ,EAAEA,QAAS;IACnBG,OAAO,EAAE;MACPX,IAAI,EAAEW,OAAO,CAACX,IAAI;MAClBI,OAAO,EAAEO,OAAO,CAACP;IACnB;EAAE,CACH,CAAC;AAEN,CAAC,CAAC;AAEFC,WAAW,CAACU,SAAS,GAAG;EACtBX,OAAO,EAAEY,qBAAS,CAACC,IAAI,CAACC,UAAU;EAClCV,QAAQ,EAAEQ,qBAAS,CAACC,IAAI,CAACC,UAAU;EACnCR,WAAW,EAAEM,qBAAS,CAACG,MAAM,CAACD,UAAU;EACxCT,SAAS,EAAEO,qBAAS,CAACI,MAAM,CAACF,UAAU;EACtCP,OAAO,EAAEK,qBAAS,CAACK,MAAM;EACzBT,QAAQ,EAAEI,qBAAS,CAACM,IAAI,CAACJ;AAC3B,CAAC;AAEDb,WAAW,CAACkB,YAAY,GAAG;EACzBnB,OAAO,EAAE,KAAK;EACdI,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAgB,QAAA,GAEanB,WAAW;AAAAoB,OAAA,cAAAD,QAAA"}
package/lib/Main.js ADDED
@@ -0,0 +1,54 @@
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 _renderUi = require("@pie-lib/render-ui");
18
+ var _Matrix = _interopRequireDefault(require("./Matrix"));
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 Main = /*#__PURE__*/function (_React$Component) {
22
+ (0, _inherits2["default"])(Main, _React$Component);
23
+ var _super = _createSuper(Main);
24
+ function Main() {
25
+ (0, _classCallCheck2["default"])(this, Main);
26
+ return _super.apply(this, arguments);
27
+ }
28
+ (0, _createClass2["default"])(Main, [{
29
+ key: "render",
30
+ value: function render() {
31
+ var _this$props = this.props,
32
+ model = _this$props.model,
33
+ onSessionChange = _this$props.onSessionChange,
34
+ session = _this$props.session;
35
+ return /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewLayout, null, /*#__PURE__*/_react["default"].createElement(_Matrix["default"], (0, _extends2["default"])({}, model, {
36
+ session: session,
37
+ onSessionChange: onSessionChange
38
+ })));
39
+ }
40
+ }]);
41
+ return Main;
42
+ }(_react["default"].Component);
43
+ (0, _defineProperty2["default"])(Main, "propTypes", {
44
+ model: _propTypes["default"].object,
45
+ session: _propTypes["default"].object,
46
+ onSessionChange: _propTypes["default"].func
47
+ });
48
+ (0, _defineProperty2["default"])(Main, "defaultProps", {
49
+ model: {},
50
+ session: {}
51
+ });
52
+ var _default = Main;
53
+ exports["default"] = _default;
54
+ //# sourceMappingURL=Main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Main.js","names":["_react","_interopRequireDefault","require","_propTypes","_renderUi","_Matrix","_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","_classCallCheck2","_createClass2","key","value","render","_this$props","props","model","onSessionChange","session","createElement","PreviewLayout","_extends2","React","Component","_defineProperty2","PropTypes","object","func","_default","exports"],"sources":["../src/Main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { PreviewLayout } from '@pie-lib/render-ui';\nimport Matrix from './Matrix';\n\nclass Main extends React.Component {\n static propTypes = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSessionChange: PropTypes.func,\n };\n\n static defaultProps = {\n model: {},\n session: {},\n };\n\n render() {\n const { model, onSessionChange, session } = this.props;\n return (\n <PreviewLayout>\n <Matrix {...model} session={session} onSessionChange={onSessionChange} />\n </PreviewLayout>\n );\n }\n}\n\nexport default Main;\n"],"mappings":";;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAA8B,SAAAI,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,aAAAL,OAAA,GAAAM,MAAA,MAAAL,yBAAA,QAAAM,SAAA,OAAAF,gBAAA,mBAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAN,KAAA,EAAAO,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAF,KAAA,CAAAQ,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,mBAAAP,MAAA;AAAA,SAAAJ,0BAAA,eAAAO,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA;AAAA,IAExBC,IAAI,0BAAAC,gBAAA;EAAA,IAAAC,UAAA,aAAAF,IAAA,EAAAC,gBAAA;EAAA,IAAAE,MAAA,GAAAzB,YAAA,CAAAsB,IAAA;EAAA,SAAAA,KAAA;IAAA,IAAAI,gBAAA,mBAAAJ,IAAA;IAAA,OAAAG,MAAA,CAAAZ,KAAA,OAAAD,SAAA;EAAA;EAAA,IAAAe,aAAA,aAAAL,IAAA;IAAAM,GAAA;IAAAC,KAAA,EAYR,SAAAC,OAAA,EAAS;MACP,IAAAC,WAAA,GAA4C,IAAI,CAACC,KAAK;QAA9CC,KAAK,GAAAF,WAAA,CAALE,KAAK;QAAEC,eAAe,GAAAH,WAAA,CAAfG,eAAe;QAAEC,OAAO,GAAAJ,WAAA,CAAPI,OAAO;MACvC,oBACEzC,MAAA,YAAA0C,aAAA,CAACtC,SAAA,CAAAuC,aAAa,qBACZ3C,MAAA,YAAA0C,aAAA,CAACrC,OAAA,WAAM,MAAAuC,SAAA,iBAAKL,KAAK;QAAEE,OAAO,EAAEA,OAAQ;QAACD,eAAe,EAAEA;MAAgB,EAAE,CAC3D,CAAC;IAEpB;EAAC;EAAA,OAAAZ,IAAA;AAAA,EAnBgBiB,iBAAK,CAACC,SAAS;AAAA,IAAAC,gBAAA,aAA5BnB,IAAI,eACW;EACjBW,KAAK,EAAES,qBAAS,CAACC,MAAM;EACvBR,OAAO,EAAEO,qBAAS,CAACC,MAAM;EACzBT,eAAe,EAAEQ,qBAAS,CAACE;AAC7B,CAAC;AAAA,IAAAH,gBAAA,aALGnB,IAAI,kBAOc;EACpBW,KAAK,EAAE,CAAC,CAAC;EACTE,OAAO,EAAE,CAAC;AACZ,CAAC;AAAA,IAAAU,QAAA,GAYYvB,IAAI;AAAAwB,OAAA,cAAAD,QAAA"}
package/lib/Matrix.js ADDED
@@ -0,0 +1,92 @@
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+ var _ChoiceInput = _interopRequireDefault(require("./ChoiceInput"));
14
+ var _renderUi = require("@pie-lib/render-ui");
15
+ var _templateObject, _templateObject2, _templateObject3;
16
+ var MatrixWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-family: Roboto, Arial, Helvetica, sans-serif;\n"])));
17
+ var MatrixGridWrapper = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: grid;\n grid-template-columns: ", ";\n grid-column-gap: 30px;\n grid-row-gap: 20px;\n margin-top: 40px;\n"])), function (props) {
18
+ return props.gridTemplateColumns;
19
+ });
20
+ var MatrixGridItem = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n align-self: center;\n justify-self: center;\n white-space: nowrap;\n"])));
21
+ var Matrix = function Matrix(props) {
22
+ var disabled = props.disabled,
23
+ prompt = props.prompt,
24
+ onSessionChange = props.onSessionChange,
25
+ columnLabels = props.columnLabels,
26
+ matrixValues = props.matrixValues,
27
+ rowLabels = props.rowLabels,
28
+ session = props.session,
29
+ teacherInstructions = props.teacherInstructions;
30
+ var gridMatrixItems = [];
31
+ for (var rowIndex = 0; rowIndex < rowLabels.length + 1; rowIndex++) {
32
+ for (var columnIndex = 0; columnIndex < columnLabels.length + 1; columnIndex++) {
33
+ var gridMatrixItem = void 0;
34
+ if (rowIndex === 0 && columnIndex === 0) {
35
+ gridMatrixItem = null;
36
+ } else if (rowIndex === 0) {
37
+ gridMatrixItem = columnLabels[columnIndex - 1];
38
+ } else if (columnIndex === 0) {
39
+ gridMatrixItem = rowLabels[rowIndex - 1];
40
+ } else {
41
+ var matrixKey = "".concat(rowIndex - 1, "-").concat(columnIndex - 1);
42
+ var matrixValue = matrixValues[matrixKey];
43
+ gridMatrixItem = /*#__PURE__*/_react["default"].createElement(_ChoiceInput["default"], {
44
+ matrixKey: matrixKey,
45
+ matrixValue: matrixValue || 0,
46
+ disabled: disabled,
47
+ onChange: onSessionChange,
48
+ checked: session.value && session.value.hasOwnProperty(matrixKey)
49
+ });
50
+ }
51
+ gridMatrixItems.push(gridMatrixItem);
52
+ }
53
+ }
54
+ var gridTemplateColumns = [].concat((0, _toConsumableArray2["default"])(columnLabels), [{}]).map(function () {
55
+ return 'min-content';
56
+ }).join(' ');
57
+ return /*#__PURE__*/_react["default"].createElement(MatrixWrapper, null, teacherInstructions && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_renderUi.Collapsible, {
58
+ labels: {
59
+ hidden: 'Show Teacher Instructions',
60
+ visible: 'Hide Teacher Instructions'
61
+ }
62
+ }, /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
63
+ prompt: teacherInstructions
64
+ })), /*#__PURE__*/_react["default"].createElement("br", null)), /*#__PURE__*/_react["default"].createElement(_renderUi.PreviewPrompt, {
65
+ className: "prompt",
66
+ prompt: prompt
67
+ }), /*#__PURE__*/_react["default"].createElement(MatrixGridWrapper, {
68
+ gridTemplateColumns: gridTemplateColumns
69
+ }, gridMatrixItems.map(function (gridMatrixItem, gridMatrixIndex) {
70
+ return /*#__PURE__*/_react["default"].createElement(MatrixGridItem, {
71
+ key: "".concat(gridMatrixIndex)
72
+ }, gridMatrixItem);
73
+ })));
74
+ };
75
+ Matrix.propTypes = {
76
+ prompt: _propTypes["default"].string,
77
+ teacherInstructions: _propTypes["default"].string,
78
+ session: _propTypes["default"].object,
79
+ matrixValues: _propTypes["default"].object,
80
+ rowLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
81
+ columnLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
82
+ disabled: _propTypes["default"].bool.isRequired,
83
+ onSessionChange: _propTypes["default"].func.isRequired
84
+ };
85
+ Matrix.defaultProps = {
86
+ session: {
87
+ value: {}
88
+ }
89
+ };
90
+ var _default = Matrix;
91
+ exports["default"] = _default;
92
+ //# sourceMappingURL=Matrix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Matrix.js","names":["_react","_interopRequireDefault","require","_propTypes","_styledComponents","_ChoiceInput","_renderUi","_templateObject","_templateObject2","_templateObject3","MatrixWrapper","styled","div","_taggedTemplateLiteral2","MatrixGridWrapper","props","gridTemplateColumns","MatrixGridItem","Matrix","disabled","prompt","onSessionChange","columnLabels","matrixValues","rowLabels","session","teacherInstructions","gridMatrixItems","rowIndex","length","columnIndex","gridMatrixItem","matrixKey","concat","matrixValue","createElement","onChange","checked","value","hasOwnProperty","push","_toConsumableArray2","map","join","Fragment","Collapsible","labels","hidden","visible","PreviewPrompt","className","gridMatrixIndex","key","propTypes","PropTypes","string","object","arrayOf","bool","isRequired","func","defaultProps","_default","exports"],"sources":["../src/Matrix.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nimport ChoiceInput from './ChoiceInput';\nimport { Collapsible, PreviewPrompt } from '@pie-lib/render-ui';\n\nconst MatrixWrapper = styled.div`\n font-family: Roboto, Arial, Helvetica, sans-serif;\n`;\n\nconst MatrixGridWrapper = styled.div`\n display: grid;\n grid-template-columns: ${(props) => props.gridTemplateColumns};\n grid-column-gap: 30px;\n grid-row-gap: 20px;\n margin-top: 40px;\n`;\n\nconst MatrixGridItem = styled.div`\n align-self: center;\n justify-self: center;\n white-space: nowrap;\n`;\n\nconst Matrix = (props) => {\n const { disabled, prompt, onSessionChange, columnLabels, matrixValues, rowLabels, session, teacherInstructions } =\n props;\n\n const gridMatrixItems = [];\n\n for (let rowIndex = 0; rowIndex < rowLabels.length + 1; rowIndex++) {\n for (let columnIndex = 0; columnIndex < columnLabels.length + 1; columnIndex++) {\n let gridMatrixItem;\n if (rowIndex === 0 && columnIndex === 0) {\n gridMatrixItem = null;\n } else if (rowIndex === 0) {\n gridMatrixItem = columnLabels[columnIndex - 1];\n } else if (columnIndex === 0) {\n gridMatrixItem = rowLabels[rowIndex - 1];\n } else {\n const matrixKey = `${rowIndex - 1}-${columnIndex - 1}`;\n const matrixValue = matrixValues[matrixKey];\n gridMatrixItem = (\n <ChoiceInput\n matrixKey={matrixKey}\n matrixValue={matrixValue || 0}\n disabled={disabled}\n onChange={onSessionChange}\n checked={session.value && session.value.hasOwnProperty(matrixKey)}\n />\n );\n }\n gridMatrixItems.push(gridMatrixItem);\n }\n }\n const gridTemplateColumns = [...columnLabels, {}].map(() => 'min-content').join(' ');\n\n return (\n <MatrixWrapper>\n {teacherInstructions && (\n <React.Fragment>\n <Collapsible\n labels={{\n hidden: 'Show Teacher Instructions',\n visible: 'Hide Teacher Instructions',\n }}\n >\n <PreviewPrompt prompt={teacherInstructions} />\n </Collapsible>\n <br />\n </React.Fragment>\n )}\n <PreviewPrompt className=\"prompt\" prompt={prompt} />\n <MatrixGridWrapper gridTemplateColumns={gridTemplateColumns}>\n {gridMatrixItems.map((gridMatrixItem, gridMatrixIndex) => {\n return <MatrixGridItem key={`${gridMatrixIndex}`}>{gridMatrixItem}</MatrixGridItem>;\n })}\n </MatrixGridWrapper>\n </MatrixWrapper>\n );\n};\n\nMatrix.propTypes = {\n prompt: PropTypes.string,\n teacherInstructions: PropTypes.string,\n session: PropTypes.object,\n matrixValues: PropTypes.object,\n rowLabels: PropTypes.arrayOf(PropTypes.string),\n columnLabels: PropTypes.arrayOf(PropTypes.string),\n disabled: PropTypes.bool.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n};\n\nMatrix.defaultProps = {\n session: {\n value: {},\n },\n};\n\nexport default Matrix;\n"],"mappings":"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"}