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