@pie-element/complex-rubric 7.1.2-next.1 → 7.1.2
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 +1449 -0
- package/LICENSE.md +5 -0
- package/README.md +3 -0
- package/configure/CHANGELOG.md +1103 -0
- package/configure/lib/defaults.js +271 -0
- package/configure/lib/defaults.js.map +1 -0
- package/configure/lib/index.js +150 -0
- package/configure/lib/index.js.map +1 -0
- package/configure/lib/main.js +172 -0
- package/configure/lib/main.js.map +1 -0
- package/configure/package.json +27 -0
- package/configure/src/__tests__/index.test.js +94 -0
- package/configure/src/__tests__/main.test.jsx +140 -0
- package/configure/src/defaults.js +213 -0
- package/configure/src/index.js +169 -0
- package/configure/src/main.jsx +162 -0
- package/controller/CHANGELOG.md +936 -0
- package/controller/lib/defaults.js +42 -0
- package/controller/lib/defaults.js.map +1 -0
- package/controller/lib/index.js +239 -0
- package/controller/lib/index.js.map +1 -0
- package/controller/lib/utils.js +11 -0
- package/controller/lib/utils.js.map +1 -0
- package/controller/package.json +16 -0
- package/controller/src/__tests__/index.test.js +55 -0
- package/controller/src/defaults.js +39 -0
- package/controller/src/index.js +220 -0
- package/controller/src/utils.js +3 -0
- package/docs/config-schema.json +4255 -0
- package/docs/config-schema.json.md +3162 -0
- package/docs/demo/config.js +8 -0
- package/docs/demo/generate.js +196 -0
- package/docs/demo/index.html +1 -0
- package/docs/demo/session.js +6 -0
- package/docs/pie-schema.json +3302 -0
- package/docs/pie-schema.json.md +2364 -0
- package/lib/index.js +141 -0
- package/lib/index.js.map +1 -0
- package/lib/print.js +129 -0
- package/lib/print.js.map +1 -0
- package/module/configure.js +1 -0
- package/module/controller.js +262 -0
- package/module/demo.js +221 -0
- package/module/element.js +1 -0
- package/module/index.html +21 -0
- package/module/manifest.json +22 -0
- package/module/print-demo.js +259 -0
- package/module/print.html +18 -0
- package/module/print.js +1 -0
- package/package.json +22 -90
- package/src/__tests__/index.test.js +256 -0
- package/src/index.js +152 -0
- package/src/print.js +140 -0
- package/configure.js +0 -2
- package/controller.js +0 -1
- package/dist/author/defaults.d.ts +0 -231
- package/dist/author/defaults.js +0 -177
- package/dist/author/index.d.ts +0 -34
- package/dist/author/index.js +0 -87
- package/dist/author/main.d.ts +0 -23
- package/dist/author/main.js +0 -106
- package/dist/browser/author/index.js +0 -7384
- package/dist/browser/author/index.js.map +0 -1
- package/dist/browser/controller/index.js +0 -145
- package/dist/browser/controller/index.js.map +0 -1
- package/dist/browser/delivery/index.js +0 -96
- package/dist/browser/delivery/index.js.map +0 -1
- package/dist/browser/dist-DJUOd5EZ.js +0 -19
- package/dist/browser/dist-DJUOd5EZ.js.map +0 -1
- package/dist/browser/print/index.js +0 -84
- package/dist/browser/print/index.js.map +0 -1
- package/dist/controller/defaults.d.ts +0 -39
- package/dist/controller/defaults.js +0 -42
- package/dist/controller/index.d.ts +0 -25
- package/dist/controller/index.js +0 -107
- package/dist/controller/utils.d.ts +0 -9
- package/dist/controller/utils.js +0 -4
- package/dist/delivery/index.d.ts +0 -23
- package/dist/delivery/index.js +0 -96
- package/dist/index.d.ts +0 -1
- package/dist/index.iife.d.ts +0 -8
- package/dist/index.iife.js +0 -145
- package/dist/index.js +0 -2
- package/dist/print/index.d.ts +0 -24
- package/dist/print/index.js +0 -84
- package/dist/runtime-support.d.ts +0 -12
- package/dist/runtime-support.js +0 -12
package/lib/index.js
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
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 _rubric = _interopRequireDefault(require("@pie-element/rubric"));
|
|
9
|
+
var _multiTraitRubric = _interopRequireDefault(require("@pie-element/multi-trait-rubric"));
|
|
10
|
+
var _rubric2 = require("@pie-lib/rubric");
|
|
11
|
+
const RUBRIC_TAG_NAME = 'complex-rubric-simple';
|
|
12
|
+
const MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';
|
|
13
|
+
class ComplexRubricSimple extends _rubric.default {}
|
|
14
|
+
class ComplexRubricMultiTrait extends _multiTraitRubric.default {}
|
|
15
|
+
const defineRubrics = () => {
|
|
16
|
+
if (!customElements.get(RUBRIC_TAG_NAME)) {
|
|
17
|
+
customElements.define(RUBRIC_TAG_NAME, ComplexRubricSimple);
|
|
18
|
+
}
|
|
19
|
+
if (!customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {
|
|
20
|
+
customElements.define(MULTI_TRAIT_RUBRIC_TAG_NAME, ComplexRubricMultiTrait);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
defineRubrics();
|
|
24
|
+
class ComplexRubric extends HTMLElement {
|
|
25
|
+
constructor() {
|
|
26
|
+
super();
|
|
27
|
+
this._model = {};
|
|
28
|
+
this._type = _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC;
|
|
29
|
+
}
|
|
30
|
+
set type(t) {
|
|
31
|
+
this._type = t;
|
|
32
|
+
}
|
|
33
|
+
get type() {
|
|
34
|
+
return this._type;
|
|
35
|
+
}
|
|
36
|
+
set model(m) {
|
|
37
|
+
this._model = m;
|
|
38
|
+
const oldType = this._type;
|
|
39
|
+
this.type = m.rubricType;
|
|
40
|
+
switch (this._type) {
|
|
41
|
+
case _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC:
|
|
42
|
+
default:
|
|
43
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
44
|
+
this.setRubricModel(this.simpleRubric);
|
|
45
|
+
});
|
|
46
|
+
break;
|
|
47
|
+
case _rubric2.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:
|
|
48
|
+
customElements.whenDefined(MULTI_TRAIT_RUBRIC_TAG_NAME).then(() => {
|
|
49
|
+
this.setMultiTraitRubricModel(this.multiTraitRubric);
|
|
50
|
+
});
|
|
51
|
+
break;
|
|
52
|
+
case _rubric2.RUBRIC_TYPES.RUBRICLESS:
|
|
53
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
54
|
+
this.setRubriclessModel(this.rubricless);
|
|
55
|
+
});
|
|
56
|
+
break;
|
|
57
|
+
}
|
|
58
|
+
if (oldType !== this.type) {
|
|
59
|
+
this._render();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
setRubricModel(simpleRubric) {
|
|
63
|
+
if (this._model && this._model.rubrics && this._model.rubrics.simpleRubric) {
|
|
64
|
+
const {
|
|
65
|
+
mode
|
|
66
|
+
} = this._model;
|
|
67
|
+
simpleRubric.model = {
|
|
68
|
+
...this._model.rubrics.simpleRubric,
|
|
69
|
+
mode
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
setMultiTraitRubricModel(multiTraitRubric) {
|
|
74
|
+
if (this._model && this._model.rubrics && this._model.rubrics.multiTraitRubric) {
|
|
75
|
+
const {
|
|
76
|
+
mode
|
|
77
|
+
} = this._model;
|
|
78
|
+
multiTraitRubric.model = {
|
|
79
|
+
...this._model.rubrics.multiTraitRubric,
|
|
80
|
+
mode
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
setRubriclessModel(rubricless) {
|
|
85
|
+
if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {
|
|
86
|
+
const {
|
|
87
|
+
mode
|
|
88
|
+
} = this._model;
|
|
89
|
+
rubricless.model = {
|
|
90
|
+
...this._model.rubrics.rubricless,
|
|
91
|
+
mode
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
get multiTraitRubric() {
|
|
96
|
+
return this.querySelector(`${MULTI_TRAIT_RUBRIC_TAG_NAME}#multiTraitRubric`);
|
|
97
|
+
}
|
|
98
|
+
get simpleRubric() {
|
|
99
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#simpleRubric`);
|
|
100
|
+
}
|
|
101
|
+
get rubricless() {
|
|
102
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#rubricless`);
|
|
103
|
+
}
|
|
104
|
+
connectedCallback() {
|
|
105
|
+
this._render();
|
|
106
|
+
}
|
|
107
|
+
_render() {
|
|
108
|
+
let rubricTag;
|
|
109
|
+
if (this._type === _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC) {
|
|
110
|
+
rubricTag = `<${RUBRIC_TAG_NAME} id="simpleRubric" />`;
|
|
111
|
+
} else if (this._type === _rubric2.RUBRIC_TYPES.RUBRICLESS) {
|
|
112
|
+
rubricTag = `<${RUBRIC_TAG_NAME} id="rubricless" />`;
|
|
113
|
+
} else {
|
|
114
|
+
rubricTag = `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id="multiTraitRubric" />`;
|
|
115
|
+
}
|
|
116
|
+
this.innerHTML = rubricTag;
|
|
117
|
+
|
|
118
|
+
// when item is re-rendered (due to connectedCallback), if the custom element is already defined,
|
|
119
|
+
// we need to set the model and session, otherwise the setters are not reached again
|
|
120
|
+
switch (this._type) {
|
|
121
|
+
case _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC:
|
|
122
|
+
default:
|
|
123
|
+
if (customElements.get(RUBRIC_TAG_NAME)) {
|
|
124
|
+
this.setRubricModel(this.simpleRubric);
|
|
125
|
+
}
|
|
126
|
+
break;
|
|
127
|
+
case _rubric2.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:
|
|
128
|
+
if (customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {
|
|
129
|
+
this.setMultiTraitRubricModel(this.multiTraitRubric);
|
|
130
|
+
}
|
|
131
|
+
break;
|
|
132
|
+
case _rubric2.RUBRIC_TYPES.RUBRICLESS:
|
|
133
|
+
if (customElements.get(RUBRIC_TAG_NAME)) {
|
|
134
|
+
this.setRubriclessModel(this.rubricless);
|
|
135
|
+
}
|
|
136
|
+
break;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
var _default = exports.default = ComplexRubric;
|
|
141
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_rubric","_interopRequireDefault","require","_multiTraitRubric","_rubric2","RUBRIC_TAG_NAME","MULTI_TRAIT_RUBRIC_TAG_NAME","ComplexRubricSimple","Rubric","ComplexRubricMultiTrait","MultiTraitRubric","defineRubrics","customElements","get","define","ComplexRubric","HTMLElement","constructor","_model","_type","RUBRIC_TYPES","SIMPLE_RUBRIC","type","t","model","m","oldType","rubricType","whenDefined","then","setRubricModel","simpleRubric","MULTI_TRAIT_RUBRIC","setMultiTraitRubricModel","multiTraitRubric","RUBRICLESS","setRubriclessModel","rubricless","_render","rubrics","mode","querySelector","connectedCallback","rubricTag","innerHTML","_default","exports","default"],"sources":["../src/index.js"],"sourcesContent":["import Rubric from '@pie-element/rubric';\nimport MultiTraitRubric from '@pie-element/multi-trait-rubric';\nimport { RUBRIC_TYPES } from '@pie-lib/rubric';\n\nconst RUBRIC_TAG_NAME = 'complex-rubric-simple';\nconst MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';\n\nclass ComplexRubricSimple extends Rubric {}\n\nclass ComplexRubricMultiTrait extends MultiTraitRubric {}\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 ComplexRubric extends HTMLElement {\n constructor() {\n super();\n this._model = {};\n this._type = RUBRIC_TYPES.SIMPLE_RUBRIC;\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 const { mode } = this._model;\n\n simpleRubric.model = {\n ...this._model.rubrics.simpleRubric,\n mode,\n };\n }\n }\n\n setMultiTraitRubricModel(multiTraitRubric) {\n if (this._model && this._model.rubrics && this._model.rubrics.multiTraitRubric) {\n const { mode } = this._model;\n\n multiTraitRubric.model = {\n ...this._model.rubrics.multiTraitRubric,\n mode,\n };\n }\n }\n\n setRubriclessModel(rubricless) {\n if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {\n const { mode } = this._model;\n\n rubricless.model = {\n ...this._model.rubrics.rubricless,\n mode,\n };\n }\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 let rubricTag;\n if (this._type === RUBRIC_TYPES.SIMPLE_RUBRIC) {\n rubricTag = `<${RUBRIC_TAG_NAME} id=\"simpleRubric\" />`;\n } else if (this._type === RUBRIC_TYPES.RUBRICLESS) {\n rubricTag = `<${RUBRIC_TAG_NAME} id=\"rubricless\" />`;\n } else {\n rubricTag = `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id=\"multiTraitRubric\" />`;\n }\n\n this.innerHTML = rubricTag;\n\n // when item is re-rendered (due to connectedCallback), if the custom element is already defined,\n // we need to set the model and session, otherwise the setters are not reached again\n switch (this._type) {\n case RUBRIC_TYPES.SIMPLE_RUBRIC:\n default:\n if (customElements.get(RUBRIC_TAG_NAME)) {\n this.setRubricModel(this.simpleRubric);\n }\n break;\n case RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:\n if (customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {\n this.setMultiTraitRubricModel(this.multiTraitRubric);\n }\n break;\n case RUBRIC_TYPES.RUBRICLESS:\n if (customElements.get(RUBRIC_TAG_NAME)) {\n this.setRubriclessModel(this.rubricless);\n }\n break;\n }\n }\n}\n\nexport default ComplexRubric;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/print.js
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
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 _rubric = _interopRequireDefault(require("@pie-element/rubric"));
|
|
9
|
+
var _multiTraitRubric = _interopRequireDefault(require("@pie-element/multi-trait-rubric"));
|
|
10
|
+
var _rubric2 = require("@pie-lib/rubric");
|
|
11
|
+
// here it is actually using rubric/src/index.js, instead of using rubric/src/print.js
|
|
12
|
+
|
|
13
|
+
// here it is actually using multi-trait-rubric/src/index.js, instead of using multi-trait-rubric/src/print.js
|
|
14
|
+
|
|
15
|
+
const RUBRIC_TAG_NAME = 'complex-rubric-simple';
|
|
16
|
+
const MULTI_TRAIT_RUBRIC_TAG_NAME = 'complex-rubric-multi-trait';
|
|
17
|
+
class ComplexRubricSimple extends _rubric.default {}
|
|
18
|
+
class ComplexRubricMultiTrait extends _multiTraitRubric.default {}
|
|
19
|
+
const rubricTags = {
|
|
20
|
+
[_rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC]: `<${RUBRIC_TAG_NAME} id="simpleRubric" />`,
|
|
21
|
+
[_rubric2.RUBRIC_TYPES.RUBRICLESS]: `<${RUBRIC_TAG_NAME} id="rubricless" />`,
|
|
22
|
+
[_rubric2.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: `<${MULTI_TRAIT_RUBRIC_TAG_NAME} id="multiTraitRubric" />`
|
|
23
|
+
};
|
|
24
|
+
const preparePrintModel = (model, opts) => {
|
|
25
|
+
const instr = opts.role === 'instructor';
|
|
26
|
+
if (!instr) {
|
|
27
|
+
return {};
|
|
28
|
+
}
|
|
29
|
+
model.mode = 'evaluate';
|
|
30
|
+
model.animationsDisabled = true;
|
|
31
|
+
return model;
|
|
32
|
+
};
|
|
33
|
+
const defineRubrics = () => {
|
|
34
|
+
if (!customElements.get(RUBRIC_TAG_NAME)) {
|
|
35
|
+
customElements.define(RUBRIC_TAG_NAME, ComplexRubricSimple);
|
|
36
|
+
}
|
|
37
|
+
if (!customElements.get(MULTI_TRAIT_RUBRIC_TAG_NAME)) {
|
|
38
|
+
customElements.define(MULTI_TRAIT_RUBRIC_TAG_NAME, ComplexRubricMultiTrait);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
defineRubrics();
|
|
42
|
+
class ComplexRubricPrint extends HTMLElement {
|
|
43
|
+
constructor() {
|
|
44
|
+
super();
|
|
45
|
+
this._model = {};
|
|
46
|
+
this._type = _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC;
|
|
47
|
+
this._options = null;
|
|
48
|
+
}
|
|
49
|
+
set type(t) {
|
|
50
|
+
this._type = t;
|
|
51
|
+
}
|
|
52
|
+
get type() {
|
|
53
|
+
return this._type;
|
|
54
|
+
}
|
|
55
|
+
set model(m) {
|
|
56
|
+
this._model = m;
|
|
57
|
+
const oldType = this._type;
|
|
58
|
+
this.type = m.rubricType;
|
|
59
|
+
switch (this._type) {
|
|
60
|
+
case _rubric2.RUBRIC_TYPES.SIMPLE_RUBRIC:
|
|
61
|
+
default:
|
|
62
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
63
|
+
this.setRubricModel(this.simpleRubric);
|
|
64
|
+
});
|
|
65
|
+
break;
|
|
66
|
+
case _rubric2.RUBRIC_TYPES.MULTI_TRAIT_RUBRIC:
|
|
67
|
+
customElements.whenDefined(MULTI_TRAIT_RUBRIC_TAG_NAME).then(() => {
|
|
68
|
+
this.setMultiTraitRubricModel(this.multiTraitRubric);
|
|
69
|
+
});
|
|
70
|
+
break;
|
|
71
|
+
case _rubric2.RUBRIC_TYPES.RUBRICLESS:
|
|
72
|
+
customElements.whenDefined(RUBRIC_TAG_NAME).then(() => {
|
|
73
|
+
this.setRubriclessModel(this.rubricless);
|
|
74
|
+
});
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
if (oldType !== this.type) {
|
|
78
|
+
this._render();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
setRubricModel(simpleRubric) {
|
|
82
|
+
if (this._model && this._model.rubrics && this._model.rubrics.simpleRubric) {
|
|
83
|
+
simpleRubric.model = preparePrintModel(this._model.rubrics.simpleRubric, this._options);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
setMultiTraitRubricModel(multiTraitRubric) {
|
|
87
|
+
if (this._model && this._model.rubrics && this._model.rubrics.multiTraitRubric) {
|
|
88
|
+
const {
|
|
89
|
+
scales,
|
|
90
|
+
excludeZero
|
|
91
|
+
} = this._model.rubrics.multiTraitRubric || {};
|
|
92
|
+
const parsedScales = (scales || []).map(scale => ({
|
|
93
|
+
...scale,
|
|
94
|
+
excludeZero
|
|
95
|
+
}));
|
|
96
|
+
multiTraitRubric.model = {
|
|
97
|
+
...preparePrintModel(this._model.rubrics.multiTraitRubric, this._options),
|
|
98
|
+
visible: true,
|
|
99
|
+
arrowsDisabled: true,
|
|
100
|
+
scales: parsedScales
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
setRubriclessModel(rubricless) {
|
|
105
|
+
if (this._model && this._model.rubrics && this._model.rubrics.rubricless) {
|
|
106
|
+
rubricless.model = preparePrintModel(this._model.rubrics.rubricless, this._options);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
set options(o) {
|
|
110
|
+
this._options = o;
|
|
111
|
+
}
|
|
112
|
+
get multiTraitRubric() {
|
|
113
|
+
return this.querySelector(`${MULTI_TRAIT_RUBRIC_TAG_NAME}#multiTraitRubric`);
|
|
114
|
+
}
|
|
115
|
+
get simpleRubric() {
|
|
116
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#simpleRubric`);
|
|
117
|
+
}
|
|
118
|
+
get rubricless() {
|
|
119
|
+
return this.querySelector(`${RUBRIC_TAG_NAME}#rubricless`);
|
|
120
|
+
}
|
|
121
|
+
connectedCallback() {
|
|
122
|
+
this._render();
|
|
123
|
+
}
|
|
124
|
+
_render() {
|
|
125
|
+
this.innerHTML = rubricTags[this._type] || '';
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
var _default = exports.default = ComplexRubricPrint;
|
|
129
|
+
//# sourceMappingURL=print.js.map
|
package/lib/print.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print.js","names":["_rubric","_interopRequireDefault","require","_multiTraitRubric","_rubric2","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","HTMLElement","constructor","_model","_type","_options","type","t","m","oldType","rubricType","whenDefined","then","setRubricModel","simpleRubric","setMultiTraitRubricModel","multiTraitRubric","setRubriclessModel","rubricless","_render","rubrics","scales","excludeZero","parsedScales","map","scale","visible","arrowsDisabled","options","o","querySelector","connectedCallback","innerHTML","_default","exports","default"],"sources":["../src/print.js"],"sourcesContent":["// here it is actually using rubric/src/index.js, instead of using rubric/src/print.js\nimport Rubric from '@pie-element/rubric';\n// here it is actually using multi-trait-rubric/src/index.js, instead of using multi-trait-rubric/src/print.js\nimport MultiTraitRubric from '@pie-element/multi-trait-rubric';\nimport { RUBRIC_TYPES } from '@pie-lib/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"],"mappings":"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","ignoreList":[]}
|