scorm-again 2.5.0 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aicc.js +648 -485
- 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 +664 -488
- 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 +1111 -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 +506 -393
- 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 +672 -451
- 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 +1087 -717
- 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 +493 -392
- 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 +658 -450
- package/dist/scorm2004.js.map +1 -1
- package/dist/scorm2004.min.js +1 -1
- package/dist/scorm2004.min.js.map +1 -1
- package/package.json +14 -14
- package/src/AICC.ts +3 -0
- package/src/BaseAPI.ts +33 -30
- package/src/Scorm12API.ts +14 -14
- package/src/Scorm2004API.ts +99 -33
- 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 +37 -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 +4 -0
package/dist/scorm2004.js
CHANGED
|
@@ -5,10 +5,12 @@
|
|
|
5
5
|
/***/ 429:
|
|
6
6
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
7
7
|
|
|
8
|
+
// ESM COMPAT FLAG
|
|
9
|
+
__webpack_require__.r(__webpack_exports__);
|
|
8
10
|
|
|
9
11
|
// EXPORTS
|
|
10
12
|
__webpack_require__.d(__webpack_exports__, {
|
|
11
|
-
|
|
13
|
+
"default": function() { return /* binding */ src_BaseAPI; }
|
|
12
14
|
});
|
|
13
15
|
|
|
14
16
|
// EXTERNAL MODULE: ./node_modules/tslib/tslib.es6.mjs
|
|
@@ -17,8 +19,6 @@ var tslib_es6 = __webpack_require__(635);
|
|
|
17
19
|
var array = __webpack_require__(589);
|
|
18
20
|
// EXTERNAL MODULE: ./src/exceptions.ts
|
|
19
21
|
var exceptions = __webpack_require__(784);
|
|
20
|
-
// EXTERNAL MODULE: ./src/constants/error_codes.ts
|
|
21
|
-
var error_codes = __webpack_require__(797);
|
|
22
22
|
// EXTERNAL MODULE: ./src/constants/api_constants.ts
|
|
23
23
|
var api_constants = __webpack_require__(340);
|
|
24
24
|
// EXTERNAL MODULE: ./src/utilities.ts
|
|
@@ -38,7 +38,7 @@ var DefaultSettings = {
|
|
|
38
38
|
dataCommitFormat: "json",
|
|
39
39
|
commitRequestDataType: "application/json;charset=UTF-8",
|
|
40
40
|
autoProgress: false,
|
|
41
|
-
logLevel: enums
|
|
41
|
+
logLevel: enums.LogLevelEnum.ERROR,
|
|
42
42
|
selfReportSessionTime: false,
|
|
43
43
|
alwaysSendTotalTime: false,
|
|
44
44
|
renderCommonCommitFields: false,
|
|
@@ -47,9 +47,9 @@ var DefaultSettings = {
|
|
|
47
47
|
xhrWithCredentials: false,
|
|
48
48
|
fetchMode: "cors",
|
|
49
49
|
responseHandler: function (response) {
|
|
50
|
-
return (0,tslib_es6
|
|
50
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
51
51
|
var responseText, httpResult;
|
|
52
|
-
return (0,tslib_es6
|
|
52
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
53
53
|
switch (_a.label) {
|
|
54
54
|
case 0:
|
|
55
55
|
if (!(typeof response !== "undefined")) return [3, 2];
|
|
@@ -64,13 +64,13 @@ var DefaultSettings = {
|
|
|
64
64
|
!{}.hasOwnProperty.call(httpResult, "result")) {
|
|
65
65
|
if (response.status === 200) {
|
|
66
66
|
return [2, {
|
|
67
|
-
result: api_constants
|
|
67
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
68
68
|
errorCode: 0,
|
|
69
69
|
}];
|
|
70
70
|
}
|
|
71
71
|
else {
|
|
72
72
|
return [2, {
|
|
73
|
-
result: api_constants
|
|
73
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
74
74
|
errorCode: 101,
|
|
75
75
|
}];
|
|
76
76
|
}
|
|
@@ -80,14 +80,14 @@ var DefaultSettings = {
|
|
|
80
80
|
result: httpResult.result,
|
|
81
81
|
errorCode: httpResult.errorCode
|
|
82
82
|
? httpResult.errorCode
|
|
83
|
-
: httpResult.result === api_constants
|
|
83
|
+
: httpResult.result === api_constants.global_constants.SCORM_TRUE
|
|
84
84
|
? 0
|
|
85
85
|
: 101,
|
|
86
86
|
}];
|
|
87
87
|
}
|
|
88
88
|
_a.label = 2;
|
|
89
89
|
case 2: return [2, {
|
|
90
|
-
result: api_constants
|
|
90
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
91
91
|
errorCode: 101,
|
|
92
92
|
}];
|
|
93
93
|
}
|
|
@@ -102,25 +102,25 @@ var DefaultSettings = {
|
|
|
102
102
|
case "4":
|
|
103
103
|
case 4:
|
|
104
104
|
case "ERROR":
|
|
105
|
-
case enums
|
|
105
|
+
case enums.LogLevelEnum.ERROR:
|
|
106
106
|
console.error(logMessage);
|
|
107
107
|
break;
|
|
108
108
|
case "3":
|
|
109
109
|
case 3:
|
|
110
110
|
case "WARN":
|
|
111
|
-
case enums
|
|
111
|
+
case enums.LogLevelEnum.WARN:
|
|
112
112
|
console.warn(logMessage);
|
|
113
113
|
break;
|
|
114
114
|
case "2":
|
|
115
115
|
case 2:
|
|
116
116
|
case "INFO":
|
|
117
|
-
case enums
|
|
117
|
+
case enums.LogLevelEnum.INFO:
|
|
118
118
|
console.info(logMessage);
|
|
119
119
|
break;
|
|
120
120
|
case "1":
|
|
121
121
|
case 1:
|
|
122
122
|
case "DEBUG":
|
|
123
|
-
case enums
|
|
123
|
+
case enums.LogLevelEnum.DEBUG:
|
|
124
124
|
if (console.debug) {
|
|
125
125
|
console.debug(logMessage);
|
|
126
126
|
}
|
|
@@ -132,6 +132,7 @@ var DefaultSettings = {
|
|
|
132
132
|
},
|
|
133
133
|
scoItemIds: [],
|
|
134
134
|
scoItemIdValidator: false,
|
|
135
|
+
globalObjectiveIds: [],
|
|
135
136
|
};
|
|
136
137
|
|
|
137
138
|
;// ./src/helpers/scheduled_commit.ts
|
|
@@ -152,7 +153,7 @@ var ScheduledCommit = (function () {
|
|
|
152
153
|
ScheduledCommit.prototype.wrapper = function () {
|
|
153
154
|
var _this = this;
|
|
154
155
|
if (!this._cancelled) {
|
|
155
|
-
(function () { return (0,tslib_es6
|
|
156
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () { return (0,tslib_es6.__generator)(this, function (_a) {
|
|
156
157
|
switch (_a.label) {
|
|
157
158
|
case 0: return [4, this._API.commit(this._callback)];
|
|
158
159
|
case 1: return [2, _a.sent()];
|
|
@@ -173,7 +174,6 @@ var ScheduledCommit = (function () {
|
|
|
173
174
|
|
|
174
175
|
|
|
175
176
|
|
|
176
|
-
|
|
177
177
|
var BaseAPI = (function () {
|
|
178
178
|
function BaseAPI(error_codes, settings) {
|
|
179
179
|
var _newTarget = this.constructor;
|
|
@@ -181,7 +181,7 @@ var BaseAPI = (function () {
|
|
|
181
181
|
if (_newTarget === BaseAPI) {
|
|
182
182
|
throw new TypeError("Cannot construct BaseAPI instances directly");
|
|
183
183
|
}
|
|
184
|
-
this.currentState = api_constants
|
|
184
|
+
this.currentState = api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
185
185
|
this.lastErrorCode = "0";
|
|
186
186
|
this.listenerArray = [];
|
|
187
187
|
this._error_codes = error_codes;
|
|
@@ -191,17 +191,20 @@ var BaseAPI = (function () {
|
|
|
191
191
|
this.apiLogLevel = this.settings.logLevel;
|
|
192
192
|
this.selfReportSessionTime = this.settings.selfReportSessionTime;
|
|
193
193
|
if (this.apiLogLevel === undefined) {
|
|
194
|
-
this.apiLogLevel = enums
|
|
194
|
+
this.apiLogLevel = enums.LogLevelEnum.NONE;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
BaseAPI.prototype.commonReset = function (settings) {
|
|
198
|
-
this.
|
|
199
|
-
this.
|
|
198
|
+
this.apiLog("reset", "Called", enums.LogLevelEnum.INFO);
|
|
199
|
+
this.settings = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this.settings), settings);
|
|
200
|
+
this.clearScheduledCommit();
|
|
201
|
+
this.currentState = api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
200
202
|
this.lastErrorCode = "0";
|
|
201
203
|
this.listenerArray = [];
|
|
204
|
+
this.startingData = undefined;
|
|
202
205
|
};
|
|
203
206
|
BaseAPI.prototype.initialize = function (callbackName, initializeMessage, terminationMessage) {
|
|
204
|
-
var returnValue = api_constants
|
|
207
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
205
208
|
if (this.isInitialized()) {
|
|
206
209
|
this.throwSCORMError(this._error_codes.INITIALIZED, initializeMessage);
|
|
207
210
|
}
|
|
@@ -212,17 +215,17 @@ var BaseAPI = (function () {
|
|
|
212
215
|
if (this.selfReportSessionTime) {
|
|
213
216
|
this.cmi.setStartTime();
|
|
214
217
|
}
|
|
215
|
-
this.currentState = api_constants
|
|
218
|
+
this.currentState = api_constants.global_constants.STATE_INITIALIZED;
|
|
216
219
|
this.lastErrorCode = "0";
|
|
217
|
-
returnValue = api_constants
|
|
220
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
218
221
|
this.processListeners(callbackName);
|
|
219
222
|
}
|
|
220
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
223
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
221
224
|
this.clearSCORMError(returnValue);
|
|
222
225
|
return returnValue;
|
|
223
226
|
};
|
|
224
227
|
BaseAPI.prototype.apiLog = function (functionName, logMessage, messageLevel, CMIElement) {
|
|
225
|
-
logMessage = (0,utilities
|
|
228
|
+
logMessage = (0,utilities.formatMessage)(functionName, logMessage, CMIElement);
|
|
226
229
|
if (messageLevel >= this.apiLogLevel) {
|
|
227
230
|
this.settings.onLogMessage(messageLevel, logMessage);
|
|
228
231
|
}
|
|
@@ -239,20 +242,20 @@ var BaseAPI = (function () {
|
|
|
239
242
|
return this._settings;
|
|
240
243
|
},
|
|
241
244
|
set: function (settings) {
|
|
242
|
-
this._settings = (0,tslib_es6
|
|
245
|
+
this._settings = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this._settings), settings);
|
|
243
246
|
},
|
|
244
247
|
enumerable: false,
|
|
245
248
|
configurable: true
|
|
246
249
|
});
|
|
247
250
|
BaseAPI.prototype.terminate = function (callbackName, checkTerminated) {
|
|
248
|
-
return (0,tslib_es6
|
|
251
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
249
252
|
var returnValue, result;
|
|
250
|
-
return (0,tslib_es6
|
|
253
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
251
254
|
switch (_a.label) {
|
|
252
255
|
case 0:
|
|
253
|
-
returnValue = api_constants
|
|
256
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
254
257
|
if (!this.checkState(checkTerminated, this._error_codes.TERMINATION_BEFORE_INIT, this._error_codes.MULTIPLE_TERMINATION)) return [3, 2];
|
|
255
|
-
this.currentState = api_constants
|
|
258
|
+
this.currentState = api_constants.global_constants.STATE_TERMINATED;
|
|
256
259
|
return [4, this.storeData(true)];
|
|
257
260
|
case 1:
|
|
258
261
|
result = _a.sent();
|
|
@@ -262,14 +265,14 @@ var BaseAPI = (function () {
|
|
|
262
265
|
returnValue =
|
|
263
266
|
typeof result !== "undefined" && result.result
|
|
264
267
|
? result.result
|
|
265
|
-
: api_constants
|
|
268
|
+
: api_constants.global_constants.SCORM_FALSE;
|
|
266
269
|
if (checkTerminated)
|
|
267
270
|
this.lastErrorCode = "0";
|
|
268
|
-
returnValue = api_constants
|
|
271
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
269
272
|
this.processListeners(callbackName);
|
|
270
273
|
_a.label = 2;
|
|
271
274
|
case 2:
|
|
272
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
275
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
273
276
|
this.clearSCORMError(returnValue);
|
|
274
277
|
return [2, returnValue];
|
|
275
278
|
}
|
|
@@ -289,7 +292,7 @@ var BaseAPI = (function () {
|
|
|
289
292
|
}
|
|
290
293
|
this.processListeners(callbackName, CMIElement);
|
|
291
294
|
}
|
|
292
|
-
this.apiLog(callbackName, ": returned: " + returnValue, enums
|
|
295
|
+
this.apiLog(callbackName, ": returned: " + returnValue, enums.LogLevelEnum.INFO, CMIElement);
|
|
293
296
|
if (returnValue === undefined) {
|
|
294
297
|
return "";
|
|
295
298
|
}
|
|
@@ -300,7 +303,7 @@ var BaseAPI = (function () {
|
|
|
300
303
|
if (value !== undefined) {
|
|
301
304
|
value = String(value);
|
|
302
305
|
}
|
|
303
|
-
var returnValue = api_constants
|
|
306
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
304
307
|
if (this.checkState(checkTerminated, this._error_codes.STORE_BEFORE_INIT, this._error_codes.STORE_AFTER_TERM)) {
|
|
305
308
|
if (checkTerminated)
|
|
306
309
|
this.lastErrorCode = "0";
|
|
@@ -313,26 +316,26 @@ var BaseAPI = (function () {
|
|
|
313
316
|
this.processListeners(callbackName, CMIElement, value);
|
|
314
317
|
}
|
|
315
318
|
if (returnValue === undefined) {
|
|
316
|
-
returnValue = api_constants
|
|
319
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
317
320
|
}
|
|
318
321
|
if (String(this.lastErrorCode) === "0") {
|
|
319
322
|
if (this.settings.autocommit) {
|
|
320
323
|
this.scheduleCommit(this.settings.autocommitSeconds * 1000, commitCallback);
|
|
321
324
|
}
|
|
322
325
|
}
|
|
323
|
-
this.apiLog(callbackName, ": " + value + ": result: " + returnValue, enums
|
|
326
|
+
this.apiLog(callbackName, ": " + value + ": result: " + returnValue, enums.LogLevelEnum.INFO, CMIElement);
|
|
324
327
|
this.clearSCORMError(returnValue);
|
|
325
328
|
return returnValue;
|
|
326
329
|
};
|
|
327
330
|
BaseAPI.prototype.commit = function (callbackName_1) {
|
|
328
|
-
return (0,tslib_es6
|
|
331
|
+
return (0,tslib_es6.__awaiter)(this, arguments, void 0, function (callbackName, checkTerminated) {
|
|
329
332
|
var returnValue, result;
|
|
330
333
|
if (checkTerminated === void 0) { checkTerminated = false; }
|
|
331
|
-
return (0,tslib_es6
|
|
334
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
332
335
|
switch (_a.label) {
|
|
333
336
|
case 0:
|
|
334
337
|
this.clearScheduledCommit();
|
|
335
|
-
returnValue = api_constants
|
|
338
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
336
339
|
if (!this.checkState(checkTerminated, this._error_codes.COMMIT_BEFORE_INIT, this._error_codes.COMMIT_AFTER_TERM)) return [3, 2];
|
|
337
340
|
return [4, this.storeData(false)];
|
|
338
341
|
case 1:
|
|
@@ -343,14 +346,14 @@ var BaseAPI = (function () {
|
|
|
343
346
|
returnValue =
|
|
344
347
|
typeof result !== "undefined" && result.result
|
|
345
348
|
? result.result
|
|
346
|
-
: api_constants
|
|
347
|
-
this.apiLog(callbackName, " Result: " + returnValue, enums
|
|
349
|
+
: api_constants.global_constants.SCORM_FALSE;
|
|
350
|
+
this.apiLog(callbackName, " Result: " + returnValue, enums.LogLevelEnum.DEBUG, "HttpRequest");
|
|
348
351
|
if (checkTerminated)
|
|
349
352
|
this.lastErrorCode = "0";
|
|
350
353
|
this.processListeners(callbackName);
|
|
351
354
|
_a.label = 2;
|
|
352
355
|
case 2:
|
|
353
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
356
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
354
357
|
this.clearSCORMError(returnValue);
|
|
355
358
|
return [2, returnValue];
|
|
356
359
|
}
|
|
@@ -360,7 +363,7 @@ var BaseAPI = (function () {
|
|
|
360
363
|
BaseAPI.prototype.getLastError = function (callbackName) {
|
|
361
364
|
var returnValue = String(this.lastErrorCode);
|
|
362
365
|
this.processListeners(callbackName);
|
|
363
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
366
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
364
367
|
return returnValue;
|
|
365
368
|
};
|
|
366
369
|
BaseAPI.prototype.getErrorString = function (callbackName, CMIErrorCode) {
|
|
@@ -369,7 +372,7 @@ var BaseAPI = (function () {
|
|
|
369
372
|
returnValue = this.getLmsErrorMessageDetails(CMIErrorCode);
|
|
370
373
|
this.processListeners(callbackName);
|
|
371
374
|
}
|
|
372
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
375
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
373
376
|
return returnValue;
|
|
374
377
|
};
|
|
375
378
|
BaseAPI.prototype.getDiagnostic = function (callbackName, CMIErrorCode) {
|
|
@@ -378,7 +381,7 @@ var BaseAPI = (function () {
|
|
|
378
381
|
returnValue = this.getLmsErrorMessageDetails(CMIErrorCode, true);
|
|
379
382
|
this.processListeners(callbackName);
|
|
380
383
|
}
|
|
381
|
-
this.apiLog(callbackName, "returned: " + returnValue, enums
|
|
384
|
+
this.apiLog(callbackName, "returned: " + returnValue, enums.LogLevelEnum.INFO);
|
|
382
385
|
return returnValue;
|
|
383
386
|
};
|
|
384
387
|
BaseAPI.prototype.checkState = function (checkTerminated, beforeInitError, afterTermError) {
|
|
@@ -404,11 +407,11 @@ var BaseAPI = (function () {
|
|
|
404
407
|
};
|
|
405
408
|
BaseAPI.prototype._commonSetCMIValue = function (methodName, scorm2004, CMIElement, value) {
|
|
406
409
|
if (!CMIElement || CMIElement === "") {
|
|
407
|
-
return api_constants
|
|
410
|
+
return api_constants.global_constants.SCORM_FALSE;
|
|
408
411
|
}
|
|
409
412
|
var structure = CMIElement.split(".");
|
|
410
413
|
var refObject = this;
|
|
411
|
-
var returnValue = api_constants
|
|
414
|
+
var returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
412
415
|
var foundFirstIndex = false;
|
|
413
416
|
var invalidErrorMessage = "The data model element passed to ".concat(methodName, " (").concat(CMIElement, ") is not a valid SCORM data model element.");
|
|
414
417
|
var invalidErrorCode = scorm2004
|
|
@@ -422,20 +425,20 @@ var BaseAPI = (function () {
|
|
|
422
425
|
this.throwSCORMError(this._error_codes.READ_ONLY_ELEMENT);
|
|
423
426
|
}
|
|
424
427
|
else {
|
|
425
|
-
refObject = (0,tslib_es6
|
|
428
|
+
refObject = (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, refObject), { attribute: value });
|
|
426
429
|
}
|
|
427
430
|
}
|
|
428
431
|
else if (!this._checkObjectHasProperty(refObject, attribute)) {
|
|
429
432
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
430
433
|
}
|
|
431
434
|
else {
|
|
432
|
-
if ((0,utilities
|
|
435
|
+
if ((0,utilities.stringMatches)(CMIElement, "\\.correct_responses\\.\\d+") &&
|
|
433
436
|
this.isInitialized()) {
|
|
434
437
|
this.validateCorrectResponse(CMIElement, value);
|
|
435
438
|
}
|
|
436
439
|
if (!scorm2004 || this.lastErrorCode === "0") {
|
|
437
440
|
refObject[attribute] = value;
|
|
438
|
-
returnValue = api_constants
|
|
441
|
+
returnValue = api_constants.global_constants.SCORM_TRUE;
|
|
439
442
|
}
|
|
440
443
|
}
|
|
441
444
|
}
|
|
@@ -445,7 +448,7 @@ var BaseAPI = (function () {
|
|
|
445
448
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
446
449
|
break;
|
|
447
450
|
}
|
|
448
|
-
if (refObject instanceof array
|
|
451
|
+
if (refObject instanceof array.CMIArray) {
|
|
449
452
|
var index = parseInt(structure[idx + 1], 10);
|
|
450
453
|
if (!isNaN(index)) {
|
|
451
454
|
var item = refObject.childArray[index];
|
|
@@ -471,8 +474,8 @@ var BaseAPI = (function () {
|
|
|
471
474
|
}
|
|
472
475
|
}
|
|
473
476
|
}
|
|
474
|
-
if (returnValue === api_constants
|
|
475
|
-
this.apiLog(methodName, "There was an error setting the value for: ".concat(CMIElement, ", value of: ").concat(value), enums
|
|
477
|
+
if (returnValue === api_constants.global_constants.SCORM_FALSE) {
|
|
478
|
+
this.apiLog(methodName, "There was an error setting the value for: ".concat(CMIElement, ", value of: ").concat(value), enums.LogLevelEnum.WARN);
|
|
476
479
|
}
|
|
477
480
|
return returnValue;
|
|
478
481
|
};
|
|
@@ -514,7 +517,7 @@ var BaseAPI = (function () {
|
|
|
514
517
|
this.throwSCORMError(invalidErrorCode, invalidErrorMessage);
|
|
515
518
|
break;
|
|
516
519
|
}
|
|
517
|
-
if (refObject instanceof array
|
|
520
|
+
if (refObject instanceof array.CMIArray) {
|
|
518
521
|
var index = parseInt(structure[idx + 1], 10);
|
|
519
522
|
if (!isNaN(index)) {
|
|
520
523
|
var item = refObject.childArray[index];
|
|
@@ -532,10 +535,10 @@ var BaseAPI = (function () {
|
|
|
532
535
|
if (refObject === null || refObject === undefined) {
|
|
533
536
|
if (!scorm2004) {
|
|
534
537
|
if (attribute === "_children") {
|
|
535
|
-
this.throwSCORMError(
|
|
538
|
+
this.throwSCORMError(this._error_codes.CHILDREN_ERROR);
|
|
536
539
|
}
|
|
537
540
|
else if (attribute === "_count") {
|
|
538
|
-
this.throwSCORMError(
|
|
541
|
+
this.throwSCORMError(this._error_codes.COUNT_ERROR);
|
|
539
542
|
}
|
|
540
543
|
}
|
|
541
544
|
}
|
|
@@ -544,13 +547,13 @@ var BaseAPI = (function () {
|
|
|
544
547
|
}
|
|
545
548
|
};
|
|
546
549
|
BaseAPI.prototype.isInitialized = function () {
|
|
547
|
-
return this.currentState === api_constants
|
|
550
|
+
return this.currentState === api_constants.global_constants.STATE_INITIALIZED;
|
|
548
551
|
};
|
|
549
552
|
BaseAPI.prototype.isNotInitialized = function () {
|
|
550
|
-
return this.currentState === api_constants
|
|
553
|
+
return this.currentState === api_constants.global_constants.STATE_NOT_INITIALIZED;
|
|
551
554
|
};
|
|
552
555
|
BaseAPI.prototype.isTerminated = function () {
|
|
553
|
-
return this.currentState === api_constants
|
|
556
|
+
return this.currentState === api_constants.global_constants.STATE_TERMINATED;
|
|
554
557
|
};
|
|
555
558
|
BaseAPI.prototype.on = function (listenerName, callback) {
|
|
556
559
|
if (!callback)
|
|
@@ -570,7 +573,7 @@ var BaseAPI = (function () {
|
|
|
570
573
|
CMIElement: CMIElement,
|
|
571
574
|
callback: callback,
|
|
572
575
|
});
|
|
573
|
-
this.apiLog("on", "Added event listener: ".concat(this.listenerArray.length), enums
|
|
576
|
+
this.apiLog("on", "Added event listener: ".concat(this.listenerArray.length), enums.LogLevelEnum.INFO, functionName);
|
|
574
577
|
}
|
|
575
578
|
};
|
|
576
579
|
BaseAPI.prototype.off = function (listenerName, callback) {
|
|
@@ -593,7 +596,7 @@ var BaseAPI = (function () {
|
|
|
593
596
|
});
|
|
594
597
|
if (removeIndex !== -1) {
|
|
595
598
|
this_1.listenerArray.splice(removeIndex, 1);
|
|
596
|
-
this_1.apiLog("off", "Removed event listener: ".concat(this_1.listenerArray.length), enums
|
|
599
|
+
this_1.apiLog("off", "Removed event listener: ".concat(this_1.listenerArray.length), enums.LogLevelEnum.INFO, functionName);
|
|
597
600
|
}
|
|
598
601
|
};
|
|
599
602
|
var this_1 = this;
|
|
@@ -626,7 +629,7 @@ var BaseAPI = (function () {
|
|
|
626
629
|
}
|
|
627
630
|
};
|
|
628
631
|
BaseAPI.prototype.processListeners = function (functionName, CMIElement, value) {
|
|
629
|
-
this.apiLog(functionName, value, enums
|
|
632
|
+
this.apiLog(functionName, value, enums.LogLevelEnum.INFO, CMIElement);
|
|
630
633
|
for (var i = 0; i < this.listenerArray.length; i++) {
|
|
631
634
|
var listener = this.listenerArray[i];
|
|
632
635
|
var functionsMatch = listener.functionName === functionName;
|
|
@@ -642,7 +645,7 @@ var BaseAPI = (function () {
|
|
|
642
645
|
CMIElementsMatch = listener.CMIElement === CMIElement;
|
|
643
646
|
}
|
|
644
647
|
if (functionsMatch && (!listenerHasCMIElement || CMIElementsMatch)) {
|
|
645
|
-
this.apiLog("processListeners", "Processing listener: ".concat(listener.functionName), enums
|
|
648
|
+
this.apiLog("processListeners", "Processing listener: ".concat(listener.functionName), enums.LogLevelEnum.INFO, CMIElement);
|
|
646
649
|
listener.callback(CMIElement, value);
|
|
647
650
|
}
|
|
648
651
|
}
|
|
@@ -651,11 +654,11 @@ var BaseAPI = (function () {
|
|
|
651
654
|
if (!message) {
|
|
652
655
|
message = this.getLmsErrorMessageDetails(errorNumber);
|
|
653
656
|
}
|
|
654
|
-
this.apiLog("throwSCORMError", errorNumber + ": " + message, enums
|
|
657
|
+
this.apiLog("throwSCORMError", errorNumber + ": " + message, enums.LogLevelEnum.ERROR);
|
|
655
658
|
this.lastErrorCode = String(errorNumber);
|
|
656
659
|
};
|
|
657
660
|
BaseAPI.prototype.clearSCORMError = function (success) {
|
|
658
|
-
if (success !== undefined && success !== api_constants
|
|
661
|
+
if (success !== undefined && success !== api_constants.global_constants.SCORM_FALSE) {
|
|
659
662
|
this.lastErrorCode = "0";
|
|
660
663
|
}
|
|
661
664
|
};
|
|
@@ -721,7 +724,7 @@ var BaseAPI = (function () {
|
|
|
721
724
|
result.forEach(function (element) {
|
|
722
725
|
obj = {};
|
|
723
726
|
obj[element[0]] = element[1];
|
|
724
|
-
_this.loadFromJSON((0,utilities
|
|
727
|
+
_this.loadFromJSON((0,utilities.unflatten)(obj), CMIElement);
|
|
725
728
|
});
|
|
726
729
|
};
|
|
727
730
|
BaseAPI.prototype.loadFromJSON = function (json, CMIElement) {
|
|
@@ -761,21 +764,21 @@ var BaseAPI = (function () {
|
|
|
761
764
|
return JSON.parse(this.renderCMIToJSONString());
|
|
762
765
|
};
|
|
763
766
|
BaseAPI.prototype.processHttpRequest = function (url_1, params_1) {
|
|
764
|
-
return (0,tslib_es6
|
|
767
|
+
return (0,tslib_es6.__awaiter)(this, arguments, void 0, function (url, params, immediate) {
|
|
765
768
|
var api, genericError, process;
|
|
766
769
|
var _this = this;
|
|
767
770
|
if (immediate === void 0) { immediate = false; }
|
|
768
|
-
return (0,tslib_es6
|
|
771
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
769
772
|
switch (_a.label) {
|
|
770
773
|
case 0:
|
|
771
774
|
api = this;
|
|
772
775
|
genericError = {
|
|
773
|
-
result: api_constants
|
|
776
|
+
result: api_constants.global_constants.SCORM_FALSE,
|
|
774
777
|
errorCode: this.error_codes.GENERAL,
|
|
775
778
|
};
|
|
776
779
|
if (immediate) {
|
|
777
|
-
this.performFetch(url, params).then(function (response) { return (0,tslib_es6
|
|
778
|
-
return (0,tslib_es6
|
|
780
|
+
this.performFetch(url, params).then(function (response) { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
781
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
779
782
|
switch (_a.label) {
|
|
780
783
|
case 0: return [4, this.transformResponse(response)];
|
|
781
784
|
case 1:
|
|
@@ -785,13 +788,13 @@ var BaseAPI = (function () {
|
|
|
785
788
|
});
|
|
786
789
|
}); });
|
|
787
790
|
return [2, {
|
|
788
|
-
result: api_constants
|
|
791
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
789
792
|
errorCode: 0,
|
|
790
793
|
}];
|
|
791
794
|
}
|
|
792
|
-
process = function (url, params, settings) { return (0,tslib_es6
|
|
795
|
+
process = function (url, params, settings) { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
793
796
|
var response, e_1;
|
|
794
|
-
return (0,tslib_es6
|
|
797
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
795
798
|
switch (_a.label) {
|
|
796
799
|
case 0:
|
|
797
800
|
_a.trys.push([0, 2, , 3]);
|
|
@@ -802,7 +805,7 @@ var BaseAPI = (function () {
|
|
|
802
805
|
return [2, this.transformResponse(response)];
|
|
803
806
|
case 2:
|
|
804
807
|
e_1 = _a.sent();
|
|
805
|
-
this.apiLog("processHttpRequest", e_1, enums
|
|
808
|
+
this.apiLog("processHttpRequest", e_1, enums.LogLevelEnum.ERROR);
|
|
806
809
|
api.processListeners("CommitError");
|
|
807
810
|
return [2, genericError];
|
|
808
811
|
case 3: return [2];
|
|
@@ -818,14 +821,14 @@ var BaseAPI = (function () {
|
|
|
818
821
|
BaseAPI.prototype.scheduleCommit = function (when, callback) {
|
|
819
822
|
if (!this._timeout) {
|
|
820
823
|
this._timeout = new ScheduledCommit(this, when, callback);
|
|
821
|
-
this.apiLog("scheduleCommit", "scheduled", enums
|
|
824
|
+
this.apiLog("scheduleCommit", "scheduled", enums.LogLevelEnum.DEBUG, "");
|
|
822
825
|
}
|
|
823
826
|
};
|
|
824
827
|
BaseAPI.prototype.clearScheduledCommit = function () {
|
|
825
828
|
if (this._timeout) {
|
|
826
829
|
this._timeout.cancel();
|
|
827
830
|
this._timeout = undefined;
|
|
828
|
-
this.apiLog("clearScheduledCommit", "cleared", enums
|
|
831
|
+
this.apiLog("clearScheduledCommit", "cleared", enums.LogLevelEnum.DEBUG, "");
|
|
829
832
|
}
|
|
830
833
|
};
|
|
831
834
|
BaseAPI.prototype._checkObjectHasProperty = function (refObject, attribute) {
|
|
@@ -834,9 +837,9 @@ var BaseAPI = (function () {
|
|
|
834
837
|
attribute in refObject);
|
|
835
838
|
};
|
|
836
839
|
BaseAPI.prototype.handleValueAccessException = function (e, returnValue) {
|
|
837
|
-
if (e instanceof exceptions
|
|
840
|
+
if (e instanceof exceptions.ValidationError) {
|
|
838
841
|
this.lastErrorCode = String(e.errorCode);
|
|
839
|
-
returnValue = api_constants
|
|
842
|
+
returnValue = api_constants.global_constants.SCORM_FALSE;
|
|
840
843
|
}
|
|
841
844
|
else {
|
|
842
845
|
if (e instanceof Error && e.message) {
|
|
@@ -854,20 +857,20 @@ var BaseAPI = (function () {
|
|
|
854
857
|
var commitObject = this.settings.renderCommonCommitFields
|
|
855
858
|
? this.renderCommitObject(shouldTerminateCommit)
|
|
856
859
|
: this.renderCommitCMI(shouldTerminateCommit);
|
|
857
|
-
if ([enums
|
|
860
|
+
if ([enums.LogLevelEnum.DEBUG, "1", 1, "DEBUG"].includes(this.apiLogLevel)) {
|
|
858
861
|
console.debug("Commit (terminated: " + (terminateCommit ? "yes" : "no") + "): ");
|
|
859
862
|
console.debug(commitObject);
|
|
860
863
|
}
|
|
861
864
|
return commitObject;
|
|
862
865
|
};
|
|
863
866
|
BaseAPI.prototype.performFetch = function (url, params) {
|
|
864
|
-
return (0,tslib_es6
|
|
865
|
-
return (0,tslib_es6
|
|
867
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
868
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
866
869
|
return [2, fetch(url, {
|
|
867
870
|
method: "POST",
|
|
868
871
|
mode: this.settings.fetchMode,
|
|
869
872
|
body: params instanceof Array ? params.join("&") : JSON.stringify(params),
|
|
870
|
-
headers: (0,tslib_es6
|
|
873
|
+
headers: (0,tslib_es6.__assign)((0,tslib_es6.__assign)({}, this.settings.xhrHeaders), { "Content-Type": this.settings.commitRequestDataType }),
|
|
871
874
|
credentials: this.settings.xhrWithCredentials ? "include" : undefined,
|
|
872
875
|
keepalive: true,
|
|
873
876
|
})];
|
|
@@ -875,9 +878,9 @@ var BaseAPI = (function () {
|
|
|
875
878
|
});
|
|
876
879
|
};
|
|
877
880
|
BaseAPI.prototype.transformResponse = function (response) {
|
|
878
|
-
return (0,tslib_es6
|
|
881
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
879
882
|
var result, _a;
|
|
880
|
-
return (0,tslib_es6
|
|
883
|
+
return (0,tslib_es6.__generator)(this, function (_c) {
|
|
881
884
|
switch (_c.label) {
|
|
882
885
|
case 0:
|
|
883
886
|
if (!(typeof this.settings.responseHandler === "function")) return [3, 2];
|
|
@@ -893,8 +896,7 @@ var BaseAPI = (function () {
|
|
|
893
896
|
result = _a;
|
|
894
897
|
if (response.status >= 200 &&
|
|
895
898
|
response.status <= 299 &&
|
|
896
|
-
(result.result === true ||
|
|
897
|
-
result.result === api_constants/* default */.A.global.SCORM_TRUE)) {
|
|
899
|
+
(result.result === true || result.result === api_constants.global_constants.SCORM_TRUE)) {
|
|
898
900
|
this.processListeners("CommitSuccess");
|
|
899
901
|
}
|
|
900
902
|
else {
|
|
@@ -915,29 +917,40 @@ var BaseAPI = (function () {
|
|
|
915
917
|
/***/ 589:
|
|
916
918
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
917
919
|
|
|
920
|
+
__webpack_require__.r(__webpack_exports__);
|
|
918
921
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
919
|
-
/* harmony export */
|
|
922
|
+
/* harmony export */ CMIArray: function() { return /* binding */ CMIArray; }
|
|
920
923
|
/* harmony export */ });
|
|
921
|
-
/* unused harmony export scorm12_error_codes */
|
|
922
924
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(635);
|
|
923
925
|
/* harmony import */ var _base_cmi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(319);
|
|
924
|
-
/* harmony import */ var
|
|
925
|
-
/* harmony import */ var
|
|
926
|
+
/* harmony import */ var _exceptions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(784);
|
|
927
|
+
/* harmony import */ var _constants_error_codes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(797);
|
|
926
928
|
|
|
927
929
|
|
|
928
930
|
|
|
929
931
|
|
|
930
|
-
var scorm12_error_codes = _constants_error_codes__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.scorm12;
|
|
931
932
|
var CMIArray = (function (_super) {
|
|
932
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_3__
|
|
933
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_3__.__extends)(CMIArray, _super);
|
|
933
934
|
function CMIArray(params) {
|
|
934
935
|
var _this = _super.call(this) || this;
|
|
935
936
|
_this.__children = params.children;
|
|
936
|
-
_this._errorCode = params.errorCode ||
|
|
937
|
-
_this._errorClass = params.errorClass ||
|
|
937
|
+
_this._errorCode = params.errorCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_2__.scorm12_errors.GENERAL;
|
|
938
|
+
_this._errorClass = params.errorClass || _exceptions__WEBPACK_IMPORTED_MODULE_1__.BaseScormValidationError;
|
|
938
939
|
_this.childArray = [];
|
|
939
940
|
return _this;
|
|
940
941
|
}
|
|
942
|
+
CMIArray.prototype.reset = function (wipe) {
|
|
943
|
+
if (wipe === void 0) { wipe = false; }
|
|
944
|
+
this._initialized = false;
|
|
945
|
+
if (wipe) {
|
|
946
|
+
this.childArray = [];
|
|
947
|
+
}
|
|
948
|
+
else {
|
|
949
|
+
for (var i = 0; i < this.childArray.length; i++) {
|
|
950
|
+
this.childArray[i].reset();
|
|
951
|
+
}
|
|
952
|
+
}
|
|
953
|
+
};
|
|
941
954
|
Object.defineProperty(CMIArray.prototype, "_children", {
|
|
942
955
|
get: function () {
|
|
943
956
|
return this.__children;
|
|
@@ -968,7 +981,7 @@ var CMIArray = (function (_super) {
|
|
|
968
981
|
return result;
|
|
969
982
|
};
|
|
970
983
|
return CMIArray;
|
|
971
|
-
}(_base_cmi__WEBPACK_IMPORTED_MODULE_0__
|
|
984
|
+
}(_base_cmi__WEBPACK_IMPORTED_MODULE_0__.BaseCMI));
|
|
972
985
|
|
|
973
986
|
|
|
974
987
|
|
|
@@ -977,9 +990,10 @@ var CMIArray = (function (_super) {
|
|
|
977
990
|
/***/ 319:
|
|
978
991
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
979
992
|
|
|
993
|
+
__webpack_require__.r(__webpack_exports__);
|
|
980
994
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
981
|
-
/* harmony export */
|
|
982
|
-
/* harmony export */
|
|
995
|
+
/* harmony export */ BaseCMI: function() { return /* binding */ BaseCMI; },
|
|
996
|
+
/* harmony export */ BaseRootCMI: function() { return /* binding */ BaseRootCMI; }
|
|
983
997
|
/* harmony export */ });
|
|
984
998
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
985
999
|
|
|
@@ -1012,7 +1026,7 @@ var BaseCMI = (function () {
|
|
|
1012
1026
|
}());
|
|
1013
1027
|
|
|
1014
1028
|
var BaseRootCMI = (function (_super) {
|
|
1015
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_0__
|
|
1029
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(BaseRootCMI, _super);
|
|
1016
1030
|
function BaseRootCMI() {
|
|
1017
1031
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
1018
1032
|
}
|
|
@@ -1026,10 +1040,10 @@ var BaseRootCMI = (function (_super) {
|
|
|
1026
1040
|
/***/ 434:
|
|
1027
1041
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1028
1042
|
|
|
1043
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1029
1044
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1030
|
-
/* harmony export */
|
|
1045
|
+
/* harmony export */ CMIScore: function() { return /* binding */ CMIScore; }
|
|
1031
1046
|
/* harmony export */ });
|
|
1032
|
-
/* unused harmony export scorm12_error_codes */
|
|
1033
1047
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(635);
|
|
1034
1048
|
/* harmony import */ var _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(340);
|
|
1035
1049
|
/* harmony import */ var _constants_regex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(417);
|
|
@@ -1042,30 +1056,30 @@ var BaseRootCMI = (function (_super) {
|
|
|
1042
1056
|
|
|
1043
1057
|
|
|
1044
1058
|
|
|
1045
|
-
var scorm12_constants = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm12;
|
|
1046
|
-
var scorm12_regex = _constants_regex__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A.scorm12;
|
|
1047
|
-
var scorm12_error_codes = _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A.scorm12;
|
|
1048
1059
|
var CMIScore = (function (_super) {
|
|
1049
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_4__
|
|
1060
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_4__.__extends)(CMIScore, _super);
|
|
1050
1061
|
function CMIScore(params) {
|
|
1051
1062
|
var _this = _super.call(this) || this;
|
|
1052
1063
|
_this._raw = "";
|
|
1053
1064
|
_this._min = "";
|
|
1054
|
-
_this.__children = params.score_children || scorm12_constants.score_children;
|
|
1065
|
+
_this.__children = params.score_children || _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__.scorm12_constants.score_children;
|
|
1055
1066
|
_this.__score_range = !params.score_range
|
|
1056
1067
|
? false
|
|
1057
|
-
: scorm12_regex.score_range;
|
|
1068
|
+
: _constants_regex__WEBPACK_IMPORTED_MODULE_1__.scorm12_regex.score_range;
|
|
1058
1069
|
_this._max = params.max || params.max === "" ? params.max : "100";
|
|
1059
1070
|
_this.__invalid_error_code =
|
|
1060
|
-
params.invalidErrorCode ||
|
|
1071
|
+
params.invalidErrorCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.INVALID_SET_VALUE;
|
|
1061
1072
|
_this.__invalid_type_code =
|
|
1062
|
-
params.invalidTypeCode ||
|
|
1073
|
+
params.invalidTypeCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.TYPE_MISMATCH;
|
|
1063
1074
|
_this.__invalid_range_code =
|
|
1064
|
-
params.invalidRangeCode ||
|
|
1065
|
-
_this.__decimal_regex = params.decimalRegex || scorm12_regex.CMIDecimal;
|
|
1075
|
+
params.invalidRangeCode || _constants_error_codes__WEBPACK_IMPORTED_MODULE_3__.scorm12_errors.VALUE_OUT_OF_RANGE;
|
|
1076
|
+
_this.__decimal_regex = params.decimalRegex || _constants_regex__WEBPACK_IMPORTED_MODULE_1__.scorm12_regex.CMIDecimal;
|
|
1066
1077
|
_this.__error_class = params.errorClass;
|
|
1067
1078
|
return _this;
|
|
1068
1079
|
}
|
|
1080
|
+
CMIScore.prototype.reset = function () {
|
|
1081
|
+
this._initialized = false;
|
|
1082
|
+
};
|
|
1069
1083
|
Object.defineProperty(CMIScore.prototype, "_children", {
|
|
1070
1084
|
get: function () {
|
|
1071
1085
|
return this.__children;
|
|
@@ -1081,9 +1095,9 @@ var CMIScore = (function (_super) {
|
|
|
1081
1095
|
return this._raw;
|
|
1082
1096
|
},
|
|
1083
1097
|
set: function (raw) {
|
|
1084
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1098
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(raw, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1085
1099
|
(!this.__score_range ||
|
|
1086
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1100
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(raw, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1087
1101
|
this._raw = raw;
|
|
1088
1102
|
}
|
|
1089
1103
|
},
|
|
@@ -1095,9 +1109,9 @@ var CMIScore = (function (_super) {
|
|
|
1095
1109
|
return this._min;
|
|
1096
1110
|
},
|
|
1097
1111
|
set: function (min) {
|
|
1098
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1112
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(min, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1099
1113
|
(!this.__score_range ||
|
|
1100
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1114
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(min, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1101
1115
|
this._min = min;
|
|
1102
1116
|
}
|
|
1103
1117
|
},
|
|
@@ -1109,9 +1123,9 @@ var CMIScore = (function (_super) {
|
|
|
1109
1123
|
return this._max;
|
|
1110
1124
|
},
|
|
1111
1125
|
set: function (max) {
|
|
1112
|
-
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1126
|
+
if ((0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidFormat)(max, this.__decimal_regex, this.__invalid_type_code, this.__error_class) &&
|
|
1113
1127
|
(!this.__score_range ||
|
|
1114
|
-
(0,_validation__WEBPACK_IMPORTED_MODULE_5__
|
|
1128
|
+
(0,_validation__WEBPACK_IMPORTED_MODULE_5__.checkValidRange)(max, this.__score_range, this.__invalid_range_code, this.__error_class))) {
|
|
1115
1129
|
this._max = max;
|
|
1116
1130
|
}
|
|
1117
1131
|
},
|
|
@@ -1129,7 +1143,7 @@ var CMIScore = (function (_super) {
|
|
|
1129
1143
|
return result;
|
|
1130
1144
|
};
|
|
1131
1145
|
return CMIScore;
|
|
1132
|
-
}(_base_cmi__WEBPACK_IMPORTED_MODULE_2__
|
|
1146
|
+
}(_base_cmi__WEBPACK_IMPORTED_MODULE_2__.BaseCMI));
|
|
1133
1147
|
|
|
1134
1148
|
|
|
1135
1149
|
|
|
@@ -1138,9 +1152,10 @@ var CMIScore = (function (_super) {
|
|
|
1138
1152
|
/***/ 449:
|
|
1139
1153
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1140
1154
|
|
|
1155
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1141
1156
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1142
|
-
/* harmony export */
|
|
1143
|
-
/* harmony export */
|
|
1157
|
+
/* harmony export */ checkValidFormat: function() { return /* binding */ checkValidFormat; },
|
|
1158
|
+
/* harmony export */ checkValidRange: function() { return /* binding */ checkValidRange; }
|
|
1144
1159
|
/* harmony export */ });
|
|
1145
1160
|
function checkValidFormat(value, regexPattern, errorCode, errorClass, allowEmptyString) {
|
|
1146
1161
|
if (typeof value !== "string") {
|
|
@@ -1178,16 +1193,23 @@ function checkValidRange(value, rangePattern, errorCode, errorClass) {
|
|
|
1178
1193
|
/***/ 340:
|
|
1179
1194
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1180
1195
|
|
|
1196
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1197
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1198
|
+
/* harmony export */ aicc_constants: function() { return /* binding */ aicc_constants; },
|
|
1199
|
+
/* harmony export */ global_constants: function() { return /* binding */ global_constants; },
|
|
1200
|
+
/* harmony export */ scorm12_constants: function() { return /* binding */ scorm12_constants; },
|
|
1201
|
+
/* harmony export */ scorm2004_constants: function() { return /* binding */ scorm2004_constants; }
|
|
1202
|
+
/* harmony export */ });
|
|
1181
1203
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1182
1204
|
|
|
1183
|
-
var
|
|
1205
|
+
var global_constants = {
|
|
1184
1206
|
SCORM_TRUE: "true",
|
|
1185
1207
|
SCORM_FALSE: "false",
|
|
1186
1208
|
STATE_NOT_INITIALIZED: 0,
|
|
1187
1209
|
STATE_INITIALIZED: 1,
|
|
1188
1210
|
STATE_TERMINATED: 2,
|
|
1189
1211
|
};
|
|
1190
|
-
var
|
|
1212
|
+
var scorm12_constants = {
|
|
1191
1213
|
cmi_children: "core,suspend_data,launch_data,comments,objectives,student_data,student_preference,interactions",
|
|
1192
1214
|
core_children: "student_id,student_name,lesson_location,credit,lesson_status,entry,score,total_time,lesson_mode,exit,session_time",
|
|
1193
1215
|
score_children: "raw,min,max",
|
|
@@ -1248,7 +1270,7 @@ var scorm12 = {
|
|
|
1248
1270
|
},
|
|
1249
1271
|
},
|
|
1250
1272
|
};
|
|
1251
|
-
var
|
|
1273
|
+
var aicc_constants = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, scorm12_constants), {
|
|
1252
1274
|
cmi_children: "core,suspend_data,launch_data,comments,objectives,student_data,student_preference,interactions,evaluation",
|
|
1253
1275
|
student_preference_children: "audio,language,lesson_type,speed,text,text_color,text_location,text_size,video,windows",
|
|
1254
1276
|
student_data_children: "attempt_number,tries,mastery_score,max_time_allowed,time_limit_action",
|
|
@@ -1257,7 +1279,7 @@ var aicc = (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__assign */ .Cl)((0,tslib__W
|
|
|
1257
1279
|
attempt_records_children: "score,lesson_status",
|
|
1258
1280
|
paths_children: "location_id,date,time,status,why_left,time_in_element",
|
|
1259
1281
|
});
|
|
1260
|
-
var
|
|
1282
|
+
var scorm2004_constants = {
|
|
1261
1283
|
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",
|
|
1262
1284
|
comments_children: "comment,timestamp,location",
|
|
1263
1285
|
score_children: "max,raw,scaled,min",
|
|
@@ -1266,6 +1288,7 @@ var scorm2004 = {
|
|
|
1266
1288
|
student_data_children: "mastery_score,max_time_allowed,time_limit_action",
|
|
1267
1289
|
student_preference_children: "audio_level,audio_captioning,delivery_speed,language",
|
|
1268
1290
|
interactions_children: "id,type,objectives,timestamp,correct_responses,weighting,learner_response,result,latency,description",
|
|
1291
|
+
adl_data_children: "id,store",
|
|
1269
1292
|
error_descriptions: {
|
|
1270
1293
|
"0": {
|
|
1271
1294
|
basicMessage: "No Error",
|
|
@@ -1373,13 +1396,6 @@ var scorm2004 = {
|
|
|
1373
1396
|
},
|
|
1374
1397
|
},
|
|
1375
1398
|
};
|
|
1376
|
-
var APIConstants = {
|
|
1377
|
-
global: global,
|
|
1378
|
-
scorm12: scorm12,
|
|
1379
|
-
aicc: aicc,
|
|
1380
|
-
scorm2004: scorm2004,
|
|
1381
|
-
};
|
|
1382
|
-
/* harmony default export */ __webpack_exports__.A = (APIConstants);
|
|
1383
1399
|
|
|
1384
1400
|
|
|
1385
1401
|
/***/ }),
|
|
@@ -1387,11 +1403,12 @@ var APIConstants = {
|
|
|
1387
1403
|
/***/ 56:
|
|
1388
1404
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1389
1405
|
|
|
1406
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1390
1407
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1391
|
-
/* harmony export */
|
|
1392
|
-
/* harmony export */
|
|
1393
|
-
/* harmony export */
|
|
1394
|
-
/* harmony export */
|
|
1408
|
+
/* harmony export */ CompletionStatus: function() { return /* binding */ CompletionStatus; },
|
|
1409
|
+
/* harmony export */ LogLevelEnum: function() { return /* binding */ LogLevelEnum; },
|
|
1410
|
+
/* harmony export */ NAVBoolean: function() { return /* binding */ NAVBoolean; },
|
|
1411
|
+
/* harmony export */ SuccessStatus: function() { return /* binding */ SuccessStatus; }
|
|
1395
1412
|
/* harmony export */ });
|
|
1396
1413
|
var NAVBoolean;
|
|
1397
1414
|
(function (NAVBoolean) {
|
|
@@ -1427,9 +1444,15 @@ var LogLevelEnum;
|
|
|
1427
1444
|
/***/ 797:
|
|
1428
1445
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1429
1446
|
|
|
1447
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1448
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1449
|
+
/* harmony export */ global_errors: function() { return /* binding */ global_errors; },
|
|
1450
|
+
/* harmony export */ scorm12_errors: function() { return /* binding */ scorm12_errors; },
|
|
1451
|
+
/* harmony export */ scorm2004_errors: function() { return /* binding */ scorm2004_errors; }
|
|
1452
|
+
/* harmony export */ });
|
|
1430
1453
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1431
1454
|
|
|
1432
|
-
var
|
|
1455
|
+
var global_errors = {
|
|
1433
1456
|
GENERAL: 101,
|
|
1434
1457
|
INITIALIZATION_FAILED: 101,
|
|
1435
1458
|
INITIALIZED: 101,
|
|
@@ -1459,13 +1482,8 @@ var global = {
|
|
|
1459
1482
|
VALUE_OUT_OF_RANGE: 101,
|
|
1460
1483
|
DEPENDENCY_NOT_ESTABLISHED: 101,
|
|
1461
1484
|
};
|
|
1462
|
-
var
|
|
1463
|
-
var
|
|
1464
|
-
var ErrorCodes = {
|
|
1465
|
-
scorm12: scorm12,
|
|
1466
|
-
scorm2004: scorm2004,
|
|
1467
|
-
};
|
|
1468
|
-
/* harmony default export */ __webpack_exports__.A = (ErrorCodes);
|
|
1485
|
+
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 });
|
|
1486
|
+
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 });
|
|
1469
1487
|
|
|
1470
1488
|
|
|
1471
1489
|
/***/ }),
|
|
@@ -1473,9 +1491,15 @@ var ErrorCodes = {
|
|
|
1473
1491
|
/***/ 417:
|
|
1474
1492
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1475
1493
|
|
|
1494
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1495
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1496
|
+
/* harmony export */ aicc_regex: function() { return /* binding */ aicc_regex; },
|
|
1497
|
+
/* harmony export */ scorm12_regex: function() { return /* binding */ scorm12_regex; },
|
|
1498
|
+
/* harmony export */ scorm2004_regex: function() { return /* binding */ scorm2004_regex; }
|
|
1499
|
+
/* harmony export */ });
|
|
1476
1500
|
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1477
1501
|
|
|
1478
|
-
var
|
|
1502
|
+
var scorm12_regex = {
|
|
1479
1503
|
CMIString256: "^.{0,255}$",
|
|
1480
1504
|
CMIString4096: "^.{0,4096}$",
|
|
1481
1505
|
CMITime: "^(?:[01]\\d|2[0123]):(?:[012345]\\d):(?:[012345]\\d)$",
|
|
@@ -1498,10 +1522,10 @@ var scorm12 = {
|
|
|
1498
1522
|
weighting_range: "-100#100",
|
|
1499
1523
|
text_range: "-1#1",
|
|
1500
1524
|
};
|
|
1501
|
-
var
|
|
1525
|
+
var aicc_regex = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)((0,tslib__WEBPACK_IMPORTED_MODULE_0__.__assign)({}, scorm12_regex), {
|
|
1502
1526
|
CMIIdentifier: "^\\w{1,255}$",
|
|
1503
1527
|
});
|
|
1504
|
-
var
|
|
1528
|
+
var scorm2004_regex = {
|
|
1505
1529
|
CMIString200: "^[\\u0000-\\uFFFF]{0,200}$",
|
|
1506
1530
|
CMIString250: "^[\\u0000-\\uFFFF]{0,250}$",
|
|
1507
1531
|
CMIString1000: "^[\\u0000-\\uFFFF]{0,1000}$",
|
|
@@ -1537,12 +1561,6 @@ var scorm2004 = {
|
|
|
1537
1561
|
text_range: "-1#1",
|
|
1538
1562
|
progress_range: "0#1",
|
|
1539
1563
|
};
|
|
1540
|
-
var Regex = {
|
|
1541
|
-
aicc: aicc,
|
|
1542
|
-
scorm12: scorm12,
|
|
1543
|
-
scorm2004: scorm2004,
|
|
1544
|
-
};
|
|
1545
|
-
/* harmony default export */ __webpack_exports__.A = (Regex);
|
|
1546
1564
|
|
|
1547
1565
|
|
|
1548
1566
|
/***/ }),
|
|
@@ -1550,21 +1568,15 @@ var Regex = {
|
|
|
1550
1568
|
/***/ 784:
|
|
1551
1569
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1552
1570
|
|
|
1571
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1553
1572
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1554
|
-
/* harmony export */
|
|
1555
|
-
/* harmony export */
|
|
1556
|
-
/* harmony export */ yI: function() { return /* binding */ ValidationError; }
|
|
1573
|
+
/* harmony export */ BaseScormValidationError: function() { return /* binding */ BaseScormValidationError; },
|
|
1574
|
+
/* harmony export */ ValidationError: function() { return /* binding */ ValidationError; }
|
|
1557
1575
|
/* harmony export */ });
|
|
1558
|
-
/*
|
|
1559
|
-
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(635);
|
|
1560
|
-
/* harmony import */ var _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(340);
|
|
1561
|
-
|
|
1576
|
+
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(635);
|
|
1562
1577
|
|
|
1563
|
-
var scorm12_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm12.error_descriptions;
|
|
1564
|
-
var aicc_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.aicc.error_descriptions;
|
|
1565
|
-
var scorm2004_errors = _constants_api_constants__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A.scorm2004.error_descriptions;
|
|
1566
1578
|
var BaseScormValidationError = (function (_super) {
|
|
1567
|
-
(0,
|
|
1579
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(BaseScormValidationError, _super);
|
|
1568
1580
|
function BaseScormValidationError(errorCode) {
|
|
1569
1581
|
var _this = _super.call(this, errorCode.toString()) || this;
|
|
1570
1582
|
_this._errorCode = errorCode;
|
|
@@ -1582,7 +1594,7 @@ var BaseScormValidationError = (function (_super) {
|
|
|
1582
1594
|
}(Error));
|
|
1583
1595
|
|
|
1584
1596
|
var ValidationError = (function (_super) {
|
|
1585
|
-
(0,
|
|
1597
|
+
(0,tslib__WEBPACK_IMPORTED_MODULE_0__.__extends)(ValidationError, _super);
|
|
1586
1598
|
function ValidationError(errorCode, errorMessage, detailedMessage) {
|
|
1587
1599
|
var _this = _super.call(this, errorCode) || this;
|
|
1588
1600
|
_this._detailedMessage = "";
|
|
@@ -1610,51 +1622,6 @@ var ValidationError = (function (_super) {
|
|
|
1610
1622
|
return ValidationError;
|
|
1611
1623
|
}(BaseScormValidationError));
|
|
1612
1624
|
|
|
1613
|
-
var Scorm12ValidationError = (function (_super) {
|
|
1614
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(Scorm12ValidationError, _super);
|
|
1615
|
-
function Scorm12ValidationError(errorCode) {
|
|
1616
|
-
var _this = this;
|
|
1617
|
-
if ({}.hasOwnProperty.call(scorm12_errors, String(errorCode))) {
|
|
1618
|
-
_this = _super.call(this, errorCode, scorm12_errors[String(errorCode)].basicMessage, scorm12_errors[String(errorCode)].detailMessage) || this;
|
|
1619
|
-
}
|
|
1620
|
-
else {
|
|
1621
|
-
_this = _super.call(this, 101, scorm12_errors["101"].basicMessage, scorm12_errors["101"].detailMessage) || this;
|
|
1622
|
-
}
|
|
1623
|
-
return _this;
|
|
1624
|
-
}
|
|
1625
|
-
return Scorm12ValidationError;
|
|
1626
|
-
}(ValidationError));
|
|
1627
|
-
|
|
1628
|
-
var AICCValidationError = (function (_super) {
|
|
1629
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(AICCValidationError, _super);
|
|
1630
|
-
function AICCValidationError(errorCode) {
|
|
1631
|
-
var _this = this;
|
|
1632
|
-
if ({}.hasOwnProperty.call(aicc_errors, String(errorCode))) {
|
|
1633
|
-
_this = _super.call(this, errorCode, aicc_errors[String(errorCode)].basicMessage, aicc_errors[String(errorCode)].detailMessage) || this;
|
|
1634
|
-
}
|
|
1635
|
-
else {
|
|
1636
|
-
_this = _super.call(this, 101, aicc_errors["101"].basicMessage, aicc_errors["101"].detailMessage) || this;
|
|
1637
|
-
}
|
|
1638
|
-
return _this;
|
|
1639
|
-
}
|
|
1640
|
-
return AICCValidationError;
|
|
1641
|
-
}(ValidationError));
|
|
1642
|
-
|
|
1643
|
-
var Scorm2004ValidationError = (function (_super) {
|
|
1644
|
-
(0,tslib__WEBPACK_IMPORTED_MODULE_1__/* .__extends */ .C6)(Scorm2004ValidationError, _super);
|
|
1645
|
-
function Scorm2004ValidationError(errorCode) {
|
|
1646
|
-
var _this = this;
|
|
1647
|
-
if ({}.hasOwnProperty.call(scorm2004_errors, String(errorCode))) {
|
|
1648
|
-
_this = _super.call(this, errorCode, scorm2004_errors[String(errorCode)].basicMessage, scorm2004_errors[String(errorCode)].detailMessage) || this;
|
|
1649
|
-
}
|
|
1650
|
-
else {
|
|
1651
|
-
_this = _super.call(this, 101, scorm2004_errors["101"].basicMessage, scorm2004_errors["101"].detailMessage) || this;
|
|
1652
|
-
}
|
|
1653
|
-
return _this;
|
|
1654
|
-
}
|
|
1655
|
-
return Scorm2004ValidationError;
|
|
1656
|
-
}(ValidationError));
|
|
1657
|
-
|
|
1658
1625
|
|
|
1659
1626
|
|
|
1660
1627
|
/***/ }),
|
|
@@ -1662,16 +1629,24 @@ var Scorm2004ValidationError = (function (_super) {
|
|
|
1662
1629
|
/***/ 864:
|
|
1663
1630
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
1664
1631
|
|
|
1632
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1665
1633
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1666
|
-
/* harmony export */
|
|
1667
|
-
/* harmony export */
|
|
1668
|
-
/* harmony export */
|
|
1669
|
-
/* harmony export */
|
|
1670
|
-
/* harmony export */
|
|
1671
|
-
/* harmony export */
|
|
1672
|
-
/* harmony export */
|
|
1634
|
+
/* harmony export */ SECONDS_PER_DAY: function() { return /* binding */ SECONDS_PER_DAY; },
|
|
1635
|
+
/* harmony export */ SECONDS_PER_HOUR: function() { return /* binding */ SECONDS_PER_HOUR; },
|
|
1636
|
+
/* harmony export */ SECONDS_PER_MINUTE: function() { return /* binding */ SECONDS_PER_MINUTE; },
|
|
1637
|
+
/* harmony export */ SECONDS_PER_SECOND: function() { return /* binding */ SECONDS_PER_SECOND; },
|
|
1638
|
+
/* harmony export */ addHHMMSSTimeStrings: function() { return /* binding */ addHHMMSSTimeStrings; },
|
|
1639
|
+
/* harmony export */ addTwoDurations: function() { return /* binding */ addTwoDurations; },
|
|
1640
|
+
/* harmony export */ countDecimals: function() { return /* binding */ countDecimals; },
|
|
1641
|
+
/* harmony export */ flatten: function() { return /* binding */ flatten; },
|
|
1642
|
+
/* harmony export */ formatMessage: function() { return /* binding */ formatMessage; },
|
|
1643
|
+
/* harmony export */ getDurationAsSeconds: function() { return /* binding */ getDurationAsSeconds; },
|
|
1644
|
+
/* harmony export */ getSecondsAsHHMMSS: function() { return /* binding */ getSecondsAsHHMMSS; },
|
|
1645
|
+
/* harmony export */ getSecondsAsISODuration: function() { return /* binding */ getSecondsAsISODuration; },
|
|
1646
|
+
/* harmony export */ getTimeAsSeconds: function() { return /* binding */ getTimeAsSeconds; },
|
|
1647
|
+
/* harmony export */ stringMatches: function() { return /* binding */ stringMatches; },
|
|
1648
|
+
/* harmony export */ unflatten: function() { return /* binding */ unflatten; }
|
|
1673
1649
|
/* harmony export */ });
|
|
1674
|
-
/* unused harmony exports SECONDS_PER_SECOND, SECONDS_PER_MINUTE, SECONDS_PER_HOUR, SECONDS_PER_DAY, getSecondsAsHHMMSS, getTimeAsSeconds, addHHMMSSTimeStrings, countDecimals */
|
|
1675
1650
|
var SECONDS_PER_SECOND = 1.0;
|
|
1676
1651
|
var SECONDS_PER_MINUTE = 60;
|
|
1677
1652
|
var SECONDS_PER_HOUR = 60 * SECONDS_PER_MINUTE;
|
|
@@ -1863,13 +1838,40 @@ function stringMatches(str, tester) {
|
|
|
1863
1838
|
/***/ 635:
|
|
1864
1839
|
/***/ (function(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
1865
1840
|
|
|
1841
|
+
__webpack_require__.r(__webpack_exports__);
|
|
1866
1842
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
1867
|
-
/* harmony export */
|
|
1868
|
-
/* harmony export */
|
|
1869
|
-
/* harmony export */
|
|
1870
|
-
/* harmony export */
|
|
1843
|
+
/* harmony export */ __addDisposableResource: function() { return /* binding */ __addDisposableResource; },
|
|
1844
|
+
/* harmony export */ __assign: function() { return /* binding */ __assign; },
|
|
1845
|
+
/* harmony export */ __asyncDelegator: function() { return /* binding */ __asyncDelegator; },
|
|
1846
|
+
/* harmony export */ __asyncGenerator: function() { return /* binding */ __asyncGenerator; },
|
|
1847
|
+
/* harmony export */ __asyncValues: function() { return /* binding */ __asyncValues; },
|
|
1848
|
+
/* harmony export */ __await: function() { return /* binding */ __await; },
|
|
1849
|
+
/* harmony export */ __awaiter: function() { return /* binding */ __awaiter; },
|
|
1850
|
+
/* harmony export */ __classPrivateFieldGet: function() { return /* binding */ __classPrivateFieldGet; },
|
|
1851
|
+
/* harmony export */ __classPrivateFieldIn: function() { return /* binding */ __classPrivateFieldIn; },
|
|
1852
|
+
/* harmony export */ __classPrivateFieldSet: function() { return /* binding */ __classPrivateFieldSet; },
|
|
1853
|
+
/* harmony export */ __createBinding: function() { return /* binding */ __createBinding; },
|
|
1854
|
+
/* harmony export */ __decorate: function() { return /* binding */ __decorate; },
|
|
1855
|
+
/* harmony export */ __disposeResources: function() { return /* binding */ __disposeResources; },
|
|
1856
|
+
/* harmony export */ __esDecorate: function() { return /* binding */ __esDecorate; },
|
|
1857
|
+
/* harmony export */ __exportStar: function() { return /* binding */ __exportStar; },
|
|
1858
|
+
/* harmony export */ __extends: function() { return /* binding */ __extends; },
|
|
1859
|
+
/* harmony export */ __generator: function() { return /* binding */ __generator; },
|
|
1860
|
+
/* harmony export */ __importDefault: function() { return /* binding */ __importDefault; },
|
|
1861
|
+
/* harmony export */ __importStar: function() { return /* binding */ __importStar; },
|
|
1862
|
+
/* harmony export */ __makeTemplateObject: function() { return /* binding */ __makeTemplateObject; },
|
|
1863
|
+
/* harmony export */ __metadata: function() { return /* binding */ __metadata; },
|
|
1864
|
+
/* harmony export */ __param: function() { return /* binding */ __param; },
|
|
1865
|
+
/* harmony export */ __propKey: function() { return /* binding */ __propKey; },
|
|
1866
|
+
/* harmony export */ __read: function() { return /* binding */ __read; },
|
|
1867
|
+
/* harmony export */ __rest: function() { return /* binding */ __rest; },
|
|
1868
|
+
/* harmony export */ __runInitializers: function() { return /* binding */ __runInitializers; },
|
|
1869
|
+
/* harmony export */ __setFunctionName: function() { return /* binding */ __setFunctionName; },
|
|
1870
|
+
/* harmony export */ __spread: function() { return /* binding */ __spread; },
|
|
1871
|
+
/* harmony export */ __spreadArray: function() { return /* binding */ __spreadArray; },
|
|
1872
|
+
/* harmony export */ __spreadArrays: function() { return /* binding */ __spreadArrays; },
|
|
1873
|
+
/* harmony export */ __values: function() { return /* binding */ __values; }
|
|
1871
1874
|
/* harmony export */ });
|
|
1872
|
-
/* 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 */
|
|
1873
1875
|
/******************************************************************************
|
|
1874
1876
|
Copyright (c) Microsoft Corporation.
|
|
1875
1877
|
|
|
@@ -2219,7 +2221,7 @@ function __disposeResources(env) {
|
|
|
2219
2221
|
return next();
|
|
2220
2222
|
}
|
|
2221
2223
|
|
|
2222
|
-
/*
|
|
2224
|
+
/* harmony default export */ __webpack_exports__["default"] = ({
|
|
2223
2225
|
__extends,
|
|
2224
2226
|
__assign,
|
|
2225
2227
|
__rest,
|
|
@@ -2329,6 +2331,27 @@ var regex = __webpack_require__(417);
|
|
|
2329
2331
|
var error_codes = __webpack_require__(797);
|
|
2330
2332
|
// EXTERNAL MODULE: ./src/exceptions.ts
|
|
2331
2333
|
var exceptions = __webpack_require__(784);
|
|
2334
|
+
;// ./src/exceptions/scorm2004_exceptions.ts
|
|
2335
|
+
|
|
2336
|
+
|
|
2337
|
+
|
|
2338
|
+
var scorm2004_errors = api_constants.scorm2004_constants.error_descriptions;
|
|
2339
|
+
var Scorm2004ValidationError = (function (_super) {
|
|
2340
|
+
(0,tslib_es6.__extends)(Scorm2004ValidationError, _super);
|
|
2341
|
+
function Scorm2004ValidationError(errorCode) {
|
|
2342
|
+
var _this = this;
|
|
2343
|
+
if ({}.hasOwnProperty.call(scorm2004_errors, String(errorCode))) {
|
|
2344
|
+
_this = _super.call(this, errorCode, scorm2004_errors[String(errorCode)].basicMessage, scorm2004_errors[String(errorCode)].detailMessage) || this;
|
|
2345
|
+
}
|
|
2346
|
+
else {
|
|
2347
|
+
_this = _super.call(this, 101, scorm2004_errors["101"].basicMessage, scorm2004_errors["101"].detailMessage) || this;
|
|
2348
|
+
}
|
|
2349
|
+
return _this;
|
|
2350
|
+
}
|
|
2351
|
+
return Scorm2004ValidationError;
|
|
2352
|
+
}(exceptions.ValidationError));
|
|
2353
|
+
|
|
2354
|
+
|
|
2332
2355
|
// EXTERNAL MODULE: ./src/utilities.ts
|
|
2333
2356
|
var utilities = __webpack_require__(864);
|
|
2334
2357
|
// EXTERNAL MODULE: ./src/cmi/common/base_cmi.ts
|
|
@@ -2340,10 +2363,10 @@ var validation = __webpack_require__(449);
|
|
|
2340
2363
|
|
|
2341
2364
|
|
|
2342
2365
|
function check2004ValidFormat(value, regexPattern, allowEmptyString) {
|
|
2343
|
-
return (0,validation
|
|
2366
|
+
return (0,validation.checkValidFormat)(value, regexPattern, error_codes.scorm2004_errors.TYPE_MISMATCH, Scorm2004ValidationError, allowEmptyString);
|
|
2344
2367
|
}
|
|
2345
2368
|
function check2004ValidRange(value, rangePattern) {
|
|
2346
|
-
return (0,validation
|
|
2369
|
+
return (0,validation.checkValidRange)(value, rangePattern, error_codes.scorm2004_errors.VALUE_OUT_OF_RANGE, Scorm2004ValidationError);
|
|
2347
2370
|
}
|
|
2348
2371
|
|
|
2349
2372
|
;// ./src/cmi/scorm2004/learner_preference.ts
|
|
@@ -2355,22 +2378,25 @@ function check2004ValidRange(value, rangePattern) {
|
|
|
2355
2378
|
|
|
2356
2379
|
|
|
2357
2380
|
var CMILearnerPreference = (function (_super) {
|
|
2358
|
-
(0,tslib_es6
|
|
2381
|
+
(0,tslib_es6.__extends)(CMILearnerPreference, _super);
|
|
2359
2382
|
function CMILearnerPreference() {
|
|
2360
2383
|
var _this = _super.call(this) || this;
|
|
2361
|
-
_this.__children = api_constants
|
|
2384
|
+
_this.__children = api_constants.scorm2004_constants.student_preference_children;
|
|
2362
2385
|
_this._audio_level = "1";
|
|
2363
2386
|
_this._language = "";
|
|
2364
2387
|
_this._delivery_speed = "1";
|
|
2365
2388
|
_this._audio_captioning = "0";
|
|
2366
2389
|
return _this;
|
|
2367
2390
|
}
|
|
2391
|
+
CMILearnerPreference.prototype.reset = function () {
|
|
2392
|
+
this._initialized = false;
|
|
2393
|
+
};
|
|
2368
2394
|
Object.defineProperty(CMILearnerPreference.prototype, "_children", {
|
|
2369
2395
|
get: function () {
|
|
2370
2396
|
return this.__children;
|
|
2371
2397
|
},
|
|
2372
2398
|
set: function (_children) {
|
|
2373
|
-
throw new
|
|
2399
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
2374
2400
|
},
|
|
2375
2401
|
enumerable: false,
|
|
2376
2402
|
configurable: true
|
|
@@ -2380,8 +2406,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2380
2406
|
return this._audio_level;
|
|
2381
2407
|
},
|
|
2382
2408
|
set: function (audio_level) {
|
|
2383
|
-
if (check2004ValidFormat(audio_level, regex
|
|
2384
|
-
check2004ValidRange(audio_level, regex
|
|
2409
|
+
if (check2004ValidFormat(audio_level, regex.scorm2004_regex.CMIDecimal) &&
|
|
2410
|
+
check2004ValidRange(audio_level, regex.scorm2004_regex.audio_range)) {
|
|
2385
2411
|
this._audio_level = audio_level;
|
|
2386
2412
|
}
|
|
2387
2413
|
},
|
|
@@ -2393,7 +2419,7 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2393
2419
|
return this._language;
|
|
2394
2420
|
},
|
|
2395
2421
|
set: function (language) {
|
|
2396
|
-
if (check2004ValidFormat(language, regex
|
|
2422
|
+
if (check2004ValidFormat(language, regex.scorm2004_regex.CMILang)) {
|
|
2397
2423
|
this._language = language;
|
|
2398
2424
|
}
|
|
2399
2425
|
},
|
|
@@ -2405,8 +2431,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2405
2431
|
return this._delivery_speed;
|
|
2406
2432
|
},
|
|
2407
2433
|
set: function (delivery_speed) {
|
|
2408
|
-
if (check2004ValidFormat(delivery_speed, regex
|
|
2409
|
-
check2004ValidRange(delivery_speed, regex
|
|
2434
|
+
if (check2004ValidFormat(delivery_speed, regex.scorm2004_regex.CMIDecimal) &&
|
|
2435
|
+
check2004ValidRange(delivery_speed, regex.scorm2004_regex.speed_range)) {
|
|
2410
2436
|
this._delivery_speed = delivery_speed;
|
|
2411
2437
|
}
|
|
2412
2438
|
},
|
|
@@ -2418,8 +2444,8 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2418
2444
|
return this._audio_captioning;
|
|
2419
2445
|
},
|
|
2420
2446
|
set: function (audio_captioning) {
|
|
2421
|
-
if (check2004ValidFormat(audio_captioning, regex
|
|
2422
|
-
check2004ValidRange(audio_captioning, regex
|
|
2447
|
+
if (check2004ValidFormat(audio_captioning, regex.scorm2004_regex.CMISInteger) &&
|
|
2448
|
+
check2004ValidRange(audio_captioning, regex.scorm2004_regex.text_range)) {
|
|
2423
2449
|
this._audio_captioning = audio_captioning;
|
|
2424
2450
|
}
|
|
2425
2451
|
},
|
|
@@ -2438,14 +2464,13 @@ var CMILearnerPreference = (function (_super) {
|
|
|
2438
2464
|
return result;
|
|
2439
2465
|
};
|
|
2440
2466
|
return CMILearnerPreference;
|
|
2441
|
-
}(base_cmi
|
|
2467
|
+
}(base_cmi.BaseCMI));
|
|
2442
2468
|
|
|
2443
2469
|
|
|
2444
2470
|
// EXTERNAL MODULE: ./src/cmi/common/array.ts
|
|
2445
2471
|
var array = __webpack_require__(589);
|
|
2446
2472
|
;// ./src/constants/response_constants.ts
|
|
2447
2473
|
|
|
2448
|
-
var scorm2004_regex = regex/* default */.A.scorm2004;
|
|
2449
2474
|
var LearnerResponses = {
|
|
2450
2475
|
"true-false": {
|
|
2451
2476
|
format: "^true$|^false$",
|
|
@@ -2454,59 +2479,59 @@ var LearnerResponses = {
|
|
|
2454
2479
|
unique: false,
|
|
2455
2480
|
},
|
|
2456
2481
|
choice: {
|
|
2457
|
-
format: scorm2004_regex.CMILongIdentifier,
|
|
2482
|
+
format: regex.scorm2004_regex.CMILongIdentifier,
|
|
2458
2483
|
max: 36,
|
|
2459
2484
|
delimiter: "[,]",
|
|
2460
2485
|
unique: true,
|
|
2461
2486
|
},
|
|
2462
2487
|
"fill-in": {
|
|
2463
|
-
format: scorm2004_regex.CMILangString250,
|
|
2488
|
+
format: regex.scorm2004_regex.CMILangString250,
|
|
2464
2489
|
max: 10,
|
|
2465
2490
|
delimiter: "[,]",
|
|
2466
2491
|
unique: false,
|
|
2467
2492
|
},
|
|
2468
2493
|
"long-fill-in": {
|
|
2469
|
-
format: scorm2004_regex.CMILangString4000,
|
|
2494
|
+
format: regex.scorm2004_regex.CMILangString4000,
|
|
2470
2495
|
max: 1,
|
|
2471
2496
|
delimiter: "",
|
|
2472
2497
|
unique: false,
|
|
2473
2498
|
},
|
|
2474
2499
|
matching: {
|
|
2475
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2476
|
-
format2: scorm2004_regex.CMIShortIdentifier,
|
|
2500
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2501
|
+
format2: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2477
2502
|
max: 36,
|
|
2478
2503
|
delimiter: "[,]",
|
|
2479
2504
|
delimiter2: "[.]",
|
|
2480
2505
|
unique: false,
|
|
2481
2506
|
},
|
|
2482
2507
|
performance: {
|
|
2483
|
-
format: "^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2484
|
-
format2: scorm2004_regex.CMIDecimal + "|^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2508
|
+
format: "^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2509
|
+
format2: regex.scorm2004_regex.CMIDecimal + "|^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2485
2510
|
max: 250,
|
|
2486
2511
|
delimiter: "[,]",
|
|
2487
2512
|
delimiter2: "[.]",
|
|
2488
2513
|
unique: false,
|
|
2489
2514
|
},
|
|
2490
2515
|
sequencing: {
|
|
2491
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2516
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2492
2517
|
max: 36,
|
|
2493
2518
|
delimiter: "[,]",
|
|
2494
2519
|
unique: false,
|
|
2495
2520
|
},
|
|
2496
2521
|
likert: {
|
|
2497
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2522
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2498
2523
|
max: 1,
|
|
2499
2524
|
delimiter: "",
|
|
2500
2525
|
unique: false,
|
|
2501
2526
|
},
|
|
2502
2527
|
numeric: {
|
|
2503
|
-
format: scorm2004_regex.CMIDecimal,
|
|
2528
|
+
format: regex.scorm2004_regex.CMIDecimal,
|
|
2504
2529
|
max: 1,
|
|
2505
2530
|
delimiter: "",
|
|
2506
2531
|
unique: false,
|
|
2507
2532
|
},
|
|
2508
2533
|
other: {
|
|
2509
|
-
format: scorm2004_regex.CMIString4000,
|
|
2534
|
+
format: regex.scorm2004_regex.CMIString4000,
|
|
2510
2535
|
max: 1,
|
|
2511
2536
|
delimiter: "",
|
|
2512
2537
|
unique: false,
|
|
@@ -2526,21 +2551,21 @@ var CorrectResponses = {
|
|
|
2526
2551
|
delimiter: "[,]",
|
|
2527
2552
|
unique: true,
|
|
2528
2553
|
duplicate: false,
|
|
2529
|
-
format: scorm2004_regex.CMILongIdentifier,
|
|
2554
|
+
format: regex.scorm2004_regex.CMILongIdentifier,
|
|
2530
2555
|
},
|
|
2531
2556
|
"fill-in": {
|
|
2532
2557
|
max: 10,
|
|
2533
2558
|
delimiter: "[,]",
|
|
2534
2559
|
unique: false,
|
|
2535
2560
|
duplicate: false,
|
|
2536
|
-
format: scorm2004_regex.CMILangString250cr,
|
|
2561
|
+
format: regex.scorm2004_regex.CMILangString250cr,
|
|
2537
2562
|
},
|
|
2538
2563
|
"long-fill-in": {
|
|
2539
2564
|
max: 1,
|
|
2540
2565
|
delimiter: "",
|
|
2541
2566
|
unique: false,
|
|
2542
2567
|
duplicate: true,
|
|
2543
|
-
format: scorm2004_regex.CMILangString4000,
|
|
2568
|
+
format: regex.scorm2004_regex.CMILangString4000,
|
|
2544
2569
|
},
|
|
2545
2570
|
matching: {
|
|
2546
2571
|
max: 36,
|
|
@@ -2548,8 +2573,8 @@ var CorrectResponses = {
|
|
|
2548
2573
|
delimiter2: "[.]",
|
|
2549
2574
|
unique: false,
|
|
2550
2575
|
duplicate: false,
|
|
2551
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2552
|
-
format2: scorm2004_regex.CMIShortIdentifier,
|
|
2576
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2577
|
+
format2: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2553
2578
|
},
|
|
2554
2579
|
performance: {
|
|
2555
2580
|
max: 250,
|
|
@@ -2558,22 +2583,22 @@ var CorrectResponses = {
|
|
|
2558
2583
|
delimiter3: "[:]",
|
|
2559
2584
|
unique: false,
|
|
2560
2585
|
duplicate: false,
|
|
2561
|
-
format: "^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2562
|
-
format2: scorm2004_regex.CMIDecimal + "|^$|" + scorm2004_regex.CMIShortIdentifier,
|
|
2586
|
+
format: "^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2587
|
+
format2: regex.scorm2004_regex.CMIDecimal + "|^$|" + regex.scorm2004_regex.CMIShortIdentifier,
|
|
2563
2588
|
},
|
|
2564
2589
|
sequencing: {
|
|
2565
2590
|
max: 36,
|
|
2566
2591
|
delimiter: "[,]",
|
|
2567
2592
|
unique: false,
|
|
2568
2593
|
duplicate: false,
|
|
2569
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2594
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2570
2595
|
},
|
|
2571
2596
|
likert: {
|
|
2572
2597
|
max: 1,
|
|
2573
2598
|
delimiter: "",
|
|
2574
2599
|
unique: false,
|
|
2575
2600
|
duplicate: false,
|
|
2576
|
-
format: scorm2004_regex.CMIShortIdentifier,
|
|
2601
|
+
format: regex.scorm2004_regex.CMIShortIdentifier,
|
|
2577
2602
|
limit: 1,
|
|
2578
2603
|
},
|
|
2579
2604
|
numeric: {
|
|
@@ -2581,7 +2606,7 @@ var CorrectResponses = {
|
|
|
2581
2606
|
delimiter: "[:]",
|
|
2582
2607
|
unique: false,
|
|
2583
2608
|
duplicate: false,
|
|
2584
|
-
format: scorm2004_regex.CMIDecimal,
|
|
2609
|
+
format: regex.scorm2004_regex.CMIDecimal,
|
|
2585
2610
|
limit: 1,
|
|
2586
2611
|
},
|
|
2587
2612
|
other: {
|
|
@@ -2589,7 +2614,7 @@ var CorrectResponses = {
|
|
|
2589
2614
|
delimiter: "",
|
|
2590
2615
|
unique: false,
|
|
2591
2616
|
duplicate: false,
|
|
2592
|
-
format: scorm2004_regex.CMIString4000,
|
|
2617
|
+
format: regex.scorm2004_regex.CMIString4000,
|
|
2593
2618
|
limit: 1,
|
|
2594
2619
|
},
|
|
2595
2620
|
};
|
|
@@ -2605,19 +2630,19 @@ var CorrectResponses = {
|
|
|
2605
2630
|
|
|
2606
2631
|
|
|
2607
2632
|
var CMIInteractions = (function (_super) {
|
|
2608
|
-
(0,tslib_es6
|
|
2633
|
+
(0,tslib_es6.__extends)(CMIInteractions, _super);
|
|
2609
2634
|
function CMIInteractions() {
|
|
2610
2635
|
return _super.call(this, {
|
|
2611
|
-
children: api_constants
|
|
2612
|
-
errorCode: error_codes
|
|
2613
|
-
errorClass:
|
|
2636
|
+
children: api_constants.scorm2004_constants.interactions_children,
|
|
2637
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2638
|
+
errorClass: Scorm2004ValidationError,
|
|
2614
2639
|
}) || this;
|
|
2615
2640
|
}
|
|
2616
2641
|
return CMIInteractions;
|
|
2617
|
-
}(array
|
|
2642
|
+
}(array.CMIArray));
|
|
2618
2643
|
|
|
2619
2644
|
var CMIInteractionsObject = (function (_super) {
|
|
2620
|
-
(0,tslib_es6
|
|
2645
|
+
(0,tslib_es6.__extends)(CMIInteractionsObject, _super);
|
|
2621
2646
|
function CMIInteractionsObject() {
|
|
2622
2647
|
var _this = _super.call(this) || this;
|
|
2623
2648
|
_this._id = "";
|
|
@@ -2628,15 +2653,15 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2628
2653
|
_this._result = "";
|
|
2629
2654
|
_this._latency = "";
|
|
2630
2655
|
_this._description = "";
|
|
2631
|
-
_this.objectives = new array
|
|
2632
|
-
errorCode: error_codes
|
|
2633
|
-
errorClass:
|
|
2634
|
-
children: api_constants
|
|
2656
|
+
_this.objectives = new array.CMIArray({
|
|
2657
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2658
|
+
errorClass: Scorm2004ValidationError,
|
|
2659
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
2635
2660
|
});
|
|
2636
|
-
_this.correct_responses = new array
|
|
2637
|
-
errorCode: error_codes
|
|
2638
|
-
errorClass:
|
|
2639
|
-
children: api_constants
|
|
2661
|
+
_this.correct_responses = new array.CMIArray({
|
|
2662
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2663
|
+
errorClass: Scorm2004ValidationError,
|
|
2664
|
+
children: api_constants.scorm2004_constants.correct_responses_children,
|
|
2640
2665
|
});
|
|
2641
2666
|
return _this;
|
|
2642
2667
|
}
|
|
@@ -2646,12 +2671,33 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2646
2671
|
(_a = this.objectives) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
2647
2672
|
(_b = this.correct_responses) === null || _b === void 0 ? void 0 : _b.initialize();
|
|
2648
2673
|
};
|
|
2674
|
+
CMIInteractionsObject.prototype.reset = function () {
|
|
2675
|
+
this._initialized = false;
|
|
2676
|
+
this._id = "";
|
|
2677
|
+
this._type = "";
|
|
2678
|
+
this._timestamp = "";
|
|
2679
|
+
this._weighting = "";
|
|
2680
|
+
this._learner_response = "";
|
|
2681
|
+
this._result = "";
|
|
2682
|
+
this._latency = "";
|
|
2683
|
+
this._description = "";
|
|
2684
|
+
this.objectives = new array.CMIArray({
|
|
2685
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2686
|
+
errorClass: Scorm2004ValidationError,
|
|
2687
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
2688
|
+
});
|
|
2689
|
+
this.correct_responses = new array.CMIArray({
|
|
2690
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2691
|
+
errorClass: Scorm2004ValidationError,
|
|
2692
|
+
children: api_constants.scorm2004_constants.correct_responses_children,
|
|
2693
|
+
});
|
|
2694
|
+
};
|
|
2649
2695
|
Object.defineProperty(CMIInteractionsObject.prototype, "id", {
|
|
2650
2696
|
get: function () {
|
|
2651
2697
|
return this._id;
|
|
2652
2698
|
},
|
|
2653
2699
|
set: function (id) {
|
|
2654
|
-
if (check2004ValidFormat(id, regex
|
|
2700
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
2655
2701
|
this._id = id;
|
|
2656
2702
|
}
|
|
2657
2703
|
},
|
|
@@ -2664,10 +2710,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2664
2710
|
},
|
|
2665
2711
|
set: function (type) {
|
|
2666
2712
|
if (this.initialized && this._id === "") {
|
|
2667
|
-
throw new
|
|
2713
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2668
2714
|
}
|
|
2669
2715
|
else {
|
|
2670
|
-
if (check2004ValidFormat(type, regex
|
|
2716
|
+
if (check2004ValidFormat(type, regex.scorm2004_regex.CMIType)) {
|
|
2671
2717
|
this._type = type;
|
|
2672
2718
|
}
|
|
2673
2719
|
}
|
|
@@ -2681,10 +2727,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2681
2727
|
},
|
|
2682
2728
|
set: function (timestamp) {
|
|
2683
2729
|
if (this.initialized && this._id === "") {
|
|
2684
|
-
throw new
|
|
2730
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2685
2731
|
}
|
|
2686
2732
|
else {
|
|
2687
|
-
if (check2004ValidFormat(timestamp, regex
|
|
2733
|
+
if (check2004ValidFormat(timestamp, regex.scorm2004_regex.CMITime)) {
|
|
2688
2734
|
this._timestamp = timestamp;
|
|
2689
2735
|
}
|
|
2690
2736
|
}
|
|
@@ -2698,10 +2744,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2698
2744
|
},
|
|
2699
2745
|
set: function (weighting) {
|
|
2700
2746
|
if (this.initialized && this._id === "") {
|
|
2701
|
-
throw new
|
|
2747
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2702
2748
|
}
|
|
2703
2749
|
else {
|
|
2704
|
-
if (check2004ValidFormat(weighting, regex
|
|
2750
|
+
if (check2004ValidFormat(weighting, regex.scorm2004_regex.CMIDecimal)) {
|
|
2705
2751
|
this._weighting = weighting;
|
|
2706
2752
|
}
|
|
2707
2753
|
}
|
|
@@ -2715,7 +2761,7 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2715
2761
|
},
|
|
2716
2762
|
set: function (learner_response) {
|
|
2717
2763
|
if (this.initialized && (this._type === "" || this._id === "")) {
|
|
2718
|
-
throw new
|
|
2764
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2719
2765
|
}
|
|
2720
2766
|
else {
|
|
2721
2767
|
var nodes = [];
|
|
@@ -2734,28 +2780,28 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2734
2780
|
var values = nodes[i].split(response_type.delimiter2);
|
|
2735
2781
|
if (values.length === 2) {
|
|
2736
2782
|
if (!values[0].match(formatRegex)) {
|
|
2737
|
-
throw new
|
|
2783
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2738
2784
|
}
|
|
2739
2785
|
else {
|
|
2740
2786
|
if (!response_type.format2 ||
|
|
2741
2787
|
!values[1].match(new RegExp(response_type.format2))) {
|
|
2742
|
-
throw new
|
|
2788
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2743
2789
|
}
|
|
2744
2790
|
}
|
|
2745
2791
|
}
|
|
2746
2792
|
else {
|
|
2747
|
-
throw new
|
|
2793
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2748
2794
|
}
|
|
2749
2795
|
}
|
|
2750
2796
|
else {
|
|
2751
2797
|
if (!nodes[i].match(formatRegex)) {
|
|
2752
|
-
throw new
|
|
2798
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2753
2799
|
}
|
|
2754
2800
|
else {
|
|
2755
2801
|
if (nodes[i] !== "" && response_type.unique) {
|
|
2756
2802
|
for (var j = 0; j < i; j++) {
|
|
2757
2803
|
if (nodes[i] === nodes[j]) {
|
|
2758
|
-
throw new
|
|
2804
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2759
2805
|
}
|
|
2760
2806
|
}
|
|
2761
2807
|
}
|
|
@@ -2764,12 +2810,12 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2764
2810
|
}
|
|
2765
2811
|
}
|
|
2766
2812
|
else {
|
|
2767
|
-
throw new
|
|
2813
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE);
|
|
2768
2814
|
}
|
|
2769
2815
|
this._learner_response = learner_response;
|
|
2770
2816
|
}
|
|
2771
2817
|
else {
|
|
2772
|
-
throw new
|
|
2818
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
2773
2819
|
}
|
|
2774
2820
|
}
|
|
2775
2821
|
},
|
|
@@ -2781,7 +2827,7 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2781
2827
|
return this._result;
|
|
2782
2828
|
},
|
|
2783
2829
|
set: function (result) {
|
|
2784
|
-
if (check2004ValidFormat(result, regex
|
|
2830
|
+
if (check2004ValidFormat(result, regex.scorm2004_regex.CMIResult)) {
|
|
2785
2831
|
this._result = result;
|
|
2786
2832
|
}
|
|
2787
2833
|
},
|
|
@@ -2794,10 +2840,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2794
2840
|
},
|
|
2795
2841
|
set: function (latency) {
|
|
2796
2842
|
if (this.initialized && this._id === "") {
|
|
2797
|
-
throw new
|
|
2843
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2798
2844
|
}
|
|
2799
2845
|
else {
|
|
2800
|
-
if (check2004ValidFormat(latency, regex
|
|
2846
|
+
if (check2004ValidFormat(latency, regex.scorm2004_regex.CMITimespan)) {
|
|
2801
2847
|
this._latency = latency;
|
|
2802
2848
|
}
|
|
2803
2849
|
}
|
|
@@ -2811,10 +2857,10 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2811
2857
|
},
|
|
2812
2858
|
set: function (description) {
|
|
2813
2859
|
if (this.initialized && this._id === "") {
|
|
2814
|
-
throw new
|
|
2860
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
2815
2861
|
}
|
|
2816
2862
|
else {
|
|
2817
|
-
if (check2004ValidFormat(description, regex
|
|
2863
|
+
if (check2004ValidFormat(description, regex.scorm2004_regex.CMILangString250, true)) {
|
|
2818
2864
|
this._description = description;
|
|
2819
2865
|
}
|
|
2820
2866
|
}
|
|
@@ -2840,21 +2886,25 @@ var CMIInteractionsObject = (function (_super) {
|
|
|
2840
2886
|
return result;
|
|
2841
2887
|
};
|
|
2842
2888
|
return CMIInteractionsObject;
|
|
2843
|
-
}(base_cmi
|
|
2889
|
+
}(base_cmi.BaseCMI));
|
|
2844
2890
|
|
|
2845
2891
|
var CMIInteractionsObjectivesObject = (function (_super) {
|
|
2846
|
-
(0,tslib_es6
|
|
2892
|
+
(0,tslib_es6.__extends)(CMIInteractionsObjectivesObject, _super);
|
|
2847
2893
|
function CMIInteractionsObjectivesObject() {
|
|
2848
2894
|
var _this = _super.call(this) || this;
|
|
2849
2895
|
_this._id = "";
|
|
2850
2896
|
return _this;
|
|
2851
2897
|
}
|
|
2898
|
+
CMIInteractionsObjectivesObject.prototype.reset = function () {
|
|
2899
|
+
this._initialized = false;
|
|
2900
|
+
this._id = "";
|
|
2901
|
+
};
|
|
2852
2902
|
Object.defineProperty(CMIInteractionsObjectivesObject.prototype, "id", {
|
|
2853
2903
|
get: function () {
|
|
2854
2904
|
return this._id;
|
|
2855
2905
|
},
|
|
2856
2906
|
set: function (id) {
|
|
2857
|
-
if (check2004ValidFormat(id, regex
|
|
2907
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
2858
2908
|
this._id = id;
|
|
2859
2909
|
}
|
|
2860
2910
|
},
|
|
@@ -2870,21 +2920,25 @@ var CMIInteractionsObjectivesObject = (function (_super) {
|
|
|
2870
2920
|
return result;
|
|
2871
2921
|
};
|
|
2872
2922
|
return CMIInteractionsObjectivesObject;
|
|
2873
|
-
}(base_cmi
|
|
2923
|
+
}(base_cmi.BaseCMI));
|
|
2874
2924
|
|
|
2875
2925
|
var CMIInteractionsCorrectResponsesObject = (function (_super) {
|
|
2876
|
-
(0,tslib_es6
|
|
2926
|
+
(0,tslib_es6.__extends)(CMIInteractionsCorrectResponsesObject, _super);
|
|
2877
2927
|
function CMIInteractionsCorrectResponsesObject() {
|
|
2878
2928
|
var _this = _super.call(this) || this;
|
|
2879
2929
|
_this._pattern = "";
|
|
2880
2930
|
return _this;
|
|
2881
2931
|
}
|
|
2932
|
+
CMIInteractionsCorrectResponsesObject.prototype.reset = function () {
|
|
2933
|
+
this._initialized = false;
|
|
2934
|
+
this._pattern = "";
|
|
2935
|
+
};
|
|
2882
2936
|
Object.defineProperty(CMIInteractionsCorrectResponsesObject.prototype, "pattern", {
|
|
2883
2937
|
get: function () {
|
|
2884
2938
|
return this._pattern;
|
|
2885
2939
|
},
|
|
2886
2940
|
set: function (pattern) {
|
|
2887
|
-
if (check2004ValidFormat(pattern, regex
|
|
2941
|
+
if (check2004ValidFormat(pattern, regex.scorm2004_regex.CMIFeedback)) {
|
|
2888
2942
|
this._pattern = pattern;
|
|
2889
2943
|
}
|
|
2890
2944
|
},
|
|
@@ -2900,7 +2954,7 @@ var CMIInteractionsCorrectResponsesObject = (function (_super) {
|
|
|
2900
2954
|
return result;
|
|
2901
2955
|
};
|
|
2902
2956
|
return CMIInteractionsCorrectResponsesObject;
|
|
2903
|
-
}(base_cmi
|
|
2957
|
+
}(base_cmi.BaseCMI));
|
|
2904
2958
|
|
|
2905
2959
|
|
|
2906
2960
|
// EXTERNAL MODULE: ./src/cmi/common/score.ts
|
|
@@ -2914,27 +2968,34 @@ var score = __webpack_require__(434);
|
|
|
2914
2968
|
|
|
2915
2969
|
|
|
2916
2970
|
var Scorm2004CMIScore = (function (_super) {
|
|
2917
|
-
(0,tslib_es6
|
|
2971
|
+
(0,tslib_es6.__extends)(Scorm2004CMIScore, _super);
|
|
2918
2972
|
function Scorm2004CMIScore() {
|
|
2919
2973
|
var _this = _super.call(this, {
|
|
2920
|
-
score_children: api_constants
|
|
2974
|
+
score_children: api_constants.scorm2004_constants.score_children,
|
|
2921
2975
|
max: "",
|
|
2922
|
-
invalidErrorCode: error_codes
|
|
2923
|
-
invalidTypeCode: error_codes
|
|
2924
|
-
invalidRangeCode: error_codes
|
|
2925
|
-
decimalRegex: regex
|
|
2926
|
-
errorClass:
|
|
2976
|
+
invalidErrorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
2977
|
+
invalidTypeCode: error_codes.scorm2004_errors.TYPE_MISMATCH,
|
|
2978
|
+
invalidRangeCode: error_codes.scorm2004_errors.VALUE_OUT_OF_RANGE,
|
|
2979
|
+
decimalRegex: regex.scorm2004_regex.CMIDecimal,
|
|
2980
|
+
errorClass: Scorm2004ValidationError,
|
|
2927
2981
|
}) || this;
|
|
2928
2982
|
_this._scaled = "";
|
|
2929
2983
|
return _this;
|
|
2930
2984
|
}
|
|
2985
|
+
Scorm2004CMIScore.prototype.reset = function () {
|
|
2986
|
+
this._initialized = false;
|
|
2987
|
+
this._scaled = "";
|
|
2988
|
+
this._raw = "";
|
|
2989
|
+
this._min = "";
|
|
2990
|
+
this._max = "";
|
|
2991
|
+
};
|
|
2931
2992
|
Object.defineProperty(Scorm2004CMIScore.prototype, "scaled", {
|
|
2932
2993
|
get: function () {
|
|
2933
2994
|
return this._scaled;
|
|
2934
2995
|
},
|
|
2935
2996
|
set: function (scaled) {
|
|
2936
|
-
if (check2004ValidFormat(scaled, regex
|
|
2937
|
-
check2004ValidRange(scaled, regex
|
|
2997
|
+
if (check2004ValidFormat(scaled, regex.scorm2004_regex.CMIDecimal) &&
|
|
2998
|
+
check2004ValidRange(scaled, regex.scorm2004_regex.scaled_range)) {
|
|
2938
2999
|
this._scaled = scaled;
|
|
2939
3000
|
}
|
|
2940
3001
|
},
|
|
@@ -2953,7 +3014,7 @@ var Scorm2004CMIScore = (function (_super) {
|
|
|
2953
3014
|
return result;
|
|
2954
3015
|
};
|
|
2955
3016
|
return Scorm2004CMIScore;
|
|
2956
|
-
}(score
|
|
3017
|
+
}(score.CMIScore));
|
|
2957
3018
|
|
|
2958
3019
|
|
|
2959
3020
|
;// ./src/cmi/scorm2004/comments.ts
|
|
@@ -2966,31 +3027,31 @@ var Scorm2004CMIScore = (function (_super) {
|
|
|
2966
3027
|
|
|
2967
3028
|
|
|
2968
3029
|
var CMICommentsFromLMS = (function (_super) {
|
|
2969
|
-
(0,tslib_es6
|
|
3030
|
+
(0,tslib_es6.__extends)(CMICommentsFromLMS, _super);
|
|
2970
3031
|
function CMICommentsFromLMS() {
|
|
2971
3032
|
return _super.call(this, {
|
|
2972
|
-
children: api_constants
|
|
2973
|
-
errorCode: error_codes
|
|
2974
|
-
errorClass:
|
|
3033
|
+
children: api_constants.scorm2004_constants.comments_children,
|
|
3034
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3035
|
+
errorClass: Scorm2004ValidationError,
|
|
2975
3036
|
}) || this;
|
|
2976
3037
|
}
|
|
2977
3038
|
return CMICommentsFromLMS;
|
|
2978
|
-
}(array
|
|
3039
|
+
}(array.CMIArray));
|
|
2979
3040
|
|
|
2980
3041
|
var CMICommentsFromLearner = (function (_super) {
|
|
2981
|
-
(0,tslib_es6
|
|
3042
|
+
(0,tslib_es6.__extends)(CMICommentsFromLearner, _super);
|
|
2982
3043
|
function CMICommentsFromLearner() {
|
|
2983
3044
|
return _super.call(this, {
|
|
2984
|
-
children: api_constants
|
|
2985
|
-
errorCode: error_codes
|
|
2986
|
-
errorClass:
|
|
3045
|
+
children: api_constants.scorm2004_constants.comments_children,
|
|
3046
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3047
|
+
errorClass: Scorm2004ValidationError,
|
|
2987
3048
|
}) || this;
|
|
2988
3049
|
}
|
|
2989
3050
|
return CMICommentsFromLearner;
|
|
2990
|
-
}(array
|
|
3051
|
+
}(array.CMIArray));
|
|
2991
3052
|
|
|
2992
3053
|
var CMICommentsObject = (function (_super) {
|
|
2993
|
-
(0,tslib_es6
|
|
3054
|
+
(0,tslib_es6.__extends)(CMICommentsObject, _super);
|
|
2994
3055
|
function CMICommentsObject(readOnlyAfterInit) {
|
|
2995
3056
|
if (readOnlyAfterInit === void 0) { readOnlyAfterInit = false; }
|
|
2996
3057
|
var _this = _super.call(this) || this;
|
|
@@ -3003,16 +3064,19 @@ var CMICommentsObject = (function (_super) {
|
|
|
3003
3064
|
_this._readOnlyAfterInit = readOnlyAfterInit;
|
|
3004
3065
|
return _this;
|
|
3005
3066
|
}
|
|
3067
|
+
CMICommentsObject.prototype.reset = function () {
|
|
3068
|
+
this._initialized = false;
|
|
3069
|
+
};
|
|
3006
3070
|
Object.defineProperty(CMICommentsObject.prototype, "comment", {
|
|
3007
3071
|
get: function () {
|
|
3008
3072
|
return this._comment;
|
|
3009
3073
|
},
|
|
3010
3074
|
set: function (comment) {
|
|
3011
3075
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
3012
|
-
throw new
|
|
3076
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3013
3077
|
}
|
|
3014
3078
|
else {
|
|
3015
|
-
if (check2004ValidFormat(comment, regex
|
|
3079
|
+
if (check2004ValidFormat(comment, regex.scorm2004_regex.CMILangString4000, true)) {
|
|
3016
3080
|
this._comment = comment;
|
|
3017
3081
|
}
|
|
3018
3082
|
}
|
|
@@ -3026,10 +3090,10 @@ var CMICommentsObject = (function (_super) {
|
|
|
3026
3090
|
},
|
|
3027
3091
|
set: function (location) {
|
|
3028
3092
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
3029
|
-
throw new
|
|
3093
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3030
3094
|
}
|
|
3031
3095
|
else {
|
|
3032
|
-
if (check2004ValidFormat(location, regex
|
|
3096
|
+
if (check2004ValidFormat(location, regex.scorm2004_regex.CMIString250)) {
|
|
3033
3097
|
this._location = location;
|
|
3034
3098
|
}
|
|
3035
3099
|
}
|
|
@@ -3043,10 +3107,10 @@ var CMICommentsObject = (function (_super) {
|
|
|
3043
3107
|
},
|
|
3044
3108
|
set: function (timestamp) {
|
|
3045
3109
|
if (this.initialized && this._readOnlyAfterInit) {
|
|
3046
|
-
throw new
|
|
3110
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3047
3111
|
}
|
|
3048
3112
|
else {
|
|
3049
|
-
if (check2004ValidFormat(timestamp, regex
|
|
3113
|
+
if (check2004ValidFormat(timestamp, regex.scorm2004_regex.CMITime)) {
|
|
3050
3114
|
this._timestamp = timestamp;
|
|
3051
3115
|
}
|
|
3052
3116
|
}
|
|
@@ -3065,7 +3129,7 @@ var CMICommentsObject = (function (_super) {
|
|
|
3065
3129
|
return result;
|
|
3066
3130
|
};
|
|
3067
3131
|
return CMICommentsObject;
|
|
3068
|
-
}(base_cmi
|
|
3132
|
+
}(base_cmi.BaseCMI));
|
|
3069
3133
|
|
|
3070
3134
|
|
|
3071
3135
|
;// ./src/cmi/scorm2004/objectives.ts
|
|
@@ -3079,19 +3143,28 @@ var CMICommentsObject = (function (_super) {
|
|
|
3079
3143
|
|
|
3080
3144
|
|
|
3081
3145
|
var CMIObjectives = (function (_super) {
|
|
3082
|
-
(0,tslib_es6
|
|
3146
|
+
(0,tslib_es6.__extends)(CMIObjectives, _super);
|
|
3083
3147
|
function CMIObjectives() {
|
|
3084
3148
|
return _super.call(this, {
|
|
3085
|
-
children: api_constants
|
|
3086
|
-
errorCode: error_codes
|
|
3087
|
-
errorClass:
|
|
3149
|
+
children: api_constants.scorm2004_constants.objectives_children,
|
|
3150
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
3151
|
+
errorClass: Scorm2004ValidationError,
|
|
3088
3152
|
}) || this;
|
|
3089
3153
|
}
|
|
3154
|
+
CMIObjectives.prototype.findObjectiveById = function (id) {
|
|
3155
|
+
return this.childArray.find(function (objective) { return objective.id === id; });
|
|
3156
|
+
};
|
|
3157
|
+
CMIObjectives.prototype.findObjectiveByIndex = function (index) {
|
|
3158
|
+
return this.childArray[index];
|
|
3159
|
+
};
|
|
3160
|
+
CMIObjectives.prototype.setObjectiveByIndex = function (index, objective) {
|
|
3161
|
+
this.childArray[index] = objective;
|
|
3162
|
+
};
|
|
3090
3163
|
return CMIObjectives;
|
|
3091
|
-
}(array
|
|
3164
|
+
}(array.CMIArray));
|
|
3092
3165
|
|
|
3093
3166
|
var CMIObjectivesObject = (function (_super) {
|
|
3094
|
-
(0,tslib_es6
|
|
3167
|
+
(0,tslib_es6.__extends)(CMIObjectivesObject, _super);
|
|
3095
3168
|
function CMIObjectivesObject() {
|
|
3096
3169
|
var _this = _super.call(this) || this;
|
|
3097
3170
|
_this._id = "";
|
|
@@ -3102,6 +3175,9 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3102
3175
|
_this.score = new Scorm2004CMIScore();
|
|
3103
3176
|
return _this;
|
|
3104
3177
|
}
|
|
3178
|
+
CMIObjectivesObject.prototype.reset = function () {
|
|
3179
|
+
this._initialized = false;
|
|
3180
|
+
};
|
|
3105
3181
|
CMIObjectivesObject.prototype.initialize = function () {
|
|
3106
3182
|
var _a;
|
|
3107
3183
|
_super.prototype.initialize.call(this);
|
|
@@ -3112,7 +3188,7 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3112
3188
|
return this._id;
|
|
3113
3189
|
},
|
|
3114
3190
|
set: function (id) {
|
|
3115
|
-
if (check2004ValidFormat(id, regex
|
|
3191
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
3116
3192
|
this._id = id;
|
|
3117
3193
|
}
|
|
3118
3194
|
},
|
|
@@ -3125,10 +3201,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3125
3201
|
},
|
|
3126
3202
|
set: function (success_status) {
|
|
3127
3203
|
if (this.initialized && this._id === "") {
|
|
3128
|
-
throw new
|
|
3204
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3129
3205
|
}
|
|
3130
3206
|
else {
|
|
3131
|
-
if (check2004ValidFormat(success_status, regex
|
|
3207
|
+
if (check2004ValidFormat(success_status, regex.scorm2004_regex.CMISStatus)) {
|
|
3132
3208
|
this._success_status = success_status;
|
|
3133
3209
|
}
|
|
3134
3210
|
}
|
|
@@ -3142,10 +3218,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3142
3218
|
},
|
|
3143
3219
|
set: function (completion_status) {
|
|
3144
3220
|
if (this.initialized && this._id === "") {
|
|
3145
|
-
throw new
|
|
3221
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3146
3222
|
}
|
|
3147
3223
|
else {
|
|
3148
|
-
if (check2004ValidFormat(completion_status, regex
|
|
3224
|
+
if (check2004ValidFormat(completion_status, regex.scorm2004_regex.CMICStatus)) {
|
|
3149
3225
|
this._completion_status = completion_status;
|
|
3150
3226
|
}
|
|
3151
3227
|
}
|
|
@@ -3159,11 +3235,11 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3159
3235
|
},
|
|
3160
3236
|
set: function (progress_measure) {
|
|
3161
3237
|
if (this.initialized && this._id === "") {
|
|
3162
|
-
throw new
|
|
3238
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3163
3239
|
}
|
|
3164
3240
|
else {
|
|
3165
|
-
if (check2004ValidFormat(progress_measure, regex
|
|
3166
|
-
check2004ValidRange(progress_measure, regex
|
|
3241
|
+
if (check2004ValidFormat(progress_measure, regex.scorm2004_regex.CMIDecimal) &&
|
|
3242
|
+
check2004ValidRange(progress_measure, regex.scorm2004_regex.progress_range)) {
|
|
3167
3243
|
this._progress_measure = progress_measure;
|
|
3168
3244
|
}
|
|
3169
3245
|
}
|
|
@@ -3177,10 +3253,10 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3177
3253
|
},
|
|
3178
3254
|
set: function (description) {
|
|
3179
3255
|
if (this.initialized && this._id === "") {
|
|
3180
|
-
throw new
|
|
3256
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
3181
3257
|
}
|
|
3182
3258
|
else {
|
|
3183
|
-
if (check2004ValidFormat(description, regex
|
|
3259
|
+
if (check2004ValidFormat(description, regex.scorm2004_regex.CMILangString250, true)) {
|
|
3184
3260
|
this._description = description;
|
|
3185
3261
|
}
|
|
3186
3262
|
}
|
|
@@ -3202,7 +3278,7 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3202
3278
|
return result;
|
|
3203
3279
|
};
|
|
3204
3280
|
return CMIObjectivesObject;
|
|
3205
|
-
}(base_cmi
|
|
3281
|
+
}(base_cmi.BaseCMI));
|
|
3206
3282
|
|
|
3207
3283
|
|
|
3208
3284
|
;// ./src/cmi/scorm2004/cmi.ts
|
|
@@ -3220,12 +3296,12 @@ var CMIObjectivesObject = (function (_super) {
|
|
|
3220
3296
|
|
|
3221
3297
|
|
|
3222
3298
|
var CMI = (function (_super) {
|
|
3223
|
-
(0,tslib_es6
|
|
3299
|
+
(0,tslib_es6.__extends)(CMI, _super);
|
|
3224
3300
|
function CMI(initialized) {
|
|
3225
3301
|
if (initialized === void 0) { initialized = false; }
|
|
3226
3302
|
var _this = _super.call(this) || this;
|
|
3227
3303
|
_this.__version = "1.0";
|
|
3228
|
-
_this.__children = api_constants
|
|
3304
|
+
_this.__children = api_constants.scorm2004_constants.cmi_children;
|
|
3229
3305
|
_this._completion_status = "unknown";
|
|
3230
3306
|
_this._completion_threshold = "";
|
|
3231
3307
|
_this._credit = "credit";
|
|
@@ -3264,12 +3340,27 @@ var CMI = (function (_super) {
|
|
|
3264
3340
|
(_e = this.interactions) === null || _e === void 0 ? void 0 : _e.initialize();
|
|
3265
3341
|
(_f = this.objectives) === null || _f === void 0 ? void 0 : _f.initialize();
|
|
3266
3342
|
};
|
|
3343
|
+
CMI.prototype.reset = function () {
|
|
3344
|
+
var _a, _b, _c, _d, _e, _f;
|
|
3345
|
+
this._initialized = false;
|
|
3346
|
+
this._completion_status = "incomplete";
|
|
3347
|
+
this._exit = "";
|
|
3348
|
+
this._session_time = "PT0H0M0S";
|
|
3349
|
+
this._progress_measure = "";
|
|
3350
|
+
this._location = "";
|
|
3351
|
+
(_a = this.objectives) === null || _a === void 0 ? void 0 : _a.reset(false);
|
|
3352
|
+
(_b = this.interactions) === null || _b === void 0 ? void 0 : _b.reset(true);
|
|
3353
|
+
(_c = this.score) === null || _c === void 0 ? void 0 : _c.reset();
|
|
3354
|
+
(_d = this.comments_from_learner) === null || _d === void 0 ? void 0 : _d.reset();
|
|
3355
|
+
(_e = this.comments_from_lms) === null || _e === void 0 ? void 0 : _e.reset();
|
|
3356
|
+
(_f = this.learner_preference) === null || _f === void 0 ? void 0 : _f.reset();
|
|
3357
|
+
};
|
|
3267
3358
|
Object.defineProperty(CMI.prototype, "_version", {
|
|
3268
3359
|
get: function () {
|
|
3269
3360
|
return this.__version;
|
|
3270
3361
|
},
|
|
3271
3362
|
set: function (_version) {
|
|
3272
|
-
throw new
|
|
3363
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3273
3364
|
},
|
|
3274
3365
|
enumerable: false,
|
|
3275
3366
|
configurable: true
|
|
@@ -3279,7 +3370,7 @@ var CMI = (function (_super) {
|
|
|
3279
3370
|
return this.__children;
|
|
3280
3371
|
},
|
|
3281
3372
|
set: function (_children) {
|
|
3282
|
-
throw new
|
|
3373
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3283
3374
|
},
|
|
3284
3375
|
enumerable: false,
|
|
3285
3376
|
configurable: true
|
|
@@ -3289,7 +3380,7 @@ var CMI = (function (_super) {
|
|
|
3289
3380
|
return this._completion_status;
|
|
3290
3381
|
},
|
|
3291
3382
|
set: function (completion_status) {
|
|
3292
|
-
if (check2004ValidFormat(completion_status, regex
|
|
3383
|
+
if (check2004ValidFormat(completion_status, regex.scorm2004_regex.CMICStatus)) {
|
|
3293
3384
|
this._completion_status = completion_status;
|
|
3294
3385
|
}
|
|
3295
3386
|
},
|
|
@@ -3302,7 +3393,7 @@ var CMI = (function (_super) {
|
|
|
3302
3393
|
},
|
|
3303
3394
|
set: function (completion_threshold) {
|
|
3304
3395
|
if (this.initialized) {
|
|
3305
|
-
throw new
|
|
3396
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3306
3397
|
}
|
|
3307
3398
|
else {
|
|
3308
3399
|
this._completion_threshold = completion_threshold;
|
|
@@ -3317,7 +3408,7 @@ var CMI = (function (_super) {
|
|
|
3317
3408
|
},
|
|
3318
3409
|
set: function (credit) {
|
|
3319
3410
|
if (this.initialized) {
|
|
3320
|
-
throw new
|
|
3411
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3321
3412
|
}
|
|
3322
3413
|
else {
|
|
3323
3414
|
this._credit = credit;
|
|
@@ -3332,7 +3423,7 @@ var CMI = (function (_super) {
|
|
|
3332
3423
|
},
|
|
3333
3424
|
set: function (entry) {
|
|
3334
3425
|
if (this.initialized) {
|
|
3335
|
-
throw new
|
|
3426
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3336
3427
|
}
|
|
3337
3428
|
else {
|
|
3338
3429
|
this._entry = entry;
|
|
@@ -3344,12 +3435,12 @@ var CMI = (function (_super) {
|
|
|
3344
3435
|
Object.defineProperty(CMI.prototype, "exit", {
|
|
3345
3436
|
get: function () {
|
|
3346
3437
|
if (!this.jsonString) {
|
|
3347
|
-
throw new
|
|
3438
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.WRITE_ONLY_ELEMENT);
|
|
3348
3439
|
}
|
|
3349
3440
|
return this._exit;
|
|
3350
3441
|
},
|
|
3351
3442
|
set: function (exit) {
|
|
3352
|
-
if (check2004ValidFormat(exit, regex
|
|
3443
|
+
if (check2004ValidFormat(exit, regex.scorm2004_regex.CMIExit, true)) {
|
|
3353
3444
|
this._exit = exit;
|
|
3354
3445
|
}
|
|
3355
3446
|
},
|
|
@@ -3362,7 +3453,7 @@ var CMI = (function (_super) {
|
|
|
3362
3453
|
},
|
|
3363
3454
|
set: function (launch_data) {
|
|
3364
3455
|
if (this.initialized) {
|
|
3365
|
-
throw new
|
|
3456
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3366
3457
|
}
|
|
3367
3458
|
else {
|
|
3368
3459
|
this._launch_data = launch_data;
|
|
@@ -3377,7 +3468,7 @@ var CMI = (function (_super) {
|
|
|
3377
3468
|
},
|
|
3378
3469
|
set: function (learner_id) {
|
|
3379
3470
|
if (this.initialized) {
|
|
3380
|
-
throw new
|
|
3471
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3381
3472
|
}
|
|
3382
3473
|
else {
|
|
3383
3474
|
this._learner_id = learner_id;
|
|
@@ -3392,7 +3483,7 @@ var CMI = (function (_super) {
|
|
|
3392
3483
|
},
|
|
3393
3484
|
set: function (learner_name) {
|
|
3394
3485
|
if (this.initialized) {
|
|
3395
|
-
throw new
|
|
3486
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3396
3487
|
}
|
|
3397
3488
|
else {
|
|
3398
3489
|
this._learner_name = learner_name;
|
|
@@ -3406,7 +3497,7 @@ var CMI = (function (_super) {
|
|
|
3406
3497
|
return this._location;
|
|
3407
3498
|
},
|
|
3408
3499
|
set: function (location) {
|
|
3409
|
-
if (check2004ValidFormat(location, regex
|
|
3500
|
+
if (check2004ValidFormat(location, regex.scorm2004_regex.CMIString1000)) {
|
|
3410
3501
|
this._location = location;
|
|
3411
3502
|
}
|
|
3412
3503
|
},
|
|
@@ -3419,7 +3510,7 @@ var CMI = (function (_super) {
|
|
|
3419
3510
|
},
|
|
3420
3511
|
set: function (max_time_allowed) {
|
|
3421
3512
|
if (this.initialized) {
|
|
3422
|
-
throw new
|
|
3513
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3423
3514
|
}
|
|
3424
3515
|
else {
|
|
3425
3516
|
this._max_time_allowed = max_time_allowed;
|
|
@@ -3434,7 +3525,7 @@ var CMI = (function (_super) {
|
|
|
3434
3525
|
},
|
|
3435
3526
|
set: function (mode) {
|
|
3436
3527
|
if (this.initialized) {
|
|
3437
|
-
throw new
|
|
3528
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3438
3529
|
}
|
|
3439
3530
|
else {
|
|
3440
3531
|
this._mode = mode;
|
|
@@ -3448,8 +3539,8 @@ var CMI = (function (_super) {
|
|
|
3448
3539
|
return this._progress_measure;
|
|
3449
3540
|
},
|
|
3450
3541
|
set: function (progress_measure) {
|
|
3451
|
-
if (check2004ValidFormat(progress_measure, regex
|
|
3452
|
-
check2004ValidRange(progress_measure, regex
|
|
3542
|
+
if (check2004ValidFormat(progress_measure, regex.scorm2004_regex.CMIDecimal) &&
|
|
3543
|
+
check2004ValidRange(progress_measure, regex.scorm2004_regex.progress_range)) {
|
|
3453
3544
|
this._progress_measure = progress_measure;
|
|
3454
3545
|
}
|
|
3455
3546
|
},
|
|
@@ -3462,7 +3553,7 @@ var CMI = (function (_super) {
|
|
|
3462
3553
|
},
|
|
3463
3554
|
set: function (scaled_passing_score) {
|
|
3464
3555
|
if (this.initialized) {
|
|
3465
|
-
throw new
|
|
3556
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3466
3557
|
}
|
|
3467
3558
|
else {
|
|
3468
3559
|
this._scaled_passing_score = scaled_passing_score;
|
|
@@ -3474,12 +3565,12 @@ var CMI = (function (_super) {
|
|
|
3474
3565
|
Object.defineProperty(CMI.prototype, "session_time", {
|
|
3475
3566
|
get: function () {
|
|
3476
3567
|
if (!this.jsonString) {
|
|
3477
|
-
throw new
|
|
3568
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.WRITE_ONLY_ELEMENT);
|
|
3478
3569
|
}
|
|
3479
3570
|
return this._session_time;
|
|
3480
3571
|
},
|
|
3481
3572
|
set: function (session_time) {
|
|
3482
|
-
if (check2004ValidFormat(session_time, regex
|
|
3573
|
+
if (check2004ValidFormat(session_time, regex.scorm2004_regex.CMITimespan)) {
|
|
3483
3574
|
this._session_time = session_time;
|
|
3484
3575
|
}
|
|
3485
3576
|
},
|
|
@@ -3491,7 +3582,7 @@ var CMI = (function (_super) {
|
|
|
3491
3582
|
return this._success_status;
|
|
3492
3583
|
},
|
|
3493
3584
|
set: function (success_status) {
|
|
3494
|
-
if (check2004ValidFormat(success_status, regex
|
|
3585
|
+
if (check2004ValidFormat(success_status, regex.scorm2004_regex.CMISStatus)) {
|
|
3495
3586
|
this._success_status = success_status;
|
|
3496
3587
|
}
|
|
3497
3588
|
},
|
|
@@ -3503,7 +3594,7 @@ var CMI = (function (_super) {
|
|
|
3503
3594
|
return this._suspend_data;
|
|
3504
3595
|
},
|
|
3505
3596
|
set: function (suspend_data) {
|
|
3506
|
-
if (check2004ValidFormat(suspend_data, regex
|
|
3597
|
+
if (check2004ValidFormat(suspend_data, regex.scorm2004_regex.CMIString64000, true)) {
|
|
3507
3598
|
this._suspend_data = suspend_data;
|
|
3508
3599
|
}
|
|
3509
3600
|
},
|
|
@@ -3516,7 +3607,7 @@ var CMI = (function (_super) {
|
|
|
3516
3607
|
},
|
|
3517
3608
|
set: function (time_limit_action) {
|
|
3518
3609
|
if (this.initialized) {
|
|
3519
|
-
throw new
|
|
3610
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3520
3611
|
}
|
|
3521
3612
|
else {
|
|
3522
3613
|
this._time_limit_action = time_limit_action;
|
|
@@ -3531,7 +3622,7 @@ var CMI = (function (_super) {
|
|
|
3531
3622
|
},
|
|
3532
3623
|
set: function (total_time) {
|
|
3533
3624
|
if (this.initialized) {
|
|
3534
|
-
throw new
|
|
3625
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
3535
3626
|
}
|
|
3536
3627
|
else {
|
|
3537
3628
|
this._total_time = total_time;
|
|
@@ -3545,9 +3636,9 @@ var CMI = (function (_super) {
|
|
|
3545
3636
|
var startTime = this.start_time;
|
|
3546
3637
|
if (typeof startTime !== "undefined" && startTime !== null) {
|
|
3547
3638
|
var seconds = new Date().getTime() - startTime;
|
|
3548
|
-
sessionTime = utilities
|
|
3639
|
+
sessionTime = utilities.getSecondsAsISODuration(seconds / 1000);
|
|
3549
3640
|
}
|
|
3550
|
-
return utilities
|
|
3641
|
+
return utilities.addTwoDurations(this._total_time, sessionTime, regex.scorm2004_regex.CMITimespan);
|
|
3551
3642
|
};
|
|
3552
3643
|
CMI.prototype.toJSON = function () {
|
|
3553
3644
|
this.jsonString = true;
|
|
@@ -3580,7 +3671,7 @@ var CMI = (function (_super) {
|
|
|
3580
3671
|
return result;
|
|
3581
3672
|
};
|
|
3582
3673
|
return CMI;
|
|
3583
|
-
}(base_cmi
|
|
3674
|
+
}(base_cmi.BaseRootCMI));
|
|
3584
3675
|
|
|
3585
3676
|
|
|
3586
3677
|
;// ./src/constants/language_constants.ts
|
|
@@ -3989,11 +4080,15 @@ var enums = __webpack_require__(56);
|
|
|
3989
4080
|
|
|
3990
4081
|
|
|
3991
4082
|
|
|
4083
|
+
|
|
4084
|
+
|
|
3992
4085
|
var ADL = (function (_super) {
|
|
3993
|
-
(0,tslib_es6
|
|
4086
|
+
(0,tslib_es6.__extends)(ADL, _super);
|
|
3994
4087
|
function ADL() {
|
|
3995
4088
|
var _this = _super.call(this) || this;
|
|
4089
|
+
_this.data = new ADLData();
|
|
3996
4090
|
_this.nav = new ADLNav();
|
|
4091
|
+
_this.data = new ADLData();
|
|
3997
4092
|
return _this;
|
|
3998
4093
|
}
|
|
3999
4094
|
ADL.prototype.initialize = function () {
|
|
@@ -4001,19 +4096,25 @@ var ADL = (function (_super) {
|
|
|
4001
4096
|
_super.prototype.initialize.call(this);
|
|
4002
4097
|
(_a = this.nav) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
4003
4098
|
};
|
|
4099
|
+
ADL.prototype.reset = function () {
|
|
4100
|
+
var _a;
|
|
4101
|
+
this._initialized = false;
|
|
4102
|
+
(_a = this.nav) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4103
|
+
};
|
|
4004
4104
|
ADL.prototype.toJSON = function () {
|
|
4005
4105
|
this.jsonString = true;
|
|
4006
4106
|
var result = {
|
|
4007
4107
|
nav: this.nav,
|
|
4108
|
+
data: this.data,
|
|
4008
4109
|
};
|
|
4009
4110
|
delete this.jsonString;
|
|
4010
4111
|
return result;
|
|
4011
4112
|
};
|
|
4012
4113
|
return ADL;
|
|
4013
|
-
}(base_cmi
|
|
4114
|
+
}(base_cmi.BaseCMI));
|
|
4014
4115
|
|
|
4015
4116
|
var ADLNav = (function (_super) {
|
|
4016
|
-
(0,tslib_es6
|
|
4117
|
+
(0,tslib_es6.__extends)(ADLNav, _super);
|
|
4017
4118
|
function ADLNav() {
|
|
4018
4119
|
var _this = _super.call(this) || this;
|
|
4019
4120
|
_this._request = "_none_";
|
|
@@ -4025,12 +4126,18 @@ var ADLNav = (function (_super) {
|
|
|
4025
4126
|
_super.prototype.initialize.call(this);
|
|
4026
4127
|
(_a = this.request_valid) === null || _a === void 0 ? void 0 : _a.initialize();
|
|
4027
4128
|
};
|
|
4129
|
+
ADLNav.prototype.reset = function () {
|
|
4130
|
+
var _a;
|
|
4131
|
+
this._initialized = false;
|
|
4132
|
+
this._request = "_none_";
|
|
4133
|
+
(_a = this.request_valid) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4134
|
+
};
|
|
4028
4135
|
Object.defineProperty(ADLNav.prototype, "request", {
|
|
4029
4136
|
get: function () {
|
|
4030
4137
|
return this._request;
|
|
4031
4138
|
},
|
|
4032
4139
|
set: function (request) {
|
|
4033
|
-
if (check2004ValidFormat(request, regex
|
|
4140
|
+
if (check2004ValidFormat(request, regex.scorm2004_regex.NAVEvent)) {
|
|
4034
4141
|
this._request = request;
|
|
4035
4142
|
}
|
|
4036
4143
|
},
|
|
@@ -4046,10 +4153,69 @@ var ADLNav = (function (_super) {
|
|
|
4046
4153
|
return result;
|
|
4047
4154
|
};
|
|
4048
4155
|
return ADLNav;
|
|
4049
|
-
}(base_cmi
|
|
4156
|
+
}(base_cmi.BaseCMI));
|
|
4157
|
+
|
|
4158
|
+
var ADLData = (function (_super) {
|
|
4159
|
+
(0,tslib_es6.__extends)(ADLData, _super);
|
|
4160
|
+
function ADLData() {
|
|
4161
|
+
return _super.call(this, {
|
|
4162
|
+
children: api_constants.scorm2004_constants.adl_data_children,
|
|
4163
|
+
errorCode: error_codes.scorm2004_errors.READ_ONLY_ELEMENT,
|
|
4164
|
+
errorClass: Scorm2004ValidationError,
|
|
4165
|
+
}) || this;
|
|
4166
|
+
}
|
|
4167
|
+
return ADLData;
|
|
4168
|
+
}(array.CMIArray));
|
|
4169
|
+
|
|
4170
|
+
var ADLDataObject = (function (_super) {
|
|
4171
|
+
(0,tslib_es6.__extends)(ADLDataObject, _super);
|
|
4172
|
+
function ADLDataObject() {
|
|
4173
|
+
var _this = _super.call(this) || this;
|
|
4174
|
+
_this._id = "";
|
|
4175
|
+
_this._store = "";
|
|
4176
|
+
return _this;
|
|
4177
|
+
}
|
|
4178
|
+
ADLDataObject.prototype.reset = function () {
|
|
4179
|
+
this._initialized = false;
|
|
4180
|
+
};
|
|
4181
|
+
Object.defineProperty(ADLDataObject.prototype, "id", {
|
|
4182
|
+
get: function () {
|
|
4183
|
+
return this._id;
|
|
4184
|
+
},
|
|
4185
|
+
set: function (id) {
|
|
4186
|
+
if (check2004ValidFormat(id, regex.scorm2004_regex.CMILongIdentifier)) {
|
|
4187
|
+
this._id = id;
|
|
4188
|
+
}
|
|
4189
|
+
},
|
|
4190
|
+
enumerable: false,
|
|
4191
|
+
configurable: true
|
|
4192
|
+
});
|
|
4193
|
+
Object.defineProperty(ADLDataObject.prototype, "store", {
|
|
4194
|
+
get: function () {
|
|
4195
|
+
return this._store;
|
|
4196
|
+
},
|
|
4197
|
+
set: function (store) {
|
|
4198
|
+
if (check2004ValidFormat(store, regex.scorm2004_regex.CMILangString4000)) {
|
|
4199
|
+
this._store = store;
|
|
4200
|
+
}
|
|
4201
|
+
},
|
|
4202
|
+
enumerable: false,
|
|
4203
|
+
configurable: true
|
|
4204
|
+
});
|
|
4205
|
+
ADLDataObject.prototype.toJSON = function () {
|
|
4206
|
+
this.jsonString = true;
|
|
4207
|
+
var result = {
|
|
4208
|
+
id: this._id,
|
|
4209
|
+
store: this._store,
|
|
4210
|
+
};
|
|
4211
|
+
delete this.jsonString;
|
|
4212
|
+
return result;
|
|
4213
|
+
};
|
|
4214
|
+
return ADLDataObject;
|
|
4215
|
+
}(base_cmi.BaseCMI));
|
|
4050
4216
|
|
|
4051
4217
|
var ADLNavRequestValid = (function (_super) {
|
|
4052
|
-
(0,tslib_es6
|
|
4218
|
+
(0,tslib_es6.__extends)(ADLNavRequestValid, _super);
|
|
4053
4219
|
function ADLNavRequestValid() {
|
|
4054
4220
|
var _this = _super.call(this) || this;
|
|
4055
4221
|
_this._continue = "unknown";
|
|
@@ -4058,15 +4224,20 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4058
4224
|
_this._jump = {};
|
|
4059
4225
|
return _this;
|
|
4060
4226
|
}
|
|
4227
|
+
ADLNavRequestValid.prototype.reset = function () {
|
|
4228
|
+
this._initialized = false;
|
|
4229
|
+
this._continue = "unknown";
|
|
4230
|
+
this._previous = "unknown";
|
|
4231
|
+
};
|
|
4061
4232
|
Object.defineProperty(ADLNavRequestValid.prototype, "continue", {
|
|
4062
4233
|
get: function () {
|
|
4063
4234
|
return this._continue;
|
|
4064
4235
|
},
|
|
4065
4236
|
set: function (_continue) {
|
|
4066
4237
|
if (this.initialized) {
|
|
4067
|
-
throw new
|
|
4238
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4068
4239
|
}
|
|
4069
|
-
if (check2004ValidFormat(_continue, regex
|
|
4240
|
+
if (check2004ValidFormat(_continue, regex.scorm2004_regex.NAVBoolean)) {
|
|
4070
4241
|
this._continue = _continue;
|
|
4071
4242
|
}
|
|
4072
4243
|
},
|
|
@@ -4079,9 +4250,9 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4079
4250
|
},
|
|
4080
4251
|
set: function (_previous) {
|
|
4081
4252
|
if (this.initialized) {
|
|
4082
|
-
throw new
|
|
4253
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4083
4254
|
}
|
|
4084
|
-
if (check2004ValidFormat(_previous, regex
|
|
4255
|
+
if (check2004ValidFormat(_previous, regex.scorm2004_regex.NAVBoolean)) {
|
|
4085
4256
|
this._previous = _previous;
|
|
4086
4257
|
}
|
|
4087
4258
|
},
|
|
@@ -4094,17 +4265,17 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4094
4265
|
},
|
|
4095
4266
|
set: function (choice) {
|
|
4096
4267
|
if (this.initialized) {
|
|
4097
|
-
throw new
|
|
4268
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4098
4269
|
}
|
|
4099
4270
|
if (typeof choice !== "object") {
|
|
4100
|
-
throw new
|
|
4271
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4101
4272
|
}
|
|
4102
4273
|
for (var key in choice) {
|
|
4103
4274
|
if ({}.hasOwnProperty.call(choice, key)) {
|
|
4104
|
-
if (check2004ValidFormat(choice[key], regex
|
|
4105
|
-
check2004ValidFormat(key, regex
|
|
4275
|
+
if (check2004ValidFormat(choice[key], regex.scorm2004_regex.NAVBoolean) &&
|
|
4276
|
+
check2004ValidFormat(key, regex.scorm2004_regex.NAVTarget)) {
|
|
4106
4277
|
this._choice[key] =
|
|
4107
|
-
enums
|
|
4278
|
+
enums.NAVBoolean[choice[key]];
|
|
4108
4279
|
}
|
|
4109
4280
|
}
|
|
4110
4281
|
}
|
|
@@ -4118,16 +4289,16 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4118
4289
|
},
|
|
4119
4290
|
set: function (jump) {
|
|
4120
4291
|
if (this.initialized) {
|
|
4121
|
-
throw new
|
|
4292
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.READ_ONLY_ELEMENT);
|
|
4122
4293
|
}
|
|
4123
4294
|
if (typeof jump !== "object") {
|
|
4124
|
-
throw new
|
|
4295
|
+
throw new Scorm2004ValidationError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4125
4296
|
}
|
|
4126
4297
|
for (var key in jump) {
|
|
4127
4298
|
if ({}.hasOwnProperty.call(jump, key)) {
|
|
4128
|
-
if (check2004ValidFormat(jump[key], regex
|
|
4129
|
-
check2004ValidFormat(key, regex
|
|
4130
|
-
this._jump[key] = enums
|
|
4299
|
+
if (check2004ValidFormat(jump[key], regex.scorm2004_regex.NAVBoolean) &&
|
|
4300
|
+
check2004ValidFormat(key, regex.scorm2004_regex.NAVTarget)) {
|
|
4301
|
+
this._jump[key] = enums.NAVBoolean[jump[key]];
|
|
4131
4302
|
}
|
|
4132
4303
|
}
|
|
4133
4304
|
}
|
|
@@ -4147,7 +4318,7 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4147
4318
|
return result;
|
|
4148
4319
|
};
|
|
4149
4320
|
return ADLNavRequestValid;
|
|
4150
|
-
}(base_cmi
|
|
4321
|
+
}(base_cmi.BaseCMI));
|
|
4151
4322
|
|
|
4152
4323
|
|
|
4153
4324
|
;// ./src/Scorm2004API.ts
|
|
@@ -4166,9 +4337,8 @@ var ADLNavRequestValid = (function (_super) {
|
|
|
4166
4337
|
|
|
4167
4338
|
|
|
4168
4339
|
|
|
4169
|
-
|
|
4170
4340
|
var Scorm2004Impl = (function (_super) {
|
|
4171
|
-
(0,tslib_es6
|
|
4341
|
+
(0,tslib_es6.__extends)(Scorm2004Impl, _super);
|
|
4172
4342
|
function Scorm2004Impl(settings) {
|
|
4173
4343
|
var _this = this;
|
|
4174
4344
|
if (settings) {
|
|
@@ -4176,8 +4346,9 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4176
4346
|
settings.mastery_override = false;
|
|
4177
4347
|
}
|
|
4178
4348
|
}
|
|
4179
|
-
_this = _super.call(this, error_codes
|
|
4349
|
+
_this = _super.call(this, error_codes.scorm2004_errors, settings) || this;
|
|
4180
4350
|
_this._version = "1.0";
|
|
4351
|
+
_this._globalObjectives = [];
|
|
4181
4352
|
_this.cmi = new CMI();
|
|
4182
4353
|
_this.adl = new ADL();
|
|
4183
4354
|
_this.Initialize = _this.lmsInitialize;
|
|
@@ -4191,9 +4362,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4191
4362
|
return _this;
|
|
4192
4363
|
}
|
|
4193
4364
|
Scorm2004Impl.prototype.reset = function (settings) {
|
|
4365
|
+
var _a, _b;
|
|
4194
4366
|
this.commonReset(settings);
|
|
4195
|
-
this.cmi
|
|
4196
|
-
this.adl
|
|
4367
|
+
(_a = this.cmi) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4368
|
+
(_b = this.adl) === null || _b === void 0 ? void 0 : _b.reset();
|
|
4197
4369
|
};
|
|
4198
4370
|
Object.defineProperty(Scorm2004Impl.prototype, "version", {
|
|
4199
4371
|
get: function () {
|
|
@@ -4202,14 +4374,21 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4202
4374
|
enumerable: false,
|
|
4203
4375
|
configurable: true
|
|
4204
4376
|
});
|
|
4377
|
+
Object.defineProperty(Scorm2004Impl.prototype, "globalObjectives", {
|
|
4378
|
+
get: function () {
|
|
4379
|
+
return this._globalObjectives;
|
|
4380
|
+
},
|
|
4381
|
+
enumerable: false,
|
|
4382
|
+
configurable: true
|
|
4383
|
+
});
|
|
4205
4384
|
Scorm2004Impl.prototype.lmsInitialize = function () {
|
|
4206
4385
|
this.cmi.initialize();
|
|
4207
4386
|
return this.initialize("Initialize");
|
|
4208
4387
|
};
|
|
4209
4388
|
Scorm2004Impl.prototype.lmsFinish = function () {
|
|
4210
4389
|
var _this = this;
|
|
4211
|
-
(function () { return (0,tslib_es6
|
|
4212
|
-
return (0,tslib_es6
|
|
4390
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
4391
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
4213
4392
|
switch (_a.label) {
|
|
4214
4393
|
case 0: return [4, this.internalFinish()];
|
|
4215
4394
|
case 1:
|
|
@@ -4218,18 +4397,18 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4218
4397
|
}
|
|
4219
4398
|
});
|
|
4220
4399
|
}); })();
|
|
4221
|
-
return api_constants
|
|
4400
|
+
return api_constants.global_constants.SCORM_TRUE;
|
|
4222
4401
|
};
|
|
4223
4402
|
Scorm2004Impl.prototype.internalFinish = function () {
|
|
4224
|
-
return (0,tslib_es6
|
|
4403
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
4225
4404
|
var result, navActions, request, choiceJumpRegex, matches, target, action;
|
|
4226
4405
|
var _a, _b, _c, _d;
|
|
4227
|
-
return (0,tslib_es6
|
|
4406
|
+
return (0,tslib_es6.__generator)(this, function (_e) {
|
|
4228
4407
|
switch (_e.label) {
|
|
4229
4408
|
case 0: return [4, this.terminate("Terminate", true)];
|
|
4230
4409
|
case 1:
|
|
4231
4410
|
result = _e.sent();
|
|
4232
|
-
if (result === api_constants
|
|
4411
|
+
if (result === api_constants.global_constants.SCORM_TRUE) {
|
|
4233
4412
|
if (this.adl.nav.request !== "_none_") {
|
|
4234
4413
|
navActions = {
|
|
4235
4414
|
continue: "SequenceNext",
|
|
@@ -4242,7 +4421,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4242
4421
|
abandonAll: "SequenceAbandonAll",
|
|
4243
4422
|
};
|
|
4244
4423
|
request = this.adl.nav.request;
|
|
4245
|
-
choiceJumpRegex = new RegExp(regex
|
|
4424
|
+
choiceJumpRegex = new RegExp(regex.scorm2004_regex.NAVEvent);
|
|
4246
4425
|
matches = request.match(choiceJumpRegex);
|
|
4247
4426
|
target = "";
|
|
4248
4427
|
if (matches) {
|
|
@@ -4271,7 +4450,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4271
4450
|
};
|
|
4272
4451
|
Scorm2004Impl.prototype.lmsGetValue = function (CMIElement) {
|
|
4273
4452
|
var adlNavRequestRegex = "^adl\\.nav\\.request_valid\\.(choice|jump)\\.{target=\\S{0,}([a-zA-Z0-9-_]+)}$";
|
|
4274
|
-
if ((0,utilities
|
|
4453
|
+
if ((0,utilities.stringMatches)(CMIElement, adlNavRequestRegex)) {
|
|
4275
4454
|
var matches = CMIElement.match(adlNavRequestRegex);
|
|
4276
4455
|
var request = matches[1];
|
|
4277
4456
|
var target = matches[2].replace("{target=", "").replace("}", "");
|
|
@@ -4293,8 +4472,8 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4293
4472
|
this.scheduleCommit(500, "LMSCommit");
|
|
4294
4473
|
}
|
|
4295
4474
|
else {
|
|
4296
|
-
(function () { return (0,tslib_es6
|
|
4297
|
-
return (0,tslib_es6
|
|
4475
|
+
(function () { return (0,tslib_es6.__awaiter)(_this, void 0, void 0, function () {
|
|
4476
|
+
return (0,tslib_es6.__generator)(this, function (_a) {
|
|
4298
4477
|
switch (_a.label) {
|
|
4299
4478
|
case 0: return [4, this.commit("LMSCommit", false)];
|
|
4300
4479
|
case 1:
|
|
@@ -4304,7 +4483,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4304
4483
|
});
|
|
4305
4484
|
}); })();
|
|
4306
4485
|
}
|
|
4307
|
-
return api_constants
|
|
4486
|
+
return api_constants.global_constants.SCORM_TRUE;
|
|
4308
4487
|
};
|
|
4309
4488
|
Scorm2004Impl.prototype.lmsGetLastError = function () {
|
|
4310
4489
|
return this.getLastError("GetLastError");
|
|
@@ -4316,29 +4495,58 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4316
4495
|
return this.getDiagnostic("GetDiagnostic", CMIErrorCode);
|
|
4317
4496
|
};
|
|
4318
4497
|
Scorm2004Impl.prototype.setCMIValue = function (CMIElement, value) {
|
|
4498
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+")) {
|
|
4499
|
+
var parts = CMIElement.split(".");
|
|
4500
|
+
var index = Number(parts[2]);
|
|
4501
|
+
var element_base = "cmi.objectives.".concat(index);
|
|
4502
|
+
var objective_id_1;
|
|
4503
|
+
var setting_id = (0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+\\.id");
|
|
4504
|
+
if (setting_id) {
|
|
4505
|
+
objective_id_1 = value;
|
|
4506
|
+
}
|
|
4507
|
+
else {
|
|
4508
|
+
var objective = this.cmi.objectives.findObjectiveByIndex(index);
|
|
4509
|
+
objective_id_1 = objective ? objective.id : undefined;
|
|
4510
|
+
}
|
|
4511
|
+
var is_global = objective_id_1 && this.settings.globalObjectiveIds.includes(objective_id_1);
|
|
4512
|
+
if (is_global) {
|
|
4513
|
+
var global_index = this._globalObjectives.findIndex(function (obj) { return obj.id === objective_id_1; });
|
|
4514
|
+
if (global_index === -1) {
|
|
4515
|
+
global_index = this._globalObjectives.length;
|
|
4516
|
+
var newGlobalObjective = new CMIObjectivesObject();
|
|
4517
|
+
newGlobalObjective.id = objective_id_1;
|
|
4518
|
+
this._globalObjectives.push(newGlobalObjective);
|
|
4519
|
+
}
|
|
4520
|
+
var global_element = CMIElement.replace(element_base, "_globalObjectives.".concat(global_index));
|
|
4521
|
+
this._commonSetCMIValue("SetGlobalObjectiveValue", true, global_element, value);
|
|
4522
|
+
}
|
|
4523
|
+
}
|
|
4319
4524
|
return this._commonSetCMIValue("SetValue", true, CMIElement, value);
|
|
4320
4525
|
};
|
|
4321
4526
|
Scorm2004Impl.prototype.getChildElement = function (CMIElement, value, foundFirstIndex) {
|
|
4322
|
-
if ((0,utilities
|
|
4527
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.objectives\\.\\d+")) {
|
|
4323
4528
|
return new CMIObjectivesObject();
|
|
4324
4529
|
}
|
|
4325
4530
|
if (foundFirstIndex) {
|
|
4326
|
-
if ((0,utilities
|
|
4531
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+\\.correct_responses\\.\\d+")) {
|
|
4327
4532
|
return this.createCorrectResponsesObject(CMIElement, value);
|
|
4328
4533
|
}
|
|
4329
|
-
else if ((0,utilities
|
|
4534
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+\\.objectives\\.\\d+")) {
|
|
4330
4535
|
return new CMIInteractionsObjectivesObject();
|
|
4331
4536
|
}
|
|
4332
4537
|
}
|
|
4333
|
-
else if ((0,utilities
|
|
4538
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.interactions\\.\\d+")) {
|
|
4334
4539
|
return new CMIInteractionsObject();
|
|
4335
4540
|
}
|
|
4336
|
-
if ((0,utilities
|
|
4541
|
+
if ((0,utilities.stringMatches)(CMIElement, "cmi\\.comments_from_learner\\.\\d+")) {
|
|
4337
4542
|
return new CMICommentsObject();
|
|
4338
4543
|
}
|
|
4339
|
-
else if ((0,utilities
|
|
4544
|
+
else if ((0,utilities.stringMatches)(CMIElement, "cmi\\.comments_from_lms\\.\\d+")) {
|
|
4340
4545
|
return new CMICommentsObject(true);
|
|
4341
4546
|
}
|
|
4547
|
+
if ((0,utilities.stringMatches)(CMIElement, "adl\\.data\\.\\d+")) {
|
|
4548
|
+
return new ADLDataObject();
|
|
4549
|
+
}
|
|
4342
4550
|
return null;
|
|
4343
4551
|
};
|
|
4344
4552
|
Scorm2004Impl.prototype.createCorrectResponsesObject = function (CMIElement, value) {
|
|
@@ -4347,7 +4555,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4347
4555
|
var interaction = this.cmi.interactions.childArray[index];
|
|
4348
4556
|
if (this.isInitialized()) {
|
|
4349
4557
|
if (!interaction.type) {
|
|
4350
|
-
this.throwSCORMError(error_codes
|
|
4558
|
+
this.throwSCORMError(error_codes.scorm2004_errors.DEPENDENCY_NOT_ESTABLISHED);
|
|
4351
4559
|
}
|
|
4352
4560
|
else {
|
|
4353
4561
|
this.checkDuplicateChoiceResponse(interaction, value);
|
|
@@ -4356,7 +4564,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4356
4564
|
this.checkValidResponseType(response_type, value, interaction.type);
|
|
4357
4565
|
}
|
|
4358
4566
|
else {
|
|
4359
|
-
this.throwSCORMError(error_codes
|
|
4567
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Incorrect Response Type: " + interaction.type);
|
|
4360
4568
|
}
|
|
4361
4569
|
}
|
|
4362
4570
|
}
|
|
@@ -4377,7 +4585,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4377
4585
|
this.checkCorrectResponseValue(interaction_type, nodes, value);
|
|
4378
4586
|
}
|
|
4379
4587
|
else if (nodes.length > response_type.max) {
|
|
4380
|
-
this.throwSCORMError(error_codes
|
|
4588
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Pattern Too Long");
|
|
4381
4589
|
}
|
|
4382
4590
|
};
|
|
4383
4591
|
Scorm2004Impl.prototype.checkDuplicateChoiceResponse = function (interaction, value) {
|
|
@@ -4386,7 +4594,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4386
4594
|
for (var i = 0; i < interaction_count && this.lastErrorCode === "0"; i++) {
|
|
4387
4595
|
var response = interaction.correct_responses.childArray[i];
|
|
4388
4596
|
if (response.pattern === value) {
|
|
4389
|
-
this.throwSCORMError(error_codes
|
|
4597
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE);
|
|
4390
4598
|
}
|
|
4391
4599
|
}
|
|
4392
4600
|
}
|
|
@@ -4409,12 +4617,12 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4409
4617
|
}
|
|
4410
4618
|
else {
|
|
4411
4619
|
if (this.lastErrorCode === "0") {
|
|
4412
|
-
this.throwSCORMError(error_codes
|
|
4620
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Pattern Already Exists");
|
|
4413
4621
|
}
|
|
4414
4622
|
}
|
|
4415
4623
|
}
|
|
4416
4624
|
else {
|
|
4417
|
-
this.throwSCORMError(error_codes
|
|
4625
|
+
this.throwSCORMError(error_codes.scorm2004_errors.GENERAL_SET_FAILURE, "Data Model Element Collection Limit Reached");
|
|
4418
4626
|
}
|
|
4419
4627
|
};
|
|
4420
4628
|
Scorm2004Impl.prototype.getCMIValue = function (CMIElement) {
|
|
@@ -4424,11 +4632,11 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4424
4632
|
var basicMessage = "";
|
|
4425
4633
|
var detailMessage = "";
|
|
4426
4634
|
errorNumber = String(errorNumber);
|
|
4427
|
-
if (api_constants
|
|
4635
|
+
if (api_constants.scorm2004_constants.error_descriptions[errorNumber]) {
|
|
4428
4636
|
basicMessage =
|
|
4429
|
-
api_constants
|
|
4637
|
+
api_constants.scorm2004_constants.error_descriptions[errorNumber].basicMessage;
|
|
4430
4638
|
detailMessage =
|
|
4431
|
-
api_constants
|
|
4639
|
+
api_constants.scorm2004_constants.error_descriptions[errorNumber].detailMessage;
|
|
4432
4640
|
}
|
|
4433
4641
|
return detail ? detailMessage : basicMessage;
|
|
4434
4642
|
};
|
|
@@ -4454,36 +4662,36 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4454
4662
|
if (values.length === 2) {
|
|
4455
4663
|
var matches = values[0].match(formatRegex);
|
|
4456
4664
|
if (!matches) {
|
|
4457
|
-
this.throwSCORMError(error_codes
|
|
4665
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4458
4666
|
}
|
|
4459
4667
|
else {
|
|
4460
4668
|
if (!response.format2 ||
|
|
4461
4669
|
!values[1].match(new RegExp(response.format2))) {
|
|
4462
|
-
this.throwSCORMError(error_codes
|
|
4670
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4463
4671
|
}
|
|
4464
4672
|
}
|
|
4465
4673
|
}
|
|
4466
4674
|
else {
|
|
4467
|
-
this.throwSCORMError(error_codes
|
|
4675
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4468
4676
|
}
|
|
4469
4677
|
}
|
|
4470
4678
|
else {
|
|
4471
4679
|
var matches = nodes[i].match(formatRegex);
|
|
4472
4680
|
if ((!matches && value !== "") ||
|
|
4473
4681
|
(!matches && interaction_type === "true-false")) {
|
|
4474
|
-
this.throwSCORMError(error_codes
|
|
4682
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4475
4683
|
}
|
|
4476
4684
|
else {
|
|
4477
4685
|
if (interaction_type === "numeric" && nodes.length > 1) {
|
|
4478
4686
|
if (Number(nodes[0]) > Number(nodes[1])) {
|
|
4479
|
-
this.throwSCORMError(error_codes
|
|
4687
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4480
4688
|
}
|
|
4481
4689
|
}
|
|
4482
4690
|
else {
|
|
4483
4691
|
if (nodes[i] !== "" && response.unique) {
|
|
4484
4692
|
for (var j = 0; j < i && this.lastErrorCode === "0"; j++) {
|
|
4485
4693
|
if (nodes[i] === nodes[j]) {
|
|
4486
|
-
this.throwSCORMError(error_codes
|
|
4694
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4487
4695
|
}
|
|
4488
4696
|
}
|
|
4489
4697
|
}
|
|
@@ -4502,12 +4710,12 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4502
4710
|
while (matches) {
|
|
4503
4711
|
switch (matches[2]) {
|
|
4504
4712
|
case "lang":
|
|
4505
|
-
langMatches = node.match(regex
|
|
4713
|
+
langMatches = node.match(regex.scorm2004_regex.CMILangcr);
|
|
4506
4714
|
if (langMatches) {
|
|
4507
4715
|
var lang = langMatches[3];
|
|
4508
4716
|
if (lang !== undefined && lang.length > 0) {
|
|
4509
4717
|
if (!language_constants.includes(lang.toLowerCase())) {
|
|
4510
|
-
this.throwSCORMError(error_codes
|
|
4718
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4511
4719
|
}
|
|
4512
4720
|
}
|
|
4513
4721
|
}
|
|
@@ -4516,7 +4724,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4516
4724
|
case "case_matters":
|
|
4517
4725
|
if (!seenLang && !seenOrder && !seenCase) {
|
|
4518
4726
|
if (matches[3] !== "true" && matches[3] !== "false") {
|
|
4519
|
-
this.throwSCORMError(error_codes
|
|
4727
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4520
4728
|
}
|
|
4521
4729
|
}
|
|
4522
4730
|
seenCase = true;
|
|
@@ -4524,7 +4732,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4524
4732
|
case "order_matters":
|
|
4525
4733
|
if (!seenCase && !seenLang && !seenOrder) {
|
|
4526
4734
|
if (matches[3] !== "true" && matches[3] !== "false") {
|
|
4527
|
-
this.throwSCORMError(error_codes
|
|
4735
|
+
this.throwSCORMError(error_codes.scorm2004_errors.TYPE_MISMATCH);
|
|
4528
4736
|
}
|
|
4529
4737
|
}
|
|
4530
4738
|
seenOrder = true;
|
|
@@ -4545,10 +4753,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4545
4753
|
cmiExport.cmi.total_time = this.cmi.getCurrentTotalTime();
|
|
4546
4754
|
}
|
|
4547
4755
|
var result = [];
|
|
4548
|
-
var flattened = utilities
|
|
4756
|
+
var flattened = utilities.flatten(cmiExport);
|
|
4549
4757
|
switch (this.settings.dataCommitFormat) {
|
|
4550
4758
|
case "flattened":
|
|
4551
|
-
return utilities
|
|
4759
|
+
return utilities.flatten(cmiExport);
|
|
4552
4760
|
case "params":
|
|
4553
4761
|
for (var item in flattened) {
|
|
4554
4762
|
if ({}.hasOwnProperty.call(flattened, item)) {
|
|
@@ -4564,23 +4772,23 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4564
4772
|
Scorm2004Impl.prototype.renderCommitObject = function (terminateCommit) {
|
|
4565
4773
|
var cmiExport = this.renderCommitCMI(terminateCommit);
|
|
4566
4774
|
var totalTimeDuration = this.cmi.getCurrentTotalTime();
|
|
4567
|
-
var totalTimeSeconds = utilities
|
|
4568
|
-
var completionStatus = enums
|
|
4569
|
-
var successStatus = enums
|
|
4775
|
+
var totalTimeSeconds = utilities.getDurationAsSeconds(totalTimeDuration, regex.scorm2004_regex.CMITimespan);
|
|
4776
|
+
var completionStatus = enums.CompletionStatus.unknown;
|
|
4777
|
+
var successStatus = enums.SuccessStatus.unknown;
|
|
4570
4778
|
if (this.cmi.completion_status) {
|
|
4571
4779
|
if (this.cmi.completion_status === "completed") {
|
|
4572
|
-
completionStatus = enums
|
|
4780
|
+
completionStatus = enums.CompletionStatus.completed;
|
|
4573
4781
|
}
|
|
4574
4782
|
else if (this.cmi.completion_status === "incomplete") {
|
|
4575
|
-
completionStatus = enums
|
|
4783
|
+
completionStatus = enums.CompletionStatus.incomplete;
|
|
4576
4784
|
}
|
|
4577
4785
|
}
|
|
4578
4786
|
if (this.cmi.success_status) {
|
|
4579
4787
|
if (this.cmi.success_status === "passed") {
|
|
4580
|
-
successStatus = enums
|
|
4788
|
+
successStatus = enums.SuccessStatus.passed;
|
|
4581
4789
|
}
|
|
4582
4790
|
else if (this.cmi.success_status === "failed") {
|
|
4583
|
-
successStatus = enums
|
|
4791
|
+
successStatus = enums.SuccessStatus.failed;
|
|
4584
4792
|
}
|
|
4585
4793
|
}
|
|
4586
4794
|
var score = this.cmi.score;
|
|
@@ -4612,10 +4820,10 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4612
4820
|
return commitObject;
|
|
4613
4821
|
};
|
|
4614
4822
|
Scorm2004Impl.prototype.storeData = function (terminateCommit) {
|
|
4615
|
-
return (0,tslib_es6
|
|
4823
|
+
return (0,tslib_es6.__awaiter)(this, void 0, void 0, function () {
|
|
4616
4824
|
var navRequest, commitObject, result;
|
|
4617
4825
|
var _a, _b, _c;
|
|
4618
|
-
return (0,tslib_es6
|
|
4826
|
+
return (0,tslib_es6.__generator)(this, function (_d) {
|
|
4619
4827
|
switch (_d.label) {
|
|
4620
4828
|
case 0:
|
|
4621
4829
|
if (terminateCommit) {
|
|
@@ -4659,7 +4867,7 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4659
4867
|
}
|
|
4660
4868
|
return [2, result];
|
|
4661
4869
|
case 2: return [2, {
|
|
4662
|
-
result: api_constants
|
|
4870
|
+
result: api_constants.global_constants.SCORM_TRUE,
|
|
4663
4871
|
errorCode: 0,
|
|
4664
4872
|
}];
|
|
4665
4873
|
}
|
|
@@ -4667,11 +4875,11 @@ var Scorm2004Impl = (function (_super) {
|
|
|
4667
4875
|
});
|
|
4668
4876
|
};
|
|
4669
4877
|
return Scorm2004Impl;
|
|
4670
|
-
}(BaseAPI
|
|
4878
|
+
}(BaseAPI["default"]));
|
|
4671
4879
|
|
|
4672
4880
|
|
|
4673
4881
|
var __webpack_export_target__ = this;
|
|
4674
|
-
for(var
|
|
4882
|
+
for(var __webpack_i__ in __webpack_exports__) __webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
|
|
4675
4883
|
if(__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, "__esModule", { value: true });
|
|
4676
4884
|
/******/ })()
|
|
4677
4885
|
;
|