@pie-element/complex-rubric 2.18.4-next.2 → 2.18.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.
- package/CHANGELOG.md +12 -0
- package/lib/print.js +25 -3
- package/lib/print.js.map +1 -1
- package/module/print.js +19 -1
- package/package.json +4 -4
- package/src/print.js +22 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.18.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/complex-rubric@2.18.3...@pie-element/complex-rubric@2.18.4) (2024-08-27)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* use object and map tag by type PD-3977 ([f6f4fe6](https://github.com/pie-framework/pie-elements/commit/f6f4fe6c5b268c73383ccb7fb18ccffecfecda9b))
|
|
12
|
+
* **complex-rubric:** handle rubricless for print functionality PD-3977 ([b5dd7a3](https://github.com/pie-framework/pie-elements/commit/b5dd7a37c1f048acf1672e943e713530e6a0f009))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
6
18
|
## [2.18.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/complex-rubric@2.18.2...@pie-element/complex-rubric@2.18.3) (2024-08-22)
|
|
7
19
|
|
|
8
20
|
|
package/lib/print.js
CHANGED
|
@@ -7,10 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
10
|
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
|
|
13
11
|
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
+
|
|
14
14
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
15
|
|
|
16
16
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
@@ -27,6 +27,8 @@ var _multiTraitRubric = _interopRequireDefault(require("@pie-element/multi-trait
|
|
|
27
27
|
|
|
28
28
|
var _rubric2 = require("@pie-lib/pie-toolbox/rubric");
|
|
29
29
|
|
|
30
|
+
var _rubricTags;
|
|
31
|
+
|
|
30
32
|
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; }
|
|
31
33
|
|
|
32
34
|
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; }
|
|
@@ -64,6 +66,8 @@ var ComplexRubricMultiTrait = /*#__PURE__*/function (_MultiTraitRubric) {
|
|
|
64
66
|
return (0, _createClass2["default"])(ComplexRubricMultiTrait);
|
|
65
67
|
}(_multiTraitRubric["default"]);
|
|
66
68
|
|
|
69
|
+
var rubricTags = (_rubricTags = {}, (0, _defineProperty2["default"])(_rubricTags, _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC, "<".concat(RUBRIC_TAG_NAME, " id=\"simpleRubric\" />")), (0, _defineProperty2["default"])(_rubricTags, _rubric2.RUBRIC_TYPES.RUBRICLESS, "<".concat(RUBRIC_TAG_NAME, " id=\"rubricless\" />")), (0, _defineProperty2["default"])(_rubricTags, _rubric2.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC, "<".concat(MULTI_TRAIT_RUBRIC_TAG_NAME, " id=\"multiTraitRubric\" />")), _rubricTags);
|
|
70
|
+
|
|
67
71
|
var preparePrintModel = function preparePrintModel(model, opts) {
|
|
68
72
|
var instr = opts.role === 'instructor';
|
|
69
73
|
|
|
@@ -134,6 +138,12 @@ var ComplexRubricPrint = /*#__PURE__*/function (_HTMLElement) {
|
|
|
134
138
|
_this2.setMultiTraitRubricModel(_this2.multiTraitRubric);
|
|
135
139
|
});
|
|
136
140
|
break;
|
|
141
|
+
|
|
142
|
+
case _rubric2.RUBRIC_TYPES.RUBRICLESS:
|
|
143
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(function () {
|
|
144
|
+
_this2.setRubriclessModel(_this2.rubricless);
|
|
145
|
+
});
|
|
146
|
+
break;
|
|
137
147
|
}
|
|
138
148
|
|
|
139
149
|
if (oldType !== this.type) {
|
|
@@ -167,6 +177,13 @@ var ComplexRubricPrint = /*#__PURE__*/function (_HTMLElement) {
|
|
|
167
177
|
});
|
|
168
178
|
}
|
|
169
179
|
}
|
|
180
|
+
}, {
|
|
181
|
+
key: "setRubriclessModel",
|
|
182
|
+
value: function setRubriclessModel(rubricless) {
|
|
183
|
+
if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {
|
|
184
|
+
rubricless.model = preparePrintModel(this._model.rubrics.rubricless, this._options);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
170
187
|
}, {
|
|
171
188
|
key: "options",
|
|
172
189
|
set: function set(o) {
|
|
@@ -182,6 +199,11 @@ var ComplexRubricPrint = /*#__PURE__*/function (_HTMLElement) {
|
|
|
182
199
|
get: function get() {
|
|
183
200
|
return this.querySelector("".concat(RUBRIC_TAG_NAME, "#simpleRubric"));
|
|
184
201
|
}
|
|
202
|
+
}, {
|
|
203
|
+
key: "rubricless",
|
|
204
|
+
get: function get() {
|
|
205
|
+
return this.querySelector("".concat(RUBRIC_TAG_NAME, "#rubricless"));
|
|
206
|
+
}
|
|
185
207
|
}, {
|
|
186
208
|
key: "connectedCallback",
|
|
187
209
|
value: function connectedCallback() {
|
|
@@ -190,7 +212,7 @@ var ComplexRubricPrint = /*#__PURE__*/function (_HTMLElement) {
|
|
|
190
212
|
}, {
|
|
191
213
|
key: "_render",
|
|
192
214
|
value: function _render() {
|
|
193
|
-
this.innerHTML = this._type
|
|
215
|
+
this.innerHTML = rubricTags[this._type] || '';
|
|
194
216
|
}
|
|
195
217
|
}]);
|
|
196
218
|
return ComplexRubricPrint;
|
package/lib/print.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/print.js"],"names":["RUBRIC_TAG_NAME","MULTI_TRAIT_RUBRIC_TAG_NAME","ComplexRubricSimple","Rubric","ComplexRubricMultiTrait","MultiTraitRubric","preparePrintModel","model","opts","instr","role","mode","animationsDisabled","defineRubrics","customElements","get","define","ComplexRubricPrint","_model","_type","
|
|
1
|
+
{"version":3,"sources":["../src/print.js"],"names":["RUBRIC_TAG_NAME","MULTI_TRAIT_RUBRIC_TAG_NAME","ComplexRubricSimple","Rubric","ComplexRubricMultiTrait","MultiTraitRubric","rubricTags","RUBRIC_TYPES","SIMPLE_RUBRIC","RUBRICLESS","MULTI_TRAIT_RUBRIC","preparePrintModel","model","opts","instr","role","mode","animationsDisabled","defineRubrics","customElements","get","define","ComplexRubricPrint","_model","_type","_options","t","m","oldType","type","rubricType","whenDefined","then","setRubricModel","simpleRubric","setMultiTraitRubricModel","multiTraitRubric","setRubriclessModel","rubricless","_render","rubrics","scales","excludeZero","parsedScales","map","scale","visible","arrowsDisabled","o","querySelector","innerHTML","HTMLElement"],"mappings":"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","sourcesContent":["import Rubric from '@pie-element/rubric';\nimport MultiTraitRubric from '@pie-element/multi-trait-rubric';\nimport { RUBRIC_TYPES } from '@pie-lib/pie-toolbox/rubric';\n\nconst RUBRIC_TAG_NAME = 'complex-rubric-simple';\nconst MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';\n\nclass ComplexRubricSimple extends Rubric {}\nclass ComplexRubricMultiTrait extends MultiTraitRubric {}\n\nconst rubricTags = {\n [RUBRIC_TYPES.SIMPLE_RUBRIC]: `<${RUBRIC_TAG_NAME} id=\"simpleRubric\" />`,\n [RUBRIC_TYPES.RUBRICLESS]: `<${RUBRIC_TAG_NAME} id=\"rubricless\" />`,\n [RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id=\"multiTraitRubric\" />`,\n};\n\nconst preparePrintModel = (model, opts) => {\n const instr = opts.role === 'instructor';\n\n if (!instr) {\n return {};\n }\n\n model.mode = 'evaluate';\n model.animationsDisabled = true;\n\n return model;\n};\n\nconst defineRubrics = () => {\n if (!customElements.get(RUBRIC_TAG_NAME)) {\n customElements.define(RUBRIC_TAG_NAME, ComplexRubricSimple);\n }\n\n if (!customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {\n customElements.define(MULTI_TRAIT_RUBRIC_TAG_NAME, ComplexRubricMultiTrait);\n }\n};\n\ndefineRubrics();\n\nclass ComplexRubricPrint extends HTMLElement {\n constructor() {\n super();\n this._model = {};\n this._type = RUBRIC_TYPES.SIMPLE_RUBRIC;\n this._options = null;\n }\n\n set type(t) {\n this._type = t;\n }\n\n get type() {\n return this._type;\n }\n\n set model(m) {\n this._model = m;\n const oldType = this._type;\n this.type = m.rubricType;\n\n switch (this._type) {\n case RUBRIC_TYPES.SIMPLE_RUBRIC:\n default:\n customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {\n this.setRubricModel(this.simpleRubric);\n });\n break;\n case RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:\n customElements.whenDefined(MULTI_TRAIT_RUBRIC_TAG_NAME).then(() => {\n this.setMultiTraitRubricModel(this.multiTraitRubric);\n });\n break;\n case RUBRIC_TYPES.RUBRICLESS:\n customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {\n this.setRubriclessModel(this.rubricless);\n });\n break;\n }\n\n if (oldType !== this.type) {\n this._render();\n }\n }\n\n setRubricModel(simpleRubric) {\n if (this._model && this._model.rubrics && this._model.rubrics.simpleRubric) {\n simpleRubric.model = preparePrintModel(this._model.rubrics.simpleRubric, this._options);\n }\n }\n\n setMultiTraitRubricModel(multiTraitRubric) {\n if (this._model && this._model.rubrics && this._model.rubrics.multiTraitRubric) {\n const { scales, excludeZero } = this._model.rubrics.multiTraitRubric || {};\n const parsedScales = (scales || []).map((scale) => ({ ...scale, excludeZero }));\n\n multiTraitRubric.model = {\n ...preparePrintModel(this._model.rubrics.multiTraitRubric, this._options),\n visible: true,\n arrowsDisabled: true,\n scales: parsedScales,\n };\n }\n }\n\n setRubriclessModel(rubricless) {\n if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {\n rubricless.model = preparePrintModel(this._model.rubrics.rubricless, this._options);\n }\n }\n\n set options(o) {\n this._options = o;\n }\n\n get multiTraitRubric() {\n return this.querySelector(`${MULTI_TRAIT_RUBRIC_TAG_NAME}#multiTraitRubric`);\n }\n\n get simpleRubric() {\n return this.querySelector(`${RUBRIC_TAG_NAME}#simpleRubric`);\n }\n\n get rubricless() {\n return this.querySelector(`${RUBRIC_TAG_NAME}#rubricless`);\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n this.innerHTML = rubricTags[this._type] || '';\n }\n}\n\nexport default ComplexRubricPrint;\n"],"file":"print.js"}
|
package/module/print.js
CHANGED
|
@@ -230403,6 +230403,11 @@ const RUBRIC_TAG_NAME = 'complex-rubric-simple';
|
|
|
230403
230403
|
const MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';
|
|
230404
230404
|
class ComplexRubricSimple extends RubricRender {}
|
|
230405
230405
|
class ComplexRubricMultiTrait extends MultiTraitRubric {}
|
|
230406
|
+
const rubricTags = {
|
|
230407
|
+
[rubric$1.RUBRIC_TYPES.SIMPLE_RUBRIC]: `<${RUBRIC_TAG_NAME} id="simpleRubric" />`,
|
|
230408
|
+
[rubric$1.RUBRIC_TYPES.RUBRICLESS]: `<${RUBRIC_TAG_NAME} id="rubricless" />`,
|
|
230409
|
+
[rubric$1.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id="multiTraitRubric" />`
|
|
230410
|
+
};
|
|
230406
230411
|
const preparePrintModel = (model, opts) => {
|
|
230407
230412
|
const instr = opts.role === 'instructor';
|
|
230408
230413
|
if (!instr) {
|
|
@@ -230450,6 +230455,11 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
230450
230455
|
this.setMultiTraitRubricModel(this.multiTraitRubric);
|
|
230451
230456
|
});
|
|
230452
230457
|
break;
|
|
230458
|
+
case rubric$1.RUBRIC_TYPES.RUBRICLESS:
|
|
230459
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
230460
|
+
this.setRubriclessModel(this.rubricless);
|
|
230461
|
+
});
|
|
230462
|
+
break;
|
|
230453
230463
|
}
|
|
230454
230464
|
if (oldType !== this.type) {
|
|
230455
230465
|
this._render();
|
|
@@ -230475,6 +230485,11 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
230475
230485
|
};
|
|
230476
230486
|
}
|
|
230477
230487
|
}
|
|
230488
|
+
setRubriclessModel(rubricless) {
|
|
230489
|
+
if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {
|
|
230490
|
+
rubricless.model = preparePrintModel(this._model.rubrics.rubricless, this._options);
|
|
230491
|
+
}
|
|
230492
|
+
}
|
|
230478
230493
|
set options(o) {
|
|
230479
230494
|
this._options = o;
|
|
230480
230495
|
}
|
|
@@ -230484,11 +230499,14 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
230484
230499
|
get simpleRubric() {
|
|
230485
230500
|
return this.querySelector(`${RUBRIC_TAG_NAME}#simpleRubric`);
|
|
230486
230501
|
}
|
|
230502
|
+
get rubricless() {
|
|
230503
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#rubricless`);
|
|
230504
|
+
}
|
|
230487
230505
|
connectedCallback() {
|
|
230488
230506
|
this._render();
|
|
230489
230507
|
}
|
|
230490
230508
|
_render() {
|
|
230491
|
-
this.innerHTML = this._type
|
|
230509
|
+
this.innerHTML = rubricTags[this._type] || '';
|
|
230492
230510
|
}
|
|
230493
230511
|
}
|
|
230494
230512
|
export {ComplexRubricPrint as default};
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pie-element/complex-rubric",
|
|
3
3
|
"repository": "pie-framework/pie-elements",
|
|
4
|
-
"version": "2.18.4
|
|
4
|
+
"version": "2.18.4",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"@material-ui/core": "^3.9.2",
|
|
10
|
-
"@pie-element/multi-trait-rubric": "^3.18.
|
|
11
|
-
"@pie-element/rubric": "^3.18.
|
|
10
|
+
"@pie-element/multi-trait-rubric": "^3.18.3",
|
|
11
|
+
"@pie-element/rubric": "^3.18.3",
|
|
12
12
|
"@pie-framework/pie-player-events": "^0.1.0",
|
|
13
13
|
"classnames": "^2.2.5",
|
|
14
14
|
"debug": "^4.1.1",
|
|
15
15
|
"lodash": "^4.17.11",
|
|
16
16
|
"prop-types": "^15.7.2"
|
|
17
17
|
},
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "9999eca8f338bbd69a30bc951efb7b188b5f707c",
|
|
19
19
|
"scripts": {
|
|
20
20
|
"postpublish": "../../scripts/postpublish"
|
|
21
21
|
},
|
package/src/print.js
CHANGED
|
@@ -8,6 +8,12 @@ const MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';
|
|
|
8
8
|
class ComplexRubricSimple extends Rubric {}
|
|
9
9
|
class ComplexRubricMultiTrait extends MultiTraitRubric {}
|
|
10
10
|
|
|
11
|
+
const rubricTags = {
|
|
12
|
+
[RUBRIC_TYPES.SIMPLE_RUBRIC]: `<${RUBRIC_TAG_NAME} id="simpleRubric" />`,
|
|
13
|
+
[RUBRIC_TYPES.RUBRICLESS]: `<${RUBRIC_TAG_NAME} id="rubricless" />`,
|
|
14
|
+
[RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id="multiTraitRubric" />`,
|
|
15
|
+
};
|
|
16
|
+
|
|
11
17
|
const preparePrintModel = (model, opts) => {
|
|
12
18
|
const instr = opts.role === 'instructor';
|
|
13
19
|
|
|
@@ -66,6 +72,11 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
66
72
|
this.setMultiTraitRubricModel(this.multiTraitRubric);
|
|
67
73
|
});
|
|
68
74
|
break;
|
|
75
|
+
case RUBRIC_TYPES.RUBRICLESS:
|
|
76
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
77
|
+
this.setRubriclessModel(this.rubricless);
|
|
78
|
+
});
|
|
79
|
+
break;
|
|
69
80
|
}
|
|
70
81
|
|
|
71
82
|
if (oldType !== this.type) {
|
|
@@ -93,6 +104,12 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
93
104
|
}
|
|
94
105
|
}
|
|
95
106
|
|
|
107
|
+
setRubriclessModel(rubricless) {
|
|
108
|
+
if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {
|
|
109
|
+
rubricless.model = preparePrintModel(this._model.rubrics.rubricless, this._options);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
96
113
|
set options(o) {
|
|
97
114
|
this._options = o;
|
|
98
115
|
}
|
|
@@ -105,14 +122,16 @@ class ComplexRubricPrint extends HTMLElement {
|
|
|
105
122
|
return this.querySelector(`${RUBRIC_TAG_NAME}#simpleRubric`);
|
|
106
123
|
}
|
|
107
124
|
|
|
125
|
+
get rubricless() {
|
|
126
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#rubricless`);
|
|
127
|
+
}
|
|
128
|
+
|
|
108
129
|
connectedCallback() {
|
|
109
130
|
this._render();
|
|
110
131
|
}
|
|
111
132
|
|
|
112
133
|
_render() {
|
|
113
|
-
this.innerHTML = this._type
|
|
114
|
-
? `<${RUBRIC_TAG_NAME} id="simpleRubric" />`
|
|
115
|
-
: `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id="multiTraitRubric" />`;
|
|
134
|
+
this.innerHTML = rubricTags[this._type] || '';
|
|
116
135
|
}
|
|
117
136
|
}
|
|
118
137
|
|