@pie-element/matrix 2.0.1 → 11.0.3-esm.0
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/configure/package.json +4 -4
- package/controller/package.json +1 -1
- package/esm/configure.css +847 -0
- package/esm/configure.js +1392 -17483
- package/esm/configure.js.map +1 -1
- package/esm/controller.css +847 -0
- package/esm/controller.js +37 -86
- package/esm/controller.js.map +1 -1
- package/esm/element.css +847 -0
- package/esm/element.js +196 -11292
- package/esm/element.js.map +1 -1
- package/package.json +4 -4
package/esm/controller.js
CHANGED
|
@@ -1,54 +1,21 @@
|
|
|
1
1
|
import isEmpty from 'lodash/isEmpty';
|
|
2
2
|
|
|
3
|
-
function
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
if (info.done) {
|
|
13
|
-
resolve(value);
|
|
14
|
-
} else {
|
|
15
|
-
Promise.resolve(value).then(_next, _throw);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function _asyncToGenerator(fn) {
|
|
20
|
-
return function () {
|
|
21
|
-
var self = this,
|
|
22
|
-
args = arguments;
|
|
23
|
-
return new Promise(function (resolve, reject) {
|
|
24
|
-
var gen = fn.apply(self, args);
|
|
25
|
-
|
|
26
|
-
function _next(value) {
|
|
27
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
function _throw(err) {
|
|
31
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
3
|
+
function _extends() {
|
|
4
|
+
_extends = Object.assign || function (target) {
|
|
5
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
6
|
+
var source = arguments[i];
|
|
7
|
+
|
|
8
|
+
for (var key in source) {
|
|
9
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
10
|
+
target[key] = source[key];
|
|
11
|
+
}
|
|
32
12
|
}
|
|
13
|
+
}
|
|
33
14
|
|
|
34
|
-
|
|
35
|
-
});
|
|
15
|
+
return target;
|
|
36
16
|
};
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
function _defineProperty(obj, key, value) {
|
|
40
|
-
if (key in obj) {
|
|
41
|
-
Object.defineProperty(obj, key, {
|
|
42
|
-
value: value,
|
|
43
|
-
enumerable: true,
|
|
44
|
-
configurable: true,
|
|
45
|
-
writable: true
|
|
46
|
-
});
|
|
47
|
-
} else {
|
|
48
|
-
obj[key] = value;
|
|
49
|
-
}
|
|
50
17
|
|
|
51
|
-
return
|
|
18
|
+
return _extends.apply(this, arguments);
|
|
52
19
|
}
|
|
53
20
|
|
|
54
21
|
var defaults = {
|
|
@@ -62,13 +29,7 @@ var defaults = {
|
|
|
62
29
|
teacherInstructionsEnabled: true
|
|
63
30
|
};
|
|
64
31
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
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) { _defineProperty(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; }
|
|
68
|
-
var createDefaultModel = function createDefaultModel() {
|
|
69
|
-
var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
70
|
-
return new Promise(resolve => resolve(_objectSpread(_objectSpread({}, defaults), model)));
|
|
71
|
-
};
|
|
32
|
+
const createDefaultModel = (model = {}) => new Promise(resolve => resolve(_extends({}, defaults, model)));
|
|
72
33
|
/**
|
|
73
34
|
*
|
|
74
35
|
* @param {*} question
|
|
@@ -76,35 +37,27 @@ var createDefaultModel = function createDefaultModel() {
|
|
|
76
37
|
* @param {*} env
|
|
77
38
|
*/
|
|
78
39
|
|
|
79
|
-
function model(
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
function _model() {
|
|
84
|
-
_model = _asyncToGenerator(function* (question, session, env) {
|
|
85
|
-
var normalizedQuestion = _objectSpread(_objectSpread({}, defaults), question);
|
|
40
|
+
async function model(question, session, env) {
|
|
41
|
+
const normalizedQuestion = _extends({}, defaults, question);
|
|
86
42
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
43
|
+
const out = _extends({}, normalizedQuestion, {
|
|
44
|
+
disabled: env.mode !== 'gather',
|
|
45
|
+
mode: env.mode
|
|
46
|
+
});
|
|
91
47
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
48
|
+
const {
|
|
49
|
+
role,
|
|
50
|
+
mode
|
|
51
|
+
} = env || {};
|
|
96
52
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
53
|
+
if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {
|
|
54
|
+
out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;
|
|
55
|
+
} else {
|
|
56
|
+
out.teacherInstructions = null;
|
|
57
|
+
}
|
|
102
58
|
|
|
103
|
-
|
|
104
|
-
});
|
|
105
|
-
return _model.apply(this, arguments);
|
|
59
|
+
return out;
|
|
106
60
|
}
|
|
107
|
-
|
|
108
61
|
function outcome(model, session) {
|
|
109
62
|
return new Promise(resolve => {
|
|
110
63
|
if (!session || isEmpty(session)) {
|
|
@@ -114,8 +67,8 @@ function outcome(model, session) {
|
|
|
114
67
|
});
|
|
115
68
|
}
|
|
116
69
|
|
|
117
|
-
|
|
118
|
-
|
|
70
|
+
const score = Object.keys(session.value).reduce((acc, key) => {
|
|
71
|
+
const matrixValue = model.matrixValues[key];
|
|
119
72
|
return acc + (matrixValue || 0);
|
|
120
73
|
}, 0);
|
|
121
74
|
resolve({
|
|
@@ -124,10 +77,10 @@ function outcome(model, session) {
|
|
|
124
77
|
});
|
|
125
78
|
});
|
|
126
79
|
}
|
|
127
|
-
|
|
80
|
+
const createCorrectResponseSession = (question, env) => {
|
|
128
81
|
return new Promise(resolve => {
|
|
129
82
|
if (env.mode !== 'evaluate' && env.role === 'instructor') {
|
|
130
|
-
|
|
83
|
+
const {
|
|
131
84
|
matrixValues
|
|
132
85
|
} = question || [];
|
|
133
86
|
resolve({
|
|
@@ -141,16 +94,14 @@ var createCorrectResponseSession = (question, env) => {
|
|
|
141
94
|
}; // remove all html tags
|
|
142
95
|
|
|
143
96
|
|
|
144
|
-
|
|
97
|
+
const getContent = html => (html || '').replace(/(<(?!img|iframe|source)([^>]+)>)/gi, '');
|
|
145
98
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
149
|
-
var errors = {};
|
|
99
|
+
const validate = (model = {}, config = {}) => {
|
|
100
|
+
const errors = {};
|
|
150
101
|
['teacherInstructions', 'prompt'].forEach(field => {
|
|
151
102
|
var _config$field;
|
|
152
103
|
|
|
153
|
-
if ((_config$field = config[field])
|
|
104
|
+
if ((_config$field = config[field]) != null && _config$field.required && !getContent(model[field])) {
|
|
154
105
|
errors[field] = 'This field is required.';
|
|
155
106
|
}
|
|
156
107
|
});
|
package/esm/controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sources":["
|
|
1
|
+
{"version":3,"file":"controller.js","sources":["../controller/src/defaults.js","../controller/src/index.js"],"sourcesContent":["export default {\n columnLabels: ['COLUMN 1', 'COLUMN 2', 'COLUMN 3'],\n labelType: 'agreement',\n matrixValues: {},\n prompt: '',\n promptEnabled: true,\n rowLabels: ['STATEMENT 1', 'STATEMENT 2'],\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n};\n","import defaults from './defaults';\nimport isEmpty from 'lodash/isEmpty';\n\nexport const createDefaultModel = (model = {}) => new Promise((resolve) => resolve({ ...defaults, ...model }));\n\n/**\n *\n * @param {*} question\n * @param {*} session\n * @param {*} env\n */\nexport async function model(question, session, env) {\n const normalizedQuestion = { ...defaults, ...question };\n\n const out = {\n ...normalizedQuestion,\n disabled: env.mode !== 'gather',\n mode: env.mode,\n };\n\n const { role, mode } = env || {};\n\n if (role === 'instructor' && (mode === 'view' || mode === 'evaluate')) {\n out.teacherInstructions = normalizedQuestion.teacherInstructionsEnabled\n ? normalizedQuestion.teacherInstructions\n : null;\n } else {\n out.teacherInstructions = null;\n }\n\n return out;\n}\n\nexport function outcome(model, session) {\n return new Promise((resolve) => {\n if (!session || isEmpty(session)) {\n return resolve({ score: 0, empty: true });\n }\n\n const score = Object.keys(session.value).reduce((acc, key) => {\n const matrixValue = model.matrixValues[key];\n return acc + (matrixValue || 0);\n }, 0);\n\n resolve({ score, empty: false });\n });\n}\n\nexport const createCorrectResponseSession = (question, env) => {\n return new Promise((resolve) => {\n if (env.mode !== 'evaluate' && env.role === 'instructor') {\n const { matrixValues } = question || [];\n\n resolve({\n id: '1',\n value: matrixValues,\n });\n } else {\n resolve(null);\n }\n });\n};\n\n// remove all html tags\nconst getInnerText = (html) => (html || '').replaceAll(/<[^>]*>/g, '');\n\n// remove all html tags except img, iframe and source tag for audio\nconst getContent = (html) => (html || '').replace(/(<(?!img|iframe|source)([^>]+)>)/gi, '');\n\nexport const validate = (model = {}, config = {}) => {\n const errors = {};\n\n ['teacherInstructions', 'prompt'].forEach((field) => {\n if (config[field]?.required && !getContent(model[field])) {\n errors[field] = 'This field is required.';\n }\n });\n\n return errors;\n};\n"],"names":["columnLabels","labelType","matrixValues","prompt","promptEnabled","rowLabels","teacherInstructions","teacherInstructionsEnabled","createDefaultModel","model","Promise","resolve","defaults","question","session","env","normalizedQuestion","out","disabled","mode","role","outcome","isEmpty","score","empty","Object","keys","value","reduce","acc","key","matrixValue","createCorrectResponseSession","id","getContent","html","replace","validate","config","errors","forEach","field","required"],"mappings":"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"}
|