@pie-element/multi-trait-rubric 6.1.0 → 6.2.0-mui-update.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/configure/CHANGELOG.md +11 -0
  3. package/configure/lib/common.js +379 -534
  4. package/configure/lib/common.js.map +1 -1
  5. package/configure/lib/defaults.js +35 -6
  6. package/configure/lib/defaults.js.map +1 -1
  7. package/configure/lib/index.js +96 -162
  8. package/configure/lib/index.js.map +1 -1
  9. package/configure/lib/main.js +346 -437
  10. package/configure/lib/main.js.map +1 -1
  11. package/configure/lib/modals.js +178 -333
  12. package/configure/lib/modals.js.map +1 -1
  13. package/configure/lib/scale.js +358 -463
  14. package/configure/lib/scale.js.map +1 -1
  15. package/configure/lib/trait.js +253 -358
  16. package/configure/lib/trait.js.map +1 -1
  17. package/configure/lib/traitsHeader.js +201 -264
  18. package/configure/lib/traitsHeader.js.map +1 -1
  19. package/configure/lib/utils.js +42 -73
  20. package/configure/lib/utils.js.map +1 -1
  21. package/configure/package.json +12 -9
  22. package/controller/CHANGELOG.md +8 -0
  23. package/controller/lib/defaults.js +2 -3
  24. package/controller/lib/defaults.js.map +1 -1
  25. package/controller/lib/index.js +66 -123
  26. package/controller/lib/index.js.map +1 -1
  27. package/controller/lib/utils.js +1 -3
  28. package/controller/lib/utils.js.map +1 -1
  29. package/controller/package.json +1 -1
  30. package/lib/index.js +40 -77
  31. package/lib/index.js.map +1 -1
  32. package/lib/main.js +99 -140
  33. package/lib/main.js.map +1 -1
  34. package/lib/scale.js +217 -299
  35. package/lib/scale.js.map +1 -1
  36. package/lib/trait.js +51 -71
  37. package/lib/trait.js.map +1 -1
  38. package/package.json +15 -8
  39. package/LICENSE.md +0 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["createDefaultModel","model","Promise","resolve","defaults","normalize","question","session","env","normalizedQuestion","role","visible","visibleToStudent","scales","excludeZero","parsedScales","map","scale","getScore","outcome","score","empty","createCorrectResponseSession","mode","id","validate","config","description","pointLabels","errors","traitsErrors","scorePointsErrors","forEach","scaleIndex","traits","scorePointsLabels","scaleErrors","scorePointsLabelsErrors","scorePointLabel","scoreIndex","identicalScorePointLabel","slice","some","s","Object","keys","length","trait","traitIndex","name","identicalTraitName","t","identicalTraitDescr"],"mappings":"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","sourcesContent":["import defaults from './defaults';\nimport { markupToText } from './utils';\n\nexport function createDefaultModel(model = {}) {\n return new Promise((resolve) => resolve({ ...defaults, ...model }));\n}\n\nexport const normalize = (question) => ({ ...defaults, ...question });\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = normalize(question);\n\n if (!env.role || env.role === 'student') {\n normalizedQuestion.visible = normalizedQuestion.visibleToStudent;\n } else {\n normalizedQuestion.visible = true;\n }\n\n // todo update pie-ui instead of parsing this here:\n const { scales, excludeZero } = normalizedQuestion || {};\n const parsedScales = (scales || []).map((scale) => ({ ...scale, excludeZero }));\n\n return {\n ...normalizedQuestion,\n scales: parsedScales,\n };\n}\n\nexport const getScore = () => 0;\n\n/**\n * @param {Object} model - the main model\n * @param {*} session\n * @param {Object} env\n */\nexport function outcome() {\n return new Promise((resolve) => resolve({ score: 0, empty: true }));\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise((resolve) => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n resolve({ id: '1' });\n } else {\n resolve(null);\n }\n });\n};\n\n// IMPORTANT! If you make any changes to this function, please make sure you also update complex-rubric/controller/validateMultiTraitRubric function!“.\nexport const validate = (model, config) => {\n const { scales, description = false, pointLabels = false } = model;\n const errors = {};\n const traitsErrors = {};\n const scorePointsErrors = {};\n\n (scales || []).forEach((scale, scaleIndex) => {\n const { traits = [] } = scale;\n const { scorePointsLabels = [] } = scale;\n const scaleErrors = {};\n const scorePointsLabelsErrors = {};\n\n if (pointLabels) {\n scorePointsLabels.forEach((scorePointLabel, scoreIndex) => {\n if (!scorePointLabel || scorePointLabel === '<div></div>') {\n scorePointsLabelsErrors[scoreIndex] = 'Points labels should not be empty.';\n } else {\n const identicalScorePointLabel = scorePointsLabels\n .slice(scoreIndex + 1)\n .some((s) => markupToText(s) === markupToText(scorePointLabel));\n\n if (identicalScorePointLabel) {\n scorePointsLabelsErrors[scoreIndex] = 'Points labels should be unique.';\n }\n }\n });\n }\n\n if (Object.keys(scorePointsLabelsErrors).length > 0) {\n scorePointsErrors[scaleIndex] = scorePointsLabelsErrors;\n }\n\n traits.forEach((trait, traitIndex) => {\n if (!trait.name || trait.name === '<div></div>') {\n scaleErrors[traitIndex] = { name: 'Trait names should not be empty.' };\n } else {\n const identicalTraitName = traits\n .slice(traitIndex + 1)\n .some((t) => markupToText(t.name) === markupToText(trait.name));\n\n if (identicalTraitName) {\n scaleErrors[traitIndex] = { name: 'Trait names should be unique.' };\n }\n }\n if (description && (!trait.description || trait.description === '<div></div>')) {\n scaleErrors[traitIndex] = { ...scaleErrors[traitIndex], description: 'Trait description should not be empty' };\n } else {\n const identicalTraitDescr = traits\n .slice(traitIndex + 1)\n .some((t) => markupToText(t.description) === markupToText(trait.description));\n\n if (description && identicalTraitDescr) {\n scaleErrors[traitIndex] = { ...scaleErrors[traitIndex], description: 'Trait descriptions should be unique.' };\n }\n }\n });\n if (Object.keys(scaleErrors).length > 0) {\n traitsErrors[scaleIndex] = scaleErrors;\n }\n });\n\n if (Object.keys(traitsErrors).length > 0) {\n errors.traitsErrors = traitsErrors;\n }\n\n if (Object.keys(scorePointsErrors).length > 0) {\n errors.scorePointsErrors = scorePointsErrors;\n }\n\n return errors;\n};\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["_defaults","_interopRequireDefault","require","_utils","createDefaultModel","model","Promise","resolve","defaults","normalize","question","exports","session","env","normalizedQuestion","role","visible","visibleToStudent","scales","excludeZero","parsedScales","map","scale","getScore","outcome","score","empty","createCorrectResponseSession","mode","id","validate","config","description","pointLabels","errors","traitsErrors","scorePointsErrors","forEach","scaleIndex","traits","scorePointsLabels","scaleErrors","scorePointsLabelsErrors","scorePointLabel","scoreIndex","identicalScorePointLabel","slice","some","s","markupToText","Object","keys","length","trait","traitIndex","name","identicalTraitName","t","identicalTraitDescr"],"sources":["../src/index.js"],"sourcesContent":["import defaults from './defaults';\nimport { markupToText } from './utils';\n\nexport function createDefaultModel(model = {}) {\n return new Promise((resolve) => resolve({ ...defaults, ...model }));\n}\n\nexport const normalize = (question) => ({ ...defaults, ...question });\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = normalize(question);\n\n if (!env.role || env.role === 'student') {\n normalizedQuestion.visible = normalizedQuestion.visibleToStudent;\n } else {\n normalizedQuestion.visible = true;\n }\n\n // todo update pie-ui instead of parsing this here:\n const { scales, excludeZero } = normalizedQuestion || {};\n const parsedScales = (scales || []).map((scale) => ({ ...scale, excludeZero }));\n\n return {\n ...normalizedQuestion,\n scales: parsedScales,\n };\n}\n\nexport const getScore = () => 0;\n\n/**\n * @param {Object} model - the main model\n * @param {*} session\n * @param {Object} env\n */\nexport function outcome() {\n return new Promise((resolve) => resolve({ score: 0, empty: true }));\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise((resolve) => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n resolve({ id: '1' });\n } else {\n resolve(null);\n }\n });\n};\n\n// IMPORTANT! If you make any changes to this function, please make sure you also update complex-rubric/controller/validateMultiTraitRubric function!“.\nexport const validate = (model, config) => {\n const { scales, description = false, pointLabels = false } = model;\n const errors = {};\n const traitsErrors = {};\n const scorePointsErrors = {};\n\n (scales || []).forEach((scale, scaleIndex) => {\n const { traits = [] } = scale;\n const { scorePointsLabels = [] } = scale;\n const scaleErrors = {};\n const scorePointsLabelsErrors = {};\n\n if (pointLabels) {\n scorePointsLabels.forEach((scorePointLabel, scoreIndex) => {\n if (!scorePointLabel || scorePointLabel === '<div></div>') {\n scorePointsLabelsErrors[scoreIndex] = 'Points labels should not be empty.';\n } else {\n const identicalScorePointLabel = scorePointsLabels\n .slice(scoreIndex + 1)\n .some((s) => markupToText(s) === markupToText(scorePointLabel));\n\n if (identicalScorePointLabel) {\n scorePointsLabelsErrors[scoreIndex] = 'Points labels should be unique.';\n }\n }\n });\n }\n\n if (Object.keys(scorePointsLabelsErrors).length > 0) {\n scorePointsErrors[scaleIndex] = scorePointsLabelsErrors;\n }\n\n traits.forEach((trait, traitIndex) => {\n if (!trait.name || trait.name === '<div></div>') {\n scaleErrors[traitIndex] = { name: 'Trait names should not be empty.' };\n } else {\n const identicalTraitName = traits\n .slice(traitIndex + 1)\n .some((t) => markupToText(t.name) === markupToText(trait.name));\n\n if (identicalTraitName) {\n scaleErrors[traitIndex] = { name: 'Trait names should be unique.' };\n }\n }\n if (description && (!trait.description || trait.description === '<div></div>')) {\n scaleErrors[traitIndex] = { ...scaleErrors[traitIndex], description: 'Trait description should not be empty' };\n } else {\n const identicalTraitDescr = traits\n .slice(traitIndex + 1)\n .some((t) => markupToText(t.description) === markupToText(trait.description));\n\n if (description && identicalTraitDescr) {\n scaleErrors[traitIndex] = { ...scaleErrors[traitIndex], description: 'Trait descriptions should be unique.' };\n }\n }\n });\n if (Object.keys(scaleErrors).length > 0) {\n traitsErrors[scaleIndex] = scaleErrors;\n }\n });\n\n if (Object.keys(traitsErrors).length > 0) {\n errors.traitsErrors = traitsErrors;\n }\n\n if (Object.keys(scorePointsErrors).length > 0) {\n errors.scorePointsErrors = scorePointsErrors;\n }\n\n return errors;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -4,10 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.markupToText = void 0;
7
-
8
- var markupToText = function markupToText(s) {
7
+ const markupToText = s => {
9
8
  return (s || '').replace(/(<([^>]+)>)/ig, '');
10
9
  };
11
-
12
10
  exports.markupToText = markupToText;
13
11
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils.js"],"names":["markupToText","s","replace"],"mappings":";;;;;;;AAAO,IAAMA,YAAY,GAAG,SAAfA,YAAe,CAACC,CAAD,EAAO;AAC/B,SAAO,CAACA,CAAC,IAAI,EAAN,EAAUC,OAAV,CAAkB,eAAlB,EAAmC,EAAnC,CAAP;AACH,CAFM","sourcesContent":["export const markupToText = (s) => {\n return (s || '').replace(/(<([^>]+)>)/ig, '');\n};\n"],"file":"utils.js"}
1
+ {"version":3,"file":"utils.js","names":["markupToText","s","replace","exports"],"sources":["../src/utils.js"],"sourcesContent":["export const markupToText = (s) => {\n return (s || '').replace(/(<([^>]+)>)/ig, '');\n};\n"],"mappings":";;;;;;AAAO,MAAMA,YAAY,GAAIC,CAAC,IAAK;EAC/B,OAAO,CAACA,CAAC,IAAI,EAAE,EAAEC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;AACjD,CAAC;AAACC,OAAA,CAAAH,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pie-element/multi-trait-rubric-controller",
3
3
  "private": true,
4
- "version": "4.1.0",
4
+ "version": "4.1.1",
5
5
  "description": "",
6
6
  "main": "lib/index.js",
7
7
  "module": "src/index.js",
package/lib/index.js CHANGED
@@ -1,91 +1,54 @@
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"] = 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 _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
-
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
-
20
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
21
-
7
+ exports.default = void 0;
22
8
  var _react = _interopRequireDefault(require("react"));
23
-
24
- var _reactDom = _interopRequireDefault(require("react-dom"));
25
-
9
+ var _client = require("react-dom/client");
26
10
  var _piePlayerEvents = require("@pie-framework/pie-player-events");
27
-
28
11
  var _main = _interopRequireDefault(require("./main"));
29
-
30
12
  var _mathRendering = require("@pie-lib/math-rendering");
31
-
32
- 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); }; }
33
-
34
- 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; } }
35
-
36
- var MultiTraitRubric = /*#__PURE__*/function (_HTMLElement) {
37
- (0, _inherits2["default"])(MultiTraitRubric, _HTMLElement);
38
-
39
- var _super = _createSuper(MultiTraitRubric);
40
-
41
- function MultiTraitRubric() {
42
- var _this;
43
-
44
- (0, _classCallCheck2["default"])(this, MultiTraitRubric);
45
- _this = _super.call(this);
46
- _this._model = {};
47
- _this._session = null;
48
- return _this;
13
+ class MultiTraitRubric extends HTMLElement {
14
+ constructor() {
15
+ super();
16
+ this._model = {};
17
+ this._session = null;
18
+ this._root = null;
49
19
  }
50
-
51
- (0, _createClass2["default"])(MultiTraitRubric, [{
52
- key: "model",
53
- set: function set(s) {
54
- this._model = s;
55
- this.dispatchEvent(new _piePlayerEvents.ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));
56
-
57
- this._render();
58
- }
59
- }, {
60
- key: "session",
61
- get: function get() {
62
- return this._session;
63
- },
64
- set: function set(s) {
65
- this._session = s;
66
- }
67
- }, {
68
- key: "connectedCallback",
69
- value: function connectedCallback() {
70
- this._render();
20
+ set model(s) {
21
+ this._model = s;
22
+ this.dispatchEvent(new _piePlayerEvents.ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));
23
+ this._render();
24
+ }
25
+ set session(s) {
26
+ this._session = s;
27
+ }
28
+ get session() {
29
+ return this._session;
30
+ }
31
+ connectedCallback() {
32
+ this._render();
33
+ }
34
+ _render() {
35
+ const el = /*#__PURE__*/_react.default.createElement(_main.default, {
36
+ model: this._model,
37
+ session: this._session
38
+ });
39
+ if (!this._root) {
40
+ this._root = (0, _client.createRoot)(this);
71
41
  }
72
- }, {
73
- key: "_render",
74
- value: function _render() {
75
- var _this2 = this;
76
-
77
- var el = /*#__PURE__*/_react["default"].createElement(_main["default"], {
78
- model: this._model,
79
- session: this._session
80
- });
81
-
82
- _reactDom["default"].render(el, this, function () {
83
- (0, _mathRendering.renderMath)(_this2);
84
- });
42
+ this._root.render(el);
43
+ queueMicrotask(() => {
44
+ (0, _mathRendering.renderMath)(this);
45
+ });
46
+ }
47
+ disconnectedCallback() {
48
+ if (this._root) {
49
+ this._root.unmount();
85
50
  }
86
- }]);
87
- return MultiTraitRubric;
88
- }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
89
-
90
- exports["default"] = MultiTraitRubric;
51
+ }
52
+ }
53
+ exports.default = MultiTraitRubric;
91
54
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.js"],"names":["MultiTraitRubric","_model","_session","s","dispatchEvent","ModelSetEvent","tagName","toLowerCase","_render","el","React","createElement","Main","model","session","ReactDOM","render","HTMLElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;IAEqBA,gB;;;;;AACnB,8BAAc;AAAA;;AAAA;AACZ;AACA,UAAKC,MAAL,GAAc,EAAd;AACA,UAAKC,QAAL,GAAgB,IAAhB;AAHY;AAIb;;;;SAED,aAAUC,CAAV,EAAa;AACX,WAAKF,MAAL,GAAcE,CAAd;AACA,WAAKC,aAAL,CAAmB,IAAIC,8BAAJ,CAAkB,KAAKC,OAAL,CAAaC,WAAb,EAAlB,EAA8C,KAAKL,QAAnD,EAA6D,CAAC,CAAC,KAAKD,MAApE,CAAnB;;AAEA,WAAKO,OAAL;AACD;;;SAMD,eAAc;AACZ,aAAO,KAAKN,QAAZ;AACD,K;SAND,aAAYC,CAAZ,EAAe;AACb,WAAKD,QAAL,GAAgBC,CAAhB;AACD;;;WAMD,6BAAoB;AAClB,WAAKK,OAAL;AACD;;;WAED,mBAAU;AAAA;;AACR,UAAMC,EAAE,gBAAGC,kBAAMC,aAAN,CAAoBC,gBAApB,EAA0B;AAAEC,QAAAA,KAAK,EAAE,KAAKZ,MAAd;AAAsBa,QAAAA,OAAO,EAAE,KAAKZ;AAApC,OAA1B,CAAX;;AAEAa,2BAASC,MAAT,CAAgBP,EAAhB,EAAoB,IAApB,EAA0B,YAAM;AAC9B,uCAAW,MAAX;AACD,OAFD;AAGD;;;kDAhC2CQ,W","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { ModelSetEvent } from '@pie-framework/pie-player-events';\nimport Main from './main';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nexport default class MultiTraitRubric extends HTMLElement {\n constructor() {\n super();\n this._model = {};\n this._session = null;\n }\n\n set model(s) {\n this._model = s;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));\n\n this._render();\n }\n\n set session(s) {\n this._session = s;\n }\n\n get session() {\n return this._session;\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n const el = React.createElement(Main, { model: this._model, session: this._session });\n\n ReactDOM.render(el, this, () => {\n renderMath(this);\n });\n }\n}\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_client","_piePlayerEvents","_main","_mathRendering","MultiTraitRubric","HTMLElement","constructor","_model","_session","_root","model","s","dispatchEvent","ModelSetEvent","tagName","toLowerCase","_render","session","connectedCallback","el","React","createElement","Main","createRoot","render","queueMicrotask","renderMath","disconnectedCallback","unmount","exports","default"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ModelSetEvent } from '@pie-framework/pie-player-events';\nimport Main from './main';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nexport default class MultiTraitRubric extends HTMLElement {\n constructor() {\n super();\n this._model = {};\n this._session = null;\n this._root = null;\n }\n\n set model(s) {\n this._model = s;\n this.dispatchEvent(new ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));\n\n this._render();\n }\n\n set session(s) {\n this._session = s;\n }\n\n get session() {\n return this._session;\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n const el = React.createElement(Main, { model: this._model, session: this._session });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(el);\n queueMicrotask(() => {\n renderMath(this);\n });\n }\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEe,MAAMK,gBAAgB,SAASC,WAAW,CAAC;EACxDC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,MAAM,GAAG,CAAC,CAAC;IAChB,IAAI,CAACC,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACC,KAAK,GAAG,IAAI;EACnB;EAEA,IAAIC,KAAKA,CAACC,CAAC,EAAE;IACX,IAAI,CAACJ,MAAM,GAAGI,CAAC;IACf,IAAI,CAACC,aAAa,CAAC,IAAIC,8BAAa,CAAC,IAAI,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC,EAAE,IAAI,CAACP,QAAQ,EAAE,CAAC,CAAC,IAAI,CAACD,MAAM,CAAC,CAAC;IAE/F,IAAI,CAACS,OAAO,CAAC,CAAC;EAChB;EAEA,IAAIC,OAAOA,CAACN,CAAC,EAAE;IACb,IAAI,CAACH,QAAQ,GAAGG,CAAC;EACnB;EAEA,IAAIM,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACT,QAAQ;EACtB;EAEAU,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACF,OAAO,CAAC,CAAC;EAChB;EAEAA,OAAOA,CAAA,EAAG;IACR,MAAMG,EAAE,gBAAGC,cAAK,CAACC,aAAa,CAACC,aAAI,EAAE;MAAEZ,KAAK,EAAE,IAAI,CAACH,MAAM;MAAEU,OAAO,EAAE,IAAI,CAACT;IAAS,CAAC,CAAC;IAEpF,IAAI,CAAC,IAAI,CAACC,KAAK,EAAE;MACf,IAAI,CAACA,KAAK,GAAG,IAAAc,kBAAU,EAAC,IAAI,CAAC;IAC/B;IACA,IAAI,CAACd,KAAK,CAACe,MAAM,CAACL,EAAE,CAAC;IACrBM,cAAc,CAAC,MAAM;MACnB,IAAAC,yBAAU,EAAC,IAAI,CAAC;IAClB,CAAC,CAAC;EACJ;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAAClB,KAAK,EAAE;MACd,IAAI,CAACA,KAAK,CAACmB,OAAO,CAAC,CAAC;IACtB;EACF;AACF;AAACC,OAAA,CAAAC,OAAA,GAAA1B,gBAAA","ignoreList":[]}
package/lib/main.js CHANGED
@@ -1,164 +1,123 @@
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"] = 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 = void 0;
22
8
  var _react = _interopRequireDefault(require("react"));
