scorm-again 2.5.0 → 2.6.1

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