@pie-element/multi-trait-rubric 2.5.1-beta.3 → 2.5.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.
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _default = {
8
+ model: {
9
+ visibleToStudent: true,
10
+ halfScoring: false,
11
+ pointLabels: true,
12
+ description: false,
13
+ standards: false,
14
+ scales: [],
15
+ excludeZero: false,
16
+ maxPointsEnabled: true,
17
+ addScaleEnabled: true
18
+ },
19
+ configuration: {
20
+ excludeZeroDialogBoxContent: {
21
+ title: 'Exclude 0 (Zero) from Score Point Values.',
22
+ text: "<div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>"
23
+ },
24
+ includeZeroDialogBoxContent: {
25
+ title: 'Include 0 (Zero) in Score Point Values.',
26
+ text: "<div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>"
27
+ },
28
+ deleteScaleDialogBoxContent: {
29
+ title: 'Delete Scale',
30
+ text: 'Are you sure you want to delete this scale?'
31
+ },
32
+ maxPointsDialogBoxContent: {
33
+ title: 'Decreasing Max Points.',
34
+ text: " You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted."
35
+ },
36
+ settingsPanelDisabled: false,
37
+ spellCheck: {
38
+ label: 'Spellcheck',
39
+ settings: false,
40
+ enabled: true
41
+ },
42
+ showExcludeZero: {
43
+ settings: true,
44
+ label: 'Exclude Zero'
45
+ },
46
+ showScorePointLabels: {
47
+ settings: true,
48
+ label: 'Show Score Point Labels'
49
+ },
50
+ showDescription: {
51
+ settings: true,
52
+ label: 'Show Description'
53
+ },
54
+ showVisibleToStudent: {
55
+ settings: true,
56
+ label: 'Visible to Student'
57
+ },
58
+ showHalfScoring: {
59
+ settings: true,
60
+ label: 'Half Scoring'
61
+ },
62
+ width: '900px',
63
+ // these should not be set to true (should not be used) for now
64
+ showStandards: {
65
+ settings: false,
66
+ label: 'Show Standards'
67
+ },
68
+ showLevelTagInput: {
69
+ settings: false,
70
+ label: 'Show Level Tag Input',
71
+ enabled: false
72
+ },
73
+ dragAndDrop: {
74
+ settings: true,
75
+ label: 'Enable Drag and Drop',
76
+ enabled: false
77
+ },
78
+ showMaxPoint: {
79
+ settings: true,
80
+ label: 'Show Max Points Dropdown'
81
+ },
82
+ addScale: {
83
+ settings: true,
84
+ label: 'Add Scale Available'
85
+ },
86
+ minNoOfTraits: 1,
87
+ maxNoOfTraits: 10,
88
+ minNoOfScales: 2,
89
+ maxNoOfScales: 10
90
+ }
91
+ };
92
+ exports["default"] = _default;
93
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","names":["model","visibleToStudent","halfScoring","pointLabels","description","standards","scales","excludeZero","maxPointsEnabled","addScaleEnabled","configuration","excludeZeroDialogBoxContent","title","text","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","settingsPanelDisabled","spellCheck","label","settings","enabled","showExcludeZero","showScorePointLabels","showDescription","showVisibleToStudent","showHalfScoring","width","showStandards","showLevelTagInput","dragAndDrop","showMaxPoint","addScale","minNoOfTraits","maxNoOfTraits","minNoOfScales","maxNoOfScales","exports","_default"],"sources":["../src/defaults.js"],"sourcesContent":["export default {\n model: {\n visibleToStudent: true,\n halfScoring: false,\n pointLabels: true,\n description: false,\n standards: false,\n scales: [],\n excludeZero: false,\n maxPointsEnabled: true,\n addScaleEnabled: true,\n },\n configuration: {\n excludeZeroDialogBoxContent: {\n title: 'Exclude 0 (Zero) from Score Point Values.',\n text: `<div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>`,\n },\n includeZeroDialogBoxContent: {\n title: 'Include 0 (Zero) in Score Point Values.',\n text: `<div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>`,\n },\n deleteScaleDialogBoxContent: {\n title: 'Delete Scale',\n text: 'Are you sure you want to delete this scale?',\n },\n maxPointsDialogBoxContent: {\n title: 'Decreasing Max Points.',\n text: ` You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted.`,\n },\n settingsPanelDisabled: false,\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n showExcludeZero: {\n settings: true,\n label: 'Exclude Zero',\n },\n showScorePointLabels: {\n settings: true,\n label: 'Show Score Point Labels',\n },\n showDescription: {\n settings: true,\n label: 'Show Description',\n },\n showVisibleToStudent: {\n settings: true,\n label: 'Visible to Student',\n },\n showHalfScoring: {\n settings: true,\n label: 'Half Scoring',\n },\n width: '900px',\n // these should not be set to true (should not be used) for now\n showStandards: {\n settings: false,\n label: 'Show Standards',\n },\n showLevelTagInput: {\n settings: false,\n label: 'Show Level Tag Input',\n enabled: false,\n },\n dragAndDrop: {\n settings: true,\n label: 'Enable Drag and Drop',\n enabled: false,\n },\n showMaxPoint: {\n settings: true,\n label: 'Show Max Points Dropdown',\n },\n addScale: {\n settings: true,\n label: 'Add Scale Available',\n },\n minNoOfTraits: 1,\n maxNoOfTraits: 10,\n minNoOfScales: 2,\n maxNoOfScales: 10,\n },\n};\n"],"mappings":";;;;;;eAAe;EACbA,KAAK,EAAE;IACLC,gBAAgB,EAAE,IAAI;IACtBC,WAAW,EAAE,KAAK;IAClBC,WAAW,EAAE,IAAI;IACjBC,WAAW,EAAE,KAAK;IAClBC,SAAS,EAAE,KAAK;IAChBC,MAAM,EAAE,EAAE;IACVC,WAAW,EAAE,KAAK;IAClBC,gBAAgB,EAAE,IAAI;IACtBC,eAAe,EAAE;EACnB,CAAC;EACDC,aAAa,EAAE;IACbC,2BAA2B,EAAE;MAC3BC,KAAK,EAAE,2CAA2C;MAClDC,IAAI;IAeN,CAAC;IACDC,2BAA2B,EAAE;MAC3BF,KAAK,EAAE,yCAAyC;MAChDC,IAAI;IAeN,CAAC;IACDE,2BAA2B,EAAE;MAC3BH,KAAK,EAAE,cAAc;MACrBC,IAAI,EAAE;IACR,CAAC;IACDG,yBAAyB,EAAE;MACzBJ,KAAK,EAAE,wBAAwB;MAC/BC,IAAI;IAGN,CAAC;IACDI,qBAAqB,EAAE,KAAK;IAC5BC,UAAU,EAAE;MACVC,KAAK,EAAE,YAAY;MACnBC,QAAQ,EAAE,KAAK;MACfC,OAAO,EAAE;IACX,CAAC;IACDC,eAAe,EAAE;MACfF,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDI,oBAAoB,EAAE;MACpBH,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDK,eAAe,EAAE;MACfJ,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDM,oBAAoB,EAAE;MACpBL,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDO,eAAe,EAAE;MACfN,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDQ,KAAK,EAAE,OAAO;IACd;IACAC,aAAa,EAAE;MACbR,QAAQ,EAAE,KAAK;MACfD,KAAK,EAAE;IACT,CAAC;IACDU,iBAAiB,EAAE;MACjBT,QAAQ,EAAE,KAAK;MACfD,KAAK,EAAE,sBAAsB;MAC7BE,OAAO,EAAE;IACX,CAAC;IACDS,WAAW,EAAE;MACXV,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE,sBAAsB;MAC7BE,OAAO,EAAE;IACX,CAAC;IACDU,YAAY,EAAE;MACZX,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDa,QAAQ,EAAE;MACRZ,QAAQ,EAAE,IAAI;MACdD,KAAK,EAAE;IACT,CAAC;IACDc,aAAa,EAAE,CAAC;IAChBC,aAAa,EAAE,EAAE;IACjBC,aAAa,EAAE,CAAC;IAChBC,aAAa,EAAE;EACjB;AACF,CAAC;AAAAC,OAAA,cAAAC,QAAA"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createCorrectResponseSession = void 0;
8
+ exports.createDefaultModel = createDefaultModel;
9
+ exports.getScore = void 0;
10
+ exports.model = model;
11
+ exports.normalize = void 0;
12
+ exports.outcome = outcome;
13
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ var _defaults = _interopRequireDefault(require("./defaults"));
17
+ 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; }
18
+ 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; }
19
+ function createDefaultModel() {
20
+ var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
21
+ return new Promise(function (resolve) {
22
+ return resolve(_objectSpread(_objectSpread({}, _defaults["default"]), model));
23
+ });
24
+ }
25
+ var normalize = function normalize(question) {
26
+ return _objectSpread(_objectSpread({}, _defaults["default"]), question);
27
+ };
28
+
29
+ /**
30
+ *
31
+ * @param {*} question
32
+ * @param {*} session
33
+ * @param {*} env
34
+ */
35
+ exports.normalize = normalize;
36
+ function model(_x, _x2, _x3) {
37
+ return _model.apply(this, arguments);
38
+ }
39
+ function _model() {
40
+ _model = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(question, session, env) {
41
+ var normalizedQuestion, _ref, scales, excludeZero, parsedScales;
42
+ return _regenerator["default"].wrap(function _callee$(_context) {
43
+ while (1) switch (_context.prev = _context.next) {
44
+ case 0:
45
+ normalizedQuestion = normalize(question);
46
+ if (!env.role || env.role === 'student') {
47
+ normalizedQuestion.visible = normalizedQuestion.visibleToStudent;
48
+ } else {
49
+ normalizedQuestion.visible = true;
50
+ }
51
+
52
+ // todo update pie-ui instead of parsing this here:
53
+ _ref = normalizedQuestion || {}, scales = _ref.scales, excludeZero = _ref.excludeZero;
54
+ parsedScales = (scales || []).map(function (scale) {
55
+ return _objectSpread(_objectSpread({}, scale), {}, {
56
+ excludeZero: excludeZero
57
+ });
58
+ });
59
+ return _context.abrupt("return", _objectSpread(_objectSpread({}, normalizedQuestion), {}, {
60
+ scales: parsedScales
61
+ }));
62
+ case 5:
63
+ case "end":
64
+ return _context.stop();
65
+ }
66
+ }, _callee);
67
+ }));
68
+ return _model.apply(this, arguments);
69
+ }
70
+ var getScore = function getScore() {
71
+ return 0;
72
+ };
73
+
74
+ /**
75
+ * @param {Object} model - the main model
76
+ * @param {*} session
77
+ * @param {Object} env
78
+ */
79
+ exports.getScore = getScore;
80
+ function outcome(model, session, env) {
81
+ return new Promise(function (resolve) {
82
+ return resolve({
83
+ score: 0,
84
+ empty: true
85
+ });
86
+ });
87
+ }
88
+ var createCorrectResponseSession = function createCorrectResponseSession(question, env) {
89
+ return new Promise(function (resolve) {
90
+ if (env.mode !== 'evaluate' && env.role === 'instructor') {
91
+ resolve({
92
+ id: '1'
93
+ });
94
+ } else {
95
+ resolve(null);
96
+ }
97
+ });
98
+ };
99
+ exports.createCorrectResponseSession = createCorrectResponseSession;
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_defaults","_interopRequireDefault","require","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","normalize","question","exports","_x","_x2","_x3","_model","_asyncToGenerator2","_regenerator","mark","_callee","session","env","normalizedQuestion","_ref","scales","excludeZero","parsedScales","wrap","_callee$","_context","prev","next","role","visible","visibleToStudent","map","scale","abrupt","stop","getScore","outcome","score","empty","createCorrectResponseSession","mode","id"],"sources":["../src/index.js"],"sourcesContent":["import defaults from './defaults';\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(model, session, env) {\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"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAkC,SAAAC,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,QAAAC,gBAAA,aAAAP,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAkB,yBAAA,GAAAlB,MAAA,CAAAmB,gBAAA,CAAAT,MAAA,EAAAV,MAAA,CAAAkB,yBAAA,CAAAJ,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAoB,cAAA,CAAAV,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAE3B,SAASW,kBAAkBA,CAAA,EAAa;EAAA,IAAZC,KAAK,GAAAV,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAW,SAAA,GAAAX,SAAA,MAAG,CAAC,CAAC;EAC3C,OAAO,IAAIY,OAAO,CAAC,UAACC,OAAO;IAAA,OAAKA,OAAO,CAAAhB,aAAA,CAAAA,aAAA,KAAMiB,oBAAQ,GAAKJ,KAAK,CAAE,CAAC;EAAA,EAAC;AACrE;AAEO,IAAMK,SAAS,GAAG,SAAZA,SAASA,CAAIC,QAAQ;EAAA,OAAAnB,aAAA,CAAAA,aAAA,KAAWiB,oBAAQ,GAAKE,QAAQ;AAAA,CAAG;;AAErE;AACA;AACA;AACA;AACA;AACA;AALAC,OAAA,CAAAF,SAAA,GAAAA,SAAA;AAAA,SAMsBL,KAAKA,CAAAQ,EAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,MAAA,CAAAzB,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAAqB,OAAA;EAAAA,MAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAApB,SAAAC,QAAqBT,QAAQ,EAAEU,OAAO,EAAEC,GAAG;IAAA,IAAAC,kBAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,WAAA,EAAAC,YAAA;IAAA,OAAAT,YAAA,YAAAU,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAC1CT,kBAAkB,GAAGb,SAAS,CAACC,QAAQ,CAAC;UAE9C,IAAI,CAACW,GAAG,CAACW,IAAI,IAAIX,GAAG,CAACW,IAAI,KAAK,SAAS,EAAE;YACvCV,kBAAkB,CAACW,OAAO,GAAGX,kBAAkB,CAACY,gBAAgB;UAClE,CAAC,MAAM;YACLZ,kBAAkB,CAACW,OAAO,GAAG,IAAI;UACnC;;UAEA;UAAAV,IAAA,GACgCD,kBAAkB,IAAI,CAAC,CAAC,EAAhDE,MAAM,GAAAD,IAAA,CAANC,MAAM,EAAEC,WAAW,GAAAF,IAAA,CAAXE,WAAW;UACrBC,YAAY,GAAG,CAACF,MAAM,IAAI,EAAE,EAAEW,GAAG,CAAC,UAACC,KAAK;YAAA,OAAA7C,aAAA,CAAAA,aAAA,KAAW6C,KAAK;cAAEX,WAAW,EAAXA;YAAW;UAAA,CAAG,CAAC;UAAA,OAAAI,QAAA,CAAAQ,MAAA,WAAA9C,aAAA,CAAAA,aAAA,KAG1E+B,kBAAkB;YACrBE,MAAM,EAAEE;UAAY;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAAS,IAAA;MAAA;IAAA,GAAAnB,OAAA;EAAA,CAEvB;EAAA,OAAAJ,MAAA,CAAAzB,KAAA,OAAAI,SAAA;AAAA;AAEM,IAAM6C,QAAQ,GAAG,SAAXA,QAAQA,CAAA;EAAA,OAAS,CAAC;AAAA;;AAE/B;AACA;AACA;AACA;AACA;AAJA5B,OAAA,CAAA4B,QAAA,GAAAA,QAAA;AAKO,SAASC,OAAOA,CAACpC,KAAK,EAAEgB,OAAO,EAAEC,GAAG,EAAE;EAC3C,OAAO,IAAIf,OAAO,CAAC,UAACC,OAAO;IAAA,OAAKA,OAAO,CAAC;MAAEkC,KAAK,EAAE,CAAC;MAAEC,KAAK,EAAE;IAAK,CAAC,CAAC;EAAA,EAAC;AACrE;AAEO,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAIjC,QAAQ,EAAEW,GAAG,EAAK;EAC7D,OAAO,IAAIf,OAAO,CAAC,UAACC,OAAO,EAAK;IAC9B,IAAIc,GAAG,CAACuB,IAAI,KAAK,UAAU,IAAIvB,GAAG,CAACW,IAAI,KAAK,YAAY,EAAE;MACxDzB,OAAO,CAAC;QAAEsC,EAAE,EAAE;MAAI,CAAC,CAAC;IACtB,CAAC,MAAM;MACLtC,OAAO,CAAC,IAAI,CAAC;IACf;EACF,CAAC,CAAC;AACJ,CAAC;AAACI,OAAA,CAAAgC,4BAAA,GAAAA,4BAAA"}
package/lib/index.js ADDED
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
11
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
12
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
13
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
14
+ var _react = _interopRequireDefault(require("react"));
15
+ var _reactDom = _interopRequireDefault(require("react-dom"));
16
+ var _piePlayerEvents = require("@pie-framework/pie-player-events");
17
+ var _main = _interopRequireDefault(require("./main"));
18
+ 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); }; }
19
+ 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; } }
20
+ var MultiTraitRubric = /*#__PURE__*/function (_HTMLElement) {
21
+ (0, _inherits2["default"])(MultiTraitRubric, _HTMLElement);
22
+ var _super = _createSuper(MultiTraitRubric);
23
+ function MultiTraitRubric() {
24
+ var _this;
25
+ (0, _classCallCheck2["default"])(this, MultiTraitRubric);
26
+ _this = _super.call(this);
27
+ _this._model = {};
28
+ _this._session = null;
29
+ return _this;
30
+ }
31
+ (0, _createClass2["default"])(MultiTraitRubric, [{
32
+ key: "model",
33
+ set: function set(s) {
34
+ this._model = s;
35
+ this.dispatchEvent(new _piePlayerEvents.ModelSetEvent(this.tagName.toLowerCase(), this._session, !!this._model));
36
+ this._render();
37
+ }
38
+ }, {
39
+ key: "session",
40
+ get: function get() {
41
+ return this._session;
42
+ },
43
+ set: function set(s) {
44
+ this._session = s;
45
+ }
46
+ }, {
47
+ key: "connectedCallback",
48
+ value: function connectedCallback() {
49
+ this._render();
50
+ }
51
+ }, {
52
+ key: "_render",
53
+ value: function _render() {
54
+ var el = /*#__PURE__*/_react["default"].createElement(_main["default"], {
55
+ model: this._model,
56
+ session: this._session
57
+ });
58
+ _reactDom["default"].render(el, this);
59
+ }
60
+ }]);
61
+ return MultiTraitRubric;
62
+ }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
63
+ exports["default"] = MultiTraitRubric;
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_reactDom","_piePlayerEvents","_main","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","MultiTraitRubric","_HTMLElement","_inherits2","_super","_this","_classCallCheck2","_model","_session","_createClass2","key","set","s","dispatchEvent","ModelSetEvent","tagName","toLowerCase","_render","get","value","connectedCallback","el","React","createElement","Main","model","session","ReactDOM","render","_wrapNativeSuper2","HTMLElement","exports"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { ModelSetEvent } from '@pie-framework/pie-player-events';\nimport Main from './main';\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 }\n}\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAA0B,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,IAELC,gBAAgB,0BAAAC,YAAA;EAAA,IAAAC,UAAA,aAAAF,gBAAA,EAAAC,YAAA;EAAA,IAAAE,MAAA,GAAAzB,YAAA,CAAAsB,gBAAA;EACnC,SAAAA,iBAAA,EAAc;IAAA,IAAAI,KAAA;IAAA,IAAAC,gBAAA,mBAAAL,gBAAA;IACZI,KAAA,GAAAD,MAAA,CAAAL,IAAA;IACAM,KAAA,CAAKE,MAAM,GAAG,CAAC,CAAC;IAChBF,KAAA,CAAKG,QAAQ,GAAG,IAAI;IAAC,OAAAH,KAAA;EACvB;EAAC,IAAAI,aAAA,aAAAR,gBAAA;IAAAS,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAUC,CAAC,EAAE;MACX,IAAI,CAACL,MAAM,GAAGK,CAAC;MACf,IAAI,CAACC,aAAa,CAAC,IAAIC,8BAAa,CAAC,IAAI,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC,EAAE,IAAI,CAACR,QAAQ,EAAE,CAAC,CAAC,IAAI,CAACD,MAAM,CAAC,CAAC;MAE/F,IAAI,CAACU,OAAO,CAAC,CAAC;IAChB;EAAC;IAAAP,GAAA;IAAAQ,GAAA,EAMD,SAAAA,IAAA,EAAc;MACZ,OAAO,IAAI,CAACV,QAAQ;IACtB,CAAC;IAAAG,GAAA,EAND,SAAAA,IAAYC,CAAC,EAAE;MACb,IAAI,CAACJ,QAAQ,GAAGI,CAAC;IACnB;EAAC;IAAAF,GAAA;IAAAS,KAAA,EAMD,SAAAC,kBAAA,EAAoB;MAClB,IAAI,CAACH,OAAO,CAAC,CAAC;IAChB;EAAC;IAAAP,GAAA;IAAAS,KAAA,EAED,SAAAF,QAAA,EAAU;MACR,IAAMI,EAAE,gBAAGC,iBAAK,CAACC,aAAa,CAACC,gBAAI,EAAE;QAAEC,KAAK,EAAE,IAAI,CAAClB,MAAM;QAAEmB,OAAO,EAAE,IAAI,CAAClB;MAAS,CAAC,CAAC;MAEpFmB,oBAAQ,CAACC,MAAM,CAACP,EAAE,EAAE,IAAI,CAAC;IAC3B;EAAC;EAAA,OAAApB,gBAAA;AAAA,oBAAA4B,iBAAA,aA9B2CC,WAAW;AAAAC,OAAA,cAAA9B,gBAAA"}
package/lib/main.js ADDED
@@ -0,0 +1,110 @@
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 _react = _interopRequireDefault(require("react"));
15
+ var _propTypes = _interopRequireDefault(require("prop-types"));
16
+ var _scale = _interopRequireDefault(require("./scale"));
17
+ var _Link = _interopRequireDefault(require("@material-ui/core/Link"));
18
+ var _Collapse = _interopRequireDefault(require("@material-ui/core/Collapse"));
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(props) {
25
+ var _this;
26
+ (0, _classCallCheck2["default"])(this, Main);
27
+ _this = _super.call(this, props);
28
+ _this.state = {
29
+ rubricOpen: false,
30
+ linkPrefix: 'Show'
31
+ };
32
+ _this.toggleRubric = _this.toggleRubric.bind((0, _assertThisInitialized2["default"])(_this));
33
+ return _this;
34
+ }
35
+ (0, _createClass2["default"])(Main, [{
36
+ key: "toggleRubric",
37
+ value: function toggleRubric() {
38
+ this.setState({
39
+ rubricOpen: !this.state.rubricOpen
40
+ });
41
+ this.setState({
42
+ linkPrefix: this.state.rubricOpen ? 'Show' : 'Hide'
43
+ });
44
+ }
45
+ }, {
46
+ key: "render",
47
+ value: function render() {
48
+ var _this$props = this.props,
49
+ model = _this$props.model,
50
+ animationsDisabled = _this$props.animationsDisabled;
51
+ var _ref = model || {},
52
+ halfScoring = _ref.halfScoring,
53
+ scales = _ref.scales,
54
+ visible = _ref.visible,
55
+ pointLabels = _ref.pointLabels,
56
+ description = _ref.description,
57
+ standards = _ref.standards;
58
+ if (!scales || !visible) {
59
+ return null;
60
+ }
61
+ var rubricItem = /*#__PURE__*/_react["default"].createElement("div", {
62
+ style: {
63
+ fontFamily: 'Cerebri Sans'
64
+ }
65
+ }, halfScoring ? /*#__PURE__*/_react["default"].createElement("p", null, "* Half-point or in-between scores are permitted under this rubric.") : null, scales.map(function (scale, scaleIndex) {
66
+ return /*#__PURE__*/_react["default"].createElement(_scale["default"], {
67
+ key: "scale_".concat(scaleIndex),
68
+ scale: scale,
69
+ scaleIndex: scaleIndex,
70
+ showPointsLabels: pointLabels,
71
+ showDescription: description,
72
+ showStandards: standards
73
+ });
74
+ }));
75
+ return /*#__PURE__*/_react["default"].createElement("div", null, !animationsDisabled ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Link["default"], {
76
+ href: this.dudUrl,
77
+ onClick: this.toggleRubric
78
+ }, this.state.linkPrefix, " Rubric"), /*#__PURE__*/_react["default"].createElement(_Collapse["default"], {
79
+ "in": this.state.rubricOpen,
80
+ timeout: "auto"
81
+ }, rubricItem)) : rubricItem);
82
+ }
83
+ }]);
84
+ return Main;
85
+ }(_react["default"].Component);
86
+ Main.propTypes = {
87
+ model: _propTypes["default"].shape({
88
+ halfScoring: _propTypes["default"].bool,
89
+ scales: _propTypes["default"].arrayOf(_propTypes["default"].shape({
90
+ excludeZero: _propTypes["default"].bool,
91
+ maxPoints: _propTypes["default"].number,
92
+ scorePointsLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
93
+ traitLabel: _propTypes["default"].string,
94
+ traits: _propTypes["default"].arrayOf(_propTypes["default"].shape({
95
+ name: _propTypes["default"].string,
96
+ description: _propTypes["default"].string,
97
+ scorePointsDescriptors: _propTypes["default"].arrayOf(_propTypes["default"].string),
98
+ standards: _propTypes["default"].arrayOf(_propTypes["default"].string)
99
+ }))
100
+ })),
101
+ visible: _propTypes["default"].bool,
102
+ pointLabels: _propTypes["default"].bool,
103
+ description: _propTypes["default"].bool,
104
+ standards: _propTypes["default"].bool
105
+ }),
106
+ animationsDisabled: _propTypes["default"].bool
107
+ };
108
+ var _default = Main;
109
+ exports["default"] = _default;
110
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_scale","_Link","_Collapse","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","Main","_React$Component","_inherits2","_super","props","_this","_classCallCheck2","state","rubricOpen","linkPrefix","toggleRubric","bind","_assertThisInitialized2","_createClass2","key","value","setState","render","_this$props","model","animationsDisabled","_ref","halfScoring","scales","visible","pointLabels","description","standards","rubricItem","createElement","style","fontFamily","map","scale","scaleIndex","concat","showPointsLabels","showDescription","showStandards","Fragment","href","dudUrl","onClick","timeout","React","Component","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 '@material-ui/core/Link';\nimport Collapse from '@material-ui/core/Collapse';\n\nclass Main extends React.Component {\n\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, animationsDisabled } = this.props;\n const { halfScoring, scales, visible, pointLabels, description, standards } = model || {};\n\n if (!scales || !visible) {\n return null;\n }\n\n const rubricItem = (\n <div style={{ fontFamily: 'Cerebri Sans' }}>\n {halfScoring ? <p>* Half-point or in-between scores are permitted under this rubric.</p> : null}\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 />\n ))}\n </div>\n );\n\n return (\n <div>\n {!animationsDisabled ? (\n <React.Fragment>\n <Link href={this.dudUrl} onClick={this.toggleRubric}>\n {this.state.linkPrefix} Rubric\n </Link>\n <Collapse in={this.state.rubricOpen} timeout=\"auto\">\n {rubricItem}\n </Collapse>\n </React.Fragment>\n ) : (\n rubricItem\n )}\n </div>\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 }),\n animationsDisabled: PropTypes.bool,\n};\n\nexport default Main;\n"],"mappings":"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"}
package/lib/scale.js ADDED
@@ -0,0 +1,181 @@
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 _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 _react = _interopRequireDefault(require("react"));
15
+ var _propTypes = _interopRequireDefault(require("prop-types"));
16
+ var _styles = require("@material-ui/core/styles");
17
+ var _renderUi = require("@pie-lib/render-ui");
18
+ var _trait = _interopRequireDefault(require("./trait"));
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 styles = function styles() {
22
+ return {
23
+ table: {
24
+ borderSpacing: 0,
25
+ marginBottom: '16px',
26
+ borderRadius: '4px',
27
+ color: _renderUi.color.text(),
28
+ fontSize: '14px',
29
+ lineHeight: '16px',
30
+ '& ul, ol': {
31
+ marginBlockStart: 0,
32
+ paddingInlineStart: '16px'
33
+ },
34
+ '& th': {
35
+ padding: '16px',
36
+ textAlign: 'left',
37
+ backgroundColor: _renderUi.color.secondaryBackground(),
38
+ verticalAlign: 'bottom'
39
+ },
40
+ '& th div': {
41
+ width: '200px'
42
+ },
43
+ '& td': {
44
+ width: '200px',
45
+ padding: '16px 8px',
46
+ verticalAlign: 'top'
47
+ }
48
+ },
49
+ scorePointHeader: {
50
+ '& td': {
51
+ border: 0,
52
+ padding: 0,
53
+ textAlign: 'center',
54
+ minWidth: '200px'
55
+ }
56
+ },
57
+ pointLabel: {
58
+ marginBottom: '4px'
59
+ },
60
+ scorePointValue: {
61
+ fontWeight: 'normal'
62
+ }
63
+ };
64
+ };
65
+ var Scale = /*#__PURE__*/function (_React$Component) {
66
+ (0, _inherits2["default"])(Scale, _React$Component);
67
+ var _super = _createSuper(Scale);
68
+ function Scale() {
69
+ (0, _classCallCheck2["default"])(this, Scale);
70
+ return _super.apply(this, arguments);
71
+ }
72
+ (0, _createClass2["default"])(Scale, [{
73
+ key: "render",
74
+ value: function render() {
75
+ var _this$props = this.props,
76
+ classes = _this$props.classes,
77
+ scale = _this$props.scale,
78
+ scaleIndex = _this$props.scaleIndex,
79
+ showDescription = _this$props.showDescription,
80
+ showPointsLabels = _this$props.showPointsLabels,
81
+ showStandards = _this$props.showStandards;
82
+ var _ref = scale || {},
83
+ excludeZero = _ref.excludeZero,
84
+ maxPoints = _ref.maxPoints,
85
+ traitLabel = _ref.traitLabel,
86
+ traits = _ref.traits,
87
+ scorePointsLabels = _ref.scorePointsLabels;
88
+ var scorePointsValues = [];
89
+ var descriptions;
90
+ var pointsLabels;
91
+ var standards;
92
+ try {
93
+ // determining the score points values
94
+ for (var pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {
95
+ scorePointsValues.push(pointValue);
96
+ }
97
+ var _traits$reduce = traits.reduce(function (tcc, trait) {
98
+ return {
99
+ traitStandards: [].concat((0, _toConsumableArray2["default"])(tcc.traitStandards), (0, _toConsumableArray2["default"])(trait.standards || [])),
100
+ traitDescriptions: [].concat((0, _toConsumableArray2["default"])(tcc.traitDescriptions), (0, _toConsumableArray2["default"])(trait.description || []))
101
+ };
102
+ }, {
103
+ traitStandards: [],
104
+ traitDescriptions: []
105
+ }),
106
+ traitStandards = _traits$reduce.traitStandards,
107
+ traitDescriptions = _traits$reduce.traitDescriptions;
108
+ descriptions = showDescription && traitDescriptions.length;
109
+ pointsLabels = showPointsLabels && scorePointsLabels.length;
110
+ standards = showStandards && traitStandards.length;
111
+ } catch (e) {
112
+ descriptions = false;
113
+ pointsLabels = false;
114
+ standards = false;
115
+ }
116
+ return /*#__PURE__*/_react["default"].createElement("table", {
117
+ key: "scale-".concat(scaleIndex),
118
+ className: classes.table
119
+ }, /*#__PURE__*/_react["default"].createElement("thead", null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("th", null, /*#__PURE__*/_react["default"].createElement("div", {
120
+ dangerouslySetInnerHTML: {
121
+ __html: traitLabel
122
+ }
123
+ })), standards ? /*#__PURE__*/_react["default"].createElement("th", null, /*#__PURE__*/_react["default"].createElement("div", null, "Standard(s)")) : null, descriptions ? /*#__PURE__*/_react["default"].createElement("th", null, /*#__PURE__*/_react["default"].createElement("div", null, "Description")) : null, scorePointsValues && scorePointsValues.map(function (scorePointValue, index) {
124
+ var pointLabel = '';
125
+
126
+ // to handle the case when there aren't enough labels
127
+ try {
128
+ pointLabel = scorePointsLabels[scorePointsValues.length - index - 1] || '';
129
+ } catch (e) {
130
+ pointLabel = '';
131
+ }
132
+ return /*#__PURE__*/_react["default"].createElement("th", {
133
+ key: "table-header-".concat(index)
134
+ }, /*#__PURE__*/_react["default"].createElement("table", {
135
+ className: classes.scorePointHeader
136
+ }, /*#__PURE__*/_react["default"].createElement("thead", null, pointsLabels ? /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("td", null, /*#__PURE__*/_react["default"].createElement("div", {
137
+ className: classes.pointLabel,
138
+ dangerouslySetInnerHTML: {
139
+ __html: pointLabel
140
+ }
141
+ }))) : null, /*#__PURE__*/_react["default"].createElement("tr", null, /*#__PURE__*/_react["default"].createElement("td", {
142
+ className: classes.scorePointValue
143
+ }, scorePointValue === 1 ? "".concat(scorePointValue, " point") : "".concat(scorePointValue, " points"))))));
144
+ }))), /*#__PURE__*/_react["default"].createElement("tbody", null, traits && traits.map(function (trait, traitIndex) {
145
+ return /*#__PURE__*/_react["default"].createElement(_trait["default"], {
146
+ key: "trait_".concat(scaleIndex, "_").concat(traitIndex),
147
+ trait: trait,
148
+ traitIndex: traitIndex,
149
+ showDescription: !!descriptions,
150
+ showStandards: !!standards,
151
+ scaleIndex: scaleIndex,
152
+ scorePointsValues: scorePointsValues,
153
+ excludeZero: excludeZero
154
+ });
155
+ })));
156
+ }
157
+ }]);
158
+ return Scale;
159
+ }(_react["default"].Component);
160
+ Scale.propTypes = {
161
+ classes: _propTypes["default"].object,
162
+ scaleIndex: _propTypes["default"].number,
163
+ scale: _propTypes["default"].shape({
164
+ excludeZero: _propTypes["default"].bool,
165
+ maxPoints: _propTypes["default"].number,
166
+ scorePointsLabels: _propTypes["default"].arrayOf(_propTypes["default"].string),
167
+ traitLabel: _propTypes["default"].string,
168
+ traits: _propTypes["default"].arrayOf(_propTypes["default"].shape({
169
+ name: _propTypes["default"].string,
170
+ standards: _propTypes["default"].arrayOf(_propTypes["default"].string),
171
+ scorePointsDescriptors: _propTypes["default"].arrayOf(_propTypes["default"].string),
172
+ description: _propTypes["default"].string
173
+ }))
174
+ }),
175
+ showPointsLabels: _propTypes["default"].bool,
176
+ showDescription: _propTypes["default"].bool,
177
+ showStandards: _propTypes["default"].bool
178
+ };
179
+ var _default = (0, _styles.withStyles)(styles)(Scale);
180
+ exports["default"] = _default;
181
+ //# sourceMappingURL=scale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scale.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_renderUi","_trait","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","styles","table","borderSpacing","marginBottom","borderRadius","color","text","fontSize","lineHeight","marginBlockStart","paddingInlineStart","padding","textAlign","backgroundColor","secondaryBackground","verticalAlign","width","scorePointHeader","border","minWidth","pointLabel","scorePointValue","fontWeight","Scale","_React$Component","_inherits2","_super","_classCallCheck2","_createClass2","key","value","render","_this$props","props","classes","scale","scaleIndex","showDescription","showPointsLabels","showStandards","_ref","excludeZero","maxPoints","traitLabel","traits","scorePointsLabels","scorePointsValues","descriptions","pointsLabels","standards","pointValue","push","_traits$reduce","reduce","tcc","trait","traitStandards","concat","_toConsumableArray2","traitDescriptions","description","length","createElement","className","dangerouslySetInnerHTML","__html","map","index","traitIndex","React","Component","propTypes","PropTypes","object","number","shape","bool","arrayOf","string","name","scorePointsDescriptors","_default","withStyles","exports"],"sources":["../src/scale.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport { color } from '@pie-lib/render-ui';\nimport Trait from './trait';\n\nconst styles = () => ({\n table: {\n borderSpacing: 0,\n marginBottom: '16px',\n borderRadius: '4px',\n color: color.text(),\n fontSize: '14px',\n lineHeight: '16px',\n\n '& ul, ol': {\n marginBlockStart: 0,\n paddingInlineStart: '16px',\n },\n\n '& th': {\n padding: '16px',\n textAlign: 'left',\n backgroundColor: color.secondaryBackground(),\n verticalAlign: 'bottom',\n },\n\n '& th div': {\n width: '200px',\n },\n\n '& td': {\n width: '200px',\n padding: '16px 8px',\n verticalAlign: 'top',\n },\n },\n scorePointHeader: {\n '& td': {\n border: 0,\n padding: 0,\n textAlign: 'center',\n minWidth: '200px',\n },\n },\n pointLabel: {\n marginBottom: '4px',\n },\n scorePointValue: {\n fontWeight: 'normal',\n },\n});\n\nclass Scale extends React.Component {\n render() {\n const { classes, scale, scaleIndex, showDescription, showPointsLabels, showStandards } = this.props;\n const { excludeZero, maxPoints, traitLabel, traits, scorePointsLabels } = scale || {};\n\n let scorePointsValues = [];\n let descriptions;\n let pointsLabels;\n let standards;\n try {\n // determining the score points values\n for (let pointValue = maxPoints; pointValue >= excludeZero ? 1 : 0; pointValue -= 1) {\n scorePointsValues.push(pointValue);\n }\n\n const { traitStandards, traitDescriptions } = traits.reduce(\n (tcc, trait) => ({\n traitStandards: [...tcc.traitStandards, ...(trait.standards || [])],\n traitDescriptions: [...tcc.traitDescriptions, ...(trait.description || [])],\n }),\n {\n traitStandards: [],\n traitDescriptions: [],\n },\n );\n\n descriptions = showDescription && traitDescriptions.length;\n pointsLabels = showPointsLabels && scorePointsLabels.length;\n standards = showStandards && traitStandards.length;\n } catch (e) {\n descriptions = false;\n pointsLabels = false;\n standards = false;\n }\n\n return (\n <table key={`scale-${scaleIndex}`} className={classes.table}>\n <thead>\n <tr>\n <th>\n <div dangerouslySetInnerHTML={{ __html: traitLabel }} />\n </th>\n\n {standards ? (\n <th>\n <div>Standard(s)</div>\n </th>\n ) : null}\n\n {descriptions ? (\n <th>\n <div>Description</div>\n </th>\n ) : null}\n\n {scorePointsValues &&\n scorePointsValues.map((scorePointValue, index) => {\n let pointLabel = '';\n\n // to handle the case when there aren't enough labels\n try {\n pointLabel = scorePointsLabels[scorePointsValues.length - index - 1] || '';\n } catch (e) {\n pointLabel = '';\n }\n\n return (\n <th key={`table-header-${index}`}>\n <table className={classes.scorePointHeader}>\n <thead>\n {pointsLabels ? (\n <tr>\n <td>\n <div className={classes.pointLabel} dangerouslySetInnerHTML={{ __html: pointLabel }} />\n </td>\n </tr>\n ) : null}\n <tr>\n <td className={classes.scorePointValue}>\n {scorePointValue === 1 ? `${scorePointValue} point` : `${scorePointValue} points`}\n </td>\n </tr>\n </thead>\n </table>\n </th>\n );\n })}\n </tr>\n </thead>\n\n <tbody>\n {traits &&\n traits.map((trait, traitIndex) => (\n <Trait\n key={`trait_${scaleIndex}_${traitIndex}`}\n trait={trait}\n traitIndex={traitIndex}\n showDescription={!!descriptions}\n showStandards={!!standards}\n scaleIndex={scaleIndex}\n scorePointsValues={scorePointsValues}\n excludeZero={excludeZero}\n />\n ))}\n </tbody>\n </table>\n );\n }\n}\n\nScale.propTypes = {\n classes: PropTypes.object,\n scaleIndex: PropTypes.number,\n scale: 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 standards: PropTypes.arrayOf(PropTypes.string),\n scorePointsDescriptors: PropTypes.arrayOf(PropTypes.string),\n description: PropTypes.string,\n }),\n ),\n }),\n showPointsLabels: PropTypes.bool,\n showDescription: PropTypes.bool,\n showStandards: PropTypes.bool,\n};\n\nexport default withStyles(styles)(Scale);\n"],"mappings":"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"}