scorm-again 2.5.0 → 2.6.1
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/dist/aicc.js +657 -489
- package/dist/aicc.js.map +1 -1
- package/dist/aicc.min.js +1 -1
- package/dist/aicc.min.js.map +1 -1
- package/dist/esm/aicc.js +670 -489
- package/dist/esm/aicc.js.map +1 -1
- package/dist/esm/aicc.min.js +1 -1
- package/dist/esm/aicc.min.js.map +1 -1
- package/dist/esm/scorm-again.js +1113 -729
- package/dist/esm/scorm-again.js.map +1 -1
- package/dist/esm/scorm-again.min.js +1 -1
- package/dist/esm/scorm-again.min.js.map +1 -1
- package/dist/esm/scorm12.js +512 -394
- package/dist/esm/scorm12.js.map +1 -1
- package/dist/esm/scorm12.min.js +1 -1
- package/dist/esm/scorm12.min.js.map +1 -1
- package/dist/esm/scorm2004.js +678 -452
- package/dist/esm/scorm2004.js.map +1 -1
- package/dist/esm/scorm2004.min.js +1 -1
- package/dist/esm/scorm2004.min.js.map +1 -1
- package/dist/scorm-again.js +1100 -728
- package/dist/scorm-again.js.map +1 -1
- package/dist/scorm-again.min.js +1 -1
- package/dist/scorm-again.min.js.map +1 -1
- package/dist/scorm12.js +500 -394
- package/dist/scorm12.js.map +1 -1
- package/dist/scorm12.min.js +1 -1
- package/dist/scorm12.min.js.map +1 -1
- package/dist/scorm2004.js +665 -452
- package/dist/scorm2004.js.map +1 -1
- package/dist/scorm2004.min.js +1 -1
- package/dist/scorm2004.min.js.map +1 -1
- package/dist_test.html +208 -0
- package/package.json +14 -14
- package/src/AICC.ts +6 -3
- package/src/BaseAPI.ts +43 -37
- package/src/Scorm12API.ts +17 -23
- package/src/Scorm2004API.ts +99 -42
- package/src/ScormAgain.ts +3 -7
- package/src/cmi/aicc/attempts.ts +22 -12
- package/src/cmi/aicc/cmi.ts +2 -2
- package/src/cmi/aicc/core.ts +44 -26
- package/src/cmi/aicc/evaluation.ts +31 -12
- package/src/cmi/aicc/paths.ts +29 -15
- package/src/cmi/aicc/student_data.ts +14 -5
- package/src/cmi/aicc/student_demographics.ts +31 -24
- package/src/cmi/aicc/student_preferences.ts +11 -11
- package/src/cmi/aicc/tries.ts +24 -14
- package/src/cmi/aicc/validation.ts +3 -4
- package/src/cmi/common/array.ts +17 -5
- package/src/cmi/common/base_cmi.ts +3 -1
- package/src/cmi/common/score.ts +16 -13
- package/src/cmi/scorm12/cmi.ts +25 -10
- package/src/cmi/scorm12/interactions.ts +62 -28
- package/src/cmi/scorm12/nav.ts +13 -5
- package/src/cmi/scorm12/objectives.ts +28 -18
- package/src/cmi/scorm12/student_data.ts +15 -8
- package/src/cmi/scorm12/student_preference.ts +20 -13
- package/src/cmi/scorm12/validation.ts +7 -7
- package/src/cmi/scorm2004/adl.ts +141 -25
- package/src/cmi/scorm2004/cmi.ts +50 -55
- package/src/cmi/scorm2004/comments.ts +21 -20
- package/src/cmi/scorm2004/interactions.ts +73 -32
- package/src/cmi/scorm2004/learner_preference.ts +20 -13
- package/src/cmi/scorm2004/objectives.ts +41 -16
- package/src/cmi/scorm2004/score.ts +22 -11
- package/src/cmi/scorm2004/validation.ts +4 -4
- package/src/constants/api_constants.ts +8 -19
- package/src/constants/default_settings.ts +6 -5
- package/src/constants/error_codes.ts +5 -12
- package/src/constants/regex.ts +4 -10
- package/src/constants/response_constants.ts +1 -2
- package/src/exceptions/aicc_exceptions.ts +29 -0
- package/src/exceptions/scorm12_exceptions.ts +29 -0
- package/src/exceptions/scorm2004_exceptions.ts +29 -0
- package/src/exceptions.ts +0 -81
- package/src/types/api_types.ts +3 -2
- package/test/AICC.spec.ts +114 -43
- package/test/Scorm12API.spec.ts +60 -39
- package/test/Scorm2004API.spec.ts +165 -80
- package/test/cmi/aicc_cmi.spec.ts +6 -9
- package/test/cmi/scorm12_cmi.spec.ts +8 -8
- package/test/cmi/scorm2004_cmi.spec.ts +8 -9
- package/test/exceptions.spec.ts +11 -9
- package/test/types/api_types.spec.ts +3 -3
- package/test/utilities.spec.ts +1 -4
- package/webpack.config.js +5 -1
package/dist/esm/scorm2004.js
CHANGED
|
@@ -3,10 +3,12 @@
|
|
|
3
3
|
/***/ 429:
|
|
4
4
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
5
5
|
|
|
6
|
+
// ESM COMPAT FLAG
|
|
7
|
+
__webpack_require__.r(__webpack_exports__);
|
|
6
8
|
|
|
7
9
|
// EXPORTS
|
|
8
10
|
__webpack_require__.d(__webpack_exports__, {
|
|
9
|
-
|
|
11
|
+
"default": function() { return /* binding */ src_BaseAPI; }
|
|
10
12
|
});
|
|
11
13
|
|
|
12
14
|
// EXTERNAL MODULE: ./node_modules/tslib/tslib.es6.mjs
|
|
@@ -15,8 +17,6 @@ var tslib_es6 = __webpack_require__(635);
|
|
|
15
17
|
var array = __webpack_require__(589);
|
|
16
18
|
// EXTERNAL MODULE: ./src/exceptions.ts
|
|
17
19
|
var exceptions = __webpack_require__(784);
|
|
18
|
-
// EXTERNAL MODULE: ./src/constants/error_codes.ts
|
|
19
|
-
var error_codes = __webpack_require__(797);
|
|
20
20
|
// EXTERNAL MODULE: ./src/constants/api_constants.ts
|
|
21
21
|
var api_constants = __webpack_require__(340);
|
|
22
22
|
// EXTERNAL MODULE: ./src/utilities.ts
|
|
@@ -36,7 +36,7 @@ var DefaultSettings = {
|
|
|
36
36
|
dataCommitFormat: "json",
|
|
37
37
|
commitRequestDataType: "application/json;charset=UTF-8",
|
|
38
38
|
autoProgress: false,
|
|
39
|
-
logLevel: enums
|
|
39
|
+
logLevel: enums.LogLevelEnum.ERROR,
|
|
40
40
|
selfReportSessionTime: false,
|
|
41
41
|
alwaysSendTotalTime: false,
|
|
42
42
|
renderCommonCommitFields: false,
|
|
@@ -45,9 +45,9 @@ var DefaultSettings = {
|
|
|
45
45
|
xhrWithCredentials: false,
|
|
46
46
|
fetchMode: "cors",
|
|
47
47
|
responseHandler: function (response) {
|
|
48
|
-
return (0,tslib_es6
|
|
48
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
49
49
|
var responseText, httpResult;
|
|
50
|
-
return (0,tslib_es6
|
|
50
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
51
51
|
switch (_a.label) {
|
|
52
52
|
case 0:
|
|
53
53
|
if (!(typeof response !== "undefined")) return [3, 2];
|
|
@@ -62,13 +62,13 @@ var DefaultSettings = {
|
|
|
62
62
|
!{}.hasOwnProperty.call(httpResult, "result")) {
|
|
63
63
|
if (response.status === 200) {
|
|
64
64
|
return [2, {
|
|
65
|
-
result: api_constants
|
|
65
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
66
66
|
errorCode: 0,
|
|
67
67
|
}];
|
|
68
68
|
}
|
|
69
69
|
else {
|
|
70
70
|
return [2, {
|
|
71
|
-
result: api_constants
|
|
71
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
72
72
|
errorCode: 101,
|
|
73
73
|
}];
|
|
74
74
|
}
|
|
@@ -78,14 +78,14 @@ var DefaultSettings = {
|
|
|
78
78
|
result: httpResult.result,
|
|
79
79
|
errorCode: httpResult.errorCode
|
|
80
80
|
? httpResult.errorCode
|
|
81
|
-
: httpResult.result === api_constants
|
|
81
|
+
: httpResult.result === api_constants.global_constants.SCORM_TRUE
|
|
82
82
|
? 0
|
|
83
83
|
: 101,
|
|
84
84
|
}];
|
|
85
85
|
}
|
|
86
86
|
_a.label = 2;
|
|
87
87
|
case 2: return [2, {
|
|
88
|
-
result: api_constants
|
|
88
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
89
89
|
errorCode: 101,
|
|
90
90
|
}];
|
|
91
91
|
}
|
|
@@ -100,25 +100,25 @@ var DefaultSettings = {
|
|
|
100
100
|
case "4":
|
|
101
101
|
case 4:
|
|
102
102
|
case "ERROR":
|
|
103
|
-
case enums
|
|
103
|
+
case enums.LogLevelEnum.ERROR:
|
|
104
104
|
console.error(logMessage);
|
|
105
105
|
break;
|
|
106
106
|
case "3":
|
|
107
107
|
case 3:
|
|
108
108
|
case "WARN":
|
|
109
|
-
case enums
|
|
109
|
+
case enums.LogLevelEnum.WARN:
|
|
110
110
|
console.warn(logMessage);
|
|
111
111
|
break;
|
|
112
112
|
case "2":
|
|
113
113
|
case 2:
|
|
114
114
|
case "INFO":
|
|
115
|
-
case enums
|
|
115
|
+
case enums.LogLevelEnum.INFO:
|
|
116
116
|
console.info(logMessage);
|
|
117
117
|
break;
|
|
118
118
|
case "1":
|
|
119
119
|
case 1:
|
|
120
120
|
case "DEBUG":
|
|
121
|
-
case enums
|
|
121
|
+
case enums.LogLevelEnum.DEBUG:
|
|
122
122
|
if (console.debug) {
|
|
123
123
|
console.debug(logMessage);
|
|
124
124
|
}
|
|
@@ -130,6 +130,7 @@ var DefaultSettings = {
|
|
|
130
130
|
},
|
|
131
131
|
scoItemIds: [],
|
|
132
132
|
scoItemIdValidator: false,
|
|
133
|
+
globalObjectiveIds: [],
|
|
133
134
|
};
|
|
134
135
|
|
|
135
136
|
;// ./src/helpers/scheduled_commit.ts
|
|
@@ -150,7 +151,7 @@ var ScheduledCommit = (function () {
|
|
|
150
151
|
ScheduledCommit.prototype.wrapper = function () {
|
|
151
152
|
var _this = this;
|
|
152
153
|
if (!this._cancelled) {
|
|
153
|
-
(function () { return (0,tslib_es6
|
|
154
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () { return (0,tslib_es6.__generator)(this, function (_a) {
|
|
154
155
|
switch (_a.label) {
|
|
155
156
|
case 0: return [4, this._API.commit(this._callback)];
|
|
156
157
|
case 1: return [2, _a.sent()];
|
|
@@ -171,7 +172,6 @@ var ScheduledCommit = (function () {
|
|
|
171
172
|
|
|
172
173
|
|
|
173
174
|
|
|
174
|
-
|
|
175
175
|
var BaseAPI = (function () {
|
|
176
176
|
function BaseAPI(error_codes, settings) {
|
|
177
177
|
var _newTarget = this.constructor;
|
|
@@ -179,7 +179,7 @@ var BaseAPI = (function () {
|
|
|
179
179
|
if (_newTarget === BaseAPI) {
|
|
180
180
|
throw new TypeError("Cannot construct BaseAPI instances directly");
|
|
181
181
|
}
|
|
182
|
-
this.currentState = api_constants
|
|
182
|
+
this.currentState = api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
183
183
|
this.lastErrorCode = "0";
|
|
184
184
|
this.listenerArray = [];
|
|
185
185
|
this._error_codes = error_codes;
|
|
@@ -189,17 +189,20 @@ var BaseAPI = (function () {
|
|
|
189
189
|
this.apiLogLevel = this.settings.logLevel;
|
|
190
190
|
this.selfReportSessionTime = this.settings.selfReportSessionTime;
|
|
191
191
|
if (this.apiLogLevel === undefined) {
|
|
192
|
-
this.apiLogLevel = enums
|
|
192
|
+
this.apiLogLevel = enums.LogLevelEnum.NONE;
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
BaseAPI.prototype.commonReset = function (settings) {
|
|
196
|
-
this.
|
|
197
|
-
this.
|
|
196
|
+
this.apiLog("reset", "Called", enums.LogLevelEnum.INFO);
|
|
197
|
+
this.settings = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this.settings), settings);
|
|
198
|
+
this.clearScheduledCommit();
|
|
199
|
+
this.currentState = api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
198
200
|
this.lastErrorCode = "0";
|
|
199
201
|
this.listenerArray = [];
|
|
202
|
+
this.startingData = undefined;
|
|
200
203
|
};
|
|
201
204
|
BaseAPI.prototype.initialize = function (callbackName, initializeMessage, terminationMessage) {
|
|
202
|
-
var returnValue = api_constants
|
|
205
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
203
206
|
if (this.isInitialized()) {
|
|
204
207
|
this.throwSCORMError(this._error_codes.INITIALIZED, initializeMessage);
|
|
205
208
|
}
|
|
@@ -210,17 +213,17 @@ var BaseAPI = (function () {
|
|
|
210
213
|
if (this.selfReportSessionTime) {
|
|
211
214
|
this.cmi.setStartTime();
|
|
212
215
|
}
|
|
213
|
-
this.currentState = api_constants
|
|
216
|
+
this.currentState = api_constants.global_constants.STATE_INITIALIZED;
|
|
214
217
|
this.lastErrorCode = "0";
|
|
215
|
-
returnValue = api_constants
|
|
218
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
216
219
|
this.processListeners(callbackName);
|
|
217
220
|
}
|
|
218
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
221
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
219
222
|
this.clearSCORMError(returnValue);
|
|
220
223
|
return returnValue;
|
|
221
224
|
};
|
|
222
225
|
BaseAPI.prototype.apiLog = function (functionName, logMessage, messageLevel, CMIElement) {
|
|
223
|
-
logMessage = (0,utilities
|
|
226
|
+
logMessage = (0,utilities.formatMessage)(functionName, logMessage, CMIElement);
|
|
224
227
|
if (messageLevel >= this.apiLogLevel) {
|
|
225
228
|
this.settings.onLogMessage(messageLevel, logMessage);
|
|
226
229
|
}
|
|
@@ -237,20 +240,20 @@ var BaseAPI = (function () {
|
|
|
237
240
|
return this._settings;
|
|
238
241
|
},
|
|
239
242
|
set: function (settings) {
|
|
240
|
-
this._settings = (0,tslib_es6
|
|
243
|
+
this._settings = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this._settings), settings);
|
|
241
244
|
},
|
|
242
245
|
enumerable: false,
|
|
243
246
|
configurable: true
|
|
244
247
|
});
|
|
245
248
|
BaseAPI.prototype.terminate = function (callbackName, checkTerminated) {
|
|
246
|
-
return (0,tslib_es6
|
|
249
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
247
250
|
var returnValue, result;
|
|
248
|
-
return (0,tslib_es6
|
|
251
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
249
252
|
switch (_a.label) {
|
|
250
253
|
case 0:
|
|
251
|
-
returnValue = api_constants
|
|
254
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
252
255
|
if (!this.checkState(checkTerminated, this._error_codes.TERMINATION_BEFORE_INIT, this._error_codes.MULTIPLE_TERMINATION)) return [3, 2];
|
|
253
|
-
this.currentState = api_constants
|
|
256
|
+
this.currentState = api_constants.global_constants.STATE_TERMINATED;
|
|
254
257
|
return [4, this.storeData(true)];
|
|
255
258
|
case 1:
|
|
256
259
|
result = _a.sent();
|
|
@@ -260,14 +263,14 @@ var BaseAPI = (function () {
|
|
|
260
263
|
returnValue =
|
|
261
264
|
typeof result !== "undefined" && result.result
|
|
262
265
|
? result.result
|
|
263
|
-
: api_constants
|
|
266
|
+
: api_constants.global_constants.SCORM_FALSE;
|
|
264
267
|
if (checkTerminated)
|
|
265
268
|
this.lastErrorCode = "0";
|
|
266
|
-
returnValue = api_constants
|
|
269
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
267
270
|
this.processListeners(callbackName);
|
|
268
271
|
_a.label = 2;
|
|
269
272
|
case 2:
|
|
270
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
273
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
271
274
|
this.clearSCORMError(returnValue);
|
|
272
275
|
return [2, returnValue];
|
|
273
276
|
}
|
|
@@ -287,7 +290,7 @@ var BaseAPI = (function () {
|
|
|
287
290
|
}
|
|
288
291
|
this.processListeners(callbackName, CMIElement);
|
|
289
292
|
}
|
|
290
|
-
this.apiLog(callbackName, ": returned: " + returnValue, enums
|
|
293
|
+
this.apiLog(callbackName, ": returned: " + returnValue, enums.LogLevelEnum.INFO, CMIElement);
|
|
291
294
|
if (returnValue === undefined) {
|
|
292
295
|
return "";
|
|
293
296
|
}
|
|
@@ -298,7 +301,7 @@ var BaseAPI = (function () {
|
|
|
298
301
|
if (value !== undefined) {
|
|
299
302
|
value = String(value);
|
|
300
303
|
}
|
|
301
|
-
var returnValue = api_constants
|
|
304
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
302
305
|
if (this.checkState(checkTerminated, this._error_codes.STORE_BEFORE_INIT, this._error_codes.STORE_AFTER_TERM)) {
|
|
303
306
|
if (checkTerminated)
|
|
304
307
|
this.lastErrorCode = "0";
|
|
@@ -311,26 +314,26 @@ var BaseAPI = (function () {
|
|
|
311
314
|
this.processListeners(callbackName, CMIElement, value);
|
|
312
315
|
}
|
|
313
316
|
if (returnValue === undefined) {
|
|
314
|
-
returnValue = api_constants
|
|
317
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
315
318
|
}
|
|
316
319
|
if (String(this.lastErrorCode) === "0") {
|
|
317
320
|
if (this.settings.autocommit) {
|
|
318
321
|
this.scheduleCommit(this.settings.autocommitSeconds * 1000, commitCallback);
|
|
319
322
|
}
|
|
320
323
|
}
|
|
321
|
-
this.apiLog(callbackName, ": " + value + ": result: " + returnValue, enums
|
|
324
|
+
this.apiLog(callbackName, ": " + value + ": result: " + returnValue, enums.LogLevelEnum.INFO, CMIElement);
|
|
322
325
|
this.clearSCORMError(returnValue);
|
|
323
326
|
return returnValue;
|
|
324
327
|
};
|
|
325
328
|
BaseAPI.prototype.commit = function (callbackName_1) {
|
|
326
|
-
return (0,tslib_es6
|
|
329
|
+
return (0,tslib_es6.__awaiter)(this, arguments, void 0, function (callbackName, checkTerminated) {
|
|
327
330
|
var returnValue, result;
|
|
328
331
|
if (checkTerminated === void 0) { checkTerminated = false; }
|
|
329
|
-
return (0,tslib_es6
|
|
332
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
330
333
|
switch (_a.label) {
|
|
331
334
|
case 0:
|
|
332
335
|
this.clearScheduledCommit();
|
|
333
|
-
returnValue = api_constants
|
|
336
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
334
337
|
if (!this.checkState(checkTerminated, this._error_codes.COMMIT_BEFORE_INIT, this._error_codes.COMMIT_AFTER_TERM)) return [3, 2];
|
|
335
338
|
return [4, this.storeData(false)];
|
|
336
339
|
case 1:
|
|
@@ -341,14 +344,14 @@ var BaseAPI = (function () {
|
|
|
341
344
|
returnValue =
|
|
342
345
|
typeof result !== "undefined" && result.result
|
|
343
346
|
? result.result
|
|
344
|
-
: api_constants
|
|
345
|
-
this.apiLog(callbackName, " Result: " + returnValue, enums
|
|
347
|
+
: api_constants.global_constants.SCORM_FALSE;
|
|
348
|
+
this.apiLog(callbackName, " Result: " + returnValue, enums.LogLevelEnum.DEBUG, "HttpRequest");
|
|
346
349
|
if (checkTerminated)
|
|
347
350
|
this.lastErrorCode = "0";
|
|
348
351
|
this.processListeners(callbackName);
|
|
349
352
|
_a.label = 2;
|
|
350
353
|
case 2:
|
|
351
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
354
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
352
355
|
this.clearSCORMError(returnValue);
|
|
353
356
|
return [2, returnValue];
|
|
354
357
|
}
|
|
@@ -358,7 +361,7 @@ var BaseAPI = (function () {
|
|
|
358
361
|
BaseAPI.prototype.getLastError = function (callbackName) {
|
|
359
362
|
var returnValue = String(this.lastErrorCode);
|
|
360
363
|
this.processListeners(callbackName);
|
|
361
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
364
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
362
365
|
return returnValue;
|
|
363
366
|
};
|
|
364
367
|
BaseAPI.prototype.getErrorString = function (callbackName, CMIErrorCode) {
|
|
@@ -367,7 +370,7 @@ var BaseAPI = (function () {
|
|
|
367
370
|
returnValue = this.getLmsErrorMessageDetails(CMIErrorCode);
|
|
368
371
|
this.processListeners(callbackName);
|
|
369
372
|
}
|
|
370
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
373
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
371
374
|
return returnValue;
|
|
372
375
|
};
|
|
373
376
|
BaseAPI.prototype.getDiagnostic = function (callbackName, CMIErrorCode) {
|
|
@@ -376,7 +379,7 @@ var BaseAPI = (function () {
|
|
|
376
379
|
returnValue = this.getLmsErrorMessageDetails(CMIErrorCode, true);
|
|
377
380
|
this.processListeners(callbackName);
|
|
378
381
|
}
|
|
379
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
382
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
380
383
|
return returnValue;
|
|
381
384
|
};
|
|
382
385
|
BaseAPI.prototype.checkState = function (checkTerminated, beforeInitError, afterTermError) {
|
|
@@ -402,11 +405,11 @@ var BaseAPI = (function () {
|
|
|
402
405
|
};
|
|
403
406
|
BaseAPI.prototype._commonSetCMIValue = function (methodName, scorm2004, CMIElement, value) {
|
|
404
407
|
if (!CMIElement || CMIElement === "") {
|
|
405
|
-
return api_constants
|
|
408
|
+
return api_constants.global_constants.SCORM_FALSE;
|
|
406
409
|
}
|
|
407
410
|
var structure = CMIElement.split(".");
|
|
408
411
|
var refObject = this;
|
|
409
|
-
var returnValue = api_constants
|
|
412
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
410
413
|
var foundFirstIndex = false;
|
|
411
414
|
var invalidErrorMessage = "The data model element passed to ".concat(methodName, " (").concat(CMIElement, ") is not a valid SCORM data model element.");
|
|
412
415
|
var invalidErrorCode = scorm2004
|
|
@@ -420,20 +423,20 @@ var BaseAPI = (function () {
|
|
|
420
423
|
this.throwSCORMError(this._error_codes.READ_ONLY_ELEMENT);
|
|
421
424
|
}
|
|
422
425
|
else {
|
|
423
|
-
refObject = (0,tslib_es6
|
|
426
|
+
refObject = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, refObject), { attribute: value });
|
|
424
427
|
}
|
|
425
428
|
}
|
|
426
429
|
else if (!this._checkObjectHasProperty(refObject, attribute)) {
|
|
427
430
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
428
431
|
}
|
|
429
432
|
else {
|
|
430
|
-
if ((0,utilities
|
|
433
|
+
if ((0,utilities.stringMatches)(CMIElement, "\\.correct_responses\\.\\d+") &&
|
|
431
434
|
this.isInitialized()) {
|
|
432
435
|
this.validateCorrectResponse(CMIElement, value);
|
|
433
436
|
}
|
|
434
437
|
if (!scorm2004 || this.lastErrorCode === "0") {
|
|
435
438
|
refObject[attribute] = value;
|
|
436
|
-
returnValue = api_constants
|
|
439
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
437
440
|
}
|
|
438
441
|
}
|
|
439
442
|
}
|
|
@@ -443,7 +446,7 @@ var BaseAPI = (function () {
|
|
|
443
446
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
444
447
|
break;
|
|
445
448
|
}
|
|
446
|
-
if (refObject instanceof array
|
|
449
|
+
if (refObject instanceof array.CMIArray) {
|
|
447
450
|
var index = parseInt(structure[idx + 1], 10);
|
|
448
451
|
if (!isNaN(index)) {
|
|
449
452
|
var item = refObject.childArray[index];
|
|
@@ -469,8 +472,8 @@ var BaseAPI = (function () {
|
|
|
469
472
|
}
|
|
470
473
|
}
|
|
471
474
|
}
|
|
472
|
-
if (returnValue === api_constants
|
|
473
|
-
this.apiLog(methodName, "There was an error setting the value for: ".concat(CMIElement, ", value of: ").concat(value), enums
|
|
475
|
+
if (returnValue === api_constants.global_constants.SCORM_FALSE) {
|
|
476
|
+
this.apiLog(methodName, "There was an error setting the value for: ".concat(CMIElement, ", value of: ").concat(value), enums.LogLevelEnum.WARN);
|
|
474
477
|
}
|
|
475
478
|
return returnValue;
|
|
476
479
|
};
|
|
@@ -512,7 +515,7 @@ var BaseAPI = (function () {
|
|
|
512
515
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
513
516
|
break;
|
|
514
517
|
}
|
|
515
|
-
if (refObject instanceof array
|
|
518
|
+
if (refObject instanceof array.CMIArray) {
|
|
516
519
|
var index = parseInt(structure[idx + 1], 10);
|
|
517
520
|
if (!isNaN(index)) {
|
|
518
521
|
var item = refObject.childArray[index];
|
|
@@ -530,10 +533,10 @@ var BaseAPI = (function () {
|
|
|
530
533
|
if (refObject === null || refObject === undefined) {
|
|
531
534
|
if (!scorm2004) {
|
|
532
535
|
if (attribute === "_children") {
|
|
533
|
-
this.throwSCORMError(
|
|
536
|
+
this.throwSCORMError(this._error_codes.CHILDREN_ERROR);
|
|
534
537
|
}
|
|
535
538
|
else if (attribute === "_count") {
|
|
536
|
-
this.throwSCORMError(
|
|
539
|
+
this.throwSCORMError(this._error_codes.COUNT_ERROR);
|
|
537
540
|
}
|
|
538
541
|
}
|
|
539
542
|
}
|
|
@@ -542,13 +545,13 @@ var BaseAPI = (function () {
|
|
|
542
545
|
}
|
|
543
546
|
};
|
|
544
547
|
BaseAPI.prototype.isInitialized = function () {
|
|
545
|
-
return this.currentState === api_constants
|
|
548
|
+
return this.currentState === api_constants.global_constants.STATE_INITIALIZED;
|
|
546
549
|
};
|
|
547
550
|
BaseAPI.prototype.isNotInitialized = function () {
|
|
548
|
-
return this.currentState === api_constants
|
|
551
|
+
return this.currentState === api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
549
552
|
};
|
|
550
553
|
BaseAPI.prototype.isTerminated = function () {
|
|
551
|
-
return this.currentState === api_constants
|
|
554
|
+
return this.currentState === api_constants.global_constants.STATE_TERMINATED;
|
|
552
555
|
};
|
|
553
556
|
BaseAPI.prototype.on = function (listenerName, callback) {
|
|
554
557
|
if (!callback)
|
|
@@ -568,7 +571,7 @@ var BaseAPI = (function () {
|
|
|
568
571
|
CMIElement: CMIElement,
|
|
569
572
|
callback: callback,
|
|
570
573
|
});
|
|
571
|
-
this.apiLog("on", "Added event listener: ".concat(this.listenerArray.length), enums
|
|
574
|
+
this.apiLog("on", "Added event listener: ".concat(this.listenerArray.length), enums.LogLevelEnum.INFO, functionName);
|
|
572
575
|
}
|
|
573
576
|
};
|
|
574
577
|
BaseAPI.prototype.off = function (listenerName, callback) {
|
|
@@ -591,7 +594,7 @@ var BaseAPI = (function () {
|
|
|
591
594
|
});
|
|
592
595
|
if (removeIndex !== -1) {
|
|
593
596
|
this_1.listenerArray.splice(removeIndex, 1);
|
|
594
|
-
this_1.apiLog("off", "Removed event listener: ".concat(this_1.listenerArray.length), enums
|
|
597
|
+
this_1.apiLog("off", "Removed event listener: ".concat(this_1.listenerArray.length), enums.LogLevelEnum.INFO, functionName);
|
|
595
598
|
}
|
|
596
599
|
};
|
|
597
600
|
var this_1 = this;
|
|
@@ -624,7 +627,7 @@ var BaseAPI = (function () {
|
|
|
624
627
|
}
|
|
625
628
|
};
|
|
626
629
|
BaseAPI.prototype.processListeners = function (functionName, CMIElement, value) {
|
|
627
|
-
this.apiLog(functionName, value, enums
|
|
630
|
+
this.apiLog(functionName, value, enums.LogLevelEnum.INFO, CMIElement);
|
|
628
631
|
for (var i = 0; i < this.listenerArray.length; i++) {
|
|
629
632
|
var listener = this.listenerArray[i];
|
|
630
633
|
var functionsMatch = listener.functionName === functionName;
|
|
@@ -640,7 +643,7 @@ var BaseAPI = (function () {
|
|
|
640
643
|
CMIElementsMatch = listener.CMIElement === CMIElement;
|
|
641
644
|
}
|
|
642
645
|
if (functionsMatch && (!listenerHasCMIElement || CMIElementsMatch)) {
|
|
643
|
-
this.apiLog("processListeners", "Processing listener: ".concat(listener.functionName), enums
|
|
646
|
+
this.apiLog("processListeners", "Processing listener: ".concat(listener.functionName), enums.LogLevelEnum.INFO, CMIElement);
|
|
644
647
|
listener.callback(CMIElement, value);
|
|
645
648
|
}
|
|
646
649
|
}
|
|
@@ -649,11 +652,11 @@ var BaseAPI = (function () {
|
|
|
649
652
|
if (!message) {
|
|
650
653
|
message = this.getLmsErrorMessageDetails(errorNumber);
|
|
651
654
|
}
|
|
652
|
-
this.apiLog("throwSCORMError", errorNumber + ": " + message, enums
|
|
655
|
+
this.apiLog("throwSCORMError", errorNumber + ": " + message, enums.LogLevelEnum.ERROR);
|
|
653
656
|
this.lastErrorCode = String(errorNumber);
|
|
654
657
|
};
|
|
655
658
|
BaseAPI.prototype.clearSCORMError = function (success) {
|
|
656
|
-
if (success !== undefined && success !== api_constants
|
|
659
|
+
if (success !== undefined && success !== api_constants.global_constants.SCORM_FALSE) {
|
|
657
660
|
this.lastErrorCode = "0";
|
|
658
661
|
}
|
|
659
662
|
};
|
|
@@ -719,11 +722,16 @@ var BaseAPI = (function () {
|
|
|
719
722
|
result.forEach(function (element) {
|
|
720
723
|
obj = {};
|
|
721
724
|
obj[element[0]] = element[1];
|
|
722
|
-
_this.loadFromJSON((0,utilities
|
|
725
|
+
_this.loadFromJSON((0,utilities.unflatten)(obj), CMIElement);
|
|
723
726
|
});
|
|
724
727
|
};
|
|
725
728
|
BaseAPI.prototype.loadFromJSON = function (json, CMIElement) {
|
|
726
729
|
if (CMIElement === void 0) { CMIElement = ""; }
|
|
730
|
+
if ((!CMIElement || CMIElement === "") &&
|
|
731
|
+
!Object.hasOwnProperty.call(json, "cmi") &&
|
|
732
|
+
!Object.hasOwnProperty.call(json, "adl")) {
|
|
733
|
+
CMIElement = "cmi";
|
|
734
|
+
}
|
|
727
735
|
if (!this.isNotInitialized()) {
|
|
728
736
|
console.error("loadFromJSON can only be called before the call to lmsInitialize.");
|
|
729
737
|
return;
|
|
@@ -759,21 +767,21 @@ var BaseAPI = (function () {
|
|
|
759
767
|
return JSON.parse(this.renderCMIToJSONString());
|
|
760
768
|
};
|
|
761
769
|
BaseAPI.prototype.processHttpRequest = function (url_1, params_1) {
|
|
762
|
-
return (0,tslib_es6
|
|
770
|
+
return (0,tslib_es6.__awaiter)(this, arguments, void 0, function (url, params, immediate) {
|
|
763
771
|
var api, genericError, process;
|
|
764
772
|
var _this = this;
|
|
765
773
|
if (immediate === void 0) { immediate = false; }
|
|
766
|
-
return (0,tslib_es6
|
|
774
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
767
775
|
switch (_a.label) {
|
|
768
776
|
case 0:
|
|
769
777
|
api = this;
|
|
770
778
|
genericError = {
|
|
771
|
-
result: api_constants
|
|
779
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
772
780
|
errorCode: this.error_codes.GENERAL,
|
|
773
781
|
};
|
|
774
782
|
if (immediate) {
|
|
775
|
-
this.performFetch(url, params).then(function (response) { return (0,tslib_es6
|
|
776
|
-
return (0,tslib_es6
|
|
783
|
+
this.performFetch(url, params).then(function (response) { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
784
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
777
785
|
switch (_a.label) {
|
|
778
786
|
case 0: return [4, this.transformResponse(response)];
|
|
779
787
|
case 1:
|
|
@@ -783,13 +791,13 @@ var BaseAPI = (function () {
|
|
|
783
791
|
});
|
|
784
792
|
}); });
|
|
785
793
|
return [2, {
|
|
786
|
-
result: api_constants
|
|
794
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
787
795
|
errorCode: 0,
|
|
788
796
|
}];
|
|
789
797
|
}
|
|
790
|
-
process = function (url, params, settings) { return (0,tslib_es6
|
|
798
|
+
process = function (url, params, settings) { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
791
799
|
var response, e_1;
|
|
792
|
-
return (0,tslib_es6
|
|
800
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
793
801
|
switch (_a.label) {
|
|
794
802
|
case 0:
|
|
795
803
|
_a.trys.push([0, 2, , 3]);
|
|
@@ -800,7 +808,7 @@ var BaseAPI = (function () {
|
|
|
800
808
|
return [2, this.transformResponse(response)];
|
|
801
809
|
case 2:
|
|
802
810
|
e_1 = _a.sent();
|
|
803
|
-
this.apiLog("processHttpRequest", e_1, enums
|
|
811
|
+
this.apiLog("processHttpRequest", e_1, enums.LogLevelEnum.ERROR);
|
|
804
812
|
api.processListeners("CommitError");
|
|
805
813
|
return [2, genericError];
|
|
806
814
|
case 3: return [2];
|
|
@@ -816,14 +824,14 @@ var BaseAPI = (function () {
|
|
|
816
824
|
BaseAPI.prototype.scheduleCommit = function (when, callback) {
|
|
817
825
|
if (!this._timeout) {
|
|
818
826
|
this._timeout = new ScheduledCommit(this, when, callback);
|
|
819
|
-
this.apiLog("scheduleCommit", "scheduled", enums
|
|
827
|
+
this.apiLog("scheduleCommit", "scheduled", enums.LogLevelEnum.DEBUG, "");
|
|
820
828
|
}
|
|
821
829
|
};
|
|
822
830
|
BaseAPI.prototype.clearScheduledCommit = function () {
|
|
823
831
|
if (this._timeout) {
|
|
824
832
|
this._timeout.cancel();
|
|
825
833
|
this._timeout = undefined;
|
|
826
|
-
this.apiLog("clearScheduledCommit", "cleared", enums
|
|
834
|
+
this.apiLog("clearScheduledCommit", "cleared", enums.LogLevelEnum.DEBUG, "");
|
|
827
835
|
}
|
|
828
836
|
};
|
|
829
837
|
BaseAPI.prototype._checkObjectHasProperty = function (refObject, attribute) {
|
|
@@ -832,9 +840,9 @@ var BaseAPI = (function () {
|
|
|
832
840
|
attribute in refObject);
|
|
833
841
|
};
|
|
834
842
|
BaseAPI.prototype.handleValueAccessException = function (e, returnValue) {
|
|
835
|
-
if (e instanceof exceptions
|
|
843
|
+
if (e instanceof exceptions.ValidationError) {
|
|
836
844
|
this.lastErrorCode = String(e.errorCode);
|
|
837
|
-
returnValue = api_constants
|
|
845
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
838
846
|
}
|
|
839
847
|
else {
|
|
840
848
|
if (e instanceof Error && e.message) {
|
|
@@ -852,20 +860,20 @@ var BaseAPI = (function () {
|
|
|
852
860
|
var commitObject = this.settings.renderCommonCommitFields
|
|
853
861
|
? this.renderCommitObject(shouldTerminateCommit)
|
|
854
862
|
: this.renderCommitCMI(shouldTerminateCommit);
|
|
855
|
-
if ([enums
|
|
863
|
+
if ([enums.LogLevelEnum.DEBUG, "1", 1, "DEBUG"].includes(this.apiLogLevel)) {
|
|
856
864
|
console.debug("Commit (terminated: " + (terminateCommit ? "yes" : "no") + "): ");
|
|
857
865
|
console.debug(commitObject);
|
|
858
866
|
}
|
|
859
867
|
return commitObject;
|
|
860
868
|
};
|
|
861
869
|
BaseAPI.prototype.performFetch = function (url, params) {
|
|
862
|
-
return (0,tslib_es6
|
|
863
|
-
return (0,tslib_es6
|
|
870
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
871
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
864
872
|
return [2, fetch(url, {
|
|
865
873
|
method: "POST",
|
|
866
874
|
mode: this.settings.fetchMode,
|
|
867
875
|
body: params instanceof Array ? params.join("&") : JSON.stringify(params),
|
|
868
|
-
headers: (0,tslib_es6
|
|
876
|
+
headers: (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this.settings.xhrHeaders), { "Content-Type": this.settings.commitRequestDataType }),
|
|
869
877
|
credentials: this.settings.xhrWithCredentials ? "include" : undefined,
|
|
870
878
|
keepalive: true,
|
|
871
879
|
})];
|
|
@@ -873,9 +881,9 @@ var BaseAPI = (function () {
|
|
|
873
881
|
});
|
|
874
882
|
};
|
|
875
883
|
BaseAPI.prototype.transformResponse = function (response) {
|
|
876
|
-
return (0,tslib_es6
|
|
884
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
877
885
|
var result, _a;
|
|
878
|
-
return (0,tslib_es6
|
|
886
|
+
return (0,tslib_es6.__generator)(this, function (_c) {
|
|
879
887
|
switch (_c.label) {
|
|
880
888
|
case 0:
|
|
881
889
|
if (!(typeof this.settings.responseHandler === "function")) return [3, 2];
|
|
@@ -891,8 +899,7 @@ var BaseAPI = (function () {
|
|
|
891
899
|
result = _a;
|
|
892
900
|
if (response.status >= 200 &&
|
|
893
901
|
response.status <= 299 &&
|
|
894
|
-
(result.result === true ||
|
|
895
|
-
result.result === api_constants/* default */.A.global.SCORM_TRUE)) {
|
|
902
|
+
(result.result === true || result.result === api_constants.global_constants.SCORM_TRUE)) {
|
|
896
903
|
this.processListeners("CommitSuccess");
|
|
897
904
|
}
|
|
898
905
|
else {
|
|
@@ -913,29 +920,40 @@ var BaseAPI = (function () {
|
|
|
913
920
|
/***/ 589:
|
|
914
921
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
915
922
|
|
|
923
|
+
__webpack_require__.r(__webpack_exports__);
|
|
916
924
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
917
|
-
/* harmony export */
|
|
925
|
+
/* harmony export */ CMIArray: function() { return /* binding */ CMIArray; }
|
|
918
926
|
/* harmony export */ });
|
|
919
|
-
/* unused harmony export scorm12_error_codes */
|
|
920
927
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(635);
|
|
921
928
|
/* harmony import */ var _base_cmi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(319);
|
|
922
|
-
/* harmony import */ var
|
|
923
|
-
/* harmony import */ var
|
|
929
|
+
/* harmony import */ var _exceptions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(784);
|
|
930
|
+
/* harmony import */ var _constants_error_codes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(797);
|
|
924
931
|
|
|
925
932
|
|
|
926
933
|
|
|
927
934
|
|
|
928
|
-
var scorm12_error_codes = _constants_error_codes__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.scorm12;
|
|
929
935
|
var CMIArray = (function (_super) {
|
|
930
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_3__
|
|
936
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_3__.__extends)(CMIArray, _super);
|
|
931
937
|
function CMIArray(params) {
|
|
932
938
|
var _this = _super.call(this) || this;
|
|
933
939
|
_this.__children = params.children;
|
|
934
|
-
_this._errorCode = params.errorCode ||
|
|
935
|
-
_this._errorClass = params.errorClass ||
|
|
940
|
+
_this._errorCode = params.errorCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_2__.scorm12_errors.GENERAL;
|
|
941
|
+
_this._errorClass = params.errorClass || _exceptions__WEBPACK_IMPORTED_MODULE_1__.BaseScormValidationError;
|
|
936
942
|
_this.childArray = [];
|
|
937
943
|
return _this;
|
|
938
944
|
}
|
|
945
|
+
CMIArray.prototype.reset = function (wipe) {
|
|
946
|
+
if (wipe === void 0) { wipe = false; }
|
|
947
|
+
this._initialized = false;
|
|
948
|
+
if (wipe) {
|
|
949
|
+
this.childArray = [];
|
|
950
|
+
}
|
|
951
|
+
else {
|
|
952
|
+
for (var i = 0; i < this.childArray.length; i++) {
|
|
953
|
+
this.childArray[i].reset();
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
};
|
|
939
957
|
Object.defineProperty(CMIArray.prototype, "_children", {
|
|
940
958
|
get: function () {
|
|
941
959
|
return this.__children;
|
|
@@ -966,7 +984,7 @@ var CMIArray = (function (_super) {
|
|
|
966
984
|
return result;
|
|
967
985
|
};
|
|
968
986
|
return CMIArray;
|
|
969
|
-
}(_base_cmi__WEBPACK_IMPORTED_MODULE_0__
|
|
987
|
+
}(_base_cmi__WEBPACK_IMPORTED_MODULE_0__.BaseCMI));
|
|
970
988
|
|
|
971
989
|
|
|
972
990
|
|
|
@@ -975,9 +993,10 @@ var CMIArray = (function (_super) {
|
|
|
975
993
|
/***/ 319:
|
|
976
994
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
977
995
|
|
|
996
|
+
__webpack_require__.r(__webpack_exports__);
|
|
978
997
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
979
|
-
/* harmony export */
|
|
980
|
-
/* harmony export */
|
|
998
|
+
/* harmony export */ BaseCMI: function() { return /* binding */ BaseCMI; },
|
|
999
|
+
/* harmony export */ BaseRootCMI: function() { return /* binding */ BaseRootCMI; }
|
|
981
1000
|
/* harmony export */ });
|
|
982
1001
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
983
1002
|
|
|
@@ -1010,7 +1029,7 @@ var BaseCMI = (function () {
|
|
|
1010
1029
|
}());
|
|
1011
1030
|
|
|
1012
1031
|
var BaseRootCMI = (function (_super) {
|
|
1013
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_0__
|
|
1032
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(BaseRootCMI, _super);
|
|
1014
1033
|
function BaseRootCMI() {
|
|
1015
1034
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1016
1035
|
}
|
|
@@ -1024,10 +1043,10 @@ var BaseRootCMI = (function (_super) {
|
|
|
1024
1043
|
/***/ 434:
|
|
1025
1044
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1026
1045
|
|
|
1046
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1027
1047
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1028
|
-
/* harmony export */
|
|
1048
|
+
/* harmony export */ CMIScore: function() { return /* binding */ CMIScore; }
|
|
1029
1049
|
/* harmony export */ });
|
|
1030
|
-
/* unused harmony export scorm12_error_codes */
|
|
1031
1050
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(635);
|
|
1032
1051
|
/* harmony import */ var _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(340);
|
|
1033
1052
|
/* harmony import */ var _constants_regex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(417);
|
|
@@ -1040,30 +1059,30 @@ var BaseRootCMI = (function (_super) {
|
|
|
1040
1059
|
|
|
1041
1060
|
|
|
1042
1061
|
|
|
1043
|
-
var scorm12_constants = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm12;
|
|
1044
|
-
var scorm12_regex = _constants_regex__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.scorm12;
|
|
1045
|
-
var scorm12_error_codes = _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.scorm12;
|
|
1046
1062
|
var CMIScore = (function (_super) {
|
|
1047
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_4__
|
|
1063
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__extends)(CMIScore, _super);
|
|
1048
1064
|
function CMIScore(params) {
|
|
1049
1065
|
var _this = _super.call(this) || this;
|
|
1050
1066
|
_this._raw = "";
|
|
1051
1067
|
_this._min = "";
|
|
1052
|
-
_this.__children = params.score_children || scorm12_constants.score_children;
|
|
1068
|
+
_this.__children = params.score_children || _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__.scorm12_constants.score_children;
|
|
1053
1069
|
_this.__score_range = !params.score_range
|
|
1054
1070
|
? false
|
|
1055
|
-
: scorm12_regex.score_range;
|
|
1071
|
+
: _constants_regex__WEBPACK_IMPORTED_MODULE_1__.scorm12_regex.score_range;
|
|
1056
1072
|
_this._max = params.max || params.max === "" ? params.max : "100";
|
|
1057
1073
|
_this.__invalid_error_code =
|
|
1058
|
-
params.invalidErrorCode ||
|
|
1074
|
+
params.invalidErrorCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.INVALID_SET_VALUE;
|
|
1059
1075
|
_this.__invalid_type_code =
|
|
1060
|
-
params.invalidTypeCode ||
|
|
1076
|
+
params.invalidTypeCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.TYPE_MISMATCH;
|
|
1061
1077
|
_this.__invalid_range_code =
|
|
1062
|
-
params.invalidRangeCode ||
|
|
1063
|
-
_this.__decimal_regex = params.decimalRegex || scorm12_regex.CMIDecimal;
|
|
1078
|
+
params.invalidRangeCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.VALUE_OUT_OF_RANGE;
|
|
1079
|
+
_this.__decimal_regex = params.decimalRegex || _constants_regex__WEBPACK_IMPORTED_MODULE_1__.scorm12_regex.CMIDecimal;
|
|
1064
1080
|
_this.__error_class = params.errorClass;
|
|
1065
1081
|
return _this;
|
|
1066
1082
|
}
|
|
1083
|
+
CMIScore.prototype.reset = function () {
|
|
1084
|
+
this._initialized = false;
|
|
1085
|
+
};
|
|
1067
1086
|
Object.defineProperty(CMIScore.prototype, "_children", {
|
|
1068
1087
|
get: function () {
|
|
1069
1088
|
return this.__children;
|
|
@@ -1079,9 +1098,9 @@ var CMIScore = (function (_super) {
|
|
|
1079
1098
|
return this._raw;
|
|
1080
1099
|
},
|
|
1081
1100
|
set: function (raw) {
|
|
1082
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1101
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(raw, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1083
1102
|
(!this.__score_range ||
|
|
1084
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1103
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(raw, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1085
1104
|
this._raw = raw;
|
|
1086
1105
|
}
|
|
1087
1106
|
},
|
|
@@ -1093,9 +1112,9 @@ var CMIScore = (function (_super) {
|
|
|
1093
1112
|
return this._min;
|
|
1094
1113
|
},
|
|
1095
1114
|
set: function (min) {
|
|
1096
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1115
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(min, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1097
1116
|
(!this.__score_range ||
|
|
1098
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1117
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(min, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1099
1118
|
this._min = min;
|
|
1100
1119
|
}
|
|
1101
1120
|
},
|
|
@@ -1107,9 +1126,9 @@ var CMIScore = (function (_super) {
|
|
|
1107
1126
|
return this._max;
|
|
1108
1127
|
},
|
|
1109
1128
|
set: function (max) {
|
|
1110
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1129
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(max, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1111
1130
|
(!this.__score_range ||
|
|
1112
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1131
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(max, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1113
1132
|
this._max = max;
|
|
1114
1133
|
}
|
|
1115
1134
|
},
|
|
@@ -1127,7 +1146,7 @@ var CMIScore = (function (_super) {
|
|
|
1127
1146
|
return result;
|
|
1128
1147
|
};
|
|
1129
1148
|
return CMIScore;
|
|
1130
|
-
}(_base_cmi__WEBPACK_IMPORTED_MODULE_2__
|
|
1149
|
+
}(_base_cmi__WEBPACK_IMPORTED_MODULE_2__.BaseCMI));
|
|
1131
1150
|
|
|
1132
1151
|
|
|
1133
1152
|
|
|
@@ -1136,9 +1155,10 @@ var CMIScore = (function (_super) {
|
|
|
1136
1155
|
/***/ 449:
|
|
1137
1156
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1138
1157
|
|
|
1158
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1139
1159
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1140
|
-
/* harmony export */
|
|
1141
|
-
/* harmony export */
|
|
1160
|
+
/* harmony export */ checkValidFormat: function() { return /* binding */ checkValidFormat; },
|
|
1161
|
+
/* harmony export */ checkValidRange: function() { return /* binding */ checkValidRange; }
|
|
1142
1162
|
/* harmony export */ });
|
|
1143
1163
|
function checkValidFormat(value, regexPattern, errorCode, errorClass, allowEmptyString) {
|
|
1144
1164
|
if (typeof value !== "string") {
|
|
@@ -1176,16 +1196,23 @@ function checkValidRange(value, rangePattern, errorCode, errorClass) {
|
|
|
1176
1196
|
/***/ 340:
|
|
1177
1197
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1178
1198
|
|
|
1199
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1200
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1201
|
+
/* harmony export */ aicc_constants: function() { return /* binding */ aicc_constants; },
|
|
1202
|
+
/* harmony export */ global_constants: function() { return /* binding */ global_constants; },
|
|
1203
|
+
/* harmony export */ scorm12_constants: function() { return /* binding */ scorm12_constants; },
|
|
1204
|
+
/* harmony export */ scorm2004_constants: function() { return /* binding */ scorm2004_constants; }
|
|
1205
|
+
/* harmony export */ });
|
|
1179
1206
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1180
1207
|
|
|
1181
|
-
var
|
|
1208
|
+
var global_constants = {
|
|
1182
1209
|
SCORM_TRUE: "true",
|
|
1183
1210
|
SCORM_FALSE: "false",
|
|
1184
1211
|
STATE_NOT_INITIALIZED: 0,
|
|
1185
1212
|
STATE_INITIALIZED: 1,
|
|
1186
1213
|
STATE_TERMINATED: 2,
|
|
1187
1214
|
};
|
|
1188
|
-
var
|
|
1215
|
+
var scorm12_constants = {
|
|
1189
1216
|
cmi_children: "core,suspend_data,launch_data,comments,objectives,student_data,student_preference,interactions",
|
|
1190
1217
|
core_children: "student_id,student_name,lesson_location,credit,lesson_status,entry,score,total_time,lesson_mode,exit,session_time",
|
|
1191
1218
|
score_children: "raw,min,max",
|
|
@@ -1246,7 +1273,7 @@ var scorm12 = {
|
|
|
1246
1273
|
},
|
|
1247
1274
|
},
|
|
1248
1275
|
};
|
|
1249
|
-
var
|
|
1276
|
+
var aicc_constants = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, scorm12_constants), {
|
|
1250
1277
|
cmi_children: "core,suspend_data,launch_data,comments,objectives,student_data,student_preference,interactions,evaluation",
|
|
1251
1278
|
student_preference_children: "audio,language,lesson_type,speed,text,text_color,text_location,text_size,video,windows",
|
|
1252
1279
|
student_data_children: "attempt_number,tries,mastery_score,max_time_allowed,time_limit_action",
|
|
@@ -1255,7 +1282,7 @@ var aicc = (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__assign */ .Cl)((0,tslib__W
|
|
|
1255
1282
|
attempt_records_children: "score,lesson_status",
|
|
1256
1283
|
paths_children: "location_id,date,time,status,why_left,time_in_element",
|
|
1257
1284
|
});
|
|
1258
|
-
var
|
|
1285
|
+
var scorm2004_constants = {
|
|
1259
1286
|
cmi_children: "_version,comments_from_learner,comments_from_lms,completion_status,credit,entry,exit,interactions,launch_data,learner_id,learner_name,learner_preference,location,max_time_allowed,mode,objectives,progress_measure,scaled_passing_score,score,session_time,success_status,suspend_data,time_limit_action,total_time",
|
|
1260
1287
|
comments_children: "comment,timestamp,location",
|
|
1261
1288
|
score_children: "max,raw,scaled,min",
|
|
@@ -1264,6 +1291,7 @@ var scorm2004 = {
|
|
|
1264
1291
|
student_data_children: "mastery_score,max_time_allowed,time_limit_action",
|
|
1265
1292
|
student_preference_children: "audio_level,audio_captioning,delivery_speed,language",
|
|
1266
1293
|
interactions_children: "id,type,objectives,timestamp,correct_responses,weighting,learner_response,result,latency,description",
|
|
1294
|
+
adl_data_children: "id,store",
|
|
1267
1295
|
error_descriptions: {
|
|
1268
1296
|
"0": {
|
|
1269
1297
|
basicMessage: "No Error",
|
|
@@ -1371,13 +1399,6 @@ var scorm2004 = {
|
|
|
1371
1399
|
},
|
|
1372
1400
|
},
|
|
1373
1401
|
};
|
|
1374
|
-
var APIConstants = {
|
|
1375
|
-
global: global,
|
|
1376
|
-
scorm12: scorm12,
|
|
1377
|
-
aicc: aicc,
|
|
1378
|
-
scorm2004: scorm2004,
|
|
1379
|
-
};
|
|
1380
|
-
/* harmony default export */ __webpack_exports__.A = (APIConstants);
|
|
1381
1402
|
|
|
1382
1403
|
|
|
1383
1404
|
/***/ }),
|
|
@@ -1385,11 +1406,12 @@ var APIConstants = {
|
|
|
1385
1406
|
/***/ 56:
|
|
1386
1407
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1387
1408
|
|
|
1409
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1388
1410
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1389
|
-
/* harmony export */
|
|
1390
|
-
/* harmony export */
|
|
1391
|
-
/* harmony export */
|
|
1392
|
-
/* harmony export */
|
|
1411
|
+
/* harmony export */ CompletionStatus: function() { return /* binding */ CompletionStatus; },
|
|
1412
|
+
/* harmony export */ LogLevelEnum: function() { return /* binding */ LogLevelEnum; },
|
|
1413
|
+
/* harmony export */ NAVBoolean: function() { return /* binding */ NAVBoolean; },
|
|
1414
|
+
/* harmony export */ SuccessStatus: function() { return /* binding */ SuccessStatus; }
|
|
1393
1415
|
/* harmony export */ });
|
|
1394
1416
|
var NAVBoolean;
|
|
1395
1417
|
(function (NAVBoolean) {
|
|
@@ -1425,9 +1447,15 @@ var LogLevelEnum;
|
|
|
1425
1447
|
/***/ 797:
|
|
1426
1448
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1427
1449
|
|
|
1450
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1451
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1452
|
+
/* harmony export */ global_errors: function() { return /* binding */ global_errors; },
|
|
1453
|
+
/* harmony export */ scorm12_errors: function() { return /* binding */ scorm12_errors; },
|
|
1454
|
+
/* harmony export */ scorm2004_errors: function() { return /* binding */ scorm2004_errors; }
|
|
1455
|
+
/* harmony export */ });
|
|
1428
1456
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1429
1457
|
|
|
1430
|
-
var
|
|
1458
|
+
var global_errors = {
|
|
1431
1459
|
GENERAL: 101,
|
|
1432
1460
|
INITIALIZATION_FAILED: 101,
|
|
1433
1461
|
INITIALIZED: 101,
|
|
@@ -1457,13 +1485,8 @@ var global = {
|
|
|
1457
1485
|
VALUE_OUT_OF_RANGE: 101,
|
|
1458
1486
|
DEPENDENCY_NOT_ESTABLISHED: 101,
|
|
1459
1487
|
};
|
|
1460
|
-
var
|
|
1461
|
-
var
|
|
1462
|
-
var ErrorCodes = {
|
|
1463
|
-
scorm12: scorm12,
|
|
1464
|
-
scorm2004: scorm2004,
|
|
1465
|
-
};
|
|
1466
|
-
/* harmony default export */ __webpack_exports__.A = (ErrorCodes);
|
|
1488
|
+
var scorm12_errors = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, global_errors), { RETRIEVE_BEFORE_INIT: 301, STORE_BEFORE_INIT: 301, COMMIT_BEFORE_INIT: 301, ARGUMENT_ERROR: 201, CHILDREN_ERROR: 202, COUNT_ERROR: 203, UNDEFINED_DATA_MODEL: 401, UNIMPLEMENTED_ELEMENT: 401, VALUE_NOT_INITIALIZED: 301, INVALID_SET_VALUE: 402, READ_ONLY_ELEMENT: 403, WRITE_ONLY_ELEMENT: 404, TYPE_MISMATCH: 405, VALUE_OUT_OF_RANGE: 407, DEPENDENCY_NOT_ESTABLISHED: 408 });
|
|
1489
|
+
var scorm2004_errors = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, global_errors), { INITIALIZATION_FAILED: 102, INITIALIZED: 103, TERMINATED: 104, TERMINATION_FAILURE: 111, TERMINATION_BEFORE_INIT: 112, MULTIPLE_TERMINATIONS: 113, RETRIEVE_BEFORE_INIT: 122, RETRIEVE_AFTER_TERM: 123, STORE_BEFORE_INIT: 132, STORE_AFTER_TERM: 133, COMMIT_BEFORE_INIT: 142, COMMIT_AFTER_TERM: 143, ARGUMENT_ERROR: 201, GENERAL_GET_FAILURE: 301, GENERAL_SET_FAILURE: 351, GENERAL_COMMIT_FAILURE: 391, UNDEFINED_DATA_MODEL: 401, UNIMPLEMENTED_ELEMENT: 402, VALUE_NOT_INITIALIZED: 403, READ_ONLY_ELEMENT: 404, WRITE_ONLY_ELEMENT: 405, TYPE_MISMATCH: 406, VALUE_OUT_OF_RANGE: 407, DEPENDENCY_NOT_ESTABLISHED: 408 });
|
|
1467
1490
|
|
|
1468
1491
|
|
|
1469
1492
|
/***/ }),
|
|
@@ -1471,9 +1494,15 @@ var ErrorCodes = {
|
|
|
1471
1494
|
/***/ 417:
|
|
1472
1495
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1473
1496
|
|
|
1497
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1498
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1499
|
+
/* harmony export */ aicc_regex: function() { return /* binding */ aicc_regex; },
|
|
1500
|
+
/* harmony export */ scorm12_regex: function() { return /* binding */ scorm12_regex; },
|
|
1501
|
+
/* harmony export */ scorm2004_regex: function() { return /* binding */ scorm2004_regex; }
|
|
1502
|
+
/* harmony export */ });
|
|
1474
1503
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1475
1504
|
|
|
1476
|
-
var
|
|
1505
|
+
var scorm12_regex = {
|
|
1477
1506
|
CMIString256: "^.{0,255}$",
|
|
1478
1507
|
CMIString4096: "^.{0,4096}$",
|
|
1479
1508
|
CMITime: "^(?:[01]\\d|2[0123]):(?:[012345]\\d):(?:[012345]\\d)$",
|
|
@@ -1496,10 +1525,10 @@ var scorm12 = {
|
|
|
1496
1525
|
weighting_range: "-100#100",
|
|
1497
1526
|
text_range: "-1#1",
|
|
1498
1527
|
};
|
|
1499
|
-
var
|
|
1528
|
+
var aicc_regex = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, scorm12_regex), {
|
|
1500
1529
|
CMIIdentifier: "^\\w{1,255}$",
|
|
1501
1530
|
});
|
|
1502
|
-
var
|
|
1531
|
+
var scorm2004_regex = {
|
|
1503
1532
|
CMIString200: "^[\\u0000-\\uFFFF]{0,200}$",
|
|
1504
1533
|
CMIString250: "^[\\u0000-\\uFFFF]{0,250}$",
|
|
1505
1534
|
CMIString1000: "^[\\u0000-\\uFFFF]{0,1000}$",
|
|
@@ -1535,12 +1564,6 @@ var scorm2004 = {
|
|
|
1535
1564
|
text_range: "-1#1",
|
|
1536
1565
|
progress_range: "0#1",
|
|
1537
1566
|
};
|
|
1538
|
-
var Regex = {
|
|
1539
|
-
aicc: aicc,
|
|
1540
|
-
scorm12: scorm12,
|
|
1541
|
-
scorm2004: scorm2004,
|
|
1542
|
-
};
|
|
1543
|
-
/* harmony default export */ __webpack_exports__.A = (Regex);
|
|
1544
1567
|
|
|
1545
1568
|
|
|
1546
1569
|
/***/ }),
|
|
@@ -1548,21 +1571,15 @@ var Regex = {
|
|
|
1548
1571
|
/***/ 784:
|
|
1549
1572
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1550
1573
|
|
|
1574
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1551
1575
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1552
|
-
/* harmony export */
|
|
1553
|
-
/* harmony export */
|
|
1554
|
-
/* harmony export */ yI: function() { return /* binding */ ValidationError; }
|
|
1576
|
+
/* harmony export */ BaseScormValidationError: function() { return /* binding */ BaseScormValidationError; },
|
|
1577
|
+
/* harmony export */ ValidationError: function() { return /* binding */ ValidationError; }
|
|
1555
1578
|
/* harmony export */ });
|
|
1556
|
-
/*
|
|
1557
|
-
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(635);
|
|
1558
|
-
/* harmony import */ var _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(340);
|
|
1559
|
-
|
|
1579
|
+
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1560
1580
|
|
|
1561
|
-
var scorm12_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm12.error_descriptions;
|
|
1562
|
-
var aicc_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.aicc.error_descriptions;
|
|
1563
|
-
var scorm2004_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm2004.error_descriptions;
|
|
1564
1581
|
var BaseScormValidationError = (function (_super) {
|
|
1565
|
-
(0,
|
|
1582
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(BaseScormValidationError, _super);
|
|
1566
1583
|
function BaseScormValidationError(errorCode) {
|
|
1567
1584
|
var _this = _super.call(this, errorCode.toString()) || this;
|
|
1568
1585
|
_this._errorCode = errorCode;
|
|
@@ -1580,7 +1597,7 @@ var BaseScormValidationError = (function (_super) {
|
|
|
1580
1597
|
}(Error));
|
|
1581
1598
|
|
|
1582
1599
|
var ValidationError = (function (_super) {
|
|
1583
|
-
(0,
|
|
1600
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(ValidationError, _super);
|
|
1584
1601
|
function ValidationError(errorCode, errorMessage, detailedMessage) {
|
|
1585
1602
|
var _this = _super.call(this, errorCode) || this;
|
|
1586
1603
|
_this._detailedMessage = "";
|
|
@@ -1608,51 +1625,6 @@ var ValidationError = (function (_super) {
|
|
|
1608
1625
|
return ValidationError;
|
|
1609
1626
|
}(BaseScormValidationError));
|
|
1610
1627
|
|
|
1611
|
-
var Scorm12ValidationError = (function (_super) {
|
|
1612
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(Scorm12ValidationError, _super);
|
|
1613
|
-
function Scorm12ValidationError(errorCode) {
|
|
1614
|
-
var _this = this;
|
|
1615
|
-
if ({}.hasOwnProperty.call(scorm12_errors, String(errorCode))) {
|
|
1616
|
-
_this = _super.call(this, errorCode, scorm12_errors[String(errorCode)].basicMessage, scorm12_errors[String(errorCode)].detailMessage) || this;
|
|
1617
|
-
}
|
|
1618
|
-
else {
|
|
1619
|
-
_this = _super.call(this, 101, scorm12_errors["101"].basicMessage, scorm12_errors["101"].detailMessage) || this;
|
|
1620
|
-
}
|
|
1621
|
-
return _this;
|
|
1622
|
-
}
|
|
1623
|
-
return Scorm12ValidationError;
|
|
1624
|
-
}(ValidationError));
|
|
1625
|
-
|
|
1626
|
-
var AICCValidationError = (function (_super) {
|
|
1627
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(AICCValidationError, _super);
|
|
1628
|
-
function AICCValidationError(errorCode) {
|
|
1629
|
-
var _this = this;
|
|
1630
|
-
if ({}.hasOwnProperty.call(aicc_errors, String(errorCode))) {
|
|
1631
|
-
_this = _super.call(this, errorCode, aicc_errors[String(errorCode)].basicMessage, aicc_errors[String(errorCode)].detailMessage) || this;
|
|
1632
|
-
}
|
|
1633
|
-
else {
|
|
1634
|
-
_this = _super.call(this, 101, aicc_errors["101"].basicMessage, aicc_errors["101"].detailMessage) || this;
|
|
1635
|
-
}
|
|
1636
|
-
return _this;
|
|
1637
|
-
}
|
|
1638
|
-
return AICCValidationError;
|
|
1639
|
-
}(ValidationError));
|
|
1640
|
-
|
|
1641
|
-
var Scorm2004ValidationError = (function (_super) {
|
|
1642
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(Scorm2004ValidationError, _super);
|
|
1643
|
-
function Scorm2004ValidationError(errorCode) {
|
|
1644
|
-
var _this = this;
|
|
1645
|
-
if ({}.hasOwnProperty.call(scorm2004_errors, String(errorCode))) {
|
|
1646
|
-
_this = _super.call(this, errorCode, scorm2004_errors[String(errorCode)].basicMessage, scorm2004_errors[String(errorCode)].detailMessage) || this;
|
|
1647
|
-
}
|
|
1648
|
-
else {
|
|
1649
|
-
_this = _super.call(this, 101, scorm2004_errors["101"].basicMessage, scorm2004_errors["101"].detailMessage) || this;
|
|
1650
|
-
}
|
|
1651
|
-
return _this;
|
|
1652
|
-
}
|
|
1653
|
-
return Scorm2004ValidationError;
|
|
1654
|
-
}(ValidationError));
|
|
1655
|
-
|
|
1656
1628
|
|
|
1657
1629
|
|
|
1658
1630
|
/***/ }),
|
|
@@ -1660,16 +1632,24 @@ var Scorm2004ValidationError = (function (_super) {
|
|
|
1660
1632
|
/***/ 864:
|
|
1661
1633
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1662
1634
|
|
|
1635
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1663
1636
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1664
|
-
/* harmony export */
|
|
1665
|
-
/* harmony export */
|
|
1666
|
-
/* harmony export */
|
|
1667
|
-
/* harmony export */
|
|
1668
|
-
/* harmony export */
|
|
1669
|
-
/* harmony export */
|
|
1670
|
-
/* harmony export */
|
|
1637
|
+
/* harmony export */ SECONDS_PER_DAY: function() { return /* binding */ SECONDS_PER_DAY; },
|
|
1638
|
+
/* harmony export */ SECONDS_PER_HOUR: function() { return /* binding */ SECONDS_PER_HOUR; },
|
|
1639
|
+
/* harmony export */ SECONDS_PER_MINUTE: function() { return /* binding */ SECONDS_PER_MINUTE; },
|
|
1640
|
+
/* harmony export */ SECONDS_PER_SECOND: function() { return /* binding */ SECONDS_PER_SECOND; },
|
|
1641
|
+
/* harmony export */ addHHMMSSTimeStrings: function() { return /* binding */ addHHMMSSTimeStrings; },
|
|
1642
|
+
/* harmony export */ addTwoDurations: function() { return /* binding */ addTwoDurations; },
|
|
1643
|
+
/* harmony export */ countDecimals: function() { return /* binding */ countDecimals; },
|
|
1644
|
+
/* harmony export */ flatten: function() { return /* binding */ flatten; },
|
|
1645
|
+
/* harmony export */ formatMessage: function() { return /* binding */ formatMessage; },
|
|
1646
|
+
/* harmony export */ getDurationAsSeconds: function() { return /* binding */ getDurationAsSeconds; },
|
|
1647
|
+
/* harmony export */ getSecondsAsHHMMSS: function() { return /* binding */ getSecondsAsHHMMSS; },
|
|
1648
|
+
/* harmony export */ getSecondsAsISODuration: function() { return /* binding */ getSecondsAsISODuration; },
|
|
1649
|
+
/* harmony export */ getTimeAsSeconds: function() { return /* binding */ getTimeAsSeconds; },
|
|
1650
|
+
/* harmony export */ stringMatches: function() { return /* binding */ stringMatches; },
|
|
1651
|
+
/* harmony export */ unflatten: function() { return /* binding */ unflatten; }
|
|
1671
1652
|
/* harmony export */ });
|
|
1672
|
-
/* unused harmony exports SECONDS_PER_SECOND, SECONDS_PER_MINUTE, SECONDS_PER_HOUR, SECONDS_PER_DAY, getSecondsAsHHMMSS, getTimeAsSeconds, addHHMMSSTimeStrings, countDecimals */
|
|
1673
1653
|
var SECONDS_PER_SECOND = 1.0;
|
|
1674
1654
|
var SECONDS_PER_MINUTE = 60;
|
|
1675
1655
|
var SECONDS_PER_HOUR = 60 * SECONDS_PER_MINUTE;
|
|
@@ -1861,13 +1841,40 @@ function stringMatches(str, tester) {
|
|
|
1861
1841
|
/***/ 635:
|
|
1862
1842
|
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
1863
1843
|
|
|
1844
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1864
1845
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1865
|
-
/* harmony export */
|
|
1866
|
-
/* harmony export */
|
|
1867
|
-
/* harmony export */
|
|
1868
|
-
/* harmony export */
|
|
1846
|
+
/* harmony export */ __addDisposableResource: function() { return /* binding */ __addDisposableResource; },
|
|
1847
|
+
/* harmony export */ __assign: function() { return /* binding */ __assign; },
|
|
1848
|
+
/* harmony export */ __asyncDelegator: function() { return /* binding */ __asyncDelegator; },
|
|
1849
|
+
/* harmony export */ __asyncGenerator: function() { return /* binding */ __asyncGenerator; },
|
|
1850
|
+
/* harmony export */ __asyncValues: function() { return /* binding */ __asyncValues; },
|
|
1851
|
+
/* harmony export */ __await: function() { return /* binding */ __await; },
|
|
1852
|
+
/* harmony export */ __awaiter: function() { return /* binding */ __awaiter; },
|
|
1853
|
+
/* harmony export */ __classPrivateFieldGet: function() { return /* binding */ __classPrivateFieldGet; },
|
|
1854
|
+
/* harmony export */ __classPrivateFieldIn: function() { return /* binding */ __classPrivateFieldIn; },
|
|
1855
|
+
/* harmony export */ __classPrivateFieldSet: function() { return /* binding */ __classPrivateFieldSet; },
|
|
1856
|
+
/* harmony export */ __createBinding: function() { return /* binding */ __createBinding; },
|
|
1857
|
+
/* harmony export */ __decorate: function() { return /* binding */ __decorate; },
|
|
1858
|
+
/* harmony export */ __disposeResources: function() { return /* binding */ __disposeResources; },
|
|
1859
|
+
/* harmony export */ __esDecorate: function() { return /* binding */ __esDecorate; },
|
|
1860
|
+
/* harmony export */ __exportStar: function() { return /* binding */ __exportStar; },
|
|
1861
|
+
/* harmony export */ __extends: function() { return /* binding */ __extends; },
|
|
1862
|
+
/* harmony export */ __generator: function() { return /* binding */ __generator; },
|
|
1863
|
+
/* harmony export */ __importDefault: function() { return /* binding */ __importDefault; },
|
|
1864
|
+
/* harmony export */ __importStar: function() { return /* binding */ __importStar; },
|
|
1865
|
+
/* harmony export */ __makeTemplateObject: function() { return /* binding */ __makeTemplateObject; },
|
|
1866
|
+
/* harmony export */ __metadata: function() { return /* binding */ __metadata; },
|
|
1867
|
+
/* harmony export */ __param: function() { return /* binding */ __param; },
|
|
1868
|
+
/* harmony export */ __propKey: function() { return /* binding */ __propKey; },
|
|
1869
|
+
/* harmony export */ __read: function() { return /* binding */ __read; },
|
|
1870
|
+
/* harmony export */ __rest: function() { return /* binding */ __rest; },
|
|
1871
|
+
/* harmony export */ __runInitializers: function() { return /* binding */ __runInitializers; },
|
|
1872
|
+
/* harmony export */ __setFunctionName: function() { return /* binding */ __setFunctionName; },
|
|
1873
|
+
/* harmony export */ __spread: function() { return /* binding */ __spread; },
|
|
1874
|
+
/* harmony export */ __spreadArray: function() { return /* binding */ __spreadArray; },
|
|
1875
|
+
/* harmony export */ __spreadArrays: function() { return /* binding */ __spreadArrays; },
|
|
1876
|
+
/* harmony export */ __values: function() { return /* binding */ __values; }
|
|
1869
1877
|
/* harmony export */ });
|
|
1870
|
-
/* unused harmony exports __rest, __decorate, __param, __esDecorate, __runInitializers, __propKey, __setFunctionName, __metadata, __createBinding, __exportStar, __values, __read, __spread, __spreadArrays, __spreadArray, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault, __classPrivateFieldGet, __classPrivateFieldSet, __classPrivateFieldIn, __addDisposableResource, __disposeResources */
|
|
1871
1878
|
/******************************************************************************
|
|
1872
1879
|
Copyright (c) Microsoft Corporation.
|
|
1873
1880
|
|
|
@@ -2217,7 +2224,7 @@ function __disposeResources(env) {
|
|
|
2217
2224
|
return next();
|
|
2218
2225
|
}
|
|
2219
2226
|
|
|
2220
|
-
/*
|
|
2227
|
+
/* harmony default export */ __webpack_exports__["default"] = ({
|
|
2221
2228
|
__extends,
|
|
2222
2229
|
__assign,
|
|
2223
2230
|
__rest,
|
|
@@ -2294,12 +2301,25 @@ function __disposeResources(env) {
|
|
|
2294
2301
|
/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
|
|
2295
2302
|
/******/ }();
|
|
2296
2303
|
/******/
|
|
2304
|
+
/******/ /* webpack/runtime/make namespace object */
|
|
2305
|
+
/******/ !function() {
|
|
2306
|
+
/******/ // define __esModule on exports
|
|
2307
|
+
/******/ __webpack_require__.r = function(exports) {
|
|
2308
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
2309
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2310
|
+
/******/ }
|
|
2311
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
2312
|
+
/******/ };
|
|
2313
|
+
/******/ }();
|
|
2314
|
+
/******/
|
|
2297
2315
|
/************************************************************************/
|
|
2298
2316
|
var __webpack_exports__ = {};
|
|
2317
|
+
// ESM COMPAT FLAG
|
|
2318
|
+
__webpack_require__.r(__webpack_exports__);
|
|
2299
2319
|
|
|
2300
2320
|
// EXPORTS
|
|
2301
2321
|
__webpack_require__.d(__webpack_exports__, {
|
|
2302
|
-
|
|
2322
|
+
Scorm2004API: function() { return /* binding */ Scorm2004Impl; }
|
|
2303
2323
|
});
|
|
2304
2324
|
|
|
2305
2325
|
// EXTERNAL MODULE: ./node_modules/tslib/tslib.es6.mjs
|
|
@@ -2314,6 +2334,27 @@ var regex = __webpack_require__(417);
|
|
|
2314
2334
|
var error_codes = __webpack_require__(797);
|
|
2315
2335
|
// EXTERNAL MODULE: ./src/exceptions.ts
|
|
2316
2336
|
var exceptions = __webpack_require__(784);
|
|
2337
|
+
;// ./src/exceptions/scorm2004_exceptions.ts
|
|
2338
|
+
|
|
2339
|
+
|
|
2340
|
+
|
|
2341
|
+
var scorm2004_errors = api_constants.scorm2004_constants.error_descriptions;
|
|
2342
|
+
var Scorm2004ValidationError = (function (_super) {
|
|
2343
|
+
(0,tslib_es6.__extends)(Scorm2004ValidationError, _super);
|
|
2344
|
+
function Scorm2004ValidationError(errorCode) {
|
|
2345
|
+
var _this = this;
|
|
2346
|
+
if ({}.hasOwnProperty.call(scorm2004_errors, String(errorCode))) {
|
|
2347
|
+
_this = _super.call(this, errorCode, scorm2004_errors[String(errorCode)].basicMessage, scorm2004_errors[String(errorCode)].detailMessage) || this;
|
|
2348
|
+
}
|
|
2349
|
+
else {
|
|
2350
|
+
_this = _super.call(this, 101, scorm2004_errors["101"].basicMessage, scorm2004_errors["101"].detailMessage) || this;
|
|
2351
|
+
}
|
|
2352
|
+
return _this;
|
|
2353
|
+
}
|
|
2354
|
+
return Scorm2004ValidationError;
|
|
2355
|
+
}(exceptions.ValidationError));
|
|
2356
|
+
|
|
2357
|
+
|
|
2317
2358
|
// EXTERNAL MODULE: ./src/utilities.ts
|
|
2318
2359
|
var utilities = __webpack_require__(864);
|
|
2319
2360
|
// EXTERNAL MODULE: ./src/cmi/common/base_cmi.ts
|
|
@@ -2325,10 +2366,10 @@ var validation = __webpack_require__(449);
|
|
|
2325
2366
|
|
|
2326
2367
|
|
|
2327
2368
|
function check2004ValidFormat(value, regexPattern, allowEmptyString) {
|
|
2328
|
-
return (0,validation
|
|
2369
|
+
return (0,validation.checkValidFormat)(value, regexPattern, error_codes.scorm2004_errors.TYPE_MISMATCH, Scorm2004ValidationError, allowEmptyString);
|
|
2329
2370
|
}
|
|
2330
2371
|
function check2004ValidRange(value, rangePattern) {
|
|
2331
|
-
return (0,validation
|
|
2372
|
+
return (0,validation.checkValidRange)(value, rangePattern, error_codes.scorm2004_errors.VALUE_OUT_OF_RANGE, Scorm2004ValidationError);
|
|
2332
2373
|
}
|
|
2333
2374
|
|
|
2334
2375
|
;// ./src/cmi/scorm2004/learner_preference.ts
|
|
@@ -2340,22 +2381,25 @@ function check2004ValidRange(value, rangePattern) {
|
|
|
2340
2381
|
|
|
2341
2382
|
|
|
2342
2383
|
var CMILearnerPreference = (function (_super) {
|
|
2343
|
-
(0,tslib_es6
|
|
2384
|
+
(0,tslib_es6.__extends)(CMILearnerPreference, _super);
|
|
2344
2385
|
function CMILearnerPreference() {
|
|
2345
2386
|
var _this = _super.call(this) || this;
|
|
2346
|
-
_this.__children = api_constants
|
|
2387
|
+
_this.__children = api_constants.scorm2004_constants.student_preference_children;
|
|
2347
2388
|
_this._audio_level = "1";
|
|
2348
2389
|
_this._language = "";
|
|
2349
2390
|
_this._delivery_speed = "1";
|
|
2350
2391
|
_this._audio_captioning = "0";
|
|
2351
2392
|
return _this;
|
|
2352
2393
|
}
|
|
2394
|
+
CMILearnerPreference.prototype.reset = function () {
|
|
2395
|
+
this._initialized = false;
|
|
2396
|
+
};
|
|
2353
2397
|
Object.defineProperty(CMILearnerPreference.prototype, "_children", {
|
|
2354
2398
|
get: function () {
|
|
2355
2399
|
return this.__children;
|
|
2356
2400
|
},
|
|
2357
2401
|
set: function (_children) {
|
|
2358
|
-
throw new
|
|
2402
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
2359
2403
|
},
|
|
2360
2404
|
enumerable: false,
|
|
2361
2405
|
configurable: true
|
|
@@ -2365,8 +2409,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2365
2409
|
return this._audio_level;
|
|
2366
2410
|
},
|
|
2367
2411
|
set: function (audio_level) {
|
|
2368
|
-
if (check2004ValidFormat(audio_level, regex
|
|
2369
|
-
check2004ValidRange(audio_level, regex
|
|
2412
|
+
if (check2004ValidFormat(audio_level, regex.scorm2004_regex.CMIDecimal) &&
|
|
2413
|
+
check2004ValidRange(audio_level, regex.scorm2004_regex.audio_range)) {
|
|
2370
2414
|
this._audio_level = audio_level;
|
|
2371
2415
|
}
|
|
2372
2416
|
},
|
|
@@ -2378,7 +2422,7 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2378
2422
|
return this._language;
|
|
2379
2423
|
},
|
|
2380
2424
|
set: function (language) {
|
|
2381
|
-
if (check2004ValidFormat(language, regex
|
|
2425
|
+
if (check2004ValidFormat(language, regex.scorm2004_regex.CMILang)) {
|
|
2382
2426
|
this._language = language;
|
|
2383
2427
|
}
|
|
2384
2428
|
},
|
|
@@ -2390,8 +2434,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2390
2434
|
return this._delivery_speed;
|
|
2391
2435
|
},
|
|
2392
2436
|
set: function (delivery_speed) {
|
|
2393
|
-
if (check2004ValidFormat(delivery_speed, regex
|
|
2394
|
-
check2004ValidRange(delivery_speed, regex
|
|
2437
|
+
if (check2004ValidFormat(delivery_speed, regex.scorm2004_regex.CMIDecimal) &&
|
|
2438
|
+
check2004ValidRange(delivery_speed, regex.scorm2004_regex.speed_range)) {
|
|
2395
2439
|
this._delivery_speed = delivery_speed;
|
|
2396
2440
|
}
|
|
2397
2441
|
},
|
|
@@ -2403,8 +2447,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2403
2447
|
return this._audio_captioning;
|
|
2404
2448
|
},
|
|
2405
2449
|
set: function (audio_captioning) {
|
|
2406
|
-
if (check2004ValidFormat(audio_captioning, regex
|
|
2407
|
-
check2004ValidRange(audio_captioning, regex
|
|
2450
|
+
if (check2004ValidFormat(audio_captioning, regex.scorm2004_regex.CMISInteger) &&
|
|
2451
|
+
check2004ValidRange(audio_captioning, regex.scorm2004_regex.text_range)) {
|
|
2408
2452
|
this._audio_captioning = audio_captioning;
|
|
2409
2453
|
}
|
|
2410
2454
|
},
|
|
@@ -2423,14 +2467,13 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2423
2467
|
return result;
|
|
2424
2468
|
};
|
|
2425
2469
|
return CMILearnerPreference;
|
|
2426
|
-
}(base_cmi
|
|
2470
|
+
}(base_cmi.BaseCMI));
|
|
2427
2471
|
|
|
2428
2472
|
|
|
2429
2473
|
// EXTERNAL MODULE: ./src/cmi/common/array.ts
|
|
2430
2474
|
var array = __webpack_require__(589);
|
|
2431
2475
|
;// ./src/constants/response_constants.ts
|
|
2432
2476
|
|
|
2433
|
-
var scorm2004_regex = regex/* default */.A.scorm2004;
|
|
2434
2477
|
var LearnerResponses = {
|
|
2435
2478
|
"true-false": {
|
|
2436
2479
|
format: "^true$|^false$",
|
|
@@ -2439,59 +2482,59 @@ var LearnerResponses = {
|
|
|
2439
2482
|
unique: false,
|
|
2440
2483
|
},
|
|
2441
2484
|
choice: {
|
|
2442
|
-
format: scorm2004_regex.CMILongIdentifier,
|
|
2485
|
+
format: regex.scorm2004_regex.CMILongIdentifier,
|
|
2443
2486
|
max: 36,
|
|
2444
2487
|
delimiter: "[,]",
|
|
2445
2488
|
unique: true,
|
|
2446
2489
|
},
|
|
2447
2490
|
"fill-in": {
|
|
2448
|
-
format: scorm2004_regex.CMILangString250,
|
|
2491
|
+
format: regex.scorm2004_regex.CMILangString250,
|
|
2449
2492
|
max: 10,
|
|
2450
2493
|
delimiter: "[,]",
|
|
2451
2494
|
unique: false,
|
|
2452
2495
|
},
|
|
2453
2496
|
"long-fill-in": {
|
|
2454
|
-
format: scorm2004_regex.CMILangString4000,
|
|
2497
|
+
format: regex.scorm2004_regex.CMILangString4000,
|
|
2455
2498
|
max: 1,
|
|
2456
2499
|
delimiter: "",
|
|
2457
2500
|
unique: false,
|
|
2458
2501
|
},
|
|
2459
2502
|
matching: {
|
|
2460
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2461
|
-
format2: scorm2004_regex.CMIShortIdentifier,
|
|
2503
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2504
|
+
format2: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2462
2505
|
max: 36,
|
|
2463
2506
|
delimiter: "[,]",
|
|
2464
2507
|
delimiter2: "[.]",
|
|
2465
2508
|
unique: false,
|
|
2466
2509
|
},
|
|
2467
2510
|
performance: {
|
|
2468
|
-
format: "^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2469
|
-
format2: scorm2004_regex.CMIDecimal + "|^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2511
|
+
format: "^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2512
|
+
format2: regex.scorm2004_regex.CMIDecimal + "|^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2470
2513
|
max: 250,
|
|
2471
2514
|
delimiter: "[,]",
|
|
2472
2515
|
delimiter2: "[.]",
|
|
2473
2516
|
unique: false,
|
|
2474
2517
|
},
|
|
2475
2518
|
sequencing: {
|
|
2476
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2519
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2477
2520
|
max: 36,
|
|
2478
2521
|
delimiter: "[,]",
|
|
2479
2522
|
unique: false,
|
|
2480
2523
|
},
|
|
2481
2524
|
likert: {
|
|
2482
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2525
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2483
2526
|
max: 1,
|
|
2484
2527
|
delimiter: "",
|
|
2485
2528
|
unique: false,
|
|
2486
2529
|
},
|
|
2487
2530
|
numeric: {
|
|
2488
|
-
format: scorm2004_regex.CMIDecimal,
|
|
2531
|
+
format: regex.scorm2004_regex.CMIDecimal,
|
|
2489
2532
|
max: 1,
|
|
2490
2533
|
delimiter: "",
|
|
2491
2534
|
unique: false,
|
|
2492
2535
|
},
|
|
2493
2536
|
other: {
|
|
2494
|
-
format: scorm2004_regex.CMIString4000,
|
|
2537
|
+
format: regex.scorm2004_regex.CMIString4000,
|
|
2495
2538
|
max: 1,
|
|
2496
2539
|
delimiter: "",
|
|
2497
2540
|
unique: false,
|
|
@@ -2511,21 +2554,21 @@ var CorrectResponses = {
|
|
|
2511
2554
|
delimiter: "[,]",
|
|
2512
2555
|
unique: true,
|
|
2513
2556
|
duplicate: false,
|
|
2514
|
-
format: scorm2004_regex.CMILongIdentifier,
|
|
2557
|
+
format: regex.scorm2004_regex.CMILongIdentifier,
|
|
2515
2558
|
},
|
|
2516
2559
|
"fill-in": {
|
|
2517
2560
|
max: 10,
|
|
2518
2561
|
delimiter: "[,]",
|
|
2519
2562
|
unique: false,
|
|
2520
2563
|
duplicate: false,
|
|
2521
|
-
format: scorm2004_regex.CMILangString250cr,
|
|
2564
|
+
format: regex.scorm2004_regex.CMILangString250cr,
|
|
2522
2565
|
},
|
|
2523
2566
|
"long-fill-in": {
|
|
2524
2567
|
max: 1,
|
|
2525
2568
|
delimiter: "",
|
|
2526
2569
|
unique: false,
|
|
2527
2570
|
duplicate: true,
|
|
2528
|
-
format: scorm2004_regex.CMILangString4000,
|
|
2571
|
+
format: regex.scorm2004_regex.CMILangString4000,
|
|
2529
2572
|
},
|
|
2530
2573
|
matching: {
|
|
2531
2574
|
max: 36,
|
|
@@ -2533,8 +2576,8 @@ var CorrectResponses = {
|
|
|
2533
2576
|
delimiter2: "[.]",
|
|
2534
2577
|
unique: false,
|
|
2535
2578
|
duplicate: false,
|
|
2536
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2537
|
-
format2: scorm2004_regex.CMIShortIdentifier,
|
|
2579
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2580
|
+
format2: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2538
2581
|
},
|
|
2539
2582
|
performance: {
|
|
2540
2583
|
max: 250,
|
|
@@ -2543,22 +2586,22 @@ var CorrectResponses = {
|
|
|
2543
2586
|
delimiter3: "[:]",
|
|
2544
2587
|
unique: false,
|
|
2545
2588
|
duplicate: false,
|
|
2546
|
-
format: "^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2547
|
-
format2: scorm2004_regex.CMIDecimal + "|^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2589
|
+
format: "^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2590
|
+
format2: regex.scorm2004_regex.CMIDecimal + "|^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2548
2591
|
},
|
|
2549
2592
|
sequencing: {
|
|
2550
2593
|
max: 36,
|
|
2551
2594
|
delimiter: "[,]",
|
|
2552
2595
|
unique: false,
|
|
2553
2596
|
duplicate: false,
|
|
2554
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2597
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2555
2598
|
},
|
|
2556
2599
|
likert: {
|
|
2557
2600
|
max: 1,
|
|
2558
2601
|
delimiter: "",
|
|
2559
2602
|
unique: false,
|
|
2560
2603
|
duplicate: false,
|
|
2561
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2604
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2562
2605
|
limit: 1,
|
|
2563
2606
|
},
|
|
2564
2607
|
numeric: {
|
|
@@ -2566,7 +2609,7 @@ var CorrectResponses = {
|
|
|
2566
2609
|
delimiter: "[:]",
|
|
2567
2610
|
unique: false,
|
|
2568
2611
|
duplicate: false,
|
|
2569
|
-
format: scorm2004_regex.CMIDecimal,
|
|
2612
|
+
format: regex.scorm2004_regex.CMIDecimal,
|
|
2570
2613
|
limit: 1,
|
|
2571
2614
|
},
|
|
2572
2615
|
other: {
|
|
@@ -2574,7 +2617,7 @@ var CorrectResponses = {
|
|
|
2574
2617
|
delimiter: "",
|
|
2575
2618
|
unique: false,
|
|
2576
2619
|
duplicate: false,
|
|
2577
|
-
format: scorm2004_regex.CMIString4000,
|
|
2620
|
+
format: regex.scorm2004_regex.CMIString4000,
|
|
2578
2621
|
limit: 1,
|
|
2579
2622
|
},
|
|
2580
2623
|
};
|
|
@@ -2590,19 +2633,19 @@ var CorrectResponses = {
|
|
|
2590
2633
|
|
|
2591
2634
|
|
|
2592
2635
|
var CMIInteractions = (function (_super) {
|
|
2593
|
-
(0,tslib_es6
|
|
2636
|
+
(0,tslib_es6.__extends)(CMIInteractions, _super);
|
|
2594
2637
|
function CMIInteractions() {
|
|
2595
2638
|
return _super.call(this, {
|
|
2596
|
-
children: api_constants
|
|
2597
|
-
errorCode: error_codes
|
|
2598
|
-
errorClass:
|
|
2639
|
+
children: api_constants.scorm2004_constants.interactions_children,
|
|
2640
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2641
|
+
errorClass: Scorm2004ValidationError,
|
|
2599
2642
|
}) || this;
|
|
2600
2643
|
}
|
|
2601
2644
|
return CMIInteractions;
|
|
2602
|
-
}(array
|
|
2645
|
+
}(array.CMIArray));
|
|
2603
2646
|
|
|
2604
2647
|
var CMIInteractionsObject = (function (_super) {
|
|
2605
|
-
(0,tslib_es6
|
|
2648
|
+
(0,tslib_es6.__extends)(CMIInteractionsObject, _super);
|
|
2606
2649
|
function CMIInteractionsObject() {
|
|
2607
2650
|
var _this = _super.call(this) || this;
|
|
2608
2651
|
_this._id = "";
|
|
@@ -2613,15 +2656,15 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2613
2656
|
_this._result = "";
|
|
2614
2657
|
_this._latency = "";
|
|
2615
2658
|
_this._description = "";
|
|
2616
|
-
_this.objectives = new array
|
|
2617
|
-
errorCode: error_codes
|
|
2618
|
-
errorClass:
|
|
2619
|
-
children: api_constants
|
|
2659
|
+
_this.objectives = new array.CMIArray({
|
|
2660
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2661
|
+
errorClass: Scorm2004ValidationError,
|
|
2662
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
2620
2663
|
});
|
|
2621
|
-
_this.correct_responses = new array
|
|
2622
|
-
errorCode: error_codes
|
|
2623
|
-
errorClass:
|
|
2624
|
-
children: api_constants
|
|
2664
|
+
_this.correct_responses = new array.CMIArray({
|
|
2665
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2666
|
+
errorClass: Scorm2004ValidationError,
|
|
2667
|
+
children: api_constants.scorm2004_constants.correct_responses_children,
|
|
2625
2668
|
});
|
|
2626
2669
|
return _this;
|
|
2627
2670
|
}
|
|
@@ -2631,12 +2674,33 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2631
2674
|
(_a = this.objectives) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
2632
2675
|
(_b = this.correct_responses) === null || _b === void 0 ? void 0 : _b.initialize();
|
|
2633
2676
|
};
|
|
2677
|
+
CMIInteractionsObject.prototype.reset = function () {
|
|
2678
|
+
this._initialized = false;
|
|
2679
|
+
this._id = "";
|
|
2680
|
+
this._type = "";
|
|
2681
|
+
this._timestamp = "";
|
|
2682
|
+
this._weighting = "";
|
|
2683
|
+
this._learner_response = "";
|
|
2684
|
+
this._result = "";
|
|
2685
|
+
this._latency = "";
|
|
2686
|
+
this._description = "";
|
|
2687
|
+
this.objectives = new array.CMIArray({
|
|
2688
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2689
|
+
errorClass: Scorm2004ValidationError,
|
|
2690
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
2691
|
+
});
|
|
2692
|
+
this.correct_responses = new array.CMIArray({
|
|
2693
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2694
|
+
errorClass: Scorm2004ValidationError,
|
|
2695
|
+
children: api_constants.scorm2004_constants.correct_responses_children,
|
|
2696
|
+
});
|
|
2697
|
+
};
|
|
2634
2698
|
Object.defineProperty(CMIInteractionsObject.prototype, "id", {
|
|
2635
2699
|
get: function () {
|
|
2636
2700
|
return this._id;
|
|
2637
2701
|
},
|
|
2638
2702
|
set: function (id) {
|
|
2639
|
-
if (check2004ValidFormat(id, regex
|
|
2703
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
2640
2704
|
this._id = id;
|
|
2641
2705
|
}
|
|
2642
2706
|
},
|
|
@@ -2649,10 +2713,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2649
2713
|
},
|
|
2650
2714
|
set: function (type) {
|
|
2651
2715
|
if (this.initialized && this._id === "") {
|
|
2652
|
-
throw new
|
|
2716
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2653
2717
|
}
|
|
2654
2718
|
else {
|
|
2655
|
-
if (check2004ValidFormat(type, regex
|
|
2719
|
+
if (check2004ValidFormat(type, regex.scorm2004_regex.CMIType)) {
|
|
2656
2720
|
this._type = type;
|
|
2657
2721
|
}
|
|
2658
2722
|
}
|
|
@@ -2666,10 +2730,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2666
2730
|
},
|
|
2667
2731
|
set: function (timestamp) {
|
|
2668
2732
|
if (this.initialized && this._id === "") {
|
|
2669
|
-
throw new
|
|
2733
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2670
2734
|
}
|
|
2671
2735
|
else {
|
|
2672
|
-
if (check2004ValidFormat(timestamp, regex
|
|
2736
|
+
if (check2004ValidFormat(timestamp, regex.scorm2004_regex.CMITime)) {
|
|
2673
2737
|
this._timestamp = timestamp;
|
|
2674
2738
|
}
|
|
2675
2739
|
}
|
|
@@ -2683,10 +2747,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2683
2747
|
},
|
|
2684
2748
|
set: function (weighting) {
|
|
2685
2749
|
if (this.initialized && this._id === "") {
|
|
2686
|
-
throw new
|
|
2750
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2687
2751
|
}
|
|
2688
2752
|
else {
|
|
2689
|
-
if (check2004ValidFormat(weighting, regex
|
|
2753
|
+
if (check2004ValidFormat(weighting, regex.scorm2004_regex.CMIDecimal)) {
|
|
2690
2754
|
this._weighting = weighting;
|
|
2691
2755
|
}
|
|
2692
2756
|
}
|
|
@@ -2700,7 +2764,7 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2700
2764
|
},
|
|
2701
2765
|
set: function (learner_response) {
|
|
2702
2766
|
if (this.initialized && (this._type === "" || this._id === "")) {
|
|
2703
|
-
throw new
|
|
2767
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2704
2768
|
}
|
|
2705
2769
|
else {
|
|
2706
2770
|
var nodes = [];
|
|
@@ -2719,28 +2783,28 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2719
2783
|
var values = nodes[i].split(response_type.delimiter2);
|
|
2720
2784
|
if (values.length === 2) {
|
|
2721
2785
|
if (!values[0].match(formatRegex)) {
|
|
2722
|
-
throw new
|
|
2786
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2723
2787
|
}
|
|
2724
2788
|
else {
|
|
2725
2789
|
if (!response_type.format2 ||
|
|
2726
2790
|
!values[1].match(new RegExp(response_type.format2))) {
|
|
2727
|
-
throw new
|
|
2791
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2728
2792
|
}
|
|
2729
2793
|
}
|
|
2730
2794
|
}
|
|
2731
2795
|
else {
|
|
2732
|
-
throw new
|
|
2796
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2733
2797
|
}
|
|
2734
2798
|
}
|
|
2735
2799
|
else {
|
|
2736
2800
|
if (!nodes[i].match(formatRegex)) {
|
|
2737
|
-
throw new
|
|
2801
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2738
2802
|
}
|
|
2739
2803
|
else {
|
|
2740
2804
|
if (nodes[i] !== "" && response_type.unique) {
|
|
2741
2805
|
for (var j = 0; j < i; j++) {
|
|
2742
2806
|
if (nodes[i] === nodes[j]) {
|
|
2743
|
-
throw new
|
|
2807
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2744
2808
|
}
|
|
2745
2809
|
}
|
|
2746
2810
|
}
|
|
@@ -2749,12 +2813,12 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2749
2813
|
}
|
|
2750
2814
|
}
|
|
2751
2815
|
else {
|
|
2752
|
-
throw new
|
|
2816
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE);
|
|
2753
2817
|
}
|
|
2754
2818
|
this._learner_response = learner_response;
|
|
2755
2819
|
}
|
|
2756
2820
|
else {
|
|
2757
|
-
throw new
|
|
2821
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2758
2822
|
}
|
|
2759
2823
|
}
|
|
2760
2824
|
},
|
|
@@ -2766,7 +2830,7 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2766
2830
|
return this._result;
|
|
2767
2831
|
},
|
|
2768
2832
|
set: function (result) {
|
|
2769
|
-
if (check2004ValidFormat(result, regex
|
|
2833
|
+
if (check2004ValidFormat(result, regex.scorm2004_regex.CMIResult)) {
|
|
2770
2834
|
this._result = result;
|
|
2771
2835
|
}
|
|
2772
2836
|
},
|
|
@@ -2779,10 +2843,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2779
2843
|
},
|
|
2780
2844
|
set: function (latency) {
|
|
2781
2845
|
if (this.initialized && this._id === "") {
|
|
2782
|
-
throw new
|
|
2846
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2783
2847
|
}
|
|
2784
2848
|
else {
|
|
2785
|
-
if (check2004ValidFormat(latency, regex
|
|
2849
|
+
if (check2004ValidFormat(latency, regex.scorm2004_regex.CMITimespan)) {
|
|
2786
2850
|
this._latency = latency;
|
|
2787
2851
|
}
|
|
2788
2852
|
}
|
|
@@ -2796,10 +2860,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2796
2860
|
},
|
|
2797
2861
|
set: function (description) {
|
|
2798
2862
|
if (this.initialized && this._id === "") {
|
|
2799
|
-
throw new
|
|
2863
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2800
2864
|
}
|
|
2801
2865
|
else {
|
|
2802
|
-
if (check2004ValidFormat(description, regex
|
|
2866
|
+
if (check2004ValidFormat(description, regex.scorm2004_regex.CMILangString250, true)) {
|
|
2803
2867
|
this._description = description;
|
|
2804
2868
|
}
|
|
2805
2869
|
}
|
|
@@ -2825,21 +2889,25 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2825
2889
|
return result;
|
|
2826
2890
|
};
|
|
2827
2891
|
return CMIInteractionsObject;
|
|
2828
|
-
}(base_cmi
|
|
2892
|
+
}(base_cmi.BaseCMI));
|
|
2829
2893
|
|
|
2830
2894
|
var CMIInteractionsObjectivesObject = (function (_super) {
|
|
2831
|
-
(0,tslib_es6
|
|
2895
|
+
(0,tslib_es6.__extends)(CMIInteractionsObjectivesObject, _super);
|
|
2832
2896
|
function CMIInteractionsObjectivesObject() {
|
|
2833
2897
|
var _this = _super.call(this) || this;
|
|
2834
2898
|
_this._id = "";
|
|
2835
2899
|
return _this;
|
|
2836
2900
|
}
|
|
2901
|
+
CMIInteractionsObjectivesObject.prototype.reset = function () {
|
|
2902
|
+
this._initialized = false;
|
|
2903
|
+
this._id = "";
|
|
2904
|
+
};
|
|
2837
2905
|
Object.defineProperty(CMIInteractionsObjectivesObject.prototype, "id", {
|
|
2838
2906
|
get: function () {
|
|
2839
2907
|
return this._id;
|
|
2840
2908
|
},
|
|
2841
2909
|
set: function (id) {
|
|
2842
|
-
if (check2004ValidFormat(id, regex
|
|
2910
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
2843
2911
|
this._id = id;
|
|
2844
2912
|
}
|
|
2845
2913
|
},
|
|
@@ -2855,21 +2923,25 @@ var CMIInteractionsObjectivesObject = (function (_super) {
|
|
|
2855
2923
|
return result;
|
|
2856
2924
|
};
|
|
2857
2925
|
return CMIInteractionsObjectivesObject;
|
|
2858
|
-
}(base_cmi
|
|
2926
|
+
}(base_cmi.BaseCMI));
|
|
2859
2927
|
|
|
2860
2928
|
var CMIInteractionsCorrectResponsesObject = (function (_super) {
|
|
2861
|
-
(0,tslib_es6
|
|
2929
|
+
(0,tslib_es6.__extends)(CMIInteractionsCorrectResponsesObject, _super);
|
|
2862
2930
|
function CMIInteractionsCorrectResponsesObject() {
|
|
2863
2931
|
var _this = _super.call(this) || this;
|
|
2864
2932
|
_this._pattern = "";
|
|
2865
2933
|
return _this;
|
|
2866
2934
|
}
|
|
2935
|
+
CMIInteractionsCorrectResponsesObject.prototype.reset = function () {
|
|
2936
|
+
this._initialized = false;
|
|
2937
|
+
this._pattern = "";
|
|
2938
|
+
};
|
|
2867
2939
|
Object.defineProperty(CMIInteractionsCorrectResponsesObject.prototype, "pattern", {
|
|
2868
2940
|
get: function () {
|
|
2869
2941
|
return this._pattern;
|
|
2870
2942
|
},
|
|
2871
2943
|
set: function (pattern) {
|
|
2872
|
-
if (check2004ValidFormat(pattern, regex
|
|
2944
|
+
if (check2004ValidFormat(pattern, regex.scorm2004_regex.CMIFeedback)) {
|
|
2873
2945
|
this._pattern = pattern;
|
|
2874
2946
|
}
|
|
2875
2947
|
},
|
|
@@ -2885,7 +2957,7 @@ var CMIInteractionsCorrectResponsesObject = (function (_super) {
|
|
|
2885
2957
|
return result;
|
|
2886
2958
|
};
|
|
2887
2959
|
return CMIInteractionsCorrectResponsesObject;
|
|
2888
|
-
}(base_cmi
|
|
2960
|
+
}(base_cmi.BaseCMI));
|
|
2889
2961
|
|
|
2890
2962
|
|
|
2891
2963
|
// EXTERNAL MODULE: ./src/cmi/common/score.ts
|
|
@@ -2899,27 +2971,34 @@ var score = __webpack_require__(434);
|
|
|
2899
2971
|
|
|
2900
2972
|
|
|
2901
2973
|
var Scorm2004CMIScore = (function (_super) {
|
|
2902
|
-
(0,tslib_es6
|
|
2974
|
+
(0,tslib_es6.__extends)(Scorm2004CMIScore, _super);
|
|
2903
2975
|
function Scorm2004CMIScore() {
|
|
2904
2976
|
var _this = _super.call(this, {
|
|
2905
|
-
score_children: api_constants
|
|
2977
|
+
score_children: api_constants.scorm2004_constants.score_children,
|
|
2906
2978
|
max: "",
|
|
2907
|
-
invalidErrorCode: error_codes
|
|
2908
|
-
invalidTypeCode: error_codes
|
|
2909
|
-
invalidRangeCode: error_codes
|
|
2910
|
-
decimalRegex: regex
|
|
2911
|
-
errorClass:
|
|
2979
|
+
invalidErrorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2980
|
+
invalidTypeCode: error_codes.scorm2004_errors.TYPE_MISMATCH,
|
|
2981
|
+
invalidRangeCode: error_codes.scorm2004_errors.VALUE_OUT_OF_RANGE,
|
|
2982
|
+
decimalRegex: regex.scorm2004_regex.CMIDecimal,
|
|
2983
|
+
errorClass: Scorm2004ValidationError,
|
|
2912
2984
|
}) || this;
|
|
2913
2985
|
_this._scaled = "";
|
|
2914
2986
|
return _this;
|
|
2915
2987
|
}
|
|
2988
|
+
Scorm2004CMIScore.prototype.reset = function () {
|
|
2989
|
+
this._initialized = false;
|
|
2990
|
+
this._scaled = "";
|
|
2991
|
+
this._raw = "";
|
|
2992
|
+
this._min = "";
|
|
2993
|
+
this._max = "";
|
|
2994
|
+
};
|
|
2916
2995
|
Object.defineProperty(Scorm2004CMIScore.prototype, "scaled", {
|
|
2917
2996
|
get: function () {
|
|
2918
2997
|
return this._scaled;
|
|
2919
2998
|
},
|
|
2920
2999
|
set: function (scaled) {
|
|
2921
|
-
if (check2004ValidFormat(scaled, regex
|
|
2922
|
-
check2004ValidRange(scaled, regex
|
|
3000
|
+
if (check2004ValidFormat(scaled, regex.scorm2004_regex.CMIDecimal) &&
|
|
3001
|
+
check2004ValidRange(scaled, regex.scorm2004_regex.scaled_range)) {
|
|
2923
3002
|
this._scaled = scaled;
|
|
2924
3003
|
}
|
|
2925
3004
|
},
|
|
@@ -2938,7 +3017,7 @@ var Scorm2004CMIScore = (function (_super) {
|
|
|
2938
3017
|
return result;
|
|
2939
3018
|
};
|
|
2940
3019
|
return Scorm2004CMIScore;
|
|
2941
|
-
}(score
|
|
3020
|
+
}(score.CMIScore));
|
|
2942
3021
|
|
|
2943
3022
|
|
|
2944
3023
|
;// ./src/cmi/scorm2004/comments.ts
|
|
@@ -2951,31 +3030,31 @@ var Scorm2004CMIScore = (function (_super) {
|
|
|
2951
3030
|
|
|
2952
3031
|
|
|
2953
3032
|
var CMICommentsFromLMS = (function (_super) {
|
|
2954
|
-
(0,tslib_es6
|
|
3033
|
+
(0,tslib_es6.__extends)(CMICommentsFromLMS, _super);
|
|
2955
3034
|
function CMICommentsFromLMS() {
|
|
2956
3035
|
return _super.call(this, {
|
|
2957
|
-
children: api_constants
|
|
2958
|
-
errorCode: error_codes
|
|
2959
|
-
errorClass:
|
|
3036
|
+
children: api_constants.scorm2004_constants.comments_children,
|
|
3037
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3038
|
+
errorClass: Scorm2004ValidationError,
|
|
2960
3039
|
}) || this;
|
|
2961
3040
|
}
|
|
2962
3041
|
return CMICommentsFromLMS;
|
|
2963
|
-
}(array
|
|
3042
|
+
}(array.CMIArray));
|
|
2964
3043
|
|
|
2965
3044
|
var CMICommentsFromLearner = (function (_super) {
|
|
2966
|
-
(0,tslib_es6
|
|
3045
|
+
(0,tslib_es6.__extends)(CMICommentsFromLearner, _super);
|
|
2967
3046
|
function CMICommentsFromLearner() {
|
|
2968
3047
|
return _super.call(this, {
|
|
2969
|
-
children: api_constants
|
|
2970
|
-
errorCode: error_codes
|
|
2971
|
-
errorClass:
|
|
3048
|
+
children: api_constants.scorm2004_constants.comments_children,
|
|
3049
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3050
|
+
errorClass: Scorm2004ValidationError,
|
|
2972
3051
|
}) || this;
|
|
2973
3052
|
}
|
|
2974
3053
|
return CMICommentsFromLearner;
|
|
2975
|
-
}(array
|
|
3054
|
+
}(array.CMIArray));
|
|
2976
3055
|
|
|
2977
3056
|
var CMICommentsObject = (function (_super) {
|
|
2978
|
-
(0,tslib_es6
|
|
3057
|
+
(0,tslib_es6.__extends)(CMICommentsObject, _super);
|
|
2979
3058
|
function CMICommentsObject(readOnlyAfterInit) {
|
|
2980
3059
|
if (readOnlyAfterInit === void 0) { readOnlyAfterInit = false; }
|
|
2981
3060
|
var _this = _super.call(this) || this;
|
|
@@ -2988,16 +3067,19 @@ var CMICommentsObject = (function (_super) {
|
|
|
2988
3067
|
_this._readOnlyAfterInit = readOnlyAfterInit;
|
|
2989
3068
|
return _this;
|
|
2990
3069
|
}
|
|
3070
|
+
CMICommentsObject.prototype.reset = function () {
|
|
3071
|
+
this._initialized = false;
|
|
3072
|
+
};
|
|
2991
3073
|
Object.defineProperty(CMICommentsObject.prototype, "comment", {
|
|
2992
3074
|
get: function () {
|
|
2993
3075
|
return this._comment;
|
|
2994
3076
|
},
|
|
2995
3077
|
set: function (comment) {
|
|
2996
3078
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
2997
|
-
throw new
|
|
3079
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
2998
3080
|
}
|
|
2999
3081
|
else {
|
|
3000
|
-
if (check2004ValidFormat(comment, regex
|
|
3082
|
+
if (check2004ValidFormat(comment, regex.scorm2004_regex.CMILangString4000, true)) {
|
|
3001
3083
|
this._comment = comment;
|
|
3002
3084
|
}
|
|
3003
3085
|
}
|
|
@@ -3011,10 +3093,10 @@ var CMICommentsObject = (function (_super) {
|
|
|
3011
3093
|
},
|
|
3012
3094
|
set: function (location) {
|
|
3013
3095
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
3014
|
-
throw new
|
|
3096
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3015
3097
|
}
|
|
3016
3098
|
else {
|
|
3017
|
-
if (check2004ValidFormat(location, regex
|
|
3099
|
+
if (check2004ValidFormat(location, regex.scorm2004_regex.CMIString250)) {
|
|
3018
3100
|
this._location = location;
|
|
3019
3101
|
}
|
|
3020
3102
|
}
|
|
@@ -3028,10 +3110,10 @@ var CMICommentsObject = (function (_super) {
|
|
|
3028
3110
|
},
|
|
3029
3111
|
set: function (timestamp) {
|
|
3030
3112
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
3031
|
-
throw new
|
|
3113
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3032
3114
|
}
|
|
3033
3115
|
else {
|
|
3034
|
-
if (check2004ValidFormat(timestamp, regex
|
|
3116
|
+
if (check2004ValidFormat(timestamp, regex.scorm2004_regex.CMITime)) {
|
|
3035
3117
|
this._timestamp = timestamp;
|
|
3036
3118
|
}
|
|
3037
3119
|
}
|
|
@@ -3050,7 +3132,7 @@ var CMICommentsObject = (function (_super) {
|
|
|
3050
3132
|
return result;
|
|
3051
3133
|
};
|
|
3052
3134
|
return CMICommentsObject;
|
|
3053
|
-
}(base_cmi
|
|
3135
|
+
}(base_cmi.BaseCMI));
|
|
3054
3136
|
|
|
3055
3137
|
|
|
3056
3138
|
;// ./src/cmi/scorm2004/objectives.ts
|
|
@@ -3064,19 +3146,28 @@ var CMICommentsObject = (function (_super) {
|
|
|
3064
3146
|
|
|
3065
3147
|
|
|
3066
3148
|
var CMIObjectives = (function (_super) {
|
|
3067
|
-
(0,tslib_es6
|
|
3149
|
+
(0,tslib_es6.__extends)(CMIObjectives, _super);
|
|
3068
3150
|
function CMIObjectives() {
|
|
3069
3151
|
return _super.call(this, {
|
|
3070
|
-
children: api_constants
|
|
3071
|
-
errorCode: error_codes
|
|
3072
|
-
errorClass:
|
|
3152
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
3153
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3154
|
+
errorClass: Scorm2004ValidationError,
|
|
3073
3155
|
}) || this;
|
|
3074
3156
|
}
|
|
3157
|
+
CMIObjectives.prototype.findObjectiveById = function (id) {
|
|
3158
|
+
return this.childArray.find(function (objective) { return objective.id === id; });
|
|
3159
|
+
};
|
|
3160
|
+
CMIObjectives.prototype.findObjectiveByIndex = function (index) {
|
|
3161
|
+
return this.childArray[index];
|
|
3162
|
+
};
|
|
3163
|
+
CMIObjectives.prototype.setObjectiveByIndex = function (index, objective) {
|
|
3164
|
+
this.childArray[index] = objective;
|
|
3165
|
+
};
|
|
3075
3166
|
return CMIObjectives;
|
|
3076
|
-
}(array
|
|
3167
|
+
}(array.CMIArray));
|
|
3077
3168
|
|
|
3078
3169
|
var CMIObjectivesObject = (function (_super) {
|
|
3079
|
-
(0,tslib_es6
|
|
3170
|
+
(0,tslib_es6.__extends)(CMIObjectivesObject, _super);
|
|
3080
3171
|
function CMIObjectivesObject() {
|
|
3081
3172
|
var _this = _super.call(this) || this;
|
|
3082
3173
|
_this._id = "";
|
|
@@ -3087,6 +3178,9 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3087
3178
|
_this.score = new Scorm2004CMIScore();
|
|
3088
3179
|
return _this;
|
|
3089
3180
|
}
|
|
3181
|
+
CMIObjectivesObject.prototype.reset = function () {
|
|
3182
|
+
this._initialized = false;
|
|
3183
|
+
};
|
|
3090
3184
|
CMIObjectivesObject.prototype.initialize = function () {
|
|
3091
3185
|
var _a;
|
|
3092
3186
|
_super.prototype.initialize.call(this);
|
|
@@ -3097,7 +3191,7 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3097
3191
|
return this._id;
|
|
3098
3192
|
},
|
|
3099
3193
|
set: function (id) {
|
|
3100
|
-
if (check2004ValidFormat(id, regex
|
|
3194
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
3101
3195
|
this._id = id;
|
|
3102
3196
|
}
|
|
3103
3197
|
},
|
|
@@ -3110,10 +3204,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3110
3204
|
},
|
|
3111
3205
|
set: function (success_status) {
|
|
3112
3206
|
if (this.initialized && this._id === "") {
|
|
3113
|
-
throw new
|
|
3207
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3114
3208
|
}
|
|
3115
3209
|
else {
|
|
3116
|
-
if (check2004ValidFormat(success_status, regex
|
|
3210
|
+
if (check2004ValidFormat(success_status, regex.scorm2004_regex.CMISStatus)) {
|
|
3117
3211
|
this._success_status = success_status;
|
|
3118
3212
|
}
|
|
3119
3213
|
}
|
|
@@ -3127,10 +3221,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3127
3221
|
},
|
|
3128
3222
|
set: function (completion_status) {
|
|
3129
3223
|
if (this.initialized && this._id === "") {
|
|
3130
|
-
throw new
|
|
3224
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3131
3225
|
}
|
|
3132
3226
|
else {
|
|
3133
|
-
if (check2004ValidFormat(completion_status, regex
|
|
3227
|
+
if (check2004ValidFormat(completion_status, regex.scorm2004_regex.CMICStatus)) {
|
|
3134
3228
|
this._completion_status = completion_status;
|
|
3135
3229
|
}
|
|
3136
3230
|
}
|
|
@@ -3144,11 +3238,11 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3144
3238
|
},
|
|
3145
3239
|
set: function (progress_measure) {
|
|
3146
3240
|
if (this.initialized && this._id === "") {
|
|
3147
|
-
throw new
|
|
3241
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3148
3242
|
}
|
|
3149
3243
|
else {
|
|
3150
|
-
if (check2004ValidFormat(progress_measure, regex
|
|
3151
|
-
check2004ValidRange(progress_measure, regex
|
|
3244
|
+
if (check2004ValidFormat(progress_measure, regex.scorm2004_regex.CMIDecimal) &&
|
|
3245
|
+
check2004ValidRange(progress_measure, regex.scorm2004_regex.progress_range)) {
|
|
3152
3246
|
this._progress_measure = progress_measure;
|
|
3153
3247
|
}
|
|
3154
3248
|
}
|
|
@@ -3162,10 +3256,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3162
3256
|
},
|
|
3163
3257
|
set: function (description) {
|
|
3164
3258
|
if (this.initialized && this._id === "") {
|
|
3165
|
-
throw new
|
|
3259
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3166
3260
|
}
|
|
3167
3261
|
else {
|
|
3168
|
-
if (check2004ValidFormat(description, regex
|
|
3262
|
+
if (check2004ValidFormat(description, regex.scorm2004_regex.CMILangString250, true)) {
|
|
3169
3263
|
this._description = description;
|
|
3170
3264
|
}
|
|
3171
3265
|
}
|
|
@@ -3187,7 +3281,7 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3187
3281
|
return result;
|
|
3188
3282
|
};
|
|
3189
3283
|
return CMIObjectivesObject;
|
|
3190
|
-
}(base_cmi
|
|
3284
|
+
}(base_cmi.BaseCMI));
|
|
3191
3285
|
|
|
3192
3286
|
|
|
3193
3287
|
;// ./src/cmi/scorm2004/cmi.ts
|
|
@@ -3205,12 +3299,12 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3205
3299
|
|
|
3206
3300
|
|
|
3207
3301
|
var CMI = (function (_super) {
|
|
3208
|
-
(0,tslib_es6
|
|
3302
|
+
(0,tslib_es6.__extends)(CMI, _super);
|
|
3209
3303
|
function CMI(initialized) {
|
|
3210
3304
|
if (initialized === void 0) { initialized = false; }
|
|
3211
3305
|
var _this = _super.call(this) || this;
|
|
3212
3306
|
_this.__version = "1.0";
|
|
3213
|
-
_this.__children = api_constants
|
|
3307
|
+
_this.__children = api_constants.scorm2004_constants.cmi_children;
|
|
3214
3308
|
_this._completion_status = "unknown";
|
|
3215
3309
|
_this._completion_threshold = "";
|
|
3216
3310
|
_this._credit = "credit";
|
|
@@ -3249,12 +3343,27 @@ var CMI = (function (_super) {
|
|
|
3249
3343
|
(_e = this.interactions) === null || _e === void 0 ? void 0 : _e.initialize();
|
|
3250
3344
|
(_f = this.objectives) === null || _f === void 0 ? void 0 : _f.initialize();
|
|
3251
3345
|
};
|
|
3346
|
+
CMI.prototype.reset = function () {
|
|
3347
|
+
var _a, _b, _c, _d, _e, _f;
|
|
3348
|
+
this._initialized = false;
|
|
3349
|
+
this._completion_status = "incomplete";
|
|
3350
|
+
this._exit = "";
|
|
3351
|
+
this._session_time = "PT0H0M0S";
|
|
3352
|
+
this._progress_measure = "";
|
|
3353
|
+
this._location = "";
|
|
3354
|
+
(_a = this.objectives) === null || _a === void 0 ? void 0 : _a.reset(false);
|
|
3355
|
+
(_b = this.interactions) === null || _b === void 0 ? void 0 : _b.reset(true);
|
|
3356
|
+
(_c = this.score) === null || _c === void 0 ? void 0 : _c.reset();
|
|
3357
|
+
(_d = this.comments_from_learner) === null || _d === void 0 ? void 0 : _d.reset();
|
|
3358
|
+
(_e = this.comments_from_lms) === null || _e === void 0 ? void 0 : _e.reset();
|
|
3359
|
+
(_f = this.learner_preference) === null || _f === void 0 ? void 0 : _f.reset();
|
|
3360
|
+
};
|
|
3252
3361
|
Object.defineProperty(CMI.prototype, "_version", {
|
|
3253
3362
|
get: function () {
|
|
3254
3363
|
return this.__version;
|
|
3255
3364
|
},
|
|
3256
3365
|
set: function (_version) {
|
|
3257
|
-
throw new
|
|
3366
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3258
3367
|
},
|
|
3259
3368
|
enumerable: false,
|
|
3260
3369
|
configurable: true
|
|
@@ -3264,7 +3373,7 @@ var CMI = (function (_super) {
|
|
|
3264
3373
|
return this.__children;
|
|
3265
3374
|
},
|
|
3266
3375
|
set: function (_children) {
|
|
3267
|
-
throw new
|
|
3376
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3268
3377
|
},
|
|
3269
3378
|
enumerable: false,
|
|
3270
3379
|
configurable: true
|
|
@@ -3274,7 +3383,7 @@ var CMI = (function (_super) {
|
|
|
3274
3383
|
return this._completion_status;
|
|
3275
3384
|
},
|
|
3276
3385
|
set: function (completion_status) {
|
|
3277
|
-
if (check2004ValidFormat(completion_status, regex
|
|
3386
|
+
if (check2004ValidFormat(completion_status, regex.scorm2004_regex.CMICStatus)) {
|
|
3278
3387
|
this._completion_status = completion_status;
|
|
3279
3388
|
}
|
|
3280
3389
|
},
|
|
@@ -3287,7 +3396,7 @@ var CMI = (function (_super) {
|
|
|
3287
3396
|
},
|
|
3288
3397
|
set: function (completion_threshold) {
|
|
3289
3398
|
if (this.initialized) {
|
|
3290
|
-
throw new
|
|
3399
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3291
3400
|
}
|
|
3292
3401
|
else {
|
|
3293
3402
|
this._completion_threshold = completion_threshold;
|
|
@@ -3302,7 +3411,7 @@ var CMI = (function (_super) {
|
|
|
3302
3411
|
},
|
|
3303
3412
|
set: function (credit) {
|
|
3304
3413
|
if (this.initialized) {
|
|
3305
|
-
throw new
|
|
3414
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3306
3415
|
}
|
|
3307
3416
|
else {
|
|
3308
3417
|
this._credit = credit;
|
|
@@ -3317,7 +3426,7 @@ var CMI = (function (_super) {
|
|
|
3317
3426
|
},
|
|
3318
3427
|
set: function (entry) {
|
|
3319
3428
|
if (this.initialized) {
|
|
3320
|
-
throw new
|
|
3429
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3321
3430
|
}
|
|
3322
3431
|
else {
|
|
3323
3432
|
this._entry = entry;
|
|
@@ -3329,12 +3438,12 @@ var CMI = (function (_super) {
|
|
|
3329
3438
|
Object.defineProperty(CMI.prototype, "exit", {
|
|
3330
3439
|
get: function () {
|
|
3331
3440
|
if (!this.jsonString) {
|
|
3332
|
-
throw new
|
|
3441
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.WRITE_ONLY_ELEMENT);
|
|
3333
3442
|
}
|
|
3334
3443
|
return this._exit;
|
|
3335
3444
|
},
|
|
3336
3445
|
set: function (exit) {
|
|
3337
|
-
if (check2004ValidFormat(exit, regex
|
|
3446
|
+
if (check2004ValidFormat(exit, regex.scorm2004_regex.CMIExit, true)) {
|
|
3338
3447
|
this._exit = exit;
|
|
3339
3448
|
}
|
|
3340
3449
|
},
|
|
@@ -3347,7 +3456,7 @@ var CMI = (function (_super) {
|
|
|
3347
3456
|
},
|
|
3348
3457
|
set: function (launch_data) {
|
|
3349
3458
|
if (this.initialized) {
|
|
3350
|
-
throw new
|
|
3459
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3351
3460
|
}
|
|
3352
3461
|
else {
|
|
3353
3462
|
this._launch_data = launch_data;
|
|
@@ -3362,7 +3471,7 @@ var CMI = (function (_super) {
|
|
|
3362
3471
|
},
|
|
3363
3472
|
set: function (learner_id) {
|
|
3364
3473
|
if (this.initialized) {
|
|
3365
|
-
throw new
|
|
3474
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3366
3475
|
}
|
|
3367
3476
|
else {
|
|
3368
3477
|
this._learner_id = learner_id;
|
|
@@ -3377,7 +3486,7 @@ var CMI = (function (_super) {
|
|
|
3377
3486
|
},
|
|
3378
3487
|
set: function (learner_name) {
|
|
3379
3488
|
if (this.initialized) {
|
|
3380
|
-
throw new
|
|
3489
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3381
3490
|
}
|
|
3382
3491
|
else {
|
|
3383
3492
|
this._learner_name = learner_name;
|
|
@@ -3391,7 +3500,7 @@ var CMI = (function (_super) {
|
|
|
3391
3500
|
return this._location;
|
|
3392
3501
|
},
|
|
3393
3502
|
set: function (location) {
|
|
3394
|
-
if (check2004ValidFormat(location, regex
|
|
3503
|
+
if (check2004ValidFormat(location, regex.scorm2004_regex.CMIString1000)) {
|
|
3395
3504
|
this._location = location;
|
|
3396
3505
|
}
|
|
3397
3506
|
},
|
|
@@ -3404,7 +3513,7 @@ var CMI = (function (_super) {
|
|
|
3404
3513
|
},
|
|
3405
3514
|
set: function (max_time_allowed) {
|
|
3406
3515
|
if (this.initialized) {
|
|
3407
|
-
throw new
|
|
3516
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3408
3517
|
}
|
|
3409
3518
|
else {
|
|
3410
3519
|
this._max_time_allowed = max_time_allowed;
|
|
@@ -3419,7 +3528,7 @@ var CMI = (function (_super) {
|
|
|
3419
3528
|
},
|
|
3420
3529
|
set: function (mode) {
|
|
3421
3530
|
if (this.initialized) {
|
|
3422
|
-
throw new
|
|
3531
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3423
3532
|
}
|
|
3424
3533
|
else {
|
|
3425
3534
|
this._mode = mode;
|
|
@@ -3433,8 +3542,8 @@ var CMI = (function (_super) {
|
|
|
3433
3542
|
return this._progress_measure;
|
|
3434
3543
|
},
|
|
3435
3544
|
set: function (progress_measure) {
|
|
3436
|
-
if (check2004ValidFormat(progress_measure, regex
|
|
3437
|
-
check2004ValidRange(progress_measure, regex
|
|
3545
|
+
if (check2004ValidFormat(progress_measure, regex.scorm2004_regex.CMIDecimal) &&
|
|
3546
|
+
check2004ValidRange(progress_measure, regex.scorm2004_regex.progress_range)) {
|
|
3438
3547
|
this._progress_measure = progress_measure;
|
|
3439
3548
|
}
|
|
3440
3549
|
},
|
|
@@ -3447,7 +3556,7 @@ var CMI = (function (_super) {
|
|
|
3447
3556
|
},
|
|
3448
3557
|
set: function (scaled_passing_score) {
|
|
3449
3558
|
if (this.initialized) {
|
|
3450
|
-
throw new
|
|
3559
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3451
3560
|
}
|
|
3452
3561
|
else {
|
|
3453
3562
|
this._scaled_passing_score = scaled_passing_score;
|
|
@@ -3459,12 +3568,12 @@ var CMI = (function (_super) {
|
|
|
3459
3568
|
Object.defineProperty(CMI.prototype, "session_time", {
|
|
3460
3569
|
get: function () {
|
|
3461
3570
|
if (!this.jsonString) {
|
|
3462
|
-
throw new
|
|
3571
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.WRITE_ONLY_ELEMENT);
|
|
3463
3572
|
}
|
|
3464
3573
|
return this._session_time;
|
|
3465
3574
|
},
|
|
3466
3575
|
set: function (session_time) {
|
|
3467
|
-
if (check2004ValidFormat(session_time, regex
|
|
3576
|
+
if (check2004ValidFormat(session_time, regex.scorm2004_regex.CMITimespan)) {
|
|
3468
3577
|
this._session_time = session_time;
|
|
3469
3578
|
}
|
|
3470
3579
|
},
|
|
@@ -3476,7 +3585,7 @@ var CMI = (function (_super) {
|
|
|
3476
3585
|
return this._success_status;
|
|
3477
3586
|
},
|
|
3478
3587
|
set: function (success_status) {
|
|
3479
|
-
if (check2004ValidFormat(success_status, regex
|
|
3588
|
+
if (check2004ValidFormat(success_status, regex.scorm2004_regex.CMISStatus)) {
|
|
3480
3589
|
this._success_status = success_status;
|
|
3481
3590
|
}
|
|
3482
3591
|
},
|
|
@@ -3488,7 +3597,7 @@ var CMI = (function (_super) {
|
|
|
3488
3597
|
return this._suspend_data;
|
|
3489
3598
|
},
|
|
3490
3599
|
set: function (suspend_data) {
|
|
3491
|
-
if (check2004ValidFormat(suspend_data, regex
|
|
3600
|
+
if (check2004ValidFormat(suspend_data, regex.scorm2004_regex.CMIString64000, true)) {
|
|
3492
3601
|
this._suspend_data = suspend_data;
|
|
3493
3602
|
}
|
|
3494
3603
|
},
|
|
@@ -3501,7 +3610,7 @@ var CMI = (function (_super) {
|
|
|
3501
3610
|
},
|
|
3502
3611
|
set: function (time_limit_action) {
|
|
3503
3612
|
if (this.initialized) {
|
|
3504
|
-
throw new
|
|
3613
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3505
3614
|
}
|
|
3506
3615
|
else {
|
|
3507
3616
|
this._time_limit_action = time_limit_action;
|
|
@@ -3516,7 +3625,7 @@ var CMI = (function (_super) {
|
|
|
3516
3625
|
},
|
|
3517
3626
|
set: function (total_time) {
|
|
3518
3627
|
if (this.initialized) {
|
|
3519
|
-
throw new
|
|
3628
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3520
3629
|
}
|
|
3521
3630
|
else {
|
|
3522
3631
|
this._total_time = total_time;
|
|
@@ -3530,9 +3639,9 @@ var CMI = (function (_super) {
|
|
|
3530
3639
|
var startTime = this.start_time;
|
|
3531
3640
|
if (typeof startTime !== "undefined" && startTime !== null) {
|
|
3532
3641
|
var seconds = new Date().getTime() - startTime;
|
|
3533
|
-
sessionTime = utilities
|
|
3642
|
+
sessionTime = utilities.getSecondsAsISODuration(seconds / 1000);
|
|
3534
3643
|
}
|
|
3535
|
-
return utilities
|
|
3644
|
+
return utilities.addTwoDurations(this._total_time, sessionTime, regex.scorm2004_regex.CMITimespan);
|
|
3536
3645
|
};
|
|
3537
3646
|
CMI.prototype.toJSON = function () {
|
|
3538
3647
|
this.jsonString = true;
|
|
@@ -3565,7 +3674,7 @@ var CMI = (function (_super) {
|
|
|
3565
3674
|
return result;
|
|
3566
3675
|
};
|
|
3567
3676
|
return CMI;
|
|
3568
|
-
}(base_cmi
|
|
3677
|
+
}(base_cmi.BaseRootCMI));
|
|
3569
3678
|
|
|
3570
3679
|
|
|
3571
3680
|
;// ./src/constants/language_constants.ts
|
|
@@ -3974,11 +4083,15 @@ var enums = __webpack_require__(56);
|
|
|
3974
4083
|
|
|
3975
4084
|
|
|
3976
4085
|
|
|
4086
|
+
|
|
4087
|
+
|
|
3977
4088
|
var ADL = (function (_super) {
|
|
3978
|
-
(0,tslib_es6
|
|
4089
|
+
(0,tslib_es6.__extends)(ADL, _super);
|
|
3979
4090
|
function ADL() {
|
|
3980
4091
|
var _this = _super.call(this) || this;
|
|
4092
|
+
_this.data = new ADLData();
|
|
3981
4093
|
_this.nav = new ADLNav();
|
|
4094
|
+
_this.data = new ADLData();
|
|
3982
4095
|
return _this;
|
|
3983
4096
|
}
|
|
3984
4097
|
ADL.prototype.initialize = function () {
|
|
@@ -3986,19 +4099,25 @@ var ADL = (function (_super) {
|
|
|
3986
4099
|
_super.prototype.initialize.call(this);
|
|
3987
4100
|
(_a = this.nav) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
3988
4101
|
};
|
|
4102
|
+
ADL.prototype.reset = function () {
|
|
4103
|
+
var _a;
|
|
4104
|
+
this._initialized = false;
|
|
4105
|
+
(_a = this.nav) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4106
|
+
};
|
|
3989
4107
|
ADL.prototype.toJSON = function () {
|
|
3990
4108
|
this.jsonString = true;
|
|
3991
4109
|
var result = {
|
|
3992
4110
|
nav: this.nav,
|
|
4111
|
+
data: this.data,
|
|
3993
4112
|
};
|
|
3994
4113
|
delete this.jsonString;
|
|
3995
4114
|
return result;
|
|
3996
4115
|
};
|
|
3997
4116
|
return ADL;
|
|
3998
|
-
}(base_cmi
|
|
4117
|
+
}(base_cmi.BaseCMI));
|
|
3999
4118
|
|
|
4000
4119
|
var ADLNav = (function (_super) {
|
|
4001
|
-
(0,tslib_es6
|
|
4120
|
+
(0,tslib_es6.__extends)(ADLNav, _super);
|
|
4002
4121
|
function ADLNav() {
|
|
4003
4122
|
var _this = _super.call(this) || this;
|
|
4004
4123
|
_this._request = "_none_";
|
|
@@ -4010,12 +4129,18 @@ var ADLNav = (function (_super) {
|
|
|
4010
4129
|
_super.prototype.initialize.call(this);
|
|
4011
4130
|
(_a = this.request_valid) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
4012
4131
|
};
|
|
4132
|
+
ADLNav.prototype.reset = function () {
|
|
4133
|
+
var _a;
|
|
4134
|
+
this._initialized = false;
|
|
4135
|
+
this._request = "_none_";
|
|
4136
|
+
(_a = this.request_valid) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4137
|
+
};
|
|
4013
4138
|
Object.defineProperty(ADLNav.prototype, "request", {
|
|
4014
4139
|
get: function () {
|
|
4015
4140
|
return this._request;
|
|
4016
4141
|
},
|
|
4017
4142
|
set: function (request) {
|
|
4018
|
-
if (check2004ValidFormat(request, regex
|
|
4143
|
+
if (check2004ValidFormat(request, regex.scorm2004_regex.NAVEvent)) {
|
|
4019
4144
|
this._request = request;
|
|
4020
4145
|
}
|
|
4021
4146
|
},
|
|
@@ -4031,10 +4156,69 @@ var ADLNav = (function (_super) {
|
|
|
4031
4156
|
return result;
|
|
4032
4157
|
};
|
|
4033
4158
|
return ADLNav;
|
|
4034
|
-
}(base_cmi
|
|
4159
|
+
}(base_cmi.BaseCMI));
|
|
4160
|
+
|
|
4161
|
+
var ADLData = (function (_super) {
|
|
4162
|
+
(0,tslib_es6.__extends)(ADLData, _super);
|
|
4163
|
+
function ADLData() {
|
|
4164
|
+
return _super.call(this, {
|
|
4165
|
+
children: api_constants.scorm2004_constants.adl_data_children,
|
|
4166
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
4167
|
+
errorClass: Scorm2004ValidationError,
|
|
4168
|
+
}) || this;
|
|
4169
|
+
}
|
|
4170
|
+
return ADLData;
|
|
4171
|
+
}(array.CMIArray));
|
|
4172
|
+
|
|
4173
|
+
var ADLDataObject = (function (_super) {
|
|
4174
|
+
(0,tslib_es6.__extends)(ADLDataObject, _super);
|
|
4175
|
+
function ADLDataObject() {
|
|
4176
|
+
var _this = _super.call(this) || this;
|
|
4177
|
+
_this._id = "";
|
|
4178
|
+
_this._store = "";
|
|
4179
|
+
return _this;
|
|
4180
|
+
}
|
|
4181
|
+
ADLDataObject.prototype.reset = function () {
|
|
4182
|
+
this._initialized = false;
|
|
4183
|
+
};
|
|
4184
|
+
Object.defineProperty(ADLDataObject.prototype, "id", {
|
|
4185
|
+
get: function () {
|
|
4186
|
+
return this._id;
|
|
4187
|
+
},
|
|
4188
|
+
set: function (id) {
|
|
4189
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
4190
|
+
this._id = id;
|
|
4191
|
+
}
|
|
4192
|
+
},
|
|
4193
|
+
enumerable: false,
|
|
4194
|
+
configurable: true
|
|
4195
|
+
});
|
|
4196
|
+
Object.defineProperty(ADLDataObject.prototype, "store", {
|
|
4197
|
+
get: function () {
|
|
4198
|
+
return this._store;
|
|
4199
|
+
},
|
|
4200
|
+
set: function (store) {
|
|
4201
|
+
if (check2004ValidFormat(store, regex.scorm2004_regex.CMILangString4000)) {
|
|
4202
|
+
this._store = store;
|
|
4203
|
+
}
|
|
4204
|
+
},
|
|
4205
|
+
enumerable: false,
|
|
4206
|
+
configurable: true
|
|
4207
|
+
});
|
|
4208
|
+
ADLDataObject.prototype.toJSON = function () {
|
|
4209
|
+
this.jsonString = true;
|
|
4210
|
+
var result = {
|
|
4211
|
+
id: this._id,
|
|
4212
|
+
store: this._store,
|
|
4213
|
+
};
|
|
4214
|
+
delete this.jsonString;
|
|
4215
|
+
return result;
|
|
4216
|
+
};
|
|
4217
|
+
return ADLDataObject;
|
|
4218
|
+
}(base_cmi.BaseCMI));
|
|
4035
4219
|
|
|
4036
4220
|
var ADLNavRequestValid = (function (_super) {
|
|
4037
|
-
(0,tslib_es6
|
|
4221
|
+
(0,tslib_es6.__extends)(ADLNavRequestValid, _super);
|
|
4038
4222
|
function ADLNavRequestValid() {
|
|
4039
4223
|
var _this = _super.call(this) || this;
|
|
4040
4224
|
_this._continue = "unknown";
|
|
@@ -4043,15 +4227,20 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4043
4227
|
_this._jump = {};
|
|
4044
4228
|
return _this;
|
|
4045
4229
|
}
|
|
4230
|
+
ADLNavRequestValid.prototype.reset = function () {
|
|
4231
|
+
this._initialized = false;
|
|
4232
|
+
this._continue = "unknown";
|
|
4233
|
+
this._previous = "unknown";
|
|
4234
|
+
};
|
|
4046
4235
|
Object.defineProperty(ADLNavRequestValid.prototype, "continue", {
|
|
4047
4236
|
get: function () {
|
|
4048
4237
|
return this._continue;
|
|
4049
4238
|
},
|
|
4050
4239
|
set: function (_continue) {
|
|
4051
4240
|
if (this.initialized) {
|
|
4052
|
-
throw new
|
|
4241
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4053
4242
|
}
|
|
4054
|
-
if (check2004ValidFormat(_continue, regex
|
|
4243
|
+
if (check2004ValidFormat(_continue, regex.scorm2004_regex.NAVBoolean)) {
|
|
4055
4244
|
this._continue = _continue;
|
|
4056
4245
|
}
|
|
4057
4246
|
},
|
|
@@ -4064,9 +4253,9 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4064
4253
|
},
|
|
4065
4254
|
set: function (_previous) {
|
|
4066
4255
|
if (this.initialized) {
|
|
4067
|
-
throw new
|
|
4256
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4068
4257
|
}
|
|
4069
|
-
if (check2004ValidFormat(_previous, regex
|
|
4258
|
+
if (check2004ValidFormat(_previous, regex.scorm2004_regex.NAVBoolean)) {
|
|
4070
4259
|
this._previous = _previous;
|
|
4071
4260
|
}
|
|
4072
4261
|
},
|
|
@@ -4079,17 +4268,17 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4079
4268
|
},
|
|
4080
4269
|
set: function (choice) {
|
|
4081
4270
|
if (this.initialized) {
|
|
4082
|
-
throw new
|
|
4271
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4083
4272
|
}
|
|
4084
4273
|
if (typeof choice !== "object") {
|
|
4085
|
-
throw new
|
|
4274
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4086
4275
|
}
|
|
4087
4276
|
for (var key in choice) {
|
|
4088
4277
|
if ({}.hasOwnProperty.call(choice, key)) {
|
|
4089
|
-
if (check2004ValidFormat(choice[key], regex
|
|
4090
|
-
check2004ValidFormat(key, regex
|
|
4278
|
+
if (check2004ValidFormat(choice[key], regex.scorm2004_regex.NAVBoolean) &&
|
|
4279
|
+
check2004ValidFormat(key, regex.scorm2004_regex.NAVTarget)) {
|
|
4091
4280
|
this._choice[key] =
|
|
4092
|
-
enums
|
|
4281
|
+
enums.NAVBoolean[choice[key]];
|
|
4093
4282
|
}
|
|
4094
4283
|
}
|
|
4095
4284
|
}
|
|
@@ -4103,16 +4292,16 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4103
4292
|
},
|
|
4104
4293
|
set: function (jump) {
|
|
4105
4294
|
if (this.initialized) {
|
|
4106
|
-
throw new
|
|
4295
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4107
4296
|
}
|
|
4108
4297
|
if (typeof jump !== "object") {
|
|
4109
|
-
throw new
|
|
4298
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4110
4299
|
}
|
|
4111
4300
|
for (var key in jump) {
|
|
4112
4301
|
if ({}.hasOwnProperty.call(jump, key)) {
|
|
4113
|
-
if (check2004ValidFormat(jump[key], regex
|
|
4114
|
-
check2004ValidFormat(key, regex
|
|
4115
|
-
this._jump[key] = enums
|
|
4302
|
+
if (check2004ValidFormat(jump[key], regex.scorm2004_regex.NAVBoolean) &&
|
|
4303
|
+
check2004ValidFormat(key, regex.scorm2004_regex.NAVTarget)) {
|
|
4304
|
+
this._jump[key] = enums.NAVBoolean[jump[key]];
|
|
4116
4305
|
}
|
|
4117
4306
|
}
|
|
4118
4307
|
}
|
|
@@ -4132,7 +4321,7 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4132
4321
|
return result;
|
|
4133
4322
|
};
|
|
4134
4323
|
return ADLNavRequestValid;
|
|
4135
|
-
}(base_cmi
|
|
4324
|
+
}(base_cmi.BaseCMI));
|
|
4136
4325
|
|
|
4137
4326
|
|
|
4138
4327
|
;// ./src/Scorm2004API.ts
|
|
@@ -4151,9 +4340,8 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4151
4340
|
|
|
4152
4341
|
|
|
4153
4342
|
|
|
4154
|
-
|
|
4155
4343
|
var Scorm2004Impl = (function (_super) {
|
|
4156
|
-
(0,tslib_es6
|
|
4344
|
+
(0,tslib_es6.__extends)(Scorm2004Impl, _super);
|
|
4157
4345
|
function Scorm2004Impl(settings) {
|
|
4158
4346
|
var _this = this;
|
|
4159
4347
|
if (settings) {
|
|
@@ -4161,8 +4349,9 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4161
4349
|
settings.mastery_override = false;
|
|
4162
4350
|
}
|
|
4163
4351
|
}
|
|
4164
|
-
_this = _super.call(this, error_codes
|
|
4352
|
+
_this = _super.call(this, error_codes.scorm2004_errors, settings) || this;
|
|
4165
4353
|
_this._version = "1.0";
|
|
4354
|
+
_this._globalObjectives = [];
|
|
4166
4355
|
_this.cmi = new CMI();
|
|
4167
4356
|
_this.adl = new ADL();
|
|
4168
4357
|
_this.Initialize = _this.lmsInitialize;
|
|
@@ -4176,9 +4365,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4176
4365
|
return _this;
|
|
4177
4366
|
}
|
|
4178
4367
|
Scorm2004Impl.prototype.reset = function (settings) {
|
|
4368
|
+
var _a, _b;
|
|
4179
4369
|
this.commonReset(settings);
|
|
4180
|
-
this.cmi
|
|
4181
|
-
this.adl
|
|
4370
|
+
(_a = this.cmi) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4371
|
+
(_b = this.adl) === null || _b === void 0 ? void 0 : _b.reset();
|
|
4182
4372
|
};
|
|
4183
4373
|
Object.defineProperty(Scorm2004Impl.prototype, "version", {
|
|
4184
4374
|
get: function () {
|
|
@@ -4187,14 +4377,21 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4187
4377
|
enumerable: false,
|
|
4188
4378
|
configurable: true
|
|
4189
4379
|
});
|
|
4380
|
+
Object.defineProperty(Scorm2004Impl.prototype, "globalObjectives", {
|
|
4381
|
+
get: function () {
|
|
4382
|
+
return this._globalObjectives;
|
|
4383
|
+
},
|
|
4384
|
+
enumerable: false,
|
|
4385
|
+
configurable: true
|
|
4386
|
+
});
|
|
4190
4387
|
Scorm2004Impl.prototype.lmsInitialize = function () {
|
|
4191
4388
|
this.cmi.initialize();
|
|
4192
4389
|
return this.initialize("Initialize");
|
|
4193
4390
|
};
|
|
4194
4391
|
Scorm2004Impl.prototype.lmsFinish = function () {
|
|
4195
4392
|
var _this = this;
|
|
4196
|
-
(function () { return (0,tslib_es6
|
|
4197
|
-
return (0,tslib_es6
|
|
4393
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
4394
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
4198
4395
|
switch (_a.label) {
|
|
4199
4396
|
case 0: return [4, this.internalFinish()];
|
|
4200
4397
|
case 1:
|
|
@@ -4203,18 +4400,18 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4203
4400
|
}
|
|
4204
4401
|
});
|
|
4205
4402
|
}); })();
|
|
4206
|
-
return api_constants
|
|
4403
|
+
return api_constants.global_constants.SCORM_TRUE;
|
|
4207
4404
|
};
|
|
4208
4405
|
Scorm2004Impl.prototype.internalFinish = function () {
|
|
4209
|
-
return (0,tslib_es6
|
|
4406
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
4210
4407
|
var result, navActions, request, choiceJumpRegex, matches, target, action;
|
|
4211
4408
|
var _a, _b, _c, _d;
|
|
4212
|
-
return (0,tslib_es6
|
|
4409
|
+
return (0,tslib_es6.__generator)(this, function (_e) {
|
|
4213
4410
|
switch (_e.label) {
|
|
4214
4411
|
case 0: return [4, this.terminate("Terminate", true)];
|
|
4215
4412
|
case 1:
|
|
4216
4413
|
result = _e.sent();
|
|
4217
|
-
if (result === api_constants
|
|
4414
|
+
if (result === api_constants.global_constants.SCORM_TRUE) {
|
|
4218
4415
|
if (this.adl.nav.request !== "_none_") {
|
|
4219
4416
|
navActions = {
|
|
4220
4417
|
continue: "SequenceNext",
|
|
@@ -4227,7 +4424,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4227
4424
|
abandonAll: "SequenceAbandonAll",
|
|
4228
4425
|
};
|
|
4229
4426
|
request = this.adl.nav.request;
|
|
4230
|
-
choiceJumpRegex = new RegExp(regex
|
|
4427
|
+
choiceJumpRegex = new RegExp(regex.scorm2004_regex.NAVEvent);
|
|
4231
4428
|
matches = request.match(choiceJumpRegex);
|
|
4232
4429
|
target = "";
|
|
4233
4430
|
if (matches) {
|
|
@@ -4256,7 +4453,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4256
4453
|
};
|
|
4257
4454
|
Scorm2004Impl.prototype.lmsGetValue = function (CMIElement) {
|
|
4258
4455
|
var adlNavRequestRegex = "^adl\\.nav\\.request_valid\\.(choice|jump)\\.{target=\\S{0,}([a-zA-Z0-9-_]+)}$";
|
|
4259
|
-
if ((0,utilities
|
|
4456
|
+
if ((0,utilities.stringMatches)(CMIElement, adlNavRequestRegex)) {
|
|
4260
4457
|
var matches = CMIElement.match(adlNavRequestRegex);
|
|
4261
4458
|
var request = matches[1];
|
|
4262
4459
|
var target = matches[2].replace("{target=", "").replace("}", "");
|
|
@@ -4278,8 +4475,8 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4278
4475
|
this.scheduleCommit(500, "LMSCommit");
|
|
4279
4476
|
}
|
|
4280
4477
|
else {
|
|
4281
|
-
(function () { return (0,tslib_es6
|
|
4282
|
-
return (0,tslib_es6
|
|
4478
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
4479
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
4283
4480
|
switch (_a.label) {
|
|
4284
4481
|
case 0: return [4, this.commit("LMSCommit", false)];
|
|
4285
4482
|
case 1:
|
|
@@ -4289,7 +4486,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4289
4486
|
});
|
|
4290
4487
|
}); })();
|
|
4291
4488
|
}
|
|
4292
|
-
return api_constants
|
|
4489
|
+
return api_constants.global_constants.SCORM_TRUE;
|
|
4293
4490
|
};
|
|
4294
4491
|
Scorm2004Impl.prototype.lmsGetLastError = function () {
|
|
4295
4492
|
return this.getLastError("GetLastError");
|
|
@@ -4301,29 +4498,58 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4301
4498
|
return this.getDiagnostic("GetDiagnostic", CMIErrorCode);
|
|
4302
4499
|
};
|
|
4303
4500
|
Scorm2004Impl.prototype.setCMIValue = function (CMIElement, value) {
|
|
4501
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+")) {
|
|
4502
|
+
var parts = CMIElement.split(".");
|
|
4503
|
+
var index = Number(parts[2]);
|
|
4504
|
+
var element_base = "cmi.objectives.".concat(index);
|
|
4505
|
+
var objective_id_1;
|
|
4506
|
+
var setting_id = (0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+\\.id");
|
|
4507
|
+
if (setting_id) {
|
|
4508
|
+
objective_id_1 = value;
|
|
4509
|
+
}
|
|
4510
|
+
else {
|
|
4511
|
+
var objective = this.cmi.objectives.findObjectiveByIndex(index);
|
|
4512
|
+
objective_id_1 = objective ? objective.id : undefined;
|
|
4513
|
+
}
|
|
4514
|
+
var is_global = objective_id_1 && this.settings.globalObjectiveIds.includes(objective_id_1);
|
|
4515
|
+
if (is_global) {
|
|
4516
|
+
var global_index = this._globalObjectives.findIndex(function (obj) { return obj.id === objective_id_1; });
|
|
4517
|
+
if (global_index === -1) {
|
|
4518
|
+
global_index = this._globalObjectives.length;
|
|
4519
|
+
var newGlobalObjective = new CMIObjectivesObject();
|
|
4520
|
+
newGlobalObjective.id = objective_id_1;
|
|
4521
|
+
this._globalObjectives.push(newGlobalObjective);
|
|
4522
|
+
}
|
|
4523
|
+
var global_element = CMIElement.replace(element_base, "_globalObjectives.".concat(global_index));
|
|
4524
|
+
this._commonSetCMIValue("SetGlobalObjectiveValue", true, global_element, value);
|
|
4525
|
+
}
|
|
4526
|
+
}
|
|
4304
4527
|
return this._commonSetCMIValue("SetValue", true, CMIElement, value);
|
|
4305
4528
|
};
|
|
4306
4529
|
Scorm2004Impl.prototype.getChildElement = function (CMIElement, value, foundFirstIndex) {
|
|
4307
|
-
if ((0,utilities
|
|
4530
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+")) {
|
|
4308
4531
|
return new CMIObjectivesObject();
|
|
4309
4532
|
}
|
|
4310
4533
|
if (foundFirstIndex) {
|
|
4311
|
-
if ((0,utilities
|
|
4534
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+\\.correct_responses\\.\\d+")) {
|
|
4312
4535
|
return this.createCorrectResponsesObject(CMIElement, value);
|
|
4313
4536
|
}
|
|
4314
|
-
else if ((0,utilities
|
|
4537
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+\\.objectives\\.\\d+")) {
|
|
4315
4538
|
return new CMIInteractionsObjectivesObject();
|
|
4316
4539
|
}
|
|
4317
4540
|
}
|
|
4318
|
-
else if ((0,utilities
|
|
4541
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+")) {
|
|
4319
4542
|
return new CMIInteractionsObject();
|
|
4320
4543
|
}
|
|
4321
|
-
if ((0,utilities
|
|
4544
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.comments_from_learner\\.\\d+")) {
|
|
4322
4545
|
return new CMICommentsObject();
|
|
4323
4546
|
}
|
|
4324
|
-
else if ((0,utilities
|
|
4547
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.comments_from_lms\\.\\d+")) {
|
|
4325
4548
|
return new CMICommentsObject(true);
|
|
4326
4549
|
}
|
|
4550
|
+
if ((0,utilities.stringMatches)(CMIElement, "adl\\.data\\.\\d+")) {
|
|
4551
|
+
return new ADLDataObject();
|
|
4552
|
+
}
|
|
4327
4553
|
return null;
|
|
4328
4554
|
};
|
|
4329
4555
|
Scorm2004Impl.prototype.createCorrectResponsesObject = function (CMIElement, value) {
|
|
@@ -4332,7 +4558,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4332
4558
|
var interaction = this.cmi.interactions.childArray[index];
|
|
4333
4559
|
if (this.isInitialized()) {
|
|
4334
4560
|
if (!interaction.type) {
|
|
4335
|
-
this.throwSCORMError(error_codes
|
|
4561
|
+
this.throwSCORMError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
4336
4562
|
}
|
|
4337
4563
|
else {
|
|
4338
4564
|
this.checkDuplicateChoiceResponse(interaction, value);
|
|
@@ -4341,7 +4567,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4341
4567
|
this.checkValidResponseType(response_type, value, interaction.type);
|
|
4342
4568
|
}
|
|
4343
4569
|
else {
|
|
4344
|
-
this.throwSCORMError(error_codes
|
|
4570
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Incorrect Response Type: " + interaction.type);
|
|
4345
4571
|
}
|
|
4346
4572
|
}
|
|
4347
4573
|
}
|
|
@@ -4362,7 +4588,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4362
4588
|
this.checkCorrectResponseValue(interaction_type, nodes, value);
|
|
4363
4589
|
}
|
|
4364
4590
|
else if (nodes.length > response_type.max) {
|
|
4365
|
-
this.throwSCORMError(error_codes
|
|
4591
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Pattern Too Long");
|
|
4366
4592
|
}
|
|
4367
4593
|
};
|
|
4368
4594
|
Scorm2004Impl.prototype.checkDuplicateChoiceResponse = function (interaction, value) {
|
|
@@ -4371,7 +4597,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4371
4597
|
for (var i = 0; i < interaction_count && this.lastErrorCode === "0"; i++) {
|
|
4372
4598
|
var response = interaction.correct_responses.childArray[i];
|
|
4373
4599
|
if (response.pattern === value) {
|
|
4374
|
-
this.throwSCORMError(error_codes
|
|
4600
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE);
|
|
4375
4601
|
}
|
|
4376
4602
|
}
|
|
4377
4603
|
}
|
|
@@ -4394,12 +4620,12 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4394
4620
|
}
|
|
4395
4621
|
else {
|
|
4396
4622
|
if (this.lastErrorCode === "0") {
|
|
4397
|
-
this.throwSCORMError(error_codes
|
|
4623
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Pattern Already Exists");
|
|
4398
4624
|
}
|
|
4399
4625
|
}
|
|
4400
4626
|
}
|
|
4401
4627
|
else {
|
|
4402
|
-
this.throwSCORMError(error_codes
|
|
4628
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Collection Limit Reached");
|
|
4403
4629
|
}
|
|
4404
4630
|
};
|
|
4405
4631
|
Scorm2004Impl.prototype.getCMIValue = function (CMIElement) {
|
|
@@ -4409,11 +4635,11 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4409
4635
|
var basicMessage = "";
|
|
4410
4636
|
var detailMessage = "";
|
|
4411
4637
|
errorNumber = String(errorNumber);
|
|
4412
|
-
if (api_constants
|
|
4638
|
+
if (api_constants.scorm2004_constants.error_descriptions[errorNumber]) {
|
|
4413
4639
|
basicMessage =
|
|
4414
|
-
api_constants
|
|
4640
|
+
api_constants.scorm2004_constants.error_descriptions[errorNumber].basicMessage;
|
|
4415
4641
|
detailMessage =
|
|
4416
|
-
api_constants
|
|
4642
|
+
api_constants.scorm2004_constants.error_descriptions[errorNumber].detailMessage;
|
|
4417
4643
|
}
|
|
4418
4644
|
return detail ? detailMessage : basicMessage;
|
|
4419
4645
|
};
|
|
@@ -4439,36 +4665,36 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4439
4665
|
if (values.length === 2) {
|
|
4440
4666
|
var matches = values[0].match(formatRegex);
|
|
4441
4667
|
if (!matches) {
|
|
4442
|
-
this.throwSCORMError(error_codes
|
|
4668
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4443
4669
|
}
|
|
4444
4670
|
else {
|
|
4445
4671
|
if (!response.format2 ||
|
|
4446
4672
|
!values[1].match(new RegExp(response.format2))) {
|
|
4447
|
-
this.throwSCORMError(error_codes
|
|
4673
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4448
4674
|
}
|
|
4449
4675
|
}
|
|
4450
4676
|
}
|
|
4451
4677
|
else {
|
|
4452
|
-
this.throwSCORMError(error_codes
|
|
4678
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4453
4679
|
}
|
|
4454
4680
|
}
|
|
4455
4681
|
else {
|
|
4456
4682
|
var matches = nodes[i].match(formatRegex);
|
|
4457
4683
|
if ((!matches && value !== "") ||
|
|
4458
4684
|
(!matches && interaction_type === "true-false")) {
|
|
4459
|
-
this.throwSCORMError(error_codes
|
|
4685
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4460
4686
|
}
|
|
4461
4687
|
else {
|
|
4462
4688
|
if (interaction_type === "numeric" && nodes.length > 1) {
|
|
4463
4689
|
if (Number(nodes[0]) > Number(nodes[1])) {
|
|
4464
|
-
this.throwSCORMError(error_codes
|
|
4690
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4465
4691
|
}
|
|
4466
4692
|
}
|
|
4467
4693
|
else {
|
|
4468
4694
|
if (nodes[i] !== "" && response.unique) {
|
|
4469
4695
|
for (var j = 0; j < i && this.lastErrorCode === "0"; j++) {
|
|
4470
4696
|
if (nodes[i] === nodes[j]) {
|
|
4471
|
-
this.throwSCORMError(error_codes
|
|
4697
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4472
4698
|
}
|
|
4473
4699
|
}
|
|
4474
4700
|
}
|
|
@@ -4487,12 +4713,12 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4487
4713
|
while (matches) {
|
|
4488
4714
|
switch (matches[2]) {
|
|
4489
4715
|
case "lang":
|
|
4490
|
-
langMatches = node.match(regex
|
|
4716
|
+
langMatches = node.match(regex.scorm2004_regex.CMILangcr);
|
|
4491
4717
|
if (langMatches) {
|
|
4492
4718
|
var lang = langMatches[3];
|
|
4493
4719
|
if (lang !== undefined && lang.length > 0) {
|
|
4494
4720
|
if (!language_constants.includes(lang.toLowerCase())) {
|
|
4495
|
-
this.throwSCORMError(error_codes
|
|
4721
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4496
4722
|
}
|
|
4497
4723
|
}
|
|
4498
4724
|
}
|
|
@@ -4501,7 +4727,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4501
4727
|
case "case_matters":
|
|
4502
4728
|
if (!seenLang && !seenOrder && !seenCase) {
|
|
4503
4729
|
if (matches[3] !== "true" && matches[3] !== "false") {
|
|
4504
|
-
this.throwSCORMError(error_codes
|
|
4730
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4505
4731
|
}
|
|
4506
4732
|
}
|
|
4507
4733
|
seenCase = true;
|
|
@@ -4509,7 +4735,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4509
4735
|
case "order_matters":
|
|
4510
4736
|
if (!seenCase && !seenLang && !seenOrder) {
|
|
4511
4737
|
if (matches[3] !== "true" && matches[3] !== "false") {
|
|
4512
|
-
this.throwSCORMError(error_codes
|
|
4738
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4513
4739
|
}
|
|
4514
4740
|
}
|
|
4515
4741
|
seenOrder = true;
|
|
@@ -4530,10 +4756,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4530
4756
|
cmiExport.cmi.total_time = this.cmi.getCurrentTotalTime();
|
|
4531
4757
|
}
|
|
4532
4758
|
var result = [];
|
|
4533
|
-
var flattened = utilities
|
|
4759
|
+
var flattened = utilities.flatten(cmiExport);
|
|
4534
4760
|
switch (this.settings.dataCommitFormat) {
|
|
4535
4761
|
case "flattened":
|
|
4536
|
-
return utilities
|
|
4762
|
+
return utilities.flatten(cmiExport);
|
|
4537
4763
|
case "params":
|
|
4538
4764
|
for (var item in flattened) {
|
|
4539
4765
|
if ({}.hasOwnProperty.call(flattened, item)) {
|
|
@@ -4549,23 +4775,23 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4549
4775
|
Scorm2004Impl.prototype.renderCommitObject = function (terminateCommit) {
|
|
4550
4776
|
var cmiExport = this.renderCommitCMI(terminateCommit);
|
|
4551
4777
|
var totalTimeDuration = this.cmi.getCurrentTotalTime();
|
|
4552
|
-
var totalTimeSeconds = utilities
|
|
4553
|
-
var completionStatus = enums
|
|
4554
|
-
var successStatus = enums
|
|
4778
|
+
var totalTimeSeconds = utilities.getDurationAsSeconds(totalTimeDuration, regex.scorm2004_regex.CMITimespan);
|
|
4779
|
+
var completionStatus = enums.CompletionStatus.unknown;
|
|
4780
|
+
var successStatus = enums.SuccessStatus.unknown;
|
|
4555
4781
|
if (this.cmi.completion_status) {
|
|
4556
4782
|
if (this.cmi.completion_status === "completed") {
|
|
4557
|
-
completionStatus = enums
|
|
4783
|
+
completionStatus = enums.CompletionStatus.completed;
|
|
4558
4784
|
}
|
|
4559
4785
|
else if (this.cmi.completion_status === "incomplete") {
|
|
4560
|
-
completionStatus = enums
|
|
4786
|
+
completionStatus = enums.CompletionStatus.incomplete;
|
|
4561
4787
|
}
|
|
4562
4788
|
}
|
|
4563
4789
|
if (this.cmi.success_status) {
|
|
4564
4790
|
if (this.cmi.success_status === "passed") {
|
|
4565
|
-
successStatus = enums
|
|
4791
|
+
successStatus = enums.SuccessStatus.passed;
|
|
4566
4792
|
}
|
|
4567
4793
|
else if (this.cmi.success_status === "failed") {
|
|
4568
|
-
successStatus = enums
|
|
4794
|
+
successStatus = enums.SuccessStatus.failed;
|
|
4569
4795
|
}
|
|
4570
4796
|
}
|
|
4571
4797
|
var score = this.cmi.score;
|
|
@@ -4597,10 +4823,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4597
4823
|
return commitObject;
|
|
4598
4824
|
};
|
|
4599
4825
|
Scorm2004Impl.prototype.storeData = function (terminateCommit) {
|
|
4600
|
-
return (0,tslib_es6
|
|
4826
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
4601
4827
|
var navRequest, commitObject, result;
|
|
4602
4828
|
var _a, _b, _c;
|
|
4603
|
-
return (0,tslib_es6
|
|
4829
|
+
return (0,tslib_es6.__generator)(this, function (_d) {
|
|
4604
4830
|
switch (_d.label) {
|
|
4605
4831
|
case 0:
|
|
4606
4832
|
if (terminateCommit) {
|
|
@@ -4644,7 +4870,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4644
4870
|
}
|
|
4645
4871
|
return [2, result];
|
|
4646
4872
|
case 2: return [2, {
|
|
4647
|
-
result: api_constants
|
|
4873
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
4648
4874
|
errorCode: 0,
|
|
4649
4875
|
}];
|
|
4650
4876
|
}
|
|
@@ -4652,10 +4878,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4652
4878
|
});
|
|
4653
4879
|
};
|
|
4654
4880
|
return Scorm2004Impl;
|
|
4655
|
-
}(BaseAPI
|
|
4881
|
+
}(BaseAPI["default"]));
|
|
4656
4882
|
|
|
4657
4883
|
|
|
4658
|
-
var
|
|
4659
|
-
export {
|
|
4884
|
+
var __webpack_exports__Scorm2004API = __webpack_exports__.Scorm2004API;
|
|
4885
|
+
export { __webpack_exports__Scorm2004API as Scorm2004API };
|
|
4660
4886
|
|
|
4661
4887
|
//# sourceMappingURL=scorm2004.js.map
|