scorm-again
Version:
A modern SCORM JavaScript run-time library for AICC, SCORM 1.2, and SCORM 2004
19 lines • 91 kB
JavaScript
!function(){var n={"./node_modules/lodash.debounce/index.js":
/*!***********************************************!*\
!*** ./node_modules/lodash.debounce/index.js ***!
\***********************************************/function(e,s,t){function n(e){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _(){return h.Date.now()}var r=NaN,i="[object Symbol]",o=/^\s+|\s+$/g,a=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt,t="object"==(void 0===t.g?"undefined":n(t.g))&&t.g&&t.g.Object===Object&&t.g,f="object"==("undefined"==typeof self?"undefined":n(self))&&self&&self.Object===Object&&self,h=t||f||Function("return this")(),d=Object.prototype.toString,E=Math.max,M=Math.min;function v(e){var t=n(e);return e&&("object"==t||"function"==t)}function p(e){return"symbol"==n(e)||!!(t=e)&&"object"==n(t)&&d.call(e)==i;var t}function b(e){if("number"==typeof e)return e;if(p(e))return r;if("string"!=typeof(e=v(e)?v(t="function"==typeof e.valueOf?e.valueOf():e)?t+"":t:e))return 0===e?e:+e;e=e.replace(o,"");var t=c.test(e);return t||l.test(e)?u(e.slice(2),t?2:8):a.test(e)?r:+e}e.exports=function(f,n,e){var r,i,o,a,s,c,l=0,h=!1,u=!1,t=!0;if("function"!=typeof f)throw new TypeError("Expected a function");function d(e){var t=r,n=i;return r=i=void 0,l=e,a=f.apply(n,t)}function p(e){var t=e-c;return void 0===c||n<=t||t<0||u&&o<=e-l}function m(){var e,t=_();if(p(t))return y(t);s=setTimeout(m,(e=n-((t=t)-c),u?M(e,o-(t-l)):e))}function y(e){return s=void 0,t&&r?d(e):(r=i=void 0,a)}function g(){var e=_(),t=p(e);if(r=arguments,i=this,c=e,t){if(void 0===s)return l=e=c,s=setTimeout(m,n),h?d(e):a;if(u)return s=setTimeout(m,n),d(c)}return void 0===s&&(s=setTimeout(m,n)),a}return n=b(n)||0,v(e)&&(h=!!e.leading,u="maxWait"in e,o=u?E(b(e.maxWait)||0,n):o,t="trailing"in e?!!e.trailing:t),g.cancel=function(){void 0!==s&&clearTimeout(s),r=c=i=s=void(l=0)},g.flush=function(){return void 0===s?a:y(_())},g}},"./src/AICC.js":
/*!*********************!*\
!*** ./src/AICC.js ***!
\*********************/function(r,e,t){"use strict";t.r(e),t.d(e,{default:function(){return d}});var e=t(/*! ./Scorm12API */"./src/Scorm12API.js"),o=t(/*! ./cmi/aicc_cmi */"./src/cmi/aicc_cmi.js"),f=t(/*! ./cmi/scorm12_cmi */"./src/cmi/scorm12_cmi.js");function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function n(t,e){var n,r=Object.keys(t);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(t),e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)),r}function a(r){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?n(Object(i),!0).forEach(function(e){var t,n;t=r,n=i[e=e],e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):n(Object(i)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(i,e))})}return r}function s(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function c(){return(c="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=u(e)););return e}(e,t);if(r)return r=Object.getOwnPropertyDescriptor(r,t),r.get?r.get.call(arguments.length<3?e:n):r.value}).apply(this,arguments)}function l(e,t){return(l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function h(n){var r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var e,t=u(n),t=(e=r?(e=u(this).constructor,Reflect.construct(t,arguments,e)):t.apply(this,arguments),this);if(e&&("object"===i(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}}function u(e){return(u=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var d=function(e){var t=i;if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&l(t,e);var n,r=h(i);function i(e){if(!(this instanceof i))throw new TypeError("Cannot call a class as a function");var e=a(a({},{mastery_override:!1}),e);return(e=r.call(this,e)).cmi=new o.CMI,e.nav=new f.NAV,e}return t=i,(e=[{key:"getChildElement",value:function(e,t,n){t=c(u(i.prototype),"getChildElement",this).call(this,e,t,n);return t||(this.stringMatches(e,"cmi\\.evaluation\\.comments\\.\\d+")?t=new o.CMIEvaluationCommentsObject:this.stringMatches(e,"cmi\\.student_data\\.tries\\.\\d+")?t=new o.CMITriesObject:this.stringMatches(e,"cmi\\.student_data\\.attempt_records\\.\\d+")&&(t=new o.CMIAttemptRecordsObject)),t}},{key:"replaceWithAnotherScormAPI",value:function(e){this.cmi=e.cmi,this.nav=e.nav}}])&&s(t.prototype,e),n&&s(t,n),Object.defineProperty(t,"prototype",{writable:!1}),i}(e.default)},"./src/BaseAPI.js":
/*!************************!*\
!*** ./src/BaseAPI.js ***!
\************************/function(n,e,t){"use strict";t.r(e),t.d(e,{default:function(){return T}});var m=t(/*! ./cmi/common */"./src/cmi/common.js"),c=t(/*! ./exceptions */"./src/exceptions.js"),e=t(/*! ./constants/error_codes */"./src/constants/error_codes.js"),l=t(/*! ./constants/api_constants */"./src/constants/api_constants.js"),u=t(/*! ./utilities */"./src/utilities.js"),f=t(/*! lodash.debounce */"./node_modules/lodash.debounce/index.js"),y=t.n(f);function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){s=!0,i=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw i}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return _(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Map"===(n="Object"===n&&e.constructor?e.constructor.name:n)||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function v(e){return(v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function b(t,e){var n,r=Object.keys(t);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(t),e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)),r}function E(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?b(Object(n),!0).forEach(function(e){S(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):b(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function M(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function w(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function O(e,t,n){return t&&w(e.prototype,t),n&&w(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function S(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t,n){var r=e;if(t.has(r))throw new TypeError("Cannot initialize the same private elements twice on an object");t.set(e,n)}function h(e,t){t=I(e,t,"get");return t.get?t.get.call(e):t.value}function o(e,t,n){var t=I(e,t,"set"),r=n;if(t.set)t.set.call(e,r);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=r}return n}function I(e,t,n){if(!t.has(e))throw new TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}var d=l.default.global,C=e.default.scorm12,a=new WeakMap,p=new WeakMap,r=new WeakMap,T=function(){function n(e,t){if(M(this,n),i(this,a,{writable:!0,value:void 0}),i(this,p,{writable:!0,value:void 0}),i(this,r,{writable:!0,value:{autocommit:!1,autocommitSeconds:10,asyncCommit:!1,sendBeaconCommit:!1,lmsCommitUrl:!1,dataCommitFormat:"json",commitRequestDataType:"application/json;charset=UTF-8",autoProgress:!1,logLevel:d.LOG_LEVEL_ERROR,selfReportSessionTime:!1,alwaysSendTotalTime:!1,strict_errors:!0,xhrHeaders:{},xhrWithCredentials:!1,responseHandler:function(e){var t;return void 0!==e&&(null!==(t=JSON.parse(e.responseText))&&{}.hasOwnProperty.call(t,"result")||(t={},200===e.status?(t.result=d.SCORM_TRUE,t.errorCode=0):(t.result=d.SCORM_FALSE,t.errorCode=101))),t},requestHandler:function(e){return e},onLogMessage:function(e,t){switch(e){case d.LOG_LEVEL_ERROR:console.error(t);break;case d.LOG_LEVEL_WARNING:console.warn(t);break;case d.LOG_LEVEL_INFO:console.info(t);break;case d.LOG_LEVEL_DEBUG:console.debug?console.debug(t):console.log(t)}}}}),S(this,"cmi",void 0),S(this,"startingData",void 0),(this instanceof n?this.constructor:void 0)===n)throw new TypeError("Cannot construct BaseAPI instances directly");this.currentState=d.STATE_NOT_INITIALIZED,this.lastErrorCode=0,this.listenerArray=[],o(this,a,null),o(this,p,e),this.settings=t,this.apiLogLevel=this.settings.logLevel,this.selfReportSessionTime=this.settings.selfReportSessionTime}return O(n,[{key:"initialize",value:function(e,t,n){var r=d.SCORM_FALSE;return this.isInitialized()?this.throwSCORMError(h(this,p).INITIALIZED,t):this.isTerminated()?this.throwSCORMError(h(this,p).TERMINATED,n):(this.selfReportSessionTime&&this.cmi.setStartTime(),this.currentState=d.STATE_INITIALIZED,this.lastErrorCode=0,r=d.SCORM_TRUE,this.processListeners(e)),this.apiLog(e,null,"returned: "+r,d.LOG_LEVEL_INFO),this.clearSCORMError(r),r}},{key:"error_codes",get:function(){return h(this,p)}},{key:"settings",get:function(){return h(this,r)},set:function(e){o(this,r,E(E({},h(this,r)),e))}},{key:"terminate",value:function(e,t){var n,r=d.SCORM_FALSE;return this.checkState(t,h(this,p).TERMINATION_BEFORE_INIT,h(this,p).MULTIPLE_TERMINATION)&&(this.currentState=d.STATE_TERMINATED,n=this.storeData(!0),!this.settings.sendBeaconCommit&&!this.settings.asyncCommit&&void 0!==n.errorCode&&0<n.errorCode&&this.throwSCORMError(n.errorCode),r=void 0!==n&&n.result?n.result:d.SCORM_FALSE,t&&(this.lastErrorCode=0),r=d.SCORM_TRUE,this.processListeners(e)),this.apiLog(e,null,"returned: "+r,d.LOG_LEVEL_INFO),this.clearSCORMError(r),r}},{key:"getValue",value:function(e,t,n){var r;if(this.checkState(t,h(this,p).RETRIEVE_BEFORE_INIT,h(this,p).RETRIEVE_AFTER_TERM)){t&&(this.lastErrorCode=0);try{r=this.getCMIValue(n)}catch(e){e instanceof c.ValidationError?(this.lastErrorCode=e.errorCode,r=d.SCORM_FALSE):(e.message?console.error(e.message):console.error(e),this.throwSCORMError(h(this,p).GENERAL))}this.processListeners(e,n)}return this.apiLog(e,n,": returned: "+r,d.LOG_LEVEL_INFO),this.clearSCORMError(r),r}},{key:"setValue",value:function(e,t,n,r,i){void 0!==i&&(i=String(i));var o=d.SCORM_FALSE;if(this.checkState(n,h(this,p).STORE_BEFORE_INIT,h(this,p).STORE_AFTER_TERM)){n&&(this.lastErrorCode=0);try{o=this.setCMIValue(r,i)}catch(e){e instanceof c.ValidationError?(this.lastErrorCode=e.errorCode,o=d.SCORM_FALSE):(e.message?console.error(e.message):console.error(e),this.throwSCORMError(h(this,p).GENERAL))}this.processListeners(e,r,i)}return void 0===o&&(o=d.SCORM_FALSE),"0"===String(this.lastErrorCode)&&this.settings.autocommit&&!h(this,a)&&this.scheduleCommit(1e3*this.settings.autocommitSeconds,t),this.apiLog(e,r,": "+i+": result: "+o,d.LOG_LEVEL_INFO),this.clearSCORMError(o),o}},{key:"commit",value:function(e,t){this.clearScheduledCommit();var n,r=d.SCORM_FALSE;return this.checkState(t,h(this,p).COMMIT_BEFORE_INIT,h(this,p).COMMIT_AFTER_TERM)&&(n=this.storeData(!1),!this.settings.sendBeaconCommit&&!this.settings.asyncCommit&&n.errorCode&&0<n.errorCode&&this.throwSCORMError(n.errorCode),r=void 0!==n&&n.result?n.result:d.SCORM_FALSE,this.apiLog(e,"HttpRequest"," Result: "+r,d.LOG_LEVEL_DEBUG),t&&(this.lastErrorCode=0),this.processListeners(e)),this.apiLog(e,null,"returned: "+r,d.LOG_LEVEL_INFO),this.clearSCORMError(r),r}},{key:"getLastError",value:function(e){var t=String(this.lastErrorCode);return this.processListeners(e),this.apiLog(e,null,"returned: "+t,d.LOG_LEVEL_INFO),t}},{key:"getErrorString",value:function(e,t){var n="";return null!==t&&""!==t&&(n=this.getLmsErrorMessageDetails(t),this.processListeners(e)),this.apiLog(e,null,"returned: "+n,d.LOG_LEVEL_INFO),n}},{key:"getDiagnostic",value:function(e,t){var n="";return null!==t&&""!==t&&(n=this.getLmsErrorMessageDetails(t,!0),this.processListeners(e)),this.apiLog(e,null,"returned: "+n,d.LOG_LEVEL_INFO),n}},{key:"checkState",value:function(e,t,n){return this.isNotInitialized()?(this.throwSCORMError(t),!1):!e||!this.isTerminated()||(this.throwSCORMError(n),!1)}},{key:"apiLog",value:function(e,t,n,r){n=this.formatMessage(e,t,n),r>=this.apiLogLevel&&this.settings.onLogMessage(r,n)}},{key:"formatMessage",value:function(e,t,n){for(var r="",i=20-(r+=e).length,o=0;o<i;o++)r+=" ";if(r+=": ",t)for(var i=70-(r+=t).length,a=0;a<i;a++)r+=" ";return n&&(r+=n),r}},{key:"stringMatches",value:function(e,t){return e&&t&&e.match(t)}},{key:"_checkObjectHasProperty",value:function(e,t){return Object.hasOwnProperty.call(e,t)||Object.getOwnPropertyDescriptor(Object.getPrototypeOf(e),t)||t in e}},{key:"getLmsErrorMessageDetails",value:function(e,t){throw new Error("The getLmsErrorMessageDetails method has not been implemented")}},{key:"getCMIValue",value:function(e){throw new Error("The getCMIValue method has not been implemented")}},{key:"setCMIValue",value:function(e,t){throw new Error("The setCMIValue method has not been implemented")}},{key:"_commonSetCMIValue",value:function(u,e,t,n){if(!t||""===t)return d.SCORM_FALSE;for(var r=t.split("."),i=this,o=d.SCORM_FALSE,a=!1,s="The data model element passed to ".concat(u," (").concat(t,") is not a valid SCORM data model element."),f=e?h(this,p).UNDEFINED_DATA_MODEL:h(this,p).GENERAL,c=0;c<r.length;c++){var l=r[c];if(c===r.length-1)e&&"{target="===l.substr(0,8)&&"function"==typeof i._isTargetValid?this.throwSCORMError(h(this,p).READ_ONLY_ELEMENT):this._checkObjectHasProperty(i,l)?(this.isInitialized()&&this.stringMatches(t,"\\.correct_responses\\.\\d+")&&this.validateCorrectResponse(t,n),e&&0!==this.lastErrorCode||(i[l]=n,o=d.SCORM_TRUE)):this.throwSCORMError(f,s);else{if(!(i=i[l])){this.throwSCORMError(f,s);break}i instanceof m.CMIArray&&(l=parseInt(r[c+1],10),isNaN(l)||((l=i.childArray[l])?(i=l,a=!0):(l=this.getChildElement(t,n,a),a=!0,l?(i.initialized&&l.initialize(),i.childArray.push(l),i=l):this.throwSCORMError(f,s)),c++))}}return o===d.SCORM_FALSE&&this.apiLog(u,null,"There was an error setting the value for: ".concat(t,", value of: ").concat(n),d.LOG_LEVEL_WARNING),o}},{key:"validateCorrectResponse",value:function(e,t){}},{key:"getChildElement",value:function(e,t,n){throw new Error("The getChildElement method has not been implemented")}},{key:"_commonGetCMIValue",value:function(e,t,n){if(!n||""===n)return"";for(var r=n.split("."),i=this,o=null,u="The data model element passed to ".concat(e," (").concat(n,") has not been initialized."),a="The data model element passed to ".concat(e," (").concat(n,") is not a valid SCORM data model element."),s=t?h(this,p).UNDEFINED_DATA_MODEL:h(this,p).GENERAL,c=0;c<r.length;c++){if(o=r[c],t){if("{target="===String(o).substr(0,8)&&"function"==typeof i._isTargetValid)return l=String(o).substr(8,String(o).length-9),i._isTargetValid(l);if(!this._checkObjectHasProperty(i,o))return void this.throwSCORMError(s,a)}else if(c===r.length-1&&!this._checkObjectHasProperty(i,o))return void this.throwSCORMError(s,a);if(void 0===(i=i[o])){this.throwSCORMError(s,a);break}if(i instanceof m.CMIArray){var l=parseInt(r[c+1],10);if(!isNaN(l)){var f=i.childArray[l];if(!f){this.throwSCORMError(h(this,p).VALUE_NOT_INITIALIZED,u);break}i=f,c++}}}if(null!=i)return i;t||("_children"===o?this.throwSCORMError(C.CHILDREN_ERROR):"_count"===o&&this.throwSCORMError(C.COUNT_ERROR))}},{key:"isInitialized",value:function(){return this.currentState===d.STATE_INITIALIZED}},{key:"isNotInitialized",value:function(){return this.currentState===d.STATE_NOT_INITIALIZED}},{key:"isTerminated",value:function(){return this.currentState===d.STATE_TERMINATED}},{key:"on",value:function(e,t){if(t)for(var n=e.split(" "),r=0;r<n.length;r++){var i=n[r].split(".");if(0===i.length)return;var o=i[0],a=null;1<i.length&&(a=e.replace(o+".","")),this.listenerArray.push({functionName:o,CMIElement:a,callback:t}),this.apiLog("on",o,"Added event listener: ".concat(this.listenerArray.length),d.LOG_LEVEL_INFO)}}},{key:"off",value:function(r,i){var o=this;if(i)for(var a=r.split(" "),e=0;e<a.length;e++){var t=function(e){e=a[e].split(".");if(0===e.length)return{v:void 0};var t=e[0],n=null,e=(1<e.length&&(n=r.replace(t+".","")),o.listenerArray.findIndex(function(e){return e.functionName===t&&e.CMIElement===n&&e.callback===i}));-1!==e&&(o.listenerArray.splice(e,1),o.apiLog("off",t,"Removed event listener: ".concat(o.listenerArray.length),d.LOG_LEVEL_INFO))}(e);if("object"===v(t))return t.v}}},{key:"clear",value:function(r){for(var i=this,o=r.split(" "),e=0;e<o.length;e++){var t=function(e){e=o[e].split(".");if(0===e.length)return{v:void 0};var t=e[0],n=null;1<e.length&&(n=r.replace(t+".","")),i.listenerArray=i.listenerArray.filter(function(e){return e.functionName!==t&&e.CMIElement!==n})}(e);if("object"===v(t))return t.v}}},{key:"processListeners",value:function(e,t,n){this.apiLog(e,t,n);for(var r=0;r<this.listenerArray.length;r++){var i=this.listenerArray[r],o=i.functionName===e,a=!!i.CMIElement,s=!1,s=t&&i.CMIElement&&"*"===i.CMIElement.substring(i.CMIElement.length-1)?0===t.indexOf(i.CMIElement.substring(0,i.CMIElement.length-1)):i.CMIElement===t;!o||a&&!s||i.callback(t,n)}}},{key:"throwSCORMError",value:function(e,t){t=t||this.getLmsErrorMessageDetails(e),this.apiLog("throwSCORMError",null,e+": "+t,d.LOG_LEVEL_ERROR),this.lastErrorCode=String(e)}},{key:"clearSCORMError",value:function(e){void 0!==e&&e!==d.SCORM_FALSE&&(this.lastErrorCode=0)}},{key:"storeData",value:function(e){throw new Error("The storeData method has not been implemented")}},{key:"loadFromFlattenedJSON",value:function(t,n){var r,i,e,o,a=this;function s(e,t,n){var r,e=e.match(n);return null!==e&&null!==(r=t.match(n))?(t=Number(e[2]))===(n=Number(r[2]))?"id"!==e[3]&&("type"!==e[3]||"id"===r[3])?1:-1:t-n:null}this.isNotInitialized()?(r=/^(cmi\.interactions\.)(\d+)\.(.*)$/,i=/^(cmi\.objectives\.)(\d+)\.(.*)$/,(e=Object.keys(t).map(function(e){return[String(e),t[e]]})).sort(function(e,t){var e=g(e,2),n=e[0],e=(e[1],g(t,2)),t=e[0];e[1];return null!==(e=s(n,t,r))||null!==(e=s(n,t,i))?e:n<t?-1:t<n?1:0}),e.forEach(function(e){(o={})[e[0]]=e[1],a.loadFromJSON((0,u.unflatten)(o),n)})):console.error("loadFromFlattenedJSON can only be called before the call to lmsInitialize.")}},{key:"loadFromJSON",value:function(e,t){if(this.isNotInitialized()){for(var n in t=void 0!==t?t:"cmi",this.startingData=e)if({}.hasOwnProperty.call(e,n)&&e[n]){var r=(t?t+".":"")+n,i=e[n];if(i.childArray)for(var o=0;o<i.childArray.length;o++)this.loadFromJSON(i.childArray[o],r+"."+o);else i.constructor===Object?this.loadFromJSON(i,r):this.setCMIValue(r,i)}}else console.error("loadFromJSON can only be called before the call to lmsInitialize.")}},{key:"renderCMIToJSONString",value:function(){var e=this.cmi;return JSON.stringify({cmi:e})}},{key:"renderCMIToJSONObject",value:function(){return JSON.parse(this.renderCMIToJSONString())}},{key:"renderCommitCMI",value:function(e){throw new Error("The storeData method has not been implemented")}},{key:"processHttpRequest",value:function(e,t){function n(e,t,n,r){if(r={result:d.SCORM_FALSE,errorCode:r.GENERAL},n.sendBeaconCommit)try{var i={type:n.commitRequestDataType},o=t instanceof Array?new Blob([t.join("&")],i):new Blob([JSON.stringify(t)],i),a={};navigator.sendBeacon(e,o)?(a.result=d.SCORM_TRUE,a.errorCode=0):(a.result=d.SCORM_FALSE,a.errorCode=101)}catch(e){return console.error(e),c.processListeners("CommitError"),r}else{var s=new XMLHttpRequest;s.open("POST",e,n.asyncCommit),Object.keys(n.xhrHeaders).length&&Object.keys(n.xhrHeaders).forEach(function(e){s.setRequestHeader(e,n.xhrHeaders[e])}),s.withCredentials=n.xhrWithCredentials,n.asyncCommit&&(s.onload=function(e){a="function"==typeof n.responseHandler?n.responseHandler(s):JSON.parse(s.responseText)});try{if((t=n.requestHandler(t))instanceof Array?(s.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),s.send(t.join("&"))):(s.setRequestHeader("Content-Type",n.commitRequestDataType),s.send(JSON.stringify(t))),n.asyncCommit)return(a={}).result=d.SCORM_TRUE,a.errorCode=0,c.processListeners("CommitSuccess"),a;a="function"==typeof n.responseHandler?n.responseHandler(s):JSON.parse(s.responseText)}catch(e){return console.error(e),c.processListeners("CommitError"),r}}return void 0===a?(c.processListeners("CommitError"),r):(!0===a.result||a.result===d.SCORM_TRUE?c.processListeners("CommitSuccess"):c.processListeners("CommitError"),a)}var r,i=2<arguments.length&&void 0!==arguments[2]&&arguments[2],c=this;return void 0!==y()?((r=y()(n,500))(e,t,this.settings,this.error_codes),i&&r.flush(),{result:d.SCORM_TRUE,errorCode:0}):n(e,t,this.settings,this.error_codes)}},{key:"scheduleCommit",value:function(e,t){o(this,a,new L(this,e,t)),this.apiLog("scheduleCommit","","scheduled",d.LOG_LEVEL_DEBUG)}},{key:"clearScheduledCommit",value:function(){h(this,a)&&(h(this,a).cancel(),o(this,a,null),this.apiLog("clearScheduledCommit","","cleared",d.LOG_LEVEL_DEBUG))}}]),n}(),j=new WeakMap,k=new WeakMap,s=new WeakMap,R=new WeakMap,L=function(){function r(e,t,n){M(this,r),i(this,j,{writable:!0,value:void 0}),i(this,k,{writable:!0,value:!1}),i(this,s,{writable:!0,value:void 0}),i(this,R,{writable:!0,value:void 0}),o(this,j,e),o(this,s,setTimeout(this.wrapper.bind(this),t)),o(this,R,n)}return O(r,[{key:"cancel",value:function(){o(this,k,!0),h(this,s)&&clearTimeout(h(this,s))}},{key:"wrapper",value:function(){h(this,k)||h(this,j).commit(h(this,R))}}]),r}()},"./src/Scorm12API.js":
/*!***************************!*\
!*** ./src/Scorm12API.js ***!
\***************************/function(r,e,t){"use strict";t.r(e),t.d(e,{default:function(){return y}});var e=t(/*! ./BaseAPI */"./src/BaseAPI.js"),o=t(/*! ./cmi/scorm12_cmi */"./src/cmi/scorm12_cmi.js"),a=t(/*! ./utilities */"./src/utilities.js"),n=t(/*! ./constants/api_constants */"./src/constants/api_constants.js"),t=t(/*! ./constants/error_codes */"./src/constants/error_codes.js");function i(e){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function s(t,e){var n,r=Object.keys(t);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(t),e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)),r}function f(r){for(var e=1;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?s(Object(i),!0).forEach(function(e){var t,n;t=r,n=i[e=e],e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(i)):s(Object(i)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(i,e))})}return r}function h(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t){return(d=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function p(n){var r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var e,t=c(n),t=(e=r?(e=c(this).constructor,Reflect.construct(t,arguments,e)):t.apply(this,arguments),this);if(e&&("object"===i(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var l=n.default.scorm12,u=n.default.global,m=t.default.scorm12,y=function(e){var t=i;if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&d(t,e);var n,r=p(i);function i(e){if(!(this instanceof i))throw new TypeError("Cannot call a class as a function");var e=f(f({},{mastery_override:!1}),e);return(e=r.call(this,m,e)).cmi=new o.CMI,e.nav=new o.NAV,e.LMSInitialize=e.lmsInitialize,e.LMSFinish=e.lmsFinish,e.LMSGetValue=e.lmsGetValue,e.LMSSetValue=e.lmsSetValue,e.LMSCommit=e.lmsCommit,e.LMSGetLastError=e.lmsGetLastError,e.LMSGetErrorString=e.lmsGetErrorString,e.LMSGetDiagnostic=e.lmsGetDiagnostic,e}return t=i,(e=[{key:"lmsInitialize",value:function(){return this.cmi.initialize(),this.initialize("LMSInitialize","LMS was already initialized!","LMS is already finished!")}},{key:"lmsFinish",value:function(){var e=this.terminate("LMSFinish",!0);return e===u.SCORM_TRUE&&(""!==this.nav.event?"continue"===this.nav.event?this.processListeners("SequenceNext"):this.processListeners("SequencePrevious"):this.settings.autoProgress&&this.processListeners("SequenceNext")),e}},{key:"lmsGetValue",value:function(e){return this.getValue("LMSGetValue",!1,e)}},{key:"lmsSetValue",value:function(e,t){return this.setValue("LMSSetValue","LMSCommit",!1,e,t)}},{key:"lmsCommit",value:function(){return this.commit("LMSCommit",!1)}},{key:"lmsGetLastError",value:function(){return this.getLastError("LMSGetLastError")}},{key:"lmsGetErrorString",value:function(e){return this.getErrorString("LMSGetErrorString",e)}},{key:"lmsGetDiagnostic",value:function(e){return this.getDiagnostic("LMSGetDiagnostic",e)}},{key:"setCMIValue",value:function(e,t){return this._commonSetCMIValue("LMSSetValue",!1,e,t)}},{key:"getCMIValue",value:function(e){return this._commonGetCMIValue("getCMIValue",!1,e)}},{key:"getChildElement",value:function(e,t,n){var r;return this.stringMatches(e,"cmi\\.objectives\\.\\d+")?r=new o.CMIObjectivesObject:n&&this.stringMatches(e,"cmi\\.interactions\\.\\d+\\.correct_responses\\.\\d+")?r=new o.CMIInteractionsCorrectResponsesObject:n&&this.stringMatches(e,"cmi\\.interactions\\.\\d+\\.objectives\\.\\d+")?r=new o.CMIInteractionsObjectivesObject:!n&&this.stringMatches(e,"cmi\\.interactions\\.\\d+")&&(r=new o.CMIInteractionsObject),r}},{key:"validateCorrectResponse",value:function(e,t){return!0}},{key:"getLmsErrorMessageDetails",value:function(e,t){var n="No Error",r="No Error";return e=String(e),l.error_descriptions[e]&&(n=l.error_descriptions[e].basicMessage,r=l.error_descriptions[e].detailMessage),t?r:n}},{key:"replaceWithAnotherScormAPI",value:function(e){this.cmi=e.cmi}},{key:"renderCommitCMI",value:function(e){var t=this.renderCMIToJSONObject(),n=(e&&(t.cmi.core.total_time=this.cmi.getCurrentTotalTime()),[]),r=a.flatten(t);switch(this.settings.dataCommitFormat){case"flattened":return a.flatten(t);case"params":for(var i in r)!{}.hasOwnProperty.call(r,i)||n.push("".concat(i,"=").concat(r[i]));return n;default:return t}}},{key:"storeData",value:function(e){e&&("not attempted"===(t=this.cmi.core.lesson_status)&&(this.cmi.core.lesson_status="completed"),"normal"===this.cmi.core.lesson_mode?"credit"===this.cmi.core.credit&&this.settings.mastery_override&&""!==this.cmi.student_data.mastery_score&&""!==this.cmi.core.score.raw&&(parseFloat(this.cmi.core.score.raw)>=parseFloat(this.cmi.student_data.mastery_score)?this.cmi.core.lesson_status="passed":this.cmi.core.lesson_status="failed"):"browse"===this.cmi.core.lesson_mode&&""===((null===(i=this.startingData)||void 0===i||null===(n=i.cmi)||void 0===n||null===(r=n.core)||void 0===r?void 0:r.lesson_status)||"")&&"not attempted"===t&&(this.cmi.core.lesson_status="browsed"));var t,n,r,i=this.renderCommitCMI(e||this.settings.alwaysSendTotalTime);return this.apiLogLevel===u.LOG_LEVEL_DEBUG&&(console.debug("Commit (terminated: "+(e?"yes":"no")+"): "),console.debug(i)),this.settings.lmsCommitUrl?this.processHttpRequest(this.settings.lmsCommitUrl,i,e):u.SCORM_TRUE}}])&&h(t.prototype,e),n&&h(t,n),Object.defineProperty(t,"prototype",{writable:!1}),i}(e.default)},"./src/cmi/aicc_cmi.js":
/*!*****************************!*\
!*** ./src/cmi/aicc_cmi.js ***!
\*****************************/function(t,n,h){"use strict";h.r(n),h.d(n,{CMI:function(){return C},CMIAttemptRecords:function(){return fe},CMIAttemptRecordsObject:function(){return de},CMIEvaluationCommentsObject:function(){return ge},CMIPaths:function(){return Q},CMIPathsObject:function(){return ae},CMIStudentDemographics:function(){return K},CMITries:function(){return se},CMITriesObject:function(){return ue}});var d=h(/*! ./scorm12_cmi */"./src/cmi/scorm12_cmi.js"),r=h(/*! ./common */"./src/cmi/common.js"),n=h(/*! ../constants/api_constants */"./src/constants/api_constants.js"),p=h(/*! ../constants/regex */"./src/constants/regex.js"),m=h(/*! ../constants/error_codes */"./src/constants/error_codes.js"),y=h(/*! ../exceptions */"./src/exceptions.js");function g(e){return(g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function i(e,t,n){var r=e;if(t.has(r))throw new TypeError("Cannot initialize the same private elements twice on an object");t.set(e,n)}function o(e,t,n){var t=_(e,t,"set"),r=n;if(t.set)t.set.call(e,r);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=r}return n}function e(e,t){t=_(e,t,"get");return t.get?t.get.call(e):t.value}function _(e,t,n){if(!t.has(e))throw new TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function v(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function s(e,t,n){return t&&v(e.prototype,t),n&&v(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function b(){return(b="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=O(e)););return e}(e,t);if(r)return r=Object.getOwnPropertyDescriptor(r,t),r.get?r.get.call(arguments.length<3?e:n):r.value}).apply(this,arguments)}function E(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&M(e,t)}function M(e,t){return(M=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function w(n){var r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var e,t=O(n),t=(e=r?(e=O(this).constructor,Reflect.construct(t,arguments,e)):t.apply(this,arguments),this);if(e&&("object"===g(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return c(t)}}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function O(e){return(O=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var S=n.default.aicc,l=p.default.aicc,I=m.default.scorm12;function u(){throw new y.AICCValidationError(I.READ_ONLY_ELEMENT)}function f(e,t,n){return(0,r.checkValidFormat)(e,t,I.TYPE_MISMATCH,y.AICCValidationError,n)}var C=function(){E(r,d.CMI);var n=w(r);function r(e){var t;return a(this,r),t=n.call(this,S.cmi_children),e&&t.initialize(),t.student_preference=new D,t.student_data=new V,t.student_demographics=new K,t.evaluation=new T,t.paths=new Q,t}return s(r,[{key:"initialize",value:function(){var e;b(O(r.prototype),"initialize",this).call(this),null!==(e=this.student_preference)&&void 0!==e&&e.initialize(),null!==(e=this.student_data)&&void 0!==e&&e.initialize(),null!==(e=this.student_demographics)&&void 0!==e&&e.initialize(),null!==(e=this.evaluation)&&void 0!==e&&e.initialize(),null!==(e=this.paths)&&void 0!==e&&e.initialize()}},{key:"toJSON",value:function(){this.jsonString=!0;var e={suspend_data:this.suspend_data,launch_data:this.launch_data,comments:this.comments,comments_from_lms:this.comments_from_lms,core:this.core,objectives:this.objectives,student_data:this.student_data,student_preference:this.student_preference,student_demographics:this.student_demographics,interactions:this.interactions,evaluation:this.evaluation,paths:this.paths};return delete this.jsonString,e}}]),r}(),T=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),(e=t.call(this)).comments=new j,e}return s(n,[{key:"initialize",value:function(){var e;b(O(n.prototype),"initialize",this).call(this),null!==(e=this.comments)&&void 0!==e&&e.initialize()}},{key:"toJSON",value:function(){this.jsonString=!0;var e={comments:this.comments};return delete this.jsonString,e}}]),n}(),j=function(){E(t,r.CMIArray);var e=w(t);function t(){return a(this,t),e.call(this,{children:S.comments_children,errorCode:I.INVALID_SET_VALUE,errorClass:y.AICCValidationError})}return s(t)}(),k=new WeakMap,R=new WeakMap,L=new WeakMap,A=new WeakMap,N=new WeakMap,D=function(){E(n,d.CMIStudentPreference);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this,S.student_preference_children)),k,{writable:!0,value:""}),i(c(e),R,{writable:!0,value:""}),i(c(e),L,{writable:!0,value:""}),i(c(e),A,{writable:!0,value:""}),i(c(e),N,{writable:!0,value:""}),e.windows=new r.CMIArray({errorCode:I.INVALID_SET_VALUE,errorClass:y.AICCValidationError,children:""}),e}return s(n,[{key:"initialize",value:function(){var e;b(O(n.prototype),"initialize",this).call(this),null!==(e=this.windows)&&void 0!==e&&e.initialize()}},{key:"lesson_type",get:function(){return e(this,k)},set:function(e){f(e,l.CMIString256)&&o(this,k,e)}},{key:"text_color",get:function(){return e(this,R)},set:function(e){f(e,l.CMIString256)&&o(this,R,e)}},{key:"text_location",get:function(){return e(this,L)},set:function(e){f(e,l.CMIString256)&&o(this,L,e)}},{key:"text_size",get:function(){return e(this,A)},set:function(e){f(e,l.CMIString256)&&o(this,A,e)}},{key:"video",get:function(){return e(this,N)},set:function(e){f(e,l.CMIString256)&&o(this,N,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={audio:this.audio,language:this.language,lesson_type:this.lesson_type,speed:this.speed,text:this.text,text_color:this.text_color,text_location:this.text_location,text_size:this.text_size,video:this.video,windows:this.windows};return delete this.jsonString,e}}]),n}(),P=new WeakMap,V=function(){E(n,d.CMIStudentData);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this,S.student_data_children)),P,{writable:!0,value:""}),e.tries=new se,e}return s(n,[{key:"initialize",value:function(){var e;b(O(n.prototype),"initialize",this).call(this),null!==(e=this.tries)&&void 0!==e&&e.initialize()}},{key:"tries_during_lesson",get:function(){return e(this,P)},set:function(e){this.initialized?u():o(this,P,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={mastery_score:this.mastery_score,max_time_allowed:this.max_time_allowed,time_limit_action:this.time_limit_action,tries:this.tries};return delete this.jsonString,e}}]),n}(),F=new WeakMap,x=new WeakMap,z=new WeakMap,W=new WeakMap,G=new WeakMap,U=new WeakMap,B=new WeakMap,$=new WeakMap,H=new WeakMap,J=new WeakMap,Z=new WeakMap,Y=new WeakMap,q=new WeakMap,X=new WeakMap,K=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this)),F,{writable:!0,value:S.student_demographics_children}),i(c(e),x,{writable:!0,value:""}),i(c(e),z,{writable:!0,value:""}),i(c(e),W,{writable:!0,value:""}),i(c(e),G,{writable:!0,value:""}),i(c(e),U,{writable:!0,value:""}),i(c(e),B,{writable:!0,value:""}),i(c(e),$,{writable:!0,value:""}),i(c(e),H,{writable:!0,value:""}),i(c(e),J,{writable:!0,value:""}),i(c(e),Z,{writable:!0,value:""}),i(c(e),Y,{writable:!0,value:""}),i(c(e),q,{writable:!0,value:""}),i(c(e),X,{writable:!0,value:""}),e}return s(n,[{key:"_children",get:function(){return e(this,F)}},{key:"city",get:function(){return e(this,x)},set:function(e){this.initialized?u():o(this,x,e)}},{key:"class",get:function(){return e(this,z)},set:function(e){this.initialized?u():o(this,z,e)}},{key:"company",get:function(){return e(this,W)},set:function(e){this.initialized?u():o(this,W,e)}},{key:"country",get:function(){return e(this,G)},set:function(e){this.initialized?u():o(this,G,e)}},{key:"experience",get:function(){return e(this,U)},set:function(e){this.initialized?u():o(this,U,e)}},{key:"familiar_name",get:function(){return e(this,B)},set:function(e){this.initialized?u():o(this,B,e)}},{key:"instructor_name",get:function(){return e(this,$)},set:function(e){this.initialized?u():o(this,$,e)}},{key:"title",get:function(){return e(this,H)},set:function(e){this.initialized?u():o(this,H,e)}},{key:"native_language",get:function(){return e(this,J)},set:function(e){this.initialized?u():o(this,J,e)}},{key:"state",get:function(){return e(this,Z)},set:function(e){this.initialized?u():o(this,Z,e)}},{key:"street_address",get:function(){return e(this,Y)},set:function(e){this.initialized?u():o(this,Y,e)}},{key:"telephone",get:function(){return e(this,q)},set:function(e){this.initialized?u():o(this,q,e)}},{key:"years_experience",get:function(){return e(this,X)},set:function(e){this.initialized?u():o(this,X,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={city:this.city,class:this.class,company:this.company,country:this.country,experience:this.experience,familiar_name:this.familiar_name,instructor_name:this.instructor_name,title:this.title,native_language:this.native_language,state:this.state,street_address:this.street_address,telephone:this.telephone,years_experience:this.years_experience};return delete this.jsonString,e}}]),n}(),Q=function(){E(t,r.CMIArray);var e=w(t);function t(){return a(this,t),e.call(this,{children:S.paths_children})}return s(t)}(),ee=new WeakMap,te=new WeakMap,ne=new WeakMap,re=new WeakMap,ie=new WeakMap,oe=new WeakMap,ae=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this)),ee,{writable:!0,value:""}),i(c(e),te,{writable:!0,value:""}),i(c(e),ne,{writable:!0,value:""}),i(c(e),re,{writable:!0,value:""}),i(c(e),ie,{writable:!0,value:""}),i(c(e),oe,{writable:!0,value:""}),e}return s(n,[{key:"location_id",get:function(){return e(this,ee)},set:function(e){f(e,l.CMIString256)&&o(this,ee,e)}},{key:"date",get:function(){return e(this,te)},set:function(e){f(e,l.CMIString256)&&o(this,te,e)}},{key:"time",get:function(){return e(this,ne)},set:function(e){f(e,l.CMITime)&&o(this,ne,e)}},{key:"status",get:function(){return e(this,re)},set:function(e){f(e,l.CMIStatus2)&&o(this,re,e)}},{key:"why_left",get:function(){return e(this,ie)},set:function(e){f(e,l.CMIString256)&&o(this,ie,e)}},{key:"time_in_element",get:function(){return e(this,oe)},set:function(e){f(e,l.CMITime)&&o(this,oe,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={location_id:this.location_id,date:this.date,time:this.time,status:this.status,why_left:this.why_left,time_in_element:this.time_in_element};return delete this.jsonString,e}}]),n}(),se=function(){E(t,r.CMIArray);var e=w(t);function t(){return a(this,t),e.call(this,{children:S.tries_children})}return s(t)}(),ce=new WeakMap,le=new WeakMap,ue=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this)),ce,{writable:!0,value:""}),i(c(e),le,{writable:!0,value:""}),e.score=new r.CMIScore({score_children:S.score_children,score_range:l.score_range,invalidErrorCode:I.INVALID_SET_VALUE,invalidTypeCode:I.TYPE_MISMATCH,invalidRangeCode:I.VALUE_OUT_OF_RANGE,errorClass:y.AICCValidationError}),e}return s(n,[{key:"initialize",value:function(){var e;b(O(n.prototype),"initialize",this).call(this),null!==(e=this.score)&&void 0!==e&&e.initialize()}},{key:"status",get:function(){return e(this,ce)},set:function(e){f(e,l.CMIStatus2)&&o(this,ce,e)}},{key:"time",get:function(){return e(this,le)},set:function(e){f(e,l.CMITime)&&o(this,le,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={status:this.status,time:this.time,score:this.score};return delete this.jsonString,e}}]),n}(),fe=function(){E(t,r.CMIArray);var e=w(t);function t(){return a(this,t),e.call(this,{children:S.attempt_records_children})}return s(t)}(),he=new WeakMap,de=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this)),he,{writable:!0,value:""}),e.score=new r.CMIScore({score_children:S.score_children,score_range:l.score_range,invalidErrorCode:I.INVALID_SET_VALUE,invalidTypeCode:I.TYPE_MISMATCH,invalidRangeCode:I.VALUE_OUT_OF_RANGE,errorClass:y.AICCValidationError}),e}return s(n,[{key:"initialize",value:function(){var e;b(O(n.prototype),"initialize",this).call(this),null!==(e=this.score)&&void 0!==e&&e.initialize()}},{key:"lesson_status",get:function(){return e(this,he)},set:function(e){f(e,l.CMIStatus2)&&o(this,he,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={lesson_status:this.lesson_status,score:this.score};return delete this.jsonString,e}}]),n}(),pe=new WeakMap,me=new WeakMap,ye=new WeakMap,ge=function(){E(n,r.BaseCMI);var t=w(n);function n(){var e;return a(this,n),i(c(e=t.call(this)),pe,{writable:!0,value:""}),i(c(e),me,{writable:!0,value:""}),i(c(e),ye,{writable:!0,value:""}),e}return s(n,[{key:"content",get:function(){return e(this,pe)},set:function(e){f(e,l.CMIString256)&&o(this,pe,e)}},{key:"location",get:function(){return e(this,me)},set:function(e){f(e,l.CMIString256)&&o(this,me,e)}},{key:"time",get:function(){return e(this,ye)},set:function(e){f(e,l.CMITime)&&o(this,ye,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={content:this.content,location:this.location,time:this.time};return delete this.jsonString,e}}]),n}()},"./src/cmi/common.js":
/*!***************************!*\
!*** ./src/cmi/common.js ***!
\***************************/function(n,r,e){"use strict";e.r(r),e.d(r,{BaseCMI:function(){return j},CMIArray:function(){return x},CMIScore:function(){return D},checkValidFormat:function(){return S},checkValidRange:function(){return I}});var r=e(/*! ../constants/api_constants */"./src/constants/api_constants.js"),i=e(/*! ../constants/error_codes */"./src/constants/error_codes.js"),e=e(/*! ../constants/regex */"./src/constants/regex.js");function o(e){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&s(e,t)}function s(e,t){return(s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function c(n){var r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}();return function(){var e,t=l(n),t=(e=r?(e=l(this).constructor,Reflect.construct(t,arguments,e)):t.apply(this,arguments),this);if(e&&("object"===o(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return f(t)}}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function b(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function h(e,t,n){var r=e;if(t.has(r))throw new TypeError("Cannot initialize the same private elements twice on an object");t.set(e,n)}function d(e,t,n){var t=E(e,t,"set"),r=n;if(t.set)t.set.call(e,r);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=r}return n}function t(e,t){t=E(e,t,"get");return t.get?t.get.call(e):t.value}function E(e,t,n){if(!t.has(e))throw new TypeError("attempted to "+n+" private field on non-instance");return t.get(e)}var M=r.default.scorm12,w=e.default.scorm12,O=i.default.scorm12;function S(e,t,n,r,i){t=new RegExp(t),t=e.match(t);if(i&&""===e)return!0;if(void 0===e||!t||""===t[0])throw new r.prototype.constructor(n);return!0}function I(e,t,n,r){t=t.split("#");if((e=+e)>=t[0]){if("*"===t[1]||e<=t[1])return!0;throw new r.prototype.constructor(n)}throw new r.prototype.constructor(n)}var C=new WeakMap,T=new WeakMap,j=function(){function r(){var e,t,n;if(v(this,r),n=!(t="jsonString"),t in(e=this)?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,h(this,C,{writable:!0,value:!1}),h(this,T,{writable:!0,value:void 0}),(this instanceof r?this.constructor:void 0)===r)throw new TypeError("Cannot construct BaseCMI instances directly")}return b(r,[{key:"initialized",get:function(){return t(this,C)}},{key:"start_time",get:function(){return t(this,T)}},{key:"initialize",value:function(){d(this,C,!0)}},{key:"setStartTime",value:function(){d(this,T,(new Date).getTime())}}]),r}(),k=new WeakMap,p=new WeakMap,R=new WeakMap,m=new WeakMap,y=new WeakMap,g=new WeakMap,_=new WeakMap,L=new WeakMap,A=new WeakMap,N=new WeakMap,D=function(){a(u,j);var l=c(u);function u(e){var t,n=e.score_children,r=e.score_range,i=e.max,o=e.invalidErrorCode,a=e.invalidTypeCode,s=e.invalidRangeCode,c=e.decimalRegex,e=e.errorClass;return v(this,u),h(f(t=l.call(this)),k,{writable:!0,value:void 0}),h(f(t),p,{writable:!0,value:void 0}),h(f(t),R,{writable:!0,value:void 0}),h(f(t),m,{writable:!0,value:void 0}),h(f(t),y,{writable:!0,value:void 0}),h(f(t),g,{writable:!0,value:void 0}),h(f(t),_,{writable:!0,value:void 0}),h(f(t),L,{writable:!0,value:""}),h(f(t),A,{writable:!0,value:""}),h(f(t),N,{writable:!0,value:void 0}),d(f(t),k,n||M.score_children),d(f(t),p,!!r&&w.score_range),d(f(t),N,i||""===i?i:"100"),d(f(t),R,o||O.INVALID_SET_VALUE),d(f(t),m,a||O.TYPE_MISMATCH),d(f(t),y,s||O.VALUE_OUT_OF_RANGE),d(f(t),g,c||w.CMIDecimal),d(f(t),_,e),t}return b(u,[{key:"_children",get:function(){return t(this,k)},set:function(e){throw new(t(this,_).prototype.constructor)(t(this,R))}},{key:"raw",get:function(){return t(this,L)},set:function(e){!S(e,t(this,g),t(this,m),t(this,_))||t(this,p)&&!I(e,t(this,p),t(this,y),t(this,_))||d(this,L,e)}},{key:"min",get:function(){return t(this,A)},set:function(e){!S(e,t(this,g),t(this,m),t(this,_))||t(this,p)&&!I(e,t(this,p),t(this,y),t(this,_))||d(this,A,e)}},{key:"max",get:function(){return t(this,N)},set:function(e){!S(e,t(this,g),t(this,m),t(this,_))||t(this,p)&&!I(e,t(this,p),t(this,y),t(this,_))||d(this,N,e)}},{key:"toJSON",value:function(){this.jsonString=!0;var e={raw:this.raw,min:this.min,max:this.max};return delete this.jsonString,e}}]),u}(),P=new WeakMap,V=new WeakMap,F=new WeakMap,x=function(){a(o,j);var i=c(o);function o(e){var t,n=e.children,r=e.errorCode,e=e.errorClass;return v(this,o),h(f(t=i.call(this)),P,{writable:!0,value:void 0}),h(f(t),V,{writable:!0,value:void 0}),h(f(t),F,{writable:!0,value:void 0}),d(f(t),F,n),d(f(t),P,r),d(f(t),V,e),t