@pie-element/extended-text-entry 13.0.1 → 13.1.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/esm/controller.js DELETED
@@ -1,255 +0,0 @@
1
- import debug from 'debug';
2
- import { getFeedback } from '@pie-lib/feedback';
3
-
4
- function _defineProperty(obj, key, value) {
5
- if (key in obj) {
6
- Object.defineProperty(obj, key, {
7
- value: value,
8
- enumerable: true,
9
- configurable: true,
10
- writable: true
11
- });
12
- } else {
13
- obj[key] = value;
14
- }
15
-
16
- return obj;
17
- }
18
-
19
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
20
- try {
21
- var info = gen[key](arg);
22
- var value = info.value;
23
- } catch (error) {
24
- reject(error);
25
- return;
26
- }
27
-
28
- if (info.done) {
29
- resolve(value);
30
- } else {
31
- Promise.resolve(value).then(_next, _throw);
32
- }
33
- }
34
-
35
- function _asyncToGenerator(fn) {
36
- return function () {
37
- var self = this,
38
- args = arguments;
39
- return new Promise(function (resolve, reject) {
40
- var gen = fn.apply(self, args);
41
-
42
- function _next(value) {
43
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
44
- }
45
-
46
- function _throw(err) {
47
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
48
- }
49
-
50
- _next(undefined);
51
- });
52
- };
53
- }
54
-
55
- var defaults = {
56
- annotationsEnabled: false,
57
- dimensions: {
58
- height: 100,
59
- width: 500
60
- },
61
- equationEditor: 'Grade 8 - HS',
62
- feedbackEnabled: false,
63
- mathInput: false,
64
- playerSpellCheckDisabled: true,
65
- predefinedAnnotations: [{
66
- label: 'good',
67
- text: 'good',
68
- type: 'positive'
69
- }, {
70
- label: '★',
71
- text: '★',
72
- type: 'positive'
73
- }, {
74
- label: ':-)',
75
- text: ':-)',
76
- type: 'positive'
77
- }, {
78
- label: 'creative',
79
- text: 'creative',
80
- type: 'positive'
81
- }, {
82
- label: 'run-on',
83
- text: 'run-on',
84
- type: 'negative'
85
- }, {
86
- label: 'frag',
87
- text: 'fragment',
88
- type: 'negative'
89
- }, {
90
- label: 'tran',
91
- text: 'transition',
92
- type: 'negative'
93
- }, {
94
- label: 'supp',
95
- text: 'support needed',
96
- type: 'negative'
97
- }, {
98
- label: 'punc',
99
- text: 'punctuation',
100
- type: 'negative'
101
- }, {
102
- label: 'agr',
103
- text: 'agreement wrong',
104
- type: 'negative'
105
- }, {
106
- label: 'unclear',
107
- text: 'unclear',
108
- type: 'negative'
109
- }, {
110
- label: 'cut',
111
- text: 'cut',
112
- type: 'negative'
113
- }, {
114
- label: 'sp',
115
- text: 'spelling',
116
- type: 'negative'
117
- }, {
118
- label: 'cap',
119
- text: 'capitalization',
120
- type: 'negative'
121
- }, {
122
- label: 'inf',
123
- text: 'informal',
124
- type: 'negative'
125
- }, {
126
- label: 'awk',
127
- text: 'awkward',
128
- type: 'negative'
129
- }],
130
- prompt: '',
131
- promptEnabled: true,
132
- rationale: '',
133
- rationaleEnabled: true,
134
- studentInstructionsEnabled: true,
135
- teacherInstructions: '',
136
- teacherInstructionsEnabled: true,
137
- toolbarEditorPosition: 'bottom'
138
- };
139
-
140
- 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; }
141
-
142
- 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; }
143
- var log = debug('@pie-element:extended-text-entry:controller');
144
- function createDefaultModel() {
145
- return _createDefaultModel.apply(this, arguments);
146
- }
147
-
148
- function _createDefaultModel() {
149
- _createDefaultModel = _asyncToGenerator(function* () {
150
- var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
151
- log('[createDefaultModel]', model);
152
- return _objectSpread(_objectSpread({}, defaults), model);
153
- });
154
- return _createDefaultModel.apply(this, arguments);
155
- }
156
-
157
- var normalize = question => _objectSpread(_objectSpread({}, defaults), question);
158
- function model(_x, _x2, _x3) {
159
- return _model.apply(this, arguments);
160
- }
161
-
162
- function _model() {
163
- _model = _asyncToGenerator(function* (question, session, env) {
164
- log('[question]', question);
165
- var normalizedQuestion = normalize(question);
166
- var fb = env.mode === 'evaluate' && normalizedQuestion.feedbackEnabled ? getFeedback(normalizedQuestion.feedback, 'Your answer has been submitted') : Promise.resolve(undefined);
167
- var teacherInstructions = null;
168
-
169
- if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {
170
- teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;
171
- } else {
172
- teacherInstructions = null;
173
- }
174
-
175
- var equationEditor = normalizedQuestion.equationEditor || 'miscellaneous';
176
-
177
- switch (normalizedQuestion.equationEditor) {
178
- case 'Grade 1 - 2':
179
- equationEditor = 1;
180
- break;
181
-
182
- case 'Grade 3 - 5':
183
- equationEditor = 3;
184
- break;
185
-
186
- case 'Grade 6 - 7':
187
- equationEditor = 6;
188
- break;
189
-
190
- case 'Grade 8 - HS':
191
- equationEditor = 8;
192
- break;
193
- }
194
-
195
- var annotatorMode = normalizedQuestion.annotationsEnabled && (env.role === 'instructor' || env.mode === 'evaluate');
196
- return fb.then(feedback => ({
197
- prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,
198
- dimensions: normalizedQuestion.dimensions,
199
- customKeys: normalizedQuestion.customKeys || [],
200
- id: normalizedQuestion.id,
201
- disabled: env.mode !== 'gather',
202
- feedback,
203
- teacherInstructions,
204
- language: normalizedQuestion.language,
205
- mathInput: normalizedQuestion.mathInput,
206
- spanishInput: normalizedQuestion.spanishInput,
207
- specialInput: normalizedQuestion.specialInput,
208
- equationEditor,
209
- spellCheckEnabled: !normalizedQuestion.playerSpellCheckDisabled,
210
- playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom',
211
- annotatorMode,
212
- disabledAnnotator: normalizedQuestion.annotationsEnabled ? env.role !== 'instructor' : true,
213
- predefinedAnnotations: normalizedQuestion.annotationsEnabled ? normalizedQuestion.predefinedAnnotations : [],
214
- extraCSSRules: normalizedQuestion.extraCSSRules
215
- }));
216
- });
217
- return _model.apply(this, arguments);
218
- }
219
-
220
- function
221
- /*question, session, env*/
222
- outcome() {
223
- return _outcome.apply(this, arguments);
224
- } // remove all html tags
225
-
226
- function _outcome() {
227
- _outcome = _asyncToGenerator(function* () {
228
- return {
229
- score: 0,
230
- completed: 'n/a',
231
- note: 'Requires manual scoring'
232
- };
233
- });
234
- return _outcome.apply(this, arguments);
235
- }
236
-
237
-
238
- var getContent = html => (html || '').replace(/(<(?!img|iframe|source)([^>]+)>)/gi, '');
239
-
240
- var validate = function validate() {
241
- var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
242
- var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
243
- var errors = {};
244
- ['teacherInstructions', 'prompt'].forEach(field => {
245
- var _config$field;
246
-
247
- if ((_config$field = config[field]) !== null && _config$field !== void 0 && _config$field.required && !getContent(model[field])) {
248
- errors[field] = 'This field is required.';
249
- }
250
- });
251
- return errors;
252
- };
253
-
254
- export { createDefaultModel, model, normalize, outcome, validate };
255
- //# sourceMappingURL=controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"controller.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../controller/src/defaults.js","../controller/src/index.js"],"sourcesContent":["export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","export default {\n annotationsEnabled: false,\n dimensions: { height: 100, width: 500 },\n equationEditor: 'Grade 8 - HS',\n feedbackEnabled: false,\n mathInput: false,\n playerSpellCheckDisabled: true,\n predefinedAnnotations: [\n { label: 'good', text: 'good', type: 'positive' },\n { label: '★', text: '★', type: 'positive' },\n { label: ':-)', text: ':-)', type: 'positive' },\n { label: 'creative', text: 'creative', type: 'positive' },\n { label: 'run-on', text: 'run-on', type: 'negative' },\n { label: 'frag', text: 'fragment', type: 'negative' },\n { label: 'tran', text: 'transition', type: 'negative' },\n { label: 'supp', text: 'support needed', type: 'negative' },\n { label: 'punc', text: 'punctuation', type: 'negative' },\n { label: 'agr', text: 'agreement wrong', type: 'negative' },\n { label: 'unclear', text: 'unclear', type: 'negative' },\n { label: 'cut', text: 'cut', type: 'negative' },\n { label: 'sp', text: 'spelling', type: 'negative' },\n { label: 'cap', text: 'capitalization', type: 'negative' },\n { label: 'inf', text: 'informal', type: 'negative' },\n { label: 'awk', text: 'awkward', type: 'negative' },\n ],\n prompt: '',\n promptEnabled: true,\n rationale: '',\n rationaleEnabled: true,\n studentInstructionsEnabled: true,\n teacherInstructions: '',\n teacherInstructionsEnabled: true,\n toolbarEditorPosition: 'bottom',\n};\n","import debug from 'debug';\nimport { getFeedback } from '@pie-lib/feedback';\nimport defaults from './defaults';\n\nconst log = debug('@pie-element:extended-text-entry:controller');\n\nexport async function createDefaultModel(model = {}) {\n log('[createDefaultModel]', model);\n\n return { ...defaults, ...model };\n}\n\nexport const normalize = (question) => ({ ...defaults, ...question });\n\nexport async function model(question, session, env) {\n log('[question]', question);\n const normalizedQuestion = normalize(question);\n\n const fb =\n env.mode === 'evaluate' && normalizedQuestion.feedbackEnabled\n ? getFeedback(normalizedQuestion.feedback, 'Your answer has been submitted')\n : Promise.resolve(undefined);\n\n let teacherInstructions = null;\n if (env.role === 'instructor' && (env.mode === 'view' || env.mode === 'evaluate')) {\n teacherInstructions = normalizedQuestion.teacherInstructionsEnabled ? normalizedQuestion.teacherInstructions : null;\n } else {\n teacherInstructions = null;\n }\n\n let equationEditor = normalizedQuestion.equationEditor || 'miscellaneous';\n\n switch (normalizedQuestion.equationEditor) {\n case 'Grade 1 - 2':\n equationEditor = 1;\n break;\n case 'Grade 3 - 5':\n equationEditor = 3;\n break;\n case 'Grade 6 - 7':\n equationEditor = 6;\n break;\n case 'Grade 8 - HS':\n equationEditor = 8;\n break;\n default:\n break;\n }\n\n const annotatorMode = normalizedQuestion.annotationsEnabled && (env.role === 'instructor' || env.mode === 'evaluate');\n\n return fb.then((feedback) => ({\n prompt: normalizedQuestion.promptEnabled ? normalizedQuestion.prompt : null,\n dimensions: normalizedQuestion.dimensions,\n customKeys: normalizedQuestion.customKeys || [],\n id: normalizedQuestion.id,\n disabled: env.mode !== 'gather',\n feedback,\n teacherInstructions,\n language: normalizedQuestion.language,\n mathInput: normalizedQuestion.mathInput,\n spanishInput: normalizedQuestion.spanishInput,\n specialInput: normalizedQuestion.specialInput,\n equationEditor,\n spellCheckEnabled: !normalizedQuestion.playerSpellCheckDisabled,\n playersToolbarPosition: normalizedQuestion.playersToolbarPosition || 'bottom',\n annotatorMode,\n disabledAnnotator: normalizedQuestion.annotationsEnabled ? env.role !== 'instructor' : true,\n predefinedAnnotations: normalizedQuestion.annotationsEnabled ? normalizedQuestion.predefinedAnnotations : [],\n extraCSSRules: normalizedQuestion.extraCSSRules,\n }));\n}\n\nexport async function outcome(/*question, session, env*/) {\n return {\n score: 0,\n completed: 'n/a',\n note: 'Requires manual scoring',\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":["annotationsEnabled","dimensions","height","width","equationEditor","feedbackEnabled","mathInput","playerSpellCheckDisabled","predefinedAnnotations","label","text","type","prompt","promptEnabled","rationale","rationaleEnabled","studentInstructionsEnabled","teacherInstructions","teacherInstructionsEnabled","toolbarEditorPosition","log","debug","createDefaultModel","model","defaults","normalize","question","session","env","normalizedQuestion","fb","mode","getFeedback","feedback","Promise","resolve","undefined","role","annotatorMode","then","customKeys","id","disabled","language","spanishInput","specialInput","spellCheckEnabled","playersToolbarPosition","disabledAnnotator","extraCSSRules","outcome","score","completed","note","getContent","html","replace","validate","config","errors","forEach","field","required"],"mappings":"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"}