23
-
24
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
10
  var _scale = _interopRequireDefault(require("./scale"));
27
-
28
- var _Link = _interopRequireDefault(require("@material-ui/core/Link"));
29
-
30
- var _Collapse = _interopRequireDefault(require("@material-ui/core/Collapse"));
31
-
11
+ var _Link = _interopRequireDefault(require("@mui/material/Link"));
12
+ var _Collapse = _interopRequireDefault(require("@mui/material/Collapse"));
32
13
  var _renderUi = require("@pie-lib/render-ui");
33
-
34
- 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); }; }
35
-
36
- 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; } }
37
-
38
- var Main = /*#__PURE__*/function (_React$Component) {
39
- (0, _inherits2["default"])(Main, _React$Component);
40
-
41
- var _super = _createSuper(Main);
42
-
43
- function Main(props) {
44
- var _this;
45
-
46
- (0, _classCallCheck2["default"])(this, Main);
47
- _this = _super.call(this, props);
48
- _this.state = {
14
+ class Main extends _react.default.Component {
15
+ constructor(props) {
16
+ super(props);
17
+ this.state = {
49
18
  rubricOpen: false,
50
19
  linkPrefix: 'Show'
51
20
  };
52
- _this.toggleRubric = _this.toggleRubric.bind((0, _assertThisInitialized2["default"])(_this));
53
- return _this;
21
+ this.toggleRubric = this.toggleRubric.bind(this);
54
22
  }
55
-
56
- (0, _createClass2["default"])(Main, [{
57
- key: "toggleRubric",
58
- value: function toggleRubric() {
59
- this.setState({
60
- rubricOpen: !this.state.rubricOpen
61
- });
62
- this.setState({
63
- linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide'
64
- });
23
+ toggleRubric() {
24
+ this.setState({
25
+ rubricOpen: !this.state.rubricOpen
26
+ });
27
+ this.setState({
28
+ linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide'
29
+ });
30
+ }
31
+ render() {
32
+ const {
33
+ model
34
+ } = this.props;
35
+ let {
36
+ animationsDisabled
37
+ } = this.props;
38
+ const {
39
+ extraCSSRules,
40
+ halfScoring,
41
+ scales,
42
+ visible,
43
+ pointLabels,
44
+ description,
45
+ standards,
46
+ arrowsDisabled
47
+ } = model || {};
48
+ animationsDisabled = animationsDisabled || model.animationsDisabled;
49
+ if (!scales || !visible) {
50
+ return null;
65
51
  }
66
- }, {
67
- key: "render",
68
- value: function render() {
69
- var model = this.props.model;
70
- var animationsDisabled = this.props.animationsDisabled;
71
-
72
- var _ref = model || {},
73
- extraCSSRules = _ref.extraCSSRules,
74
- halfScoring = _ref.halfScoring,
75
- scales = _ref.scales,
76
- visible = _ref.visible,
77
- pointLabels = _ref.pointLabels,
78
- description = _ref.description,
79
- standards = _ref.standards,
80
- arrowsDisabled = _ref.arrowsDisabled;
81
-
82
- animationsDisabled = animationsDisabled || model.animationsDisabled;
83
-
84
- if (!scales || !visible) {
85
- return null;
52
+ const rubricItem = /*#__PURE__*/_react.default.createElement(_renderUi.UiLayout, {
53
+ extraCSSRules: extraCSSRules,
54
+ style: {
55
+ fontFamily: 'Cerebri Sans',
56
+ color: _renderUi.color.text(),
57
+ backgroundColor: _renderUi.color.background()
86
58
  }
87
-
88
- var rubricItem = /*#__PURE__*/_react["default"].createElement(_renderUi.UiLayout, {
89
- extraCSSRules: extraCSSRules,
90
- style: {
91
- fontFamily: 'Cerebri Sans',
92
- color: _renderUi.color.text(),
93
- backgroundColor: _renderUi.color.background()
94
- }
95
- }, halfScoring ? /*#__PURE__*/_react["default"].createElement("div", {
96
- style: {
97
- marginBottom: '16px'
98
- }
99
- }, "* Half-point or in-between scores are permitted under this rubric.") : null, scales.map(function (scale, scaleIndex) {
100
- return /*#__PURE__*/_react["default"].createElement(_scale["default"], {
101
- key: "scale_".concat(scaleIndex),
102
- scale: scale,
103
- scaleIndex: scaleIndex,
104
- showPointsLabels: pointLabels,
105
- showDescription: description,
106
- showStandards: standards,
107
- arrowsDisabled: arrowsDisabled
108
- });
109
- }));
110
-
111
- if (animationsDisabled) {
112
- return rubricItem;
59
+ }, halfScoring ? /*#__PURE__*/_react.default.createElement("div", {
60
+ style: {
61
+ marginBottom: '16px'
113
62
  }
114
-
115
- return /*#__PURE__*/_react["default"].createElement(_renderUi.UiLayout, {
116
- extraCSSRules: extraCSSRules,
117
- style: {
118
- color: _renderUi.color.text(),
119
- backgroundColor: _renderUi.color.background()
120
- }
121
- }, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
122
- style: {
123
- backgroundColor: _renderUi.color.background()
124
- },
125
- href: this.dudUrl,
126
- onClick: this.toggleRubric
127
- }, this.state.linkPrefix, " Rubric"), /*#__PURE__*/_react["default"].createElement(_Collapse["default"], {
128
- style: {
129
- marginTop: '16px'
130
- },
131
- "in": this.state.rubricOpen,
132
- timeout: "auto"
133
- }, rubricItem));
63
+ }, "* Half-point or in-between scores are permitted under this rubric.") : null, scales.map((scale, scaleIndex) => /*#__PURE__*/_react.default.createElement(_scale.default, {
64
+ key: `scale_${scaleIndex}`,
65
+ scale: scale,
66
+ scaleIndex: scaleIndex,
67
+ showPointsLabels: pointLabels,
68
+ showDescription: description,
69
+ showStandards: standards,
70
+ arrowsDisabled: arrowsDisabled
71
+ })));
72
+ if (animationsDisabled) {
73
+ return rubricItem;
134
74
  }
135
- }]);
136
- return Main;
137
- }(_react["default"].Component);
138
-
75
+ return /*#__PURE__*/_react.default.createElement(_renderUi.UiLayout, {
76
+ extraCSSRules: extraCSSRules,
77
+ style: {
78
+ color: _renderUi.color.text(),
79
+ backgroundColor: _renderUi.color.background()
80
+ }
81
+ }, /*#__PURE__*/_react.default.createElement(_Link.default, {
82
+ style: {
83
+ backgroundColor: _renderUi.color.background()
84
+ },
85
+ href: this.dudUrl,
86
+ onClick: this.toggleRubric
87
+ }, this.state.linkPrefix, " Rubric"), /*#__PURE__*/_react.default.createElement(_Collapse.default, {
88
+ style: {
89
+ marginTop: '16px'
90
+ },
91
+ in: this.state.rubricOpen,
92
+ timeout: {
93
+ enter: 225,
94
+ exit: 195
95
+ }
96
+ }, rubricItem));
97
+ }
98
+ }
139
99
  Main.propTypes = {
140
- model: _propTypes["default"].shape({
141
- halfScoring: _propTypes["default"].bool,
142
- scales: _propTypes["default"].arrayOf(_propTypes["default"].shape({
143
- excludeZero: _propTypes["default"].bool,
144
- maxPoints: _propTypes["default"].number,
145
- scorePointsLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
146
- traitLabel: _propTypes["default"].string,
147
- traits: _propTypes["default"].arrayOf(_propTypes["default"].shape({
148
- name: _propTypes["default"].string,
149
- description: _propTypes["default"].string,
150
- scorePointsDescriptors: _propTypes["default"].arrayOf(_propTypes["default"].string),
151
- standards: _propTypes["default"].arrayOf(_propTypes["default"].string)
100
+ model: _propTypes.default.shape({
101
+ halfScoring: _propTypes.default.bool,
102
+ scales: _propTypes.default.arrayOf(_propTypes.default.shape({
103
+ excludeZero: _propTypes.default.bool,
104
+ maxPoints: _propTypes.default.number,
105
+ scorePointsLabels: _propTypes.default.arrayOf(_propTypes.default.string),
106
+ traitLabel: _propTypes.default.string,
107
+ traits: _propTypes.default.arrayOf(_propTypes.default.shape({
108
+ name: _propTypes.default.string,
109
+ description: _propTypes.default.string,
110
+ scorePointsDescriptors: _propTypes.default.arrayOf(_propTypes.default.string),
111
+ standards: _propTypes.default.arrayOf(_propTypes.default.string)
152
112
  }))
153
113
  })),
154
- visible: _propTypes["default"].bool,
155
- pointLabels: _propTypes["default"].bool,
156
- description: _propTypes["default"].bool,
157
- standards: _propTypes["default"].bool,
158
- animationsDisabled: _propTypes["default"].bool
114
+ visible: _propTypes.default.bool,
115
+ pointLabels: _propTypes.default.bool,
116
+ description: _propTypes.default.bool,
117
+ standards: _propTypes.default.bool,
118
+ animationsDisabled: _propTypes.default.bool
159
119
  }),
160
- animationsDisabled: _propTypes["default"].bool
120
+ animationsDisabled: _propTypes.default.bool
161
121
  };
162
- var _default = Main;
163
- exports["default"] = _default;
122
+ var _default = exports.default = Main;
164
123
  //# sourceMappingURL=main.js.map
package/lib/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/main.jsx"],"names":["Main","props","state","rubricOpen","linkPrefix","toggleRubric","bind","setState","model","animationsDisabled","extraCSSRules","halfScoring","scales","visible","pointLabels","description","standards","arrowsDisabled","rubricItem","fontFamily","color","text","backgroundColor","background","marginBottom","map","scale","scaleIndex","dudUrl","marginTop","React","Component","propTypes","PropTypes","shape","bool","arrayOf","excludeZero","maxPoints","number","scorePointsLabels","string","traitLabel","traits","name","scorePointsDescriptors"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Scale from './scale';\nimport Link from '@material-ui/core/Link';\nimport Collapse from '@material-ui/core/Collapse';\nimport { color, UiLayout } from '@pie-lib/render-ui';\n\nclass Main extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n rubricOpen: false,\n linkPrefix: 'Show',\n };\n this.toggleRubric = this.toggleRubric.bind(this);\n }\n\n toggleRubric() {\n this.setState({ rubricOpen: !this.state.rubricOpen });\n this.setState({ linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide' });\n }\n\n render() {\n const { model } = this.props;\n let { animationsDisabled } = this.props;\n const { extraCSSRules, halfScoring, scales, visible, pointLabels, description, standards, arrowsDisabled } =\n model || {};\n animationsDisabled = animationsDisabled || model.animationsDisabled;\n\n if (!scales || !visible) {\n return null;\n }\n\n const rubricItem = (\n <UiLayout\n extraCSSRules={extraCSSRules}\n style={{ fontFamily: 'Cerebri Sans', color: color.text(), backgroundColor: color.background() }}\n >\n {halfScoring ? (\n <div style={{ marginBottom: '16px' }}>* Half-point or in-between scores are permitted under this rubric.</div>\n ) : null}\n\n {scales.map((scale, scaleIndex) => (\n <Scale\n key={`scale_${scaleIndex}`}\n scale={scale}\n scaleIndex={scaleIndex}\n showPointsLabels={pointLabels}\n showDescription={description}\n showStandards={standards}\n arrowsDisabled={arrowsDisabled}\n />\n ))}\n </UiLayout>\n );\n\n if (animationsDisabled) {\n return rubricItem;\n }\n\n return (\n <UiLayout extraCSSRules={extraCSSRules} style={{ color: color.text(), backgroundColor: color.background() }}>\n <Link style={{ backgroundColor: color.background() }} href={this.dudUrl} onClick={this.toggleRubric}>\n {this.state.linkPrefix} Rubric\n </Link>\n <Collapse style={{ marginTop: '16px' }} in={this.state.rubricOpen} timeout=\"auto\">\n {rubricItem}\n </Collapse>\n </UiLayout>\n );\n }\n}\n\nMain.propTypes = {\n model: PropTypes.shape({\n halfScoring: PropTypes.bool,\n scales: PropTypes.arrayOf(\n PropTypes.shape({\n excludeZero: PropTypes.bool,\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n description: PropTypes.string,\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n standards: PropTypes.arrayOf(PropTypes.string),\n }),\n ),\n }),\n ),\n visible: PropTypes.bool,\n pointLabels: PropTypes.bool,\n description: PropTypes.bool,\n standards: PropTypes.bool,\n animationsDisabled: PropTypes.bool,\n }),\n animationsDisabled: PropTypes.bool,\n};\n\nexport default Main;\n"],"file":"main.js"}
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_scale","_Link","_Collapse","_renderUi","Main","React","Component","constructor","props","state","rubricOpen","linkPrefix","toggleRubric","bind","setState","render","model","animationsDisabled","extraCSSRules","halfScoring","scales","visible","pointLabels","description","standards","arrowsDisabled","rubricItem","default","createElement","UiLayout","style","fontFamily","color","text","backgroundColor","background","marginBottom","map","scale","scaleIndex","key","showPointsLabels","showDescription","showStandards","href","dudUrl","onClick","marginTop","in","timeout","enter","exit","propTypes","PropTypes","shape","bool","arrayOf","excludeZero","maxPoints","number","scorePointsLabels","string","traitLabel","traits","name","scorePointsDescriptors","_default","exports"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport Scale from './scale';\nimport Link from '@mui/material/Link';\nimport Collapse from '@mui/material/Collapse';\nimport { color, UiLayout } from '@pie-lib/render-ui';\n\nclass Main extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n rubricOpen: false,\n linkPrefix: 'Show',\n };\n this.toggleRubric = this.toggleRubric.bind(this);\n }\n\n toggleRubric() {\n this.setState({ rubricOpen: !this.state.rubricOpen });\n this.setState({ linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide' });\n }\n\n render() {\n const { model } = this.props;\n let { animationsDisabled } = this.props;\n const { extraCSSRules, halfScoring, scales, visible, pointLabels, description, standards, arrowsDisabled } =\n model || {};\n animationsDisabled = animationsDisabled || model.animationsDisabled;\n\n if (!scales || !visible) {\n return null;\n }\n\n const rubricItem = (\n <UiLayout\n extraCSSRules={extraCSSRules}\n style={{ fontFamily: 'Cerebri Sans', color: color.text(), backgroundColor: color.background() }}\n >\n {halfScoring ? (\n <div style={{ marginBottom: '16px' }}>* Half-point or in-between scores are permitted under this rubric.</div>\n ) : null}\n\n {scales.map((scale, scaleIndex) => (\n <Scale\n key={`scale_${scaleIndex}`}\n scale={scale}\n scaleIndex={scaleIndex}\n showPointsLabels={pointLabels}\n showDescription={description}\n showStandards={standards}\n arrowsDisabled={arrowsDisabled}\n />\n ))}\n </UiLayout>\n );\n\n if (animationsDisabled) {\n return rubricItem;\n }\n\n return (\n <UiLayout extraCSSRules={extraCSSRules} style={{ color: color.text(), backgroundColor: color.background() }}>\n <Link style={{ backgroundColor: color.background() }} href={this.dudUrl} onClick={this.toggleRubric}>\n {this.state.linkPrefix} Rubric\n </Link>\n <Collapse style={{ marginTop: '16px' }} in={this.state.rubricOpen} timeout={{ enter: 225, exit: 195 }}>\n {rubricItem}\n </Collapse>\n </UiLayout>\n );\n }\n}\n\nMain.propTypes = {\n model: PropTypes.shape({\n halfScoring: PropTypes.bool,\n scales: PropTypes.arrayOf(\n PropTypes.shape({\n excludeZero: PropTypes.bool,\n maxPoints: PropTypes.number,\n scorePointsLabels: PropTypes.arrayOf(PropTypes.string),\n traitLabel: PropTypes.string,\n traits: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n description: PropTypes.string,\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n standards: PropTypes.arrayOf(PropTypes.string),\n }),\n ),\n }),\n ),\n visible: PropTypes.bool,\n pointLabels: PropTypes.bool,\n description: PropTypes.bool,\n standards: PropTypes.bool,\n animationsDisabled: PropTypes.bool,\n }),\n animationsDisabled: PropTypes.bool,\n};\n\nexport default Main;\n"],"mappings":"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","ignoreList":[]}