@shopgate/pwa-core 6.20.0-beta.3 → 6.20.0-beta.9

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 (42) hide show
  1. package/classes/AppCommand/__mocks__/index.spec.js +1 -1
  2. package/classes/AppCommand/index.js +1 -1
  3. package/classes/AppPermissionsRequest/AppPermissionsRequest.js +3 -3
  4. package/classes/AppPermissionsRequest/AppPermissionsRequest.spec.js +1 -1
  5. package/classes/AppPermissionsRequest/GetAppPermissionsRequest.js +3 -3
  6. package/classes/AppPermissionsRequest/RequestAppPermissionsRequest.js +3 -3
  7. package/classes/Bridge/index.js +1 -1
  8. package/classes/BrightnessRequest/index.js +3 -3
  9. package/classes/BrowserConnector/index.js +16 -16
  10. package/classes/Conditioner/index.js +3 -3
  11. package/classes/DataRequest/index.js +3 -3
  12. package/classes/DevServerBridge/index.js +1 -1
  13. package/classes/DevServerBridge/spec.js +1 -1
  14. package/classes/ErrorManager/index.js +1 -1
  15. package/classes/Event/index.js +3 -3
  16. package/classes/HttpRequest/index.js +3 -3
  17. package/classes/PipelineDependencies/index.js +1 -1
  18. package/classes/PipelineManager/index.js +3 -3
  19. package/classes/PipelineManager/spec.js +1 -1
  20. package/classes/PipelineRequest/index.js +3 -3
  21. package/classes/PipelineRequest/mock.js +10 -10
  22. package/classes/PipelineRequest/mock.spec.js +1 -1
  23. package/classes/PipelineSequence/index.js +1 -1
  24. package/classes/Request/index.js +3 -3
  25. package/classes/RequestBuffer/index.js +3 -3
  26. package/classes/RequestManager/index.js +1 -1
  27. package/classes/RequestManager/spec.js +1 -1
  28. package/classes/Scanner/index.js +3 -3
  29. package/classes/Scanner/index.spec.js +1 -1
  30. package/classes/ScannerEvent/index.js +3 -3
  31. package/classes/ScannerEventHandler/index.js +3 -3
  32. package/classes/ScannerEventHandler/index.spec.js +1 -1
  33. package/classes/ScannerEventListener/index.js +3 -3
  34. package/classes/ScannerEventListener/index.spec.js +1 -1
  35. package/classes/ScannerManager/ScanProcessingError.js +3 -3
  36. package/classes/ScannerManager/index.js +2 -2
  37. package/classes/ScannerManager/index.spec.js +1 -1
  38. package/classes/WebStorageRequest/index.js +3 -3
  39. package/commands/plotProjects.js +1 -1
  40. package/helpers/logGroup.js +1 -1
  41. package/helpers/version.js +5 -5
  42. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}// Mock some underlying classes to avoid faulty code exection.
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}// Mock some underlying classes to avoid faulty code exection.
2
2
  jest.mock("../../DevServerBridge",function(){});jest.mock("../../../commands/getWebStorageEntry",function(){});// List of known "private" methods within the original class.
3
3
  var privateMethods=['constructor','logCommand'];describe('AppCommand mock',function(){describe('check if the mock provides all "public" methods',function(){var OriginalAppCommand=require.requireActual("../index")["default"];var MockedAppCommand=require.requireMock("../index")["default"];// Collect the "public" methods from the original class.
4
4
  var publicMethods=Object.getOwnPropertyNames(OriginalAppCommand.prototype).filter(function(method){return!privateMethods.includes(method);});// To access the methods of the mock, an instance is necessary.
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import{logger,hasSGJavaScriptBridge}from"../../helpers";import{isValidVersion,getLibVersion,isVersionAtLeast}from"../../helpers/version";import logGroup from"../../helpers/logGroup";import*as appCommands from"../../constants/AppCommands";import Bridge from"../Bridge";/**
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import{logger,hasSGJavaScriptBridge}from"../../helpers";import{isValidVersion,getLibVersion,isVersionAtLeast}from"../../helpers/version";import logGroup from"../../helpers/logGroup";import*as appCommands from"../../constants/AppCommands";import Bridge from"../Bridge";/**
2
2
  * The app command class.
3
3
  */var AppCommand=/*#__PURE__*/function(){/**
4
4
  * @param {boolean} log Whether the command will be logged.
@@ -1,12 +1,12 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _get(target,property,receiver){if(typeof Reflect!=="undefined"&&Reflect.get){_get=Reflect.get;}else{_get=function _get(target,property,receiver){var base=_superPropBase(target,property);if(!base)return;var desc=Object.getOwnPropertyDescriptor(base,property);if(desc.get){return desc.get.call(receiver);}return desc.value;};}return _get(target,property,receiver||target);}function _superPropBase(object,property){while(!Object.prototype.hasOwnProperty.call(object,property)){object=_getPrototypeOf(object);if(object===null)break;}return object;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import Request from"../Request";import AppCommand from"../AppCommand";import event from"../Event";import requestBuffer from"../RequestBuffer";import{logger,hasSGJavaScriptBridge}from"../../helpers";import logGroup from"../../helpers/logGroup";import{STATUS_GRANTED}from"../../constants/AppPermissions";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _get(){if(typeof Reflect!=="undefined"&&Reflect.get){_get=Reflect.get;}else{_get=function _get(target,property,receiver){var base=_superPropBase(target,property);if(!base)return;var desc=Object.getOwnPropertyDescriptor(base,property);if(desc.get){return desc.get.call(arguments.length<3?target:receiver);}return desc.value;};}return _get.apply(this,arguments);}function _superPropBase(object,property){while(!Object.prototype.hasOwnProperty.call(object,property)){object=_getPrototypeOf(object);if(object===null)break;}return object;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import Request from"../Request";import AppCommand from"../AppCommand";import event from"../Event";import requestBuffer from"../RequestBuffer";import{logger,hasSGJavaScriptBridge}from"../../helpers";import logGroup from"../../helpers/logGroup";import{STATUS_GRANTED}from"../../constants/AppPermissions";/**
2
2
  * The AppPermissionsRequest class is be base class for app permission related request.
3
3
  * It contains the logic which in necessary to establish the process of sending an
4
4
  * app command and receiving an associated event.
5
- */var AppPermissionsRequest=/*#__PURE__*/function(_Request){_inherits(AppPermissionsRequest,_Request);/**
5
+ */var AppPermissionsRequest=/*#__PURE__*/function(_Request){_inherits(AppPermissionsRequest,_Request);var _super=_createSuper(AppPermissionsRequest);/**
6
6
  * The constructor.
7
7
  * @param {string} commandName The name of the command which is dispatched to the app.
8
8
  * @param {string} eventName The event name which is called by the app to deliver the data.
9
- */function AppPermissionsRequest(commandName,eventName){var _this;_classCallCheck(this,AppPermissionsRequest);_this=_possibleConstructorReturn(this,_getPrototypeOf(AppPermissionsRequest).call(this));_this.commandName=commandName;_this.eventName=eventName;_this.commandParams=null;_this.libVersion='18.0';_this.createSerial(_this.commandName);_this.createEventCallbackName(_this.eventName);return _this;}/**
9
+ */function AppPermissionsRequest(commandName,eventName){var _this;_classCallCheck(this,AppPermissionsRequest);_this=_super.call(this);_this.commandName=commandName;_this.eventName=eventName;_this.commandParams=null;_this.libVersion='18.0';_this.createSerial(_this.commandName);_this.createEventCallbackName(_this.eventName);return _this;}/**
10
10
  * Sets the parameters for the app command.
11
11
  * @private
12
12
  * @param {Object} commandParams The parameters.
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import{hasSGJavaScriptBridge}from"../../helpers";import{PERMISSION_ID_CAMERA,PERMISSION_ID_LOCATION,STATUS_GRANTED}from"../../constants/AppPermissions";import Request from"../Request";import AppPermissionsRequest from"./AppPermissionsRequest";/* eslint-disable import/named */import{triggerDispatchError,mockedSetCommandName,mockedSetCommandParams,mockedSetLibVersion,mockedDispatch}from"../AppCommand";/* eslint-enable import/named */jest.mock("../AppCommand");var lastAddedEventCallback=null;var mockedEventAddCallback=jest.fn();var mockedEventRemoveCallback=jest.fn();jest.mock("../Event",function(){return{addCallback:function addCallback(name,callback){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}mockedEventAddCallback.apply(void 0,[name,callback].concat(args));lastAddedEventCallback=callback;},removeCallback:function removeCallback(){mockedEventRemoveCallback.apply(void 0,arguments);}};});var mockedRequestBufferAdd=jest.fn();var mockedRequestBufferRemove=jest.fn();jest.mock("../RequestBuffer",function(){return{add:function add(){mockedRequestBufferAdd.apply(void 0,arguments);},remove:function remove(){mockedRequestBufferRemove.apply(void 0,arguments);}};});var mockedLoggerError=jest.fn();jest.mock("../../helpers",function(){return{logger:{error:function error(){mockedLoggerError.apply(void 0,arguments);}},hasSGJavaScriptBridge:jest.fn().mockReturnValue(true)};});var mockedLogGroup=jest.fn();// eslint-disable-next-line extra-rules/potential-point-free
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import{hasSGJavaScriptBridge}from"../../helpers";import{PERMISSION_ID_CAMERA,PERMISSION_ID_LOCATION,STATUS_GRANTED}from"../../constants/AppPermissions";import Request from"../Request";import AppPermissionsRequest from"./AppPermissionsRequest";/* eslint-disable import/named */import{triggerDispatchError,mockedSetCommandName,mockedSetCommandParams,mockedSetLibVersion,mockedDispatch}from"../AppCommand";/* eslint-enable import/named */jest.mock("../AppCommand");var lastAddedEventCallback=null;var mockedEventAddCallback=jest.fn();var mockedEventRemoveCallback=jest.fn();jest.mock("../Event",function(){return{addCallback:function addCallback(name,callback){for(var _len=arguments.length,args=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){args[_key-2]=arguments[_key];}mockedEventAddCallback.apply(void 0,[name,callback].concat(args));lastAddedEventCallback=callback;},removeCallback:function removeCallback(){mockedEventRemoveCallback.apply(void 0,arguments);}};});var mockedRequestBufferAdd=jest.fn();var mockedRequestBufferRemove=jest.fn();jest.mock("../RequestBuffer",function(){return{add:function add(){mockedRequestBufferAdd.apply(void 0,arguments);},remove:function remove(){mockedRequestBufferRemove.apply(void 0,arguments);}};});var mockedLoggerError=jest.fn();jest.mock("../../helpers",function(){return{logger:{error:function error(){mockedLoggerError.apply(void 0,arguments);}},hasSGJavaScriptBridge:jest.fn().mockReturnValue(true)};});var mockedLogGroup=jest.fn();// eslint-disable-next-line extra-rules/potential-point-free
2
2
  jest.mock("../../helpers/logGroup",function(){return function logGroup(){mockedLogGroup.apply(void 0,arguments);};});var parentDispatchSpy=jest.spyOn(Request.prototype,'dispatch');var commandName='appCommand';var eventName='appEvent';describe('AppPermissionsRequest',function(){var instance;var cleanUpRequestSpy;var onDispatchSpy;beforeEach(function(){jest.clearAllMocks();lastAddedEventCallback=null;instance=new AppPermissionsRequest(commandName,eventName);cleanUpRequestSpy=jest.spyOn(instance,'cleanUpRequest');onDispatchSpy=jest.spyOn(instance,'onDispatch');});describe('.constructor()',function(){it('should apply parameters as expected',function(){expect(instance.commandName).toBe(commandName);expect(instance.eventName).toBe(eventName);expect(instance.commandParams).toBe(null);expect(instance.libVersion).toBe('18.0');expect(_typeof(instance.serial)).toBe('string');expect(instance.serial.length).toBeGreaterThan(1);expect(_typeof(instance.callbackName)).toBe('string');expect(instance.callbackName.length).toBeGreaterThan(1);});});describe('.setCommandParams()',function(){it('should set command params as expected',function(){var params={permissionIds:[]};var result=instance.setCommandParams(params);expect(result).toEqual(instance);expect(result.commandParams).toEqual(params);});});describe('.cleanUpRequest()',function(){it('should work like expected',function(){var callbackName=instance.getEventCallbackName();var callback=jest.fn();var _instance=instance,serial=_instance.serial;var result=instance.cleanUpRequest(callback);expect(result).toEqual(instance);expect(mockedEventRemoveCallback).toHaveBeenCalledTimes(1);expect(mockedEventRemoveCallback).toHaveBeenCalledWith(callbackName,callback);expect(mockedRequestBufferRemove).toHaveBeenCalledTimes(1);expect(mockedRequestBufferRemove).toHaveBeenCalledWith(serial);});});describe('.validateCommandParams()',function(){it('should throw an error when not overwritten',function(){expect(instance.validateCommandParams).toThrowError(Error);});});describe('.onDispatch()',function(){var commandParams={permissionIds:[]};var permissionsResponse=[{}];// Promise callbacks.
3
3
  var resolveCallback=jest.fn();var rejectCallback=jest.fn();beforeEach(function(){// Overwrite the validate function to always return TRUE.
4
4
  instance.validateCommandParams=function(){return true;};instance.setCommandParams(commandParams);});it('should resolve with permissions when the instance is set up properly',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var result;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:_context.next=2;return instance.onDispatch(resolveCallback,rejectCallback);case 2:result=_context.sent;// Simulate callback invocation through the event listener.
@@ -1,9 +1,9 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import AppPermissionsRequest from"./AppPermissionsRequest";import{availablePermissionsIds}from"../../constants/AppPermissions";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import AppPermissionsRequest from"./AppPermissionsRequest";import{availablePermissionsIds}from"../../constants/AppPermissions";/**
2
2
  * The GetAppPermissionsRequest class is about to get an overview about the already granted
3
3
  * permissions by the operation system e.g. location or camera access.
4
- */var GetAppPermissionsRequest=/*#__PURE__*/function(_AppPermissionsReques){_inherits(GetAppPermissionsRequest,_AppPermissionsReques);/**
4
+ */var GetAppPermissionsRequest=/*#__PURE__*/function(_AppPermissionsReques){_inherits(GetAppPermissionsRequest,_AppPermissionsReques);var _super=_createSuper(GetAppPermissionsRequest);/**
5
5
  * The constructor.
6
- */function GetAppPermissionsRequest(){_classCallCheck(this,GetAppPermissionsRequest);return _possibleConstructorReturn(this,_getPrototypeOf(GetAppPermissionsRequest).call(this,'getAppPermissions','getAppPermissionsResponse'));}/**
6
+ */function GetAppPermissionsRequest(){_classCallCheck(this,GetAppPermissionsRequest);return _super.call(this,'getAppPermissions','getAppPermissionsResponse');}/**
7
7
  * Sets the desired permission ids for the request.
8
8
  * @param {Array} [permissionIds=[]] The permission ids.
9
9
  * @return {GetAppPermissionsRequest}
@@ -1,9 +1,9 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import AppPermissionsRequest from"./AppPermissionsRequest";import{availablePermissionsIds}from"../../constants/AppPermissions";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import AppPermissionsRequest from"./AppPermissionsRequest";import{availablePermissionsIds}from"../../constants/AppPermissions";/**
2
2
  * The RequestAppPermissionsRequest class is about to initiate the process to request
3
3
  * additional permissions from the operating system e.g. location or camera access.
4
- */var RequestAppPermissionsRequest=/*#__PURE__*/function(_AppPermissionsReques){_inherits(RequestAppPermissionsRequest,_AppPermissionsReques);/**
4
+ */var RequestAppPermissionsRequest=/*#__PURE__*/function(_AppPermissionsReques){_inherits(RequestAppPermissionsRequest,_AppPermissionsReques);var _super=_createSuper(RequestAppPermissionsRequest);/**
5
5
  * The constructor.
6
- */function RequestAppPermissionsRequest(){_classCallCheck(this,RequestAppPermissionsRequest);return _possibleConstructorReturn(this,_getPrototypeOf(RequestAppPermissionsRequest).call(this,'requestAppPermissions','requestAppPermissionsResponse'));}/**
6
+ */function RequestAppPermissionsRequest(){_classCallCheck(this,RequestAppPermissionsRequest);return _super.call(this,'requestAppPermissions','requestAppPermissionsResponse');}/**
7
7
  * Sets the desired permissions for the request.
8
8
  * @param {Array} permissions The permissions.
9
9
  * @return {RequestAppPermissionsRequest}
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}/* global SGJavascriptBridge */import{useBrowserConnector,hasSGJavaScriptBridge}from"../../helpers";import BrowserConnector from"../BrowserConnector";import DevServerBridge from"../DevServerBridge";/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}/* global SGJavascriptBridge */import{useBrowserConnector,hasSGJavaScriptBridge}from"../../helpers";import BrowserConnector from"../BrowserConnector";import DevServerBridge from"../DevServerBridge";/**
2
2
  * Creates a new Javascript Bridge for App Commands
3
3
  * based on the device's capabilities.
4
4
  */var Bridge=/*#__PURE__*/function(){/**
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import event from"../Event";import AppCommand from"../AppCommand";import{logger}from"../../helpers";var LIB_VERSION='17.0';var GET_COMMAND_NAME='getCurrentBrightness';var RESPONSE_EVENT_NAME='currentBrightnessResponse';/**
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import event from"../Event";import AppCommand from"../AppCommand";import{logger}from"../../helpers";var LIB_VERSION='17.0';var GET_COMMAND_NAME='getCurrentBrightness';var RESPONSE_EVENT_NAME='currentBrightnessResponse';/**
2
2
  * Brightness request handler.
3
3
  *
4
4
  * Maintains the request command and waits for a response to resolve a promise returned by
@@ -8,10 +8,10 @@ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGenera
8
8
  */function BrightnessRequest(){var _this=this;_classCallCheck(this,BrightnessRequest);_defineProperty(this,"handleResponse",function(response){var queueEntry=_this.responseQueue.shift();if(typeof queueEntry==='undefined'){logger.error('currentBrightnessResponse received but the response handler queue is empty.');return;}var resolve=queueEntry.resolve,reject=queueEntry.reject;if(!response.hasOwnProperty('brightness')){reject(new Error('Invalid response for currentBrightnessResponse. Missing brightness property.'));return;}resolve(response.brightness);});this.responseQueue=[];event.addCallback(RESPONSE_EVENT_NAME,this.handleResponse);}/**
9
9
  * Handles responses
10
10
  * @param {Object} response Response.
11
- */_createClass(BrightnessRequest,[{key:"dispatch",/**
11
+ */_createClass(BrightnessRequest,[{key:"dispatch",value:/**
12
12
  * Dispatches the request.
13
13
  * @returns {Promise}
14
- */value:function dispatch(){var _this2=this;return new Promise(/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(resolve,reject){var command,result;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:_this2.responseQueue.push({resolve:resolve,reject:reject});// Prepare the AppComand.
14
+ */function dispatch(){var _this2=this;return new Promise(/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(resolve,reject){var command,result;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:_this2.responseQueue.push({resolve:resolve,reject:reject});// Prepare the AppComand.
15
15
  command=new AppCommand().setCommandName(GET_COMMAND_NAME).setLibVersion(LIB_VERSION);// Dispatch the command. The method will resolve with FALSE in case of an error.
16
16
  _context.next=4;return command.dispatch();case 4:result=_context.sent;if(result===false){// Remove the queue entry when the dispatch failed.
17
17
  _this2.responseQueue.pop();reject(new Error('getCurrentBrightness command dispatch failed'));}case 6:case"end":return _context.stop();}}},_callee);}));return function(_x,_x2){return _ref.apply(this,arguments);};}());}}]);return BrightnessRequest;}();export default new BrightnessRequest();
@@ -1,4 +1,4 @@
1
- function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import event from"../Event";import{TYPE_TRUSTED}from"../../constants/Pipeline";import*as requestTypes from"../../constants/RequestTypes";import*as appCommands from"../../constants/AppCommands";var appConfig=process.env.APP_CONFIG||{};/**
1
+ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import event from"../Event";import{TYPE_TRUSTED}from"../../constants/Pipeline";import*as requestTypes from"../../constants/RequestTypes";import*as appCommands from"../../constants/AppCommands";var appConfig=process.env.APP_CONFIG||{};/**
2
2
  * The BrowserConnector emulates the SGJavaScriptBridge within browser environments.
3
3
  * It routes supported app commands to Shopgate Connect which can mimic the behavior of the app.
4
4
  */var BrowserConnector=/*#__PURE__*/function(){/**
@@ -15,21 +15,9 @@ cmds.forEach(function(command){var name=command.c;var params=command.p;var args=
15
15
  * Builds the GET query.
16
16
  * @param {Object} input The input parameters.
17
17
  * @return {string}
18
- */_createClass(BrowserConnector,[{key:"getRequestBody",/**
19
- * @param {string} libVersion The library version.
20
- * @returns {string}
21
- */value:function getRequestBody(libVersion){if(this.isPipelineRequest){var p=this.command.p;var input=p.input;return JSON.stringify(input);}return JSON.stringify({cmds:[this.command],ver:libVersion});}/**
22
- * Dispatches a single command to the dev server.
23
- * @param {Object} command The command to dispatch.
24
- * @param {string} libVersion The lib version for the command.
25
- * @return {BrowserConnector}
26
- */},{key:"dispatchCommandForVersion",value:function dispatchCommandForVersion(command,libVersion){this.command=command;var _ref2=this.command||{},name=_ref2.c;if(this.supportedCommands.includes(name)){var URL=this.isPipelineRequest?this.connectUrl:this.localURL;var options=_extends({method:this.requestType,credentials:'include',headers:new Headers({'Content-Type':'application/json'})},this.isPOST&&{body:this.getRequestBody(libVersion)});fetch(URL,options).then(function(response){return response.json();}).then(this.processResponse)["catch"](function(err){return err&&logger.error(err);});}return this;}/**
27
- * Handles a response of the server.
28
- * @param {Object} response The server response.
29
- * @return {BrowserConnector}
30
- */},{key:"requestType",/**
18
+ */_createClass(BrowserConnector,[{key:"requestType",get:/**
31
19
  * @return {string}
32
- */get:function get(){if(!this.isPipelineRequest){return requestTypes.REQUEST_TYPE_POST;}var segments=this.command.p.name.split('.');if(segments[2].startsWith('get')){return requestTypes.REQUEST_TYPE_GET;}return requestTypes.REQUEST_TYPE_POST;}/**
20
+ */function get(){if(!this.isPipelineRequest){return requestTypes.REQUEST_TYPE_POST;}var segments=this.command.p.name.split('.');if(segments[2].startsWith('get')){return requestTypes.REQUEST_TYPE_GET;}return requestTypes.REQUEST_TYPE_POST;}/**
33
21
  * @return {boolean}
34
22
  */},{key:"isGET",get:function get(){return this.requestType===requestTypes.REQUEST_TYPE_GET;}/**
35
23
  * @return {boolean}
@@ -41,4 +29,16 @@ cmds.forEach(function(command){var name=command.c;var params=command.p;var args=
41
29
  * @return {string}
42
30
  */},{key:"suffix",get:function get(){if(this.command.c===appCommands.COMMAND_GET_WEBSTORAGE_ENTRY){return'web_storage';}if(this.command.c===appCommands.COMMAND_SEND_HTTP_REQUEST){return'http_request';}return'';}/**
43
31
  * @return {string}
44
- */},{key:"localURL",get:function get(){return"http://".concat(this.ip,":").concat(this.port,"/").concat(this.suffix);}}]);return BrowserConnector;}();export default BrowserConnector;
32
+ */},{key:"localURL",get:function get(){return"http://".concat(this.ip,":").concat(this.port,"/").concat(this.suffix);}/**
33
+ * @param {string} libVersion The library version.
34
+ * @returns {string}
35
+ */},{key:"getRequestBody",value:function getRequestBody(libVersion){if(this.isPipelineRequest){var p=this.command.p;var input=p.input;return JSON.stringify(input);}return JSON.stringify({cmds:[this.command],ver:libVersion});}/**
36
+ * Dispatches a single command to the dev server.
37
+ * @param {Object} command The command to dispatch.
38
+ * @param {string} libVersion The lib version for the command.
39
+ * @return {BrowserConnector}
40
+ */},{key:"dispatchCommandForVersion",value:function dispatchCommandForVersion(command,libVersion){this.command=command;var _ref2=this.command||{},name=_ref2.c;if(this.supportedCommands.includes(name)){var URL=this.isPipelineRequest?this.connectUrl:this.localURL;var options=_extends({method:this.requestType,credentials:'include',headers:new Headers({'Content-Type':'application/json'})},this.isPOST&&{body:this.getRequestBody(libVersion)});fetch(URL,options).then(function(response){return response.json();}).then(this.processResponse)["catch"](function(err){return err&&logger.error(err);});}return this;}/**
41
+ * Handles a response of the server.
42
+ * @param {Object} response The server response.
43
+ * @return {BrowserConnector}
44
+ */}]);return BrowserConnector;}();export default BrowserConnector;
@@ -1,11 +1,11 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";/**
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";/**
2
2
  * Creates an action handler API.
3
- */var Conditioner=/*#__PURE__*/function(){function Conditioner(){_classCallCheck(this,Conditioner);_defineProperty(this,"conditions",new Map());}_createClass(Conditioner,[{key:"addConditioner",/**
3
+ */var Conditioner=/*#__PURE__*/function(){function Conditioner(){_classCallCheck(this,Conditioner);_defineProperty(this,"conditions",new Map());}_createClass(Conditioner,[{key:"addConditioner",value:/**
4
4
  * @param {string} name The name of the registered conditioner.
5
5
  * @param {Function} conditioner The registered conditioner.
6
6
  * @param {number} priority conditioner priority
7
7
  * @return {Conditioner}
8
- */value:function addConditioner(name,conditioner){var priority=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;if(typeof conditioner!=='function'){throw new Error("Conditioners need to be of type function. Received: '".concat(_typeof(conditioner),"'"));}this.conditions.set(name,{priority:priority,conditioner:conditioner});return this;}/**
8
+ */function addConditioner(name,conditioner){var priority=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;if(typeof conditioner!=='function'){throw new Error("Conditioners need to be of type function. Received: '".concat(_typeof(conditioner),"'"));}this.conditions.set(name,{priority:priority,conditioner:conditioner});return this;}/**
9
9
  * @param {string} name The name of the registered conditioner.
10
10
  * @return {Conditioner}
11
11
  */},{key:"removeConditioner",value:function removeConditioner(name){if(!this.conditions.has(name)){logger.warn("Couldn't remove conditioner. '".concat(name,"' no found."));return this;}this.conditions["delete"](name);return this;}/**
@@ -1,9 +1,9 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import event from"../Event";import AppCommand from"../AppCommand";import Request from"../Request";import requestBuffer from"../RequestBuffer";import{logger,ajaxUrl}from"../../helpers";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import event from"../Event";import AppCommand from"../AppCommand";import Request from"../Request";import requestBuffer from"../RequestBuffer";import{logger,ajaxUrl}from"../../helpers";/**
2
2
  * The DataRequest class. It is the interface to the legacy system.
3
- */var DataRequest=/*#__PURE__*/function(_Request){_inherits(DataRequest,_Request);/**
3
+ */var DataRequest=/*#__PURE__*/function(_Request){_inherits(DataRequest,_Request);var _super=_createSuper(DataRequest);/**
4
4
  * Initializes the DataRequest object
5
5
  * @param {string} src The source url
6
- */function DataRequest(src){var _this;_classCallCheck(this,DataRequest);_this=_possibleConstructorReturn(this,_getPrototypeOf(DataRequest).call(this));_this.src=src;_this.payload={};_this.noCache=true;_this.createSerial(_this.src);_this.createEventCallbackName('dataResponse');return _this;}/**
6
+ */function DataRequest(src){var _this;_classCallCheck(this,DataRequest);_this=_super.call(this);_this.src=src;_this.payload={};_this.noCache=true;_this.createSerial(_this.src);_this.createEventCallbackName('dataResponse');return _this;}/**
7
7
  * Sets the payload for the DataRequest
8
8
  * @param {Object|string} [payload={}] The payload to send with the request
9
9
  * @returns {DataRequest}
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import fetch from'isomorphic-fetch';import{logger}from"../../helpers";import event from"../Event";/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import fetch from'isomorphic-fetch';import{logger}from"../../helpers";import event from"../Event";/**
2
2
  * The DevServerBridge emulates the SGJavaScriptBridge within browser environments.
3
3
  * It routes supported app commands to the Frontend SDK which can mimic the behavior of the app.
4
4
  */var DevServerBridge=/*#__PURE__*/function(){/**
@@ -1,4 +1,4 @@
1
- function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArrayLimit(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=arr[Symbol.iterator](),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}import DevServerBridge from"./index";// A libVersion for the bridge method calls
1
+ function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest();}function _nonIterableRest(){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 _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2[i]=arr[i];}return arr2;}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}import DevServerBridge from"./index";// A libVersion for the bridge method calls
2
2
  var libVersion='16.1';var devServerIp='192.168.0.1';var devServerPort='1337';// Mocks of the env variables.
3
3
  global.process.env={IP:devServerIp,PORT:devServerPort};// Mocks of the global Headers class.
4
4
  global.Headers=function(){};// Create a mock for the fetch method.
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import EventEmitter from'events';import{DEFAULT_CONTEXT,SOURCE_PIPELINE,DEFAULT_SEVERITY}from"../../constants/ErrorManager";export var emitter=new EventEmitter();var pipelineVersionSuffix=/\.v\d+$/;/**
1
+ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import EventEmitter from'events';import{DEFAULT_CONTEXT,SOURCE_PIPELINE,DEFAULT_SEVERITY}from"../../constants/ErrorManager";export var emitter=new EventEmitter();var pipelineVersionSuffix=/\.v\d+$/;/**
2
2
  * The ErrorManager class.
3
3
  */var ErrorManager=/*#__PURE__*/function(){/**
4
4
  * Constructor.
@@ -1,8 +1,8 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import EventEmitter from'events';import{logger}from"../../helpers";var HANDLER_ADD='add';var HANDLER_REMOVE='remove';/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import EventEmitter from'events';import{logger}from"../../helpers";var HANDLER_ADD='add';var HANDLER_REMOVE='remove';/**
2
2
  * Event class.
3
- */var Event=/*#__PURE__*/function(_EventEmitter){_inherits(Event,_EventEmitter);/**
3
+ */var Event=/*#__PURE__*/function(_EventEmitter){_inherits(Event,_EventEmitter);var _super=_createSuper(Event);/**
4
4
  * Constructor.
5
- */function Event(){var _this;_classCallCheck(this,Event);_this=_possibleConstructorReturn(this,_getPrototypeOf(Event).call(this));_this.setMaxListeners(20);/**
5
+ */function Event(){var _this;_classCallCheck(this,Event);_this=_super.call(this);_this.setMaxListeners(20);/**
6
6
  * A global implementation of the call function to make it accessible to the app.
7
7
  *
8
8
  * We have to check here if there is already a __call from the cake2 project present.
@@ -1,10 +1,10 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import{logger}from"../../helpers";import logGroup from"../../helpers/logGroup";import event from"../Event";import AppCommand from"../AppCommand";import Request from"../Request";import requestBuffer from"../RequestBuffer";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import{logger}from"../../helpers";import logGroup from"../../helpers/logGroup";import event from"../Event";import AppCommand from"../AppCommand";import Request from"../Request";import requestBuffer from"../RequestBuffer";/**
2
2
  * The http request class.
3
3
  * It sends a http request and returns a promise.
4
- */var HttpRequest=/*#__PURE__*/function(_Request){_inherits(HttpRequest,_Request);/**
4
+ */var HttpRequest=/*#__PURE__*/function(_Request){_inherits(HttpRequest,_Request);var _super=_createSuper(HttpRequest);/**
5
5
  * Initializes the HttpRequest object
6
6
  * @param {string} url The url for the request
7
- */function HttpRequest(url){var _this;_classCallCheck(this,HttpRequest);_this=_possibleConstructorReturn(this,_getPrototypeOf(HttpRequest).call(this));_this.url=url;_this.method='GET';_this.followRedirects=false;_this.timeout=30000;_this.payload=null;_this.contentType=null;_this.createSerial(_this.url);_this.createEventCallbackName('httpResponse');return _this;}/**
7
+ */function HttpRequest(url){var _this;_classCallCheck(this,HttpRequest);_this=_super.call(this);_this.url=url;_this.method='GET';_this.followRedirects=false;_this.timeout=30000;_this.payload=null;_this.contentType=null;_this.createSerial(_this.url);_this.createEventCallbackName('httpResponse');return _this;}/**
8
8
  * Sets the payload for the HttpRequest
9
9
  * @param {Object|string} [payload={}] The payload to send with the request
10
10
  * @returns {HttpRequest}
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import logGroup from"../../helpers/logGroup";/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import logGroup from"../../helpers/logGroup";/**
2
2
  * Holds the pipeline dependencies.
3
3
  */var PipelineDependencies=/*#__PURE__*/function(){/**
4
4
  * Constructor.
@@ -1,4 +1,4 @@
1
- function _toArray(arr){return _arrayWithHoles(arr)||_iterableToArray(arr)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArray(iter){if(Symbol.iterator in Object(iter)||Object.prototype.toString.call(iter)==="[object Arguments]")return Array.from(iter);}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import AppCommand from"../AppCommand";import event from"../Event";import errorManager from"../ErrorManager";import pipelineDependencies from"../PipelineDependencies";import pipelineSequence from"../PipelineSequence";import*as errorSources from"../../constants/ErrorManager";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import*as processTypes from"../../constants/ProcessTypes";import{ETIMEOUT,ENETUNREACH}from"../../constants/Pipeline";import logGroup from"../../helpers/logGroup";/**
1
+ function _toArray(arr){return _arrayWithHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableRest();}function _nonIterableRest(){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 _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2[i]=arr[i];}return arr2;}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter);}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import AppCommand from"../AppCommand";import event from"../Event";import errorManager from"../ErrorManager";import pipelineDependencies from"../PipelineDependencies";import pipelineSequence from"../PipelineSequence";import*as errorSources from"../../constants/ErrorManager";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import*as processTypes from"../../constants/ProcessTypes";import{ETIMEOUT,ENETUNREACH}from"../../constants/Pipeline";import logGroup from"../../helpers/logGroup";/**
2
2
  * The PipelineManager class.
3
3
  * Manages requests, retries responses and timeouts of PipelineRequest instances.
4
4
  */var PipelineManager=/*#__PURE__*/function(){/**
@@ -55,10 +55,10 @@ request.callback(error,serial);return;}_this5.decrementRetries(serial);_this5.se
55
55
  * Sanitizes error objects.
56
56
  * @param {Object} error An error object.
57
57
  * @return {Object}
58
- */},{key:"handleError",/**
58
+ */},{key:"handleError",value:/**
59
59
  * Handles a pipeline error.
60
60
  * @param {string} serial The pipeline request serial.
61
- */value:function handleError(serial){var _this$requests$get=this.requests.get(serial),request=_this$requests$get.request;var pipelineName=this.getPipelineNameBySerial(serial);request.error=this.sanitizeError(request.error);var _ref=request.error||{},code=_ref.code,message=_ref.message,validationErrors=_ref.validationErrors,errors=_ref.errors;var err=new Error(message);err.code=code;err.message=message;if(validationErrors!==undefined){err.validationErrors=validationErrors;}if(errors!==undefined){err.errors=errors;}var handleError=request.handleErrors===errorHandleTypes.ERROR_HANDLE_DEFAULT;// Don't handle generally suppressed or via pipeline request blacklisted errors
61
+ */function handleError(serial){var _this$requests$get=this.requests.get(serial),request=_this$requests$get.request;var pipelineName=this.getPipelineNameBySerial(serial);request.error=this.sanitizeError(request.error);var _ref=request.error||{},code=_ref.code,message=_ref.message,validationErrors=_ref.validationErrors,errors=_ref.errors;var err=new Error(message);err.code=code;err.message=message;if(validationErrors!==undefined){err.validationErrors=validationErrors;}if(errors!==undefined){err.errors=errors;}var handleError=request.handleErrors===errorHandleTypes.ERROR_HANDLE_DEFAULT;// Don't handle generally suppressed or via pipeline request blacklisted errors
62
62
  if(this.suppressedErrors.includes(code)||request.errorBlacklist.includes(code)){handleError=false;}if(handleError){errorManager.queue({source:errorSources.SOURCE_PIPELINE,context:pipelineName,meta:{input:request.input},code:code,message:message});}err.handled=handleError;if(!Array.isArray(request.reject)){request.reject(err);}else{request.reject.forEach(function(reject){reject(err);});}}/**
63
63
  * Handles the result of a dispatched PipelineRequest.
64
64
  * @param {string} serial The pipeline request serial.
@@ -1,4 +1,4 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}/* eslint-disable extra-rules/no-single-line-objects */import logGroup from"../../helpers/logGroup";// eslint-disable-next-line import/named
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}/* eslint-disable extra-rules/no-single-line-objects */import logGroup from"../../helpers/logGroup";// eslint-disable-next-line import/named
2
2
  import{mockedDispatch}from"../AppCommand";import event from"../Event";import{ERROR_HANDLE_SUPPRESS}from"../../constants/ErrorHandleTypes";import PipelineRequest from"../PipelineRequest";import pipelineManager from'.';import pipelineDependencies from"../PipelineDependencies";import errorManager from"../ErrorManager";import pipelineSequence from"../PipelineSequence";import{PROCESS_LAST,PROCESS_SEQUENTIAL,PROCESS_ALWAYS}from"../../constants/ProcessTypes";import{ETIMEOUT,ENETUNREACH}from"../../constants/Pipeline";jest.mock("../../helpers/logGroup",function(){return jest.fn();});jest.mock("../ErrorManager",function(){return{queue:jest.fn()};});jest.mock("../AppCommand");jest.mock("../Event",function(){return{removeCallback:jest.fn(),addCallback:jest.fn()};});var PIPELINE_NAME='TestPipeline';var PIPELINE_DEPENDANT='PIPELINE_DEPENDANT';var PIPELINE_DEPENDENCY='PIPELINE_DEPENDENCY';/**
3
3
  * Creates a new pipeline request instance.
4
4
  * @param {string} [pipelineName=PIPELINE_NAME] Name of the request pipeline.
@@ -1,9 +1,9 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import Request from"../Request";import pipelineManager from"../PipelineManager";import{CURRENT_VERSION}from"../../constants/Pipeline";import*as processTypes from"../../constants/ProcessTypes";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import{logger}from"../../helpers";export var DEFAULT_VERSION=CURRENT_VERSION;export var DEFAULT_RETRIES=3;export var DEFAULT_MAX_RETRIES=5;export var DEFAULT_INPUT={};export var DEFAULT_TIMEOUT=20000;export var DEFAULT_MAX_TIMEOUT=30000;export var DEFAULT_PROCESSED=processTypes.PROCESS_ALWAYS;export var DEFAULT_HANDLE_ERROR=errorHandleTypes.ERROR_HANDLE_DEFAULT;/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import Request from"../Request";import pipelineManager from"../PipelineManager";import{CURRENT_VERSION}from"../../constants/Pipeline";import*as processTypes from"../../constants/ProcessTypes";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import{logger}from"../../helpers";export var DEFAULT_VERSION=CURRENT_VERSION;export var DEFAULT_RETRIES=3;export var DEFAULT_MAX_RETRIES=5;export var DEFAULT_INPUT={};export var DEFAULT_TIMEOUT=20000;export var DEFAULT_MAX_TIMEOUT=30000;export var DEFAULT_PROCESSED=processTypes.PROCESS_ALWAYS;export var DEFAULT_HANDLE_ERROR=errorHandleTypes.ERROR_HANDLE_DEFAULT;/**
2
2
  * Defines a pipeline request.
3
3
  * @class
4
- */var PipelineRequest=/*#__PURE__*/function(_Request){_inherits(PipelineRequest,_Request);/**
4
+ */var PipelineRequest=/*#__PURE__*/function(_Request){_inherits(PipelineRequest,_Request);var _super=_createSuper(PipelineRequest);/**
5
5
  * @param {string} name The pipeline name. Excluding the version.
6
- */function PipelineRequest(name){var _this;_classCallCheck(this,PipelineRequest);if(!name)throw new Error('The \'name\' parameter is not set!');_this=_possibleConstructorReturn(this,_getPrototypeOf(PipelineRequest).call(this));_this.name=name;_this.version=DEFAULT_VERSION;_this.input=DEFAULT_INPUT;_this.trusted=false;_this.retries=DEFAULT_RETRIES;_this.timeout=DEFAULT_TIMEOUT;_this.process=DEFAULT_PROCESSED;_this.handleErrors=DEFAULT_HANDLE_ERROR;_this.errorBlacklist=[];return _this;}/**
6
+ */function PipelineRequest(name){var _this;_classCallCheck(this,PipelineRequest);if(!name)throw new Error('The \'name\' parameter is not set!');_this=_super.call(this);_this.name=name;_this.version=DEFAULT_VERSION;_this.input=DEFAULT_INPUT;_this.trusted=false;_this.retries=DEFAULT_RETRIES;_this.timeout=DEFAULT_TIMEOUT;_this.process=DEFAULT_PROCESSED;_this.handleErrors=DEFAULT_HANDLE_ERROR;_this.errorBlacklist=[];return _this;}/**
7
7
  * @param {number} version The version number of the pipeline request.
8
8
  * @return {PipelineRequest}
9
9
  */_createClass(PipelineRequest,[{key:"setVersion",value:function setVersion(){var version=arguments.length>0&&arguments[0]!==undefined?arguments[0]:DEFAULT_VERSION;if(typeof version!=='number')throw new TypeError("Expected 'number'. Received: '".concat(_typeof(version),"'"));if(version<0)throw new Error("Expected positive integer. Received: '".concat(version,"'"));if(version===0)throw new Error('Has to be > 0!');this.version=version;return this;}/**
@@ -1,16 +1,12 @@
1
- function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import{logger}from"../../helpers";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import*as processTypes from"../../constants/ProcessTypes";/**
1
+ function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import{logger}from"../../helpers";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";import*as processTypes from"../../constants/ProcessTypes";/**
2
2
  * Mocked PipelineRequest.
3
3
  * Use it any time you need to mock a PipelineRequest.
4
4
  *
5
5
  * For more information and usage examples, please check the README.
6
- */var MockedPipelineRequest=/*#__PURE__*/function(){_createClass(MockedPipelineRequest,null,[{key:"mockedDispatchResolver",/**
7
- * Getter for mockedDispatchResolver which is an additional helper function for custom, mock-only
8
- * `dispatch()` resolver.
9
- * @return {Function}
10
- */get:function get(){return function(){};}/**
6
+ */var MockedPipelineRequest=/*#__PURE__*/function(){/**
11
7
  * Initializes the MockedPipelineRequest object.
12
8
  * @param {string} name The pipeline name.
13
- */}]);function MockedPipelineRequest(name){_classCallCheck(this,MockedPipelineRequest);this.name=name;this.input={};this.handleErrors=errorHandleTypes.ERROR_HANDLE_DEFAULT;this.errorBlacklist=[];this.process=processTypes.DEFAULT_PROCESSED;this.timeout=undefined;}/**
9
+ */function MockedPipelineRequest(name){_classCallCheck(this,MockedPipelineRequest);this.name=name;this.input={};this.handleErrors=errorHandleTypes.ERROR_HANDLE_DEFAULT;this.errorBlacklist=[];this.process=processTypes.DEFAULT_PROCESSED;this.timeout=undefined;}/**
14
10
  * Sets the payload for the MockedPipelineRequest.
15
11
  * @param {Object} [mockedInput={}] The payload to send with the request.
16
12
  * @returns {MockedPipelineRequest}
@@ -46,11 +42,15 @@ function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object
46
42
  * @param {bool} value Value.
47
43
  * @return {PipelineRequest}
48
44
  * @deprecated
49
- */},{key:"setSuppressErrors",value:function setSuppressErrors(value){logger.warn('Deprecated: setSuppressErrors() will be removed. Use setHandleErrors() instead!');var handle=value?errorHandleTypes.ERROR_HANDLE_SUPPRESS:errorHandleTypes.ERROR_HANDLE_DEFAULT;this.setHandleErrors(handle);return this;}}]);return MockedPipelineRequest;}();/**
45
+ */},{key:"setSuppressErrors",value:function setSuppressErrors(value){logger.warn('Deprecated: setSuppressErrors() will be removed. Use setHandleErrors() instead!');var handle=value?errorHandleTypes.ERROR_HANDLE_SUPPRESS:errorHandleTypes.ERROR_HANDLE_DEFAULT;this.setHandleErrors(handle);return this;}}],[{key:"mockedDispatchResolver",get:/**
46
+ * Getter for mockedDispatchResolver which is an additional helper function for custom, mock-only
47
+ * `dispatch()` resolver.
48
+ * @return {Function}
49
+ */function get(){return function(){};}}]);return MockedPipelineRequest;}();/**
50
50
  * Factory which creates an instance of MockedPipelineRequest.
51
51
  * @param {Function} callback Resolver callback.
52
52
  * @returns {MockedPipelineRequest}
53
- */export var mockedPipelineRequestFactory=function mockedPipelineRequestFactory(callback){return(/*#__PURE__*/function(_MockedPipelineReques){_inherits(_class,_MockedPipelineReques);function _class(){_classCallCheck(this,_class);return _possibleConstructorReturn(this,_getPrototypeOf(_class).apply(this,arguments));}_createClass(_class,null,[{key:"mockedDispatchResolver",/**
53
+ */export var mockedPipelineRequestFactory=function mockedPipelineRequestFactory(callback){return/*#__PURE__*/function(_MockedPipelineReques){_inherits(_class,_MockedPipelineReques);var _super=_createSuper(_class);function _class(){_classCallCheck(this,_class);return _super.apply(this,arguments);}_createClass(_class,null,[{key:"mockedDispatchResolver",get:/**
54
54
  * Getter for custom mocked resolver.
55
55
  * @return {Function}
56
- */get:function get(){return callback;}}]);return _class;}(MockedPipelineRequest));};
56
+ */function get(){return callback;}}]);return _class;}(MockedPipelineRequest);};
@@ -1,4 +1,4 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import{mockedPipelineRequestFactory}from"./mock";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";describe('MockPipelineRequest',function(){it('should create class that extends MockedPipelineRequest and resolves on dispatch',function(){return new Promise(function(resolve,reject){var FirstClass=mockedPipelineRequestFactory(function(mockedInstance,res){expect(_typeof(mockedInstance)==='object').toBe(true);res(1);});expect(_typeof(FirstClass.mockedDispatchResolver)).toBe('function');var firstInstance=new FirstClass('first');expect(firstInstance.name).toBe('first');expect(firstInstance.input).toEqual({});expect(firstInstance.errorBlacklist).toEqual([]);expect(firstInstance.handleErrors).toBe(errorHandleTypes.ERROR_HANDLE_DEFAULT);var afterSetInput=firstInstance.setInput({firstOne:1});// Check if returns `this`
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import{mockedPipelineRequestFactory}from"./mock";import*as errorHandleTypes from"../../constants/ErrorHandleTypes";describe('MockPipelineRequest',function(){it('should create class that extends MockedPipelineRequest and resolves on dispatch',function(){return new Promise(function(resolve,reject){var FirstClass=mockedPipelineRequestFactory(function(mockedInstance,res){expect(_typeof(mockedInstance)==='object').toBe(true);res(1);});expect(_typeof(FirstClass.mockedDispatchResolver)).toBe('function');var firstInstance=new FirstClass('first');expect(firstInstance.name).toBe('first');expect(firstInstance.input).toEqual({});expect(firstInstance.errorBlacklist).toEqual([]);expect(firstInstance.handleErrors).toBe(errorHandleTypes.ERROR_HANDLE_DEFAULT);var afterSetInput=firstInstance.setInput({firstOne:1});// Check if returns `this`
2
2
  expect(afterSetInput instanceof FirstClass).toBe(true);// Check if input is set
3
3
  expect(firstInstance.input).toEqual({firstOne:1});var afterSetErrorBlacklist=firstInstance.setErrorBlacklist([1,2]).setHandleErrors(errorHandleTypes.ERROR_HANDLE_SUPPRESS);expect(afterSetErrorBlacklist instanceof FirstClass).toBe(true);expect(afterSetInput.errorBlacklist).toEqual(afterSetErrorBlacklist.errorBlacklist);expect(afterSetErrorBlacklist.errorBlacklist).toEqual([1,2]);expect(afterSetErrorBlacklist.handleErrors).toBe(errorHandleTypes.ERROR_HANDLE_SUPPRESS);// Check dispatch
4
4
  afterSetInput.dispatch().then(function(value){expect(value).toBe(1);resolve();})["catch"](function(){reject();});});});it('should create another, independent class',function(){return new Promise(function(resolve,reject){var SecondClass=mockedPipelineRequestFactory(function(mockedInstance,res,rej){expect(_typeof(mockedInstance)==='object').toBe(true);rej(2);});var secondInstance=new SecondClass('second');expect(secondInstance.name).toBe('second');expect(secondInstance.input).toEqual({});var afterSetInput=secondInstance.setInput({secondOne:2});expect(afterSetInput instanceof SecondClass).toBe(true);expect(afterSetInput.input).toEqual({secondOne:2});afterSetInput.dispatch().then(function(){reject();})["catch"](function(val){expect(val).toBe(2);resolve();});});});it('should set defaults when calling methods',function(){var PipelineClass=mockedPipelineRequestFactory(function(){});var instance=new PipelineClass('third');instance.setInput().setErrorBlacklist();expect(instance.input).toEqual({});expect(instance.errorBlacklist).toEqual([]);});it('should handle deprecated setSuppressErrors',function(){var PipelineClass=mockedPipelineRequestFactory(function(){});var request=new PipelineClass('test');request.setSuppressErrors(true);expect(request.handleErrors).toEqual(errorHandleTypes.ERROR_HANDLE_SUPPRESS);request.setSuppressErrors(false);expect(request.handleErrors).toEqual(errorHandleTypes.ERROR_HANDLE_DEFAULT);});it('should handle deprecated setHandledErrors',function(){var PipelineClass=mockedPipelineRequestFactory(function(){});var request=new PipelineClass('test');request.setHandledErrors(['SAMPLE_ERROR']);expect(request.errorBlacklist).toEqual(['SAMPLE_ERROR']);});describe('setHandleErrors()',function(){it('should throw if input not one of the possible values',function(done){var PipelineClass=mockedPipelineRequestFactory(function(){});var request=new PipelineClass('test');try{request.setHandleErrors('SOME_WEIRD_THING');done('Did not throw');}catch(e){done();}});it('should throw if if input is not a string',function(done){var PipelineClass=mockedPipelineRequestFactory(function(){});var request=new PipelineClass('test');try{request.setHandleErrors(['test']);done('Did not throw');}catch(e){done();}});});});
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}/**
2
2
  * A sequence of pipeline requests.
3
3
  */var PipelineSequence=/*#__PURE__*/function(){/**
4
4
  * Constructor.
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import CryptoJs from'crypto-js';import RequestManager from"../RequestManager";import{logger}from"../../helpers";// The default request manager does not cache or treat requests in any special way.
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import CryptoJs from'crypto-js';import RequestManager from"../RequestManager";import{logger}from"../../helpers";// The default request manager does not cache or treat requests in any special way.
2
2
  var defaultRequestManager=new RequestManager();/**
3
3
  * The request class.
4
4
  */var Request=/*#__PURE__*/function(){/**
@@ -12,10 +12,10 @@ var defaultRequestManager=new RequestManager();/**
12
12
  */},{key:"createSerial",value:function createSerial(serialKey){if(!this.serial){this.serial=CryptoJs.MD5("".concat(serialKey).concat(Date.now()+Math.random())).toString();}}/**
13
13
  * Creates the event callback name from the data request serial.
14
14
  * @param {string} callbackKey The callback key to use.
15
- */},{key:"getEventCallbackName",/**
15
+ */},{key:"getEventCallbackName",value:/**
16
16
  * Returns the event callback name.
17
17
  * @returns {string}
18
- */value:function getEventCallbackName(){return this.callbackName;}/**
18
+ */function getEventCallbackName(){return this.callbackName;}/**
19
19
  * Dispatches the request.
20
20
  * @return {Promise} A promise that is fulfilled when a response is received for this request.
21
21
  */},{key:"dispatch",value:function dispatch(){var _this2=this;return new Promise(function(resolve,reject){_this2.manager.handleDispatch(_this2,resolve,reject);});}/**
@@ -1,11 +1,11 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";var REQUEST_BUFFER='RequestBuffer';/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";var REQUEST_BUFFER='RequestBuffer';/**
2
2
  * The RequestBuffer class.
3
3
  * It stores instances of performing request.
4
- */var RequestBuffer=/*#__PURE__*/function(){function RequestBuffer(){_classCallCheck(this,RequestBuffer);_defineProperty(this,"requests",{});}_createClass(RequestBuffer,[{key:"add",/**
4
+ */var RequestBuffer=/*#__PURE__*/function(){function RequestBuffer(){_classCallCheck(this,RequestBuffer);_defineProperty(this,"requests",{});}_createClass(RequestBuffer,[{key:"add",value:/**
5
5
  * Adds a new data request to the buffer store.
6
6
  * @param {Object} req The request to store.
7
7
  * @param {string} serial The serial for the request.
8
- */value:function add(req,serial){var request=this.requests[serial];if(request){logger.error("".concat(REQUEST_BUFFER,": a request with the serial '").concat(serial,"' already exists!"));return;}this.requests[serial]=req;}/**
8
+ */function add(req,serial){var request=this.requests[serial];if(request){logger.error("".concat(REQUEST_BUFFER,": a request with the serial '").concat(serial,"' already exists!"));return;}this.requests[serial]=req;}/**
9
9
  * Retrieves a data request from the buffer.
10
10
  * @param {string} serial The serial for the request.
11
11
  * @returns {DataRequest}
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import{logger}from"../../helpers";import{PROCESS_ANY,PROCESS_LAST_REQUEST,PROCESS_FIRST_RESPONSE,PROCESS_SEQUENTIALLY,PROCESS_ORDERED_REQUEST,PROPAGATE_REJECT,PROPAGATE_SINGLE}from"../../constants/RequestManagerModes";import{EPIPELINERESPONSEREJECTED}from"../../constants/Pipeline";/**
1
+ function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import{logger}from"../../helpers";import{PROCESS_ANY,PROCESS_LAST_REQUEST,PROCESS_FIRST_RESPONSE,PROCESS_SEQUENTIALLY,PROCESS_ORDERED_REQUEST,PROPAGATE_REJECT,PROPAGATE_SINGLE}from"../../constants/RequestManagerModes";import{EPIPELINERESPONSEREJECTED}from"../../constants/Pipeline";/**
2
2
  * Creates an error object for requests that where rejected by the request manager.
3
3
  * @param {Object} queueItem The rejected request item from the request queue.
4
4
  * @return {Object}
@@ -1 +1 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import Request from"../Request";import RequestManager from'.';import{PROCESS_ANY,PROCESS_LAST_REQUEST,PROCESS_FIRST_RESPONSE,PROCESS_SEQUENTIALLY,PROCESS_ORDERED_REQUEST,PROPAGATE_REJECT,PROPAGATE_SINGLE}from"../../constants/RequestManagerModes";/* eslint-disable require-jsdoc, no-unused-vars, class-methods-use-this */var SuccessfulRequest=/*#__PURE__*/function(_Request){_inherits(SuccessfulRequest,_Request);function SuccessfulRequest(manager){var _this;var payload=arguments.length>1&&arguments[1]!==undefined?arguments[1]:42;var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1000;_classCallCheck(this,SuccessfulRequest);_this=_possibleConstructorReturn(this,_getPrototypeOf(SuccessfulRequest).call(this,manager));_this.createSerial('foo');_this.payload=payload;_this.timeout=timeout;return _this;}_createClass(SuccessfulRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){var _this2=this;setTimeout(function(){_this2.manager.handleResponse(_this2,resolve,_this2.payload);},this.timeout);}}]);return SuccessfulRequest;}(Request);var FailingRequest=/*#__PURE__*/function(_Request2){_inherits(FailingRequest,_Request2);function FailingRequest(manager){var _this3;_classCallCheck(this,FailingRequest);_this3=_possibleConstructorReturn(this,_getPrototypeOf(FailingRequest).call(this,manager));_this3.createSerial('foo');return _this3;}_createClass(FailingRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){this.manager.handleError(this,reject);}}]);return FailingRequest;}(Request);var NeverResolvingRequest=/*#__PURE__*/function(_Request3){_inherits(NeverResolvingRequest,_Request3);function NeverResolvingRequest(manager){var _this4;_classCallCheck(this,NeverResolvingRequest);_this4=_possibleConstructorReturn(this,_getPrototypeOf(NeverResolvingRequest).call(this,manager));_this4.createSerial('foo');return _this4;}_createClass(NeverResolvingRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){}},{key:"onTimeout",value:function onTimeout(resolve,reject){this.manager.handleError(this,reject);}}]);return NeverResolvingRequest;}(Request);/* eslint-enable require-jsdoc, no-unused-vars, class-methods-use-this */describe.skip('RequestManager',function(){jest.useFakeTimers();var timestamp=0;RequestManager.currentTime=function(){timestamp+=1;return timestamp;};it('should default to PROCESS_ANY and PROPAGATE_SINGLE',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var manager;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:manager=new RequestManager();expect(manager.processingMode).toEqual(PROCESS_ANY);expect(manager.propagationMode).toEqual(PROPAGATE_SINGLE);case 3:case"end":return _context.stop();}}},_callee);})));it('should succeed',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager();request=new SuccessfulRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context2.next=8;return req;case 8:expect(succeeded).toHaveBeenCalled();expect(failed).not.toHaveBeenCalled();case 10:case"end":return _context2.stop();}}},_callee2);})));it('should fail',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager();request=new FailingRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context3.next=8;return req;case 8:expect(succeeded).not.toHaveBeenCalled();expect(failed).toHaveBeenCalled();case 10:case"end":return _context3.stop();}}},_callee3);})));it('should only resolve the last request ',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_LAST_REQUEST,propagationMode:PROPAGATE_REJECT});request1=new SuccessfulRequest(manager,1);request2=new SuccessfulRequest(manager,2);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context4.next=10;return req1;case 10:_context4.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(1);expect(succeeded).toHaveBeenCalledWith(2);expect(failed).toHaveBeenCalledTimes(1);expect(failed).toHaveBeenCalledWith(1);case 16:case"end":return _context4.stop();}}},_callee4);})));it('should resolve both request with first request´s response (1/2)',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE});request1=new SuccessfulRequest(manager,1,500);request2=new SuccessfulRequest(manager,2,1000);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context5.next=10;return req1;case 10:_context5.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(2);expect(succeeded).toHaveBeenCalledWith(1);expect(failed).not.toHaveBeenCalled();case 15:case"end":return _context5.stop();}}},_callee5);})));it('should resolve both request with first request´s response (2/2)',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee6$(_context6){while(1){switch(_context6.prev=_context6.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context6.next=10;return req1;case 10:_context6.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(2);expect(succeeded.mock.calls).toEqual([[2],[2]]);expect(failed).not.toHaveBeenCalled();case 15:case"end":return _context6.stop();}}},_callee6);})));it.skip('should reject first request',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee7$(_context7){while(1){switch(_context7.prev=_context7.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE,propagationMode:PROPAGATE_REJECT});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context7.next=10;return req1;case 10:_context7.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(1);expect(succeeded).toHaveBeenCalledWith(2);expect(failed).toHaveBeenCalledTimes(1);expect(failed).toHaveBeenCalledWith(1);case 16:case"end":return _context7.stop();}}},_callee7);})));it('should request the second one after the first one resolved',function(){var manager=new RequestManager({processingMode:PROCESS_SEQUENTIALLY});var request1=new SuccessfulRequest(manager);var request2=new SuccessfulRequest(manager);request1.dispatch();request2.dispatch();expect(manager.requestQueue.length).toBe(2);jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(1);jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(0);});it('should resolve in order of request calling',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee8(){var succeeded,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee8$(_context8){while(1){switch(_context8.prev=_context8.next){case 0:succeeded=jest.fn();manager=new RequestManager({processingMode:PROCESS_ORDERED_REQUEST});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);});req2=request2.dispatch().then(function(resp){return succeeded(resp);});jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(0);_context8.next=10;return req1;case 10:_context8.next=12;return req2;case 12:expect(succeeded.mock.calls).toEqual([[1],[2]]);case 13:case"end":return _context8.stop();}}},_callee8);})));it('should time out',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee9(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee9$(_context9){while(1){switch(_context9.prev=_context9.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({timeout:1000});request=new NeverResolvingRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context9.next=8;return req;case 8:expect(succeeded).not.toHaveBeenCalled();expect(failed).toHaveBeenCalled();case 10:case"end":return _context9.stop();}}},_callee9);})));});
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import Request from"../Request";import RequestManager from'.';import{PROCESS_ANY,PROCESS_LAST_REQUEST,PROCESS_FIRST_RESPONSE,PROCESS_SEQUENTIALLY,PROCESS_ORDERED_REQUEST,PROPAGATE_REJECT,PROPAGATE_SINGLE}from"../../constants/RequestManagerModes";/* eslint-disable require-jsdoc, no-unused-vars, class-methods-use-this */var SuccessfulRequest=/*#__PURE__*/function(_Request){_inherits(SuccessfulRequest,_Request);var _super=_createSuper(SuccessfulRequest);function SuccessfulRequest(manager){var _this;var payload=arguments.length>1&&arguments[1]!==undefined?arguments[1]:42;var timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1000;_classCallCheck(this,SuccessfulRequest);_this=_super.call(this,manager);_this.createSerial('foo');_this.payload=payload;_this.timeout=timeout;return _this;}_createClass(SuccessfulRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){var _this2=this;setTimeout(function(){_this2.manager.handleResponse(_this2,resolve,_this2.payload);},this.timeout);}}]);return SuccessfulRequest;}(Request);var FailingRequest=/*#__PURE__*/function(_Request2){_inherits(FailingRequest,_Request2);var _super2=_createSuper(FailingRequest);function FailingRequest(manager){var _this3;_classCallCheck(this,FailingRequest);_this3=_super2.call(this,manager);_this3.createSerial('foo');return _this3;}_createClass(FailingRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){this.manager.handleError(this,reject);}}]);return FailingRequest;}(Request);var NeverResolvingRequest=/*#__PURE__*/function(_Request3){_inherits(NeverResolvingRequest,_Request3);var _super3=_createSuper(NeverResolvingRequest);function NeverResolvingRequest(manager){var _this4;_classCallCheck(this,NeverResolvingRequest);_this4=_super3.call(this,manager);_this4.createSerial('foo');return _this4;}_createClass(NeverResolvingRequest,[{key:"onDispatch",value:function onDispatch(resolve,reject){}},{key:"onTimeout",value:function onTimeout(resolve,reject){this.manager.handleError(this,reject);}}]);return NeverResolvingRequest;}(Request);/* eslint-enable require-jsdoc, no-unused-vars, class-methods-use-this */describe.skip('RequestManager',function(){jest.useFakeTimers();var timestamp=0;RequestManager.currentTime=function(){timestamp+=1;return timestamp;};it('should default to PROCESS_ANY and PROPAGATE_SINGLE',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var manager;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:manager=new RequestManager();expect(manager.processingMode).toEqual(PROCESS_ANY);expect(manager.propagationMode).toEqual(PROPAGATE_SINGLE);case 3:case"end":return _context.stop();}}},_callee);})));it('should succeed',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager();request=new SuccessfulRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context2.next=8;return req;case 8:expect(succeeded).toHaveBeenCalled();expect(failed).not.toHaveBeenCalled();case 10:case"end":return _context2.stop();}}},_callee2);})));it('should fail',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager();request=new FailingRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context3.next=8;return req;case 8:expect(succeeded).not.toHaveBeenCalled();expect(failed).toHaveBeenCalled();case 10:case"end":return _context3.stop();}}},_callee3);})));it('should only resolve the last request ',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_LAST_REQUEST,propagationMode:PROPAGATE_REJECT});request1=new SuccessfulRequest(manager,1);request2=new SuccessfulRequest(manager,2);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context4.next=10;return req1;case 10:_context4.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(1);expect(succeeded).toHaveBeenCalledWith(2);expect(failed).toHaveBeenCalledTimes(1);expect(failed).toHaveBeenCalledWith(1);case 16:case"end":return _context4.stop();}}},_callee4);})));it('should resolve both request with first request´s response (1/2)',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE});request1=new SuccessfulRequest(manager,1,500);request2=new SuccessfulRequest(manager,2,1000);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context5.next=10;return req1;case 10:_context5.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(2);expect(succeeded).toHaveBeenCalledWith(1);expect(failed).not.toHaveBeenCalled();case 15:case"end":return _context5.stop();}}},_callee5);})));it('should resolve both request with first request´s response (2/2)',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee6$(_context6){while(1){switch(_context6.prev=_context6.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context6.next=10;return req1;case 10:_context6.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(2);expect(succeeded.mock.calls).toEqual([[2],[2]]);expect(failed).not.toHaveBeenCalled();case 15:case"end":return _context6.stop();}}},_callee6);})));it.skip('should reject first request',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(){var succeeded,failed,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee7$(_context7){while(1){switch(_context7.prev=_context7.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({processingMode:PROCESS_FIRST_RESPONSE,propagationMode:PROPAGATE_REJECT});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(1);});req2=request2.dispatch().then(function(resp){return succeeded(resp);})["catch"](function(){return failed(2);});jest.runAllTimers();_context7.next=10;return req1;case 10:_context7.next=12;return req2;case 12:expect(succeeded).toHaveBeenCalledTimes(1);expect(succeeded).toHaveBeenCalledWith(2);expect(failed).toHaveBeenCalledTimes(1);expect(failed).toHaveBeenCalledWith(1);case 16:case"end":return _context7.stop();}}},_callee7);})));it('should request the second one after the first one resolved',function(){var manager=new RequestManager({processingMode:PROCESS_SEQUENTIALLY});var request1=new SuccessfulRequest(manager);var request2=new SuccessfulRequest(manager);request1.dispatch();request2.dispatch();expect(manager.requestQueue.length).toBe(2);jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(1);jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(0);});it('should resolve in order of request calling',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee8(){var succeeded,manager,request1,request2,req1,req2;return _regeneratorRuntime.wrap(function _callee8$(_context8){while(1){switch(_context8.prev=_context8.next){case 0:succeeded=jest.fn();manager=new RequestManager({processingMode:PROCESS_ORDERED_REQUEST});request1=new SuccessfulRequest(manager,1,1000);request2=new SuccessfulRequest(manager,2,500);req1=request1.dispatch().then(function(resp){return succeeded(resp);});req2=request2.dispatch().then(function(resp){return succeeded(resp);});jest.runOnlyPendingTimers();expect(manager.requestQueue.length).toBe(0);_context8.next=10;return req1;case 10:_context8.next=12;return req2;case 12:expect(succeeded.mock.calls).toEqual([[1],[2]]);case 13:case"end":return _context8.stop();}}},_callee8);})));it('should time out',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee9(){var succeeded,failed,manager,request,req;return _regeneratorRuntime.wrap(function _callee9$(_context9){while(1){switch(_context9.prev=_context9.next){case 0:succeeded=jest.fn();failed=jest.fn();manager=new RequestManager({timeout:1000});request=new NeverResolvingRequest(manager);req=request.dispatch().then(succeeded)["catch"](failed);jest.runAllTimers();_context9.next=8;return req;case 8:expect(succeeded).not.toHaveBeenCalled();expect(failed).toHaveBeenCalled();case 10:case"end":return _context9.stop();}}},_callee9);})));});
@@ -1,6 +1,6 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import{isLibVersionAtLeast}from"../../helpers/version";import ScannerEvent from"../ScannerEvent";import ScannerEventHandler from"../ScannerEventHandler";import appEvent from"../Event";import registerEvents from"../../commands/registerEvents";import{APP_EVENT_SCANNER_DID_SCAN}from"../../constants/AppEvents";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE,SCANNER_ANIMATION_NONE,SCANNER_MIN_APP_LIB_VERSION}from"../../constants/Scanner";import{openScanner as openAppScanner,startScanner as startAppScanner,stopScanner as stopAppScanner,closeScanner as closeAppScanner,setFlashlightMode as setAppScannerFlashlightMode}from"../../commands/scanner";/**
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import{isLibVersionAtLeast}from"../../helpers/version";import ScannerEvent from"../ScannerEvent";import ScannerEventHandler from"../ScannerEventHandler";import appEvent from"../Event";import registerEvents from"../../commands/registerEvents";import{APP_EVENT_SCANNER_DID_SCAN}from"../../constants/AppEvents";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE,SCANNER_ANIMATION_NONE,SCANNER_MIN_APP_LIB_VERSION}from"../../constants/Scanner";import{openScanner as openAppScanner,startScanner as startAppScanner,stopScanner as stopAppScanner,closeScanner as closeAppScanner,setFlashlightMode as setAppScannerFlashlightMode}from"../../commands/scanner";/**
2
2
  * Represents the app scanner.
3
- */export var Scanner=/**
3
+ */export var Scanner=/*#__PURE__*/_createClass(/**
4
4
  * Initializes the scanner
5
5
  */function Scanner(){var _this=this;_classCallCheck(this,Scanner);_defineProperty(this,"reset",function(){_this.scope=null;_this.type=null;_this.opened=false;_this.running=false;_this.handling=false;_this.flashlightEnabled=false;_this.closeHandler=null;});_defineProperty(this,"addListener",function(eventListener){_this.eventHandler.attach(eventListener);});_defineProperty(this,"removeListener",function(eventListener){return _this.eventHandler.detach(eventListener);});_defineProperty(this,"open",/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(scope){var type,closeHandler,source,animation,errMsgPrefix,libVersionResult,err,_err,_err2,_err3,_err4,_args=arguments;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:type=_args.length>1&&_args[1]!==undefined?_args[1]:SCANNER_TYPE_BARCODE;closeHandler=_args.length>2&&_args[2]!==undefined?_args[2]:null;source=_args.length>3&&_args[3]!==undefined?_args[3]:null;animation=_args.length>4&&_args[4]!==undefined?_args[4]:null;errMsgPrefix='Failed to open scanner:';// A minimum app lib version is required, which is defined above.
6
6
  _context.prev=5;_context.next=8;return isLibVersionAtLeast(SCANNER_MIN_APP_LIB_VERSION);case 8:libVersionResult=_context.sent;_context.next=15;break;case 11:_context.prev=11;_context.t0=_context["catch"](5);logger.error("".concat(errMsgPrefix," Could not fetch app lib version. Instead received error:"),_context.t0);return _context.abrupt("return");case 15:if(libVersionResult){_context.next=19;break;}err=new Error("".concat(errMsgPrefix," App lib version must be at least equal to or higher than ").concat(SCANNER_MIN_APP_LIB_VERSION,"."));logger.error(err);return _context.abrupt("return");case 19:if(!(!scope||scope==='')){_context.next=23;break;}_err=new Error("".concat(errMsgPrefix," Scope can not be empty."));logger.error(_err);return _context.abrupt("return");case 23:if(_this.supportedTypes.includes(type)){_context.next=27;break;}_err2=new Error("".concat(errMsgPrefix," ").concat(type," is a not supported scanner type."));logger.error(_err2);return _context.abrupt("return");case 27:if(!_this.opened){_context.next=31;break;}_err3=new Error("".concat(errMsgPrefix," An instance with scope \"").concat(_this.scope,"\" is already running."));logger.error(_err3);return _context.abrupt("return");case 31:if(!(closeHandler!==null&&typeof closeHandler!=='function')){_context.next=35;break;}_err4=new Error("".concat(errMsgPrefix," Close handler must be a function."));logger.error(_err4);return _context.abrupt("return");case 35:// Add a listener to the scannerDidScan app event to process scanned data.
@@ -16,4 +16,4 @@ if(_this.closeHandler){_this.closeHandler(_this);}_context2.next=18;break;case 1
16
16
  _this.start();case 18:case"end":return _context2.stop();}}},_callee2,null,[[9,15]]);}));return function(_x2){return _ref2.apply(this,arguments);};}());this.supportedTypes=[SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE];this.eventHandler=new ScannerEventHandler();// Register app scan event to listen for.
17
17
  registerEvents([APP_EVENT_SCANNER_DID_SCAN]);this.reset();}/**
18
18
  * Reset Scanner state
19
- */;export default new Scanner();
19
+ */);export default new Scanner();
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}import{logger}from"../../helpers";import{Scanner}from"./index";import appEvent from"../Event";import registerEvents from"../../commands/registerEvents";import{openScanner,closeScanner,startScanner,setFlashlightMode,stopScanner}from"../../commands/scanner";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE,SCANNER_ANIMATION_NONE}from"../../constants/Scanner";import{APP_EVENT_SCANNER_DID_SCAN}from"../../constants/AppEvents";import ScannerEventHandler from"../ScannerEventHandler";import ScannerEventListener from"../ScannerEventListener";import ScannerEvent from"../ScannerEvent";jest.mock("../../helpers",function(){return{logger:{error:jest.fn(),warn:jest.fn()}};});var mockedIsLibVersionAtLeast;jest.mock("../../helpers/version",function(){return{isLibVersionAtLeast:function isLibVersionAtLeast(){return mockedIsLibVersionAtLeast.apply(void 0,arguments);}};});jest.mock("../Event");jest.mock("../../commands/registerEvents",function(){return jest.fn();});jest.mock("../../commands/scanner");var mockedEventHandler=new ScannerEventHandler();mockedEventHandler.attach=jest.fn();mockedEventHandler.detach=jest.fn(function(){return true;});describe('Scanner',function(){var scannerInstance;var scope='scope';var type=SCANNER_TYPE_BARCODE;beforeEach(function(){jest.clearAllMocks();scannerInstance=new Scanner();mockedIsLibVersionAtLeast=jest.fn(function(){return true;});});describe('constructor()',function(){it('should register the app scanners scan event correctly',function(){expect(registerEvents).toBeCalledTimes(1);expect(registerEvents).toBeCalledWith([APP_EVENT_SCANNER_DID_SCAN]);});it('should initialize the internal object state correctly',function(){expect(new Set(scannerInstance.supportedTypes)).toEqual(new Set([SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE]));expect(scannerInstance.scope).toBeNull();expect(scannerInstance.type).toBeNull();expect(scannerInstance.opened).toBeFalsy();expect(scannerInstance.running).toBeFalsy();expect(scannerInstance.closeHandler).toBeNull();expect(scannerInstance.flashlightEnabled).toBeFalsy();expect(scannerInstance.eventHandler instanceof ScannerEventHandler).toBeTruthy();});});describe('addListener()',function(){it('should attach the event listener to the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;var l=new ScannerEventListener();scannerInstance.addListener(l);expect(mockedEventHandler.attach).toBeCalledTimes(1);expect(mockedEventHandler.attach).toBeCalledWith(l);});it('should not return any value',function(){expect(scannerInstance.addListener(new ScannerEventListener())).toBeUndefined();});});describe('removeListener()',function(){it('should detach the event listener from the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;var l=new ScannerEventListener();scannerInstance.removeListener(l);expect(mockedEventHandler.detach).toBeCalledTimes(1);expect(mockedEventHandler.detach).toBeCalledWith(l);});it('should forward the return value from the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;// The used event handler detach function is mocked to return true.
1
+ function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}import{logger}from"../../helpers";import{Scanner}from"./index";import appEvent from"../Event";import registerEvents from"../../commands/registerEvents";import{openScanner,closeScanner,startScanner,setFlashlightMode,stopScanner}from"../../commands/scanner";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE,SCANNER_ANIMATION_NONE}from"../../constants/Scanner";import{APP_EVENT_SCANNER_DID_SCAN}from"../../constants/AppEvents";import ScannerEventHandler from"../ScannerEventHandler";import ScannerEventListener from"../ScannerEventListener";import ScannerEvent from"../ScannerEvent";jest.mock("../../helpers",function(){return{logger:{error:jest.fn(),warn:jest.fn()}};});var mockedIsLibVersionAtLeast;jest.mock("../../helpers/version",function(){return{isLibVersionAtLeast:function isLibVersionAtLeast(){return mockedIsLibVersionAtLeast.apply(void 0,arguments);}};});jest.mock("../Event");jest.mock("../../commands/registerEvents",function(){return jest.fn();});jest.mock("../../commands/scanner");var mockedEventHandler=new ScannerEventHandler();mockedEventHandler.attach=jest.fn();mockedEventHandler.detach=jest.fn(function(){return true;});describe('Scanner',function(){var scannerInstance;var scope='scope';var type=SCANNER_TYPE_BARCODE;beforeEach(function(){jest.clearAllMocks();scannerInstance=new Scanner();mockedIsLibVersionAtLeast=jest.fn(function(){return true;});});describe('constructor()',function(){it('should register the app scanners scan event correctly',function(){expect(registerEvents).toBeCalledTimes(1);expect(registerEvents).toBeCalledWith([APP_EVENT_SCANNER_DID_SCAN]);});it('should initialize the internal object state correctly',function(){expect(new Set(scannerInstance.supportedTypes)).toEqual(new Set([SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE]));expect(scannerInstance.scope).toBeNull();expect(scannerInstance.type).toBeNull();expect(scannerInstance.opened).toBeFalsy();expect(scannerInstance.running).toBeFalsy();expect(scannerInstance.closeHandler).toBeNull();expect(scannerInstance.flashlightEnabled).toBeFalsy();expect(scannerInstance.eventHandler instanceof ScannerEventHandler).toBeTruthy();});});describe('addListener()',function(){it('should attach the event listener to the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;var l=new ScannerEventListener();scannerInstance.addListener(l);expect(mockedEventHandler.attach).toBeCalledTimes(1);expect(mockedEventHandler.attach).toBeCalledWith(l);});it('should not return any value',function(){expect(scannerInstance.addListener(new ScannerEventListener())).toBeUndefined();});});describe('removeListener()',function(){it('should detach the event listener from the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;var l=new ScannerEventListener();scannerInstance.removeListener(l);expect(mockedEventHandler.detach).toBeCalledTimes(1);expect(mockedEventHandler.detach).toBeCalledWith(l);});it('should forward the return value from the event handler',function(){scannerInstance.eventHandler=mockedEventHandler;// The used event handler detach function is mocked to return true.
2
2
  expect(scannerInstance.removeListener(new ScannerEventListener())).toBeTruthy();});});describe('open()',function(){it('should not open and print an error if the app lib version is too low',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var err;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:err=new Error('Failed to open scanner: App lib version must be at least equal to or higher than 21.0.');mockedIsLibVersionAtLeast=jest.fn(function(){return false;});_context.next=4;return expect(scannerInstance.open(scope)).resolves.toBeUndefined();case 4:expect(mockedIsLibVersionAtLeast).toBeCalledWith('21.0');expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(err);expect(scannerInstance.isOpened()).toBeFalsy();case 8:case"end":return _context.stop();}}},_callee);})));it('should not open and print an error when the requested scope is empty',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(){var err;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:err=new Error('Failed to open scanner: Scope can not be empty.');_context2.next=3;return expect(scannerInstance.open(null)).resolves.toBeUndefined();case 3:expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(err);expect(scannerInstance.isOpened()).toBeFalsy();case 6:case"end":return _context2.stop();}}},_callee2);})));it('should print an error instead of opening when the requested scanner type is unsupported',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(){var dummy,err;return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:dummy='DUMMY_TYPE';err=new Error("Failed to open scanner: ".concat(dummy," is a not supported scanner type."));_context3.next=4;return expect(scannerInstance.open(scope,dummy)).resolves.toBeUndefined();case 4:expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(err);expect(scannerInstance.isOpened()).toBeFalsy();case 7:case"end":return _context3.stop();}}},_callee3);})));it('should print an error and stay opened when already opened',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(){var err;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:err=new Error("Failed to open scanner: An instance with scope \"".concat(scope,"\" is already running."));// Simulate opened state.
3
3
  scannerInstance.opened=true;scannerInstance.scope=scope;_context4.next=5;return expect(scannerInstance.open(scope)).resolves.toBeUndefined();case 5:expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(err);expect(scannerInstance.isOpened()).toBeTruthy();case 8:case"end":return _context4.stop();}}},_callee4);})));it('should not open when an invalid close handler is set',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){var err;return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:err=new Error('Failed to open scanner: Close handler must be a function.');// Pass an object instead of a callback to trigger the error
4
4
  _context5.next=3;return expect(scannerInstance.open(scope,type,{})).resolves.toBeUndefined();case 3:expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(err);expect(scannerInstance.isOpened()).toBeFalsy();case 6:case"end":return _context5.stop();}}},_callee5);})));it('should register the app event callback',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6(){return _regeneratorRuntime.wrap(function _callee6$(_context6){while(1){switch(_context6.prev=_context6.next){case 0:_context6.next=2;return scannerInstance.open(scope);case 2:expect(appEvent.addCallbackSpy).toBeCalledTimes(1);expect(appEvent.addCallbackSpy).toBeCalledWith(APP_EVENT_SCANNER_DID_SCAN,scannerInstance.handleScan);case 4:case"end":return _context6.stop();}}},_callee6);})));it('should open the scanner',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(){return _regeneratorRuntime.wrap(function _callee7$(_context7){while(1){switch(_context7.prev=_context7.next){case 0:_context7.next=2;return scannerInstance.open(scope);case 2:expect(openScanner).toBeCalledTimes(1);case 3:case"end":return _context7.stop();}}},_callee7);})));it('should provide correct parameters to the open scanner app command',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee8(){return _regeneratorRuntime.wrap(function _callee8$(_context8){while(1){switch(_context8.prev=_context8.next){case 0:_context8.next=2;return scannerInstance.open(scope);case 2:expect(openScanner).toBeCalledWith({src:'',modes:_defineProperty({},type,SCANNER_MODE_ON),animation:SCANNER_ANIMATION_NONE});case 3:case"end":return _context8.stop();}}},_callee8);})));it('should update the internal object state correctly',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee9(){var closeHandler;return _regeneratorRuntime.wrap(function _callee9$(_context9){while(1){switch(_context9.prev=_context9.next){case 0:closeHandler=jest.fn();_context9.next=3;return scannerInstance.open(scope,SCANNER_TYPE_BARCODE,closeHandler);case 3:expect(scannerInstance.scope).toStrictEqual(scope);expect(scannerInstance.type).toStrictEqual(SCANNER_TYPE_BARCODE);expect(scannerInstance.opened).toBeTruthy();expect(scannerInstance.running).toBeTruthy();expect(scannerInstance.closeHandler).toBe(closeHandler);// Recreate Scanner object to check a different set of open params.
@@ -1,13 +1,13 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}/**
1
+ function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}/**
2
2
  * @typedef {Object} ScannerEventPayload
3
3
  * @property {string} format
4
4
  * @property {string} code
5
5
  *
6
6
  * Defines an event which is emitted when the scanner scans something.
7
- */var ScannerEvent=/**
7
+ */var ScannerEvent=/*#__PURE__*/_createClass(/**
8
8
  * @param {string} scope The scanner instance, that was running when this event was emitted.
9
9
  * @param {string} type The type of scanner that produced this result.
10
10
  * @param {ScannerEventPayload} payload The payload of the scan result.
11
11
  */function ScannerEvent(scope,type,payload){var _this=this;_classCallCheck(this,ScannerEvent);_defineProperty(this,"getScope",function(){return _this.scope;});_defineProperty(this,"getType",function(){return _this.type;});_defineProperty(this,"getPayload",function(){return _this.payload;});this.scope=scope;this.type=type;this.payload=payload;}/**
12
12
  * @returns {string}
13
- */;export{ScannerEvent as default};
13
+ */);export{ScannerEvent as default};
@@ -1,8 +1,8 @@
1
- function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}/**
1
+ function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}/**
2
2
  * Manages scanner event listeners.
3
- */var ScannerEventHandler=/**
3
+ */var ScannerEventHandler=/*#__PURE__*/_createClass(/**
4
4
  * Initializes the event handler.
5
5
  */function ScannerEventHandler(){var _this=this;_classCallCheck(this,ScannerEventHandler);_defineProperty(this,"attach",function(eventListener){_this.eventListeners.add(eventListener);});_defineProperty(this,"detach",function(eventListener){return _this.eventListeners["delete"](eventListener);});_defineProperty(this,"hasListenersForEvent",function(event){return Array.from(_this.eventListeners).some(function(listener){return listener.canHandleEvent(event);});});_defineProperty(this,"notifyAllListeners",function(event){var notifyResults=[];_this.eventListeners.forEach(function(listener){notifyResults.push(listener.notify(event));});// Forward occurring errors only, because there should be no return value from "notify"
6
6
  return Promise.all(notifyResults).then(function(){});});this.eventListeners=new Set();}/**
7
7
  * @param {ScannerEventListener} eventListener The event listener to attach to the handler.
8
- */;export{ScannerEventHandler as default};
8
+ */);export{ScannerEventHandler as default};
@@ -3,4 +3,4 @@ jest.mock("../../helpers",function(){return{logger:{debug:jest.fn(),dir:jest.fn(
3
3
  eventHandler.attach(new ScannerEventListener(null,null,null).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,null,type1).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope1,null).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope1,type1).setHandler(customHandler));// Listeners to skip
4
4
  eventHandler.attach(new ScannerEventListener(null,null,type2).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope1,type2).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope2,null).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope2,type1).setHandler(customHandler));eventHandler.attach(new ScannerEventListener(null,scope2,type2).setHandler(customHandler));_context2.next=16;return eventHandler.notifyAllListeners(new ScannerEvent(scope1,type1,mockPayload));case 16:expect(customHandler).toBeCalledTimes(4);case 17:case"end":return _context2.stop();}}},_callee2);})));it('should throw the first error if one or more listeners failed',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6(){var error1,error2,failingHandler1,failingHandler2,succeedingHandler;return _regeneratorRuntime.wrap(function _callee6$(_context6){while(1){switch(_context6.prev=_context6.next){case 0:error1=new Error('Handle failed - ERROR 1!');error2=new Error('Handle failed - ERROR 2!');failingHandler1=jest.fn(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(){return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:throw error1;case 1:case"end":return _context3.stop();}}},_callee3);})));failingHandler2=jest.fn(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(){return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:throw error2;case 1:case"end":return _context4.stop();}}},_callee4);})));succeedingHandler=jest.fn(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:case"end":return _context5.stop();}}},_callee5);})));eventHandler.attach(new ScannerEventListener().setHandler(succeedingHandler));eventHandler.attach(new ScannerEventListener().setHandler(failingHandler2));eventHandler.attach(new ScannerEventListener().setHandler(failingHandler1));// Handler "failingHandler2" will fail first, because it is attached before "failingHandler1".
5
5
  _context6.next=10;return expect(eventHandler.notifyAllListeners(new ScannerEvent('scope','type',mockPayload))).rejects.toThrow(error2);case 10:case"end":return _context6.stop();}}},_callee6);})));it('should resolve with "undefined" if all listeners succeeded',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee7(){var succeedingHandler;return _regeneratorRuntime.wrap(function _callee7$(_context7){while(1){switch(_context7.prev=_context7.next){case 0:succeedingHandler=jest.fn(function(){return'Some ignored return value';});eventHandler.attach(new ScannerEventListener().setHandler(succeedingHandler));eventHandler.attach(new ScannerEventListener().setHandler(succeedingHandler));// Expect true (in an Array) for each listener
6
- _context7.t0=expect;_context7.next=6;return eventHandler.notifyAllListeners(new ScannerEvent('scope','type',mockPayload));case 6:_context7.t1=_context7.sent;_context7.t2=undefined;(0,_context7.t0)(_context7.t1).toBe(_context7.t2);case 9:case"end":return _context7.stop();}}},_callee7);})));});});
6
+ _context7.t0=expect;_context7.next=6;return eventHandler.notifyAllListeners(new ScannerEvent('scope','type',mockPayload));case 6:_context7.t1=_context7.sent;(0,_context7.t0)(_context7.t1).toBe(undefined);case 8:case"end":return _context7.stop();}}},_callee7);})));});});
@@ -1,6 +1,6 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import AppScanner from"../Scanner";/**
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{logger}from"../../helpers";import AppScanner from"../Scanner";/**
2
2
  * Allows anyone to listen for scan results based on scope, type or both.
3
- */var ScannerEventListener=/**
3
+ */var ScannerEventListener=/*#__PURE__*/_createClass(/**
4
4
  * @param {string|null} name A name for the listener object to refer to.
5
5
  * @param {string|null} scope The scanner scope to listen for.
6
6
  * @param {string|null} type THe type of scanner events to listen for.
@@ -17,4 +17,4 @@ if(handlerResult!==undefined&&handlerResult!==null){logger.warn("Expected the Sc
17
17
  */ /**
18
18
  * @param {Handler} handler The function which is called when a scan is done.
19
19
  * @returns {ScannerEventListener}
20
- */;export default ScannerEventListener;
20
+ */);export default ScannerEventListener;
@@ -1,3 +1,3 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArrayLimit(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=arr[Symbol.iterator](),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}import ScannerEventListener from"./index";import ScannerEvent from"../ScannerEvent";import AppScanner from"../Scanner";import{logger}from"../../helpers";jest.mock('@shopgate/pwa-core/classes/AppCommand');jest.mock("../../helpers",function(){return{logger:{error:jest.fn(),warn:jest.fn()}};});describe('ScannerEventListener',function(){var name='Mocked Event Listener';beforeEach(function(){jest.clearAllMocks();});describe('constructor()',function(){it('should initialize the name correctly if none was set',function(){var l=new ScannerEventListener();expect(l.name).toBe('unnamed');});it('should initialize the type and scope correctly if none were set',function(){var l=new ScannerEventListener();expect(l.scope).toBe(null);expect(l.type).toBe(null);});it('should store the name, scope and type correctly if they were set',function(){var scope='testScope';var type='testType';var l=new ScannerEventListener(name,scope,type);expect(l.name).toBe(name);expect(l.scope).toBe(scope);expect(l.type).toBe(type);});it('should not have a default handler after new instance creation',function(){var l=new ScannerEventListener();expect(l.handler).toBe(null);});});describe('setHandler(handler)',function(){it('should output an error if the given handler is not a function',function(){// Just pass a string instead of a real handler
1
+ function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest();}function _nonIterableRest(){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 _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2[i]=arr[i];}return arr2;}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}import ScannerEventListener from"./index";import ScannerEvent from"../ScannerEvent";import AppScanner from"../Scanner";import{logger}from"../../helpers";jest.mock('@shopgate/pwa-core/classes/AppCommand');jest.mock("../../helpers",function(){return{logger:{error:jest.fn(),warn:jest.fn()}};});describe('ScannerEventListener',function(){var name='Mocked Event Listener';beforeEach(function(){jest.clearAllMocks();});describe('constructor()',function(){it('should initialize the name correctly if none was set',function(){var l=new ScannerEventListener();expect(l.name).toBe('unnamed');});it('should initialize the type and scope correctly if none were set',function(){var l=new ScannerEventListener();expect(l.scope).toBe(null);expect(l.type).toBe(null);});it('should store the name, scope and type correctly if they were set',function(){var scope='testScope';var type='testType';var l=new ScannerEventListener(name,scope,type);expect(l.name).toBe(name);expect(l.scope).toBe(scope);expect(l.type).toBe(type);});it('should not have a default handler after new instance creation',function(){var l=new ScannerEventListener();expect(l.handler).toBe(null);});});describe('setHandler(handler)',function(){it('should output an error if the given handler is not a function',function(){// Just pass a string instead of a real handler
2
2
  var invalidHandler='invalid handler';var invalidHandlerErrorMessage='The ScannerEventListener handler must be a function!';new ScannerEventListener().setHandler(invalidHandler);expect(logger.error).toBeCalledTimes(1);expect(logger.error).toBeCalledWith(new Error(invalidHandlerErrorMessage));});it('should not output an "invalid handler" error for a valid handler',function(){new ScannerEventListener().setHandler(jest.fn());expect(logger.error).not.toBeCalled();});it('should return the current listener instance after setting the handler',function(){var l=new ScannerEventListener();expect(l.setHandler(jest.fn())).toBe(l);});it('should set the handler correctly',function(){var customHandler=jest.fn();var l=new ScannerEventListener().setHandler(customHandler);expect(l.handler).toBe(customHandler);});});describe('attach()',function(){// Make sure to restore scanner object functionality after each test
3
3
  var addListener=AppScanner.addListener;afterEach(function(){AppScanner.addListener=addListener;});it('should attach the new listener to the global Scanner object',function(){AppScanner.addListener=jest.fn();var l=new ScannerEventListener();l.attach();expect(AppScanner.addListener).toBeCalledTimes(1);expect(AppScanner.addListener).toBeCalledWith(l);});});describe('canHandleEvent(event)',function(){var mockPayload={format:'format',code:'code'};it('should return false and print a warning if no handlers are attached',function(){var l=new ScannerEventListener();var result=l.canHandleEvent(null);expect(result).toBe(false);expect(logger.warn).toBeCalledTimes(1);});it('should return true on every event for "global" listeners',function(){var listenScope=null;var listenType=null;var differentScope='different-scope';var differentType='different-type';var l=new ScannerEventListener(name,listenScope,listenType).setHandler(function(){});var result=l.canHandleEvent(new ScannerEvent(differentScope,differentType,mockPayload));expect(result).toBe(true);});it('should return the correct values for specific event scopes only',function(){var listenScope='interesting-scope';var differentScope='different-scope';var anyType='any-type';var l=new ScannerEventListener(name,listenScope).setHandler(function(){});var result=[l.canHandleEvent(new ScannerEvent(listenScope,anyType,mockPayload)),l.canHandleEvent(new ScannerEvent(differentScope,anyType,mockPayload))];expect(result).toEqual([true,false]);});it('should return the correct values for specific event types only',function(){var listenType='interesting-type';var differentType='different-type';var anyScope='any-scope';var l=new ScannerEventListener(name,null,listenType).setHandler(function(){});var result=[l.canHandleEvent(new ScannerEvent(anyScope,listenType,mockPayload)),l.canHandleEvent(new ScannerEvent(anyScope,differentType,mockPayload))];expect(result).toEqual([true,false]);});it('should return the correct values for specific event scope/type combinations only',function(){var listenScope='interesting-scope';var listenType='interesting-type';var differentScope='different-scope';var differentType='different-type';var l=new ScannerEventListener(name,listenScope,listenType).setHandler(function(){});var result=[l.canHandleEvent(new ScannerEvent(listenScope,listenType,mockPayload)),l.canHandleEvent(new ScannerEvent(listenScope,differentType,mockPayload)),l.canHandleEvent(new ScannerEvent(differentScope,listenType,mockPayload)),l.canHandleEvent(new ScannerEvent(differentScope,differentType,mockPayload))];expect(result).toEqual([true,false,false,false]);});it('should return the correct values for specific payload format combinations only ',function(){var listenScope='interesting-scope';var listenType='interesting-type';var listenFormats=['format'];var l=new ScannerEventListener(name,listenScope,listenType,listenFormats).setHandler(function(){});var result=[l.canHandleEvent(new ScannerEvent(listenScope,listenType,mockPayload)),l.canHandleEvent(new ScannerEvent(listenScope,listenType,_extends({},mockPayload,{format:'otherFormat'})))];expect(result).toEqual([true,false]);});});describe('notify(event)',function(){var mockPayload={format:'format',code:'code'};it('should print a warning if the custom handler returns a value',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var customHandler,l;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:customHandler=jest.fn(function(){return'Some return-value';});l=new ScannerEventListener(name).setHandler(customHandler);_context.next=4;return l.notify(new ScannerEvent('scope','type',mockPayload));case 4:expect(logger.warn).toBeCalledTimes(1);case 5:case"end":return _context.stop();}}},_callee);})));it('should call the handler for specific event scope/type combinations only',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(){var customHandler,listenScope,listenType,differentScope,differentType,l,_customHandler$mock$c,_customHandler$mock$c2,event;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:customHandler=jest.fn();listenScope='interesting-scope';listenType='interesting-type';differentScope='different-scope';differentType='different-type';l=new ScannerEventListener(name,listenScope,listenType).setHandler(customHandler);_context2.next=8;return l.notify(new ScannerEvent(listenScope,listenType,mockPayload));case 8:_context2.next=10;return l.notify(new ScannerEvent(listenScope,differentType,mockPayload));case 10:_context2.next=12;return l.notify(new ScannerEvent(differentScope,listenType,mockPayload));case 12:_context2.next=14;return l.notify(new ScannerEvent(differentScope,differentType,mockPayload));case 14:expect(customHandler).toBeCalledTimes(1);_customHandler$mock$c=_slicedToArray(customHandler.mock.calls,1),_customHandler$mock$c2=_slicedToArray(_customHandler$mock$c[0],1),event=_customHandler$mock$c2[0];expect(event).toBeInstanceOf(ScannerEvent);expect(event.getScope()).toBe(listenScope);expect(event.getType()).toBe(listenType);expect(event.getPayload()).toEqual(mockPayload);case 20:case"end":return _context2.stop();}}},_callee2);})));it('should forward the handler error to the caller',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(){var customHandlerError,customHandler,l;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:customHandlerError=new Error('Custom handler failed!');customHandler=jest.fn(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(){return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:throw customHandlerError;case 1:case"end":return _context3.stop();}}},_callee3);})));l=new ScannerEventListener(name).setHandler(customHandler);_context4.next=5;return expect(l.notify(new ScannerEvent('scope','type',mockPayload))).rejects.toThrow(customHandlerError);case 5:case"end":return _context4.stop();}}},_callee4);})));});});
@@ -1,9 +1,9 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _wrapNativeSuper(Class){var _cache=typeof Map==="function"?new Map():undefined;_wrapNativeSuper=function _wrapNativeSuper(Class){if(Class===null||!_isNativeFunction(Class))return Class;if(typeof Class!=="function"){throw new TypeError("Super expression must either be null or a function");}if(typeof _cache!=="undefined"){if(_cache.has(Class))return _cache.get(Class);_cache.set(Class,Wrapper);}function Wrapper(){return _construct(Class,arguments,_getPrototypeOf(this).constructor);}Wrapper.prototype=Object.create(Class.prototype,{constructor:{value:Wrapper,enumerable:false,writable:true,configurable:true}});return _setPrototypeOf(Wrapper,Class);};return _wrapNativeSuper(Class);}function isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Date.prototype.toString.call(Reflect.construct(Date,[],function(){}));return true;}catch(e){return false;}}function _construct(Parent,args,Class){if(isNativeReflectConstruct()){_construct=Reflect.construct;}else{_construct=function _construct(Parent,args,Class){var a=[null];a.push.apply(a,args);var Constructor=Function.bind.apply(Parent,a);var instance=new Constructor();if(Class)_setPrototypeOf(instance,Class.prototype);return instance;};}return _construct.apply(null,arguments);}function _isNativeFunction(fn){return Function.toString.call(fn).indexOf("[native code]")!==-1;}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _wrapNativeSuper(Class){var _cache=typeof Map==="function"?new Map():undefined;_wrapNativeSuper=function _wrapNativeSuper(Class){if(Class===null||!_isNativeFunction(Class))return Class;if(typeof Class!=="function"){throw new TypeError("Super expression must either be null or a function");}if(typeof _cache!=="undefined"){if(_cache.has(Class))return _cache.get(Class);_cache.set(Class,Wrapper);}function Wrapper(){return _construct(Class,arguments,_getPrototypeOf(this).constructor);}Wrapper.prototype=Object.create(Class.prototype,{constructor:{value:Wrapper,enumerable:false,writable:true,configurable:true}});return _setPrototypeOf(Wrapper,Class);};return _wrapNativeSuper(Class);}function _construct(Parent,args,Class){if(_isNativeReflectConstruct()){_construct=Reflect.construct;}else{_construct=function _construct(Parent,args,Class){var a=[null];a.push.apply(a,args);var Constructor=Function.bind.apply(Parent,a);var instance=new Constructor();if(Class)_setPrototypeOf(instance,Class.prototype);return instance;};}return _construct.apply(null,arguments);}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _isNativeFunction(fn){return Function.toString.call(fn).indexOf("[native code]")!==-1;}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}/**
2
2
  * The ScanProcessingError is supposed to be thrown in case of a processing error of the scanned
3
3
  * content. It's properties will be used to display an error message to the user.
4
4
  * @extends Error
5
- */var ScanProcessingError=/*#__PURE__*/function(_Error){_inherits(ScanProcessingError,_Error);/**
5
+ */var ScanProcessingError=/*#__PURE__*/function(_Error){_inherits(ScanProcessingError,_Error);var _super=_createSuper(ScanProcessingError);/**
6
6
  * Constructor for the ScanProcessingError
7
7
  * @param {string} message The message of the error.
8
8
  * @param {string} [title=null] The title of the error.
9
- */function ScanProcessingError(message){var _this;var title=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;_classCallCheck(this,ScanProcessingError);_this=_possibleConstructorReturn(this,_getPrototypeOf(ScanProcessingError).call(this,message));_this.title=title;return _this;}return ScanProcessingError;}(_wrapNativeSuper(Error));export default ScanProcessingError;
9
+ */function ScanProcessingError(message){var _this;var title=arguments.length>1&&arguments[1]!==undefined?arguments[1]:null;_classCallCheck(this,ScanProcessingError);_this=_super.call(this,message);_this.title=title;return _this;}return _createClass(ScanProcessingError);}(/*#__PURE__*/_wrapNativeSuper(Error));export default ScanProcessingError;
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key];}}return target;}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key];}return target;}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}import{logger}from"../../helpers";import event from"../Event";import registerEvents from"../../commands/registerEvents";import broadcastEvent from"../../commands/broadcastEvent";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE}from"../../constants/Scanner";import{openScanner as _openScanner,closeScanner as _closeScanner,startScanner}from"../../commands/scanner";export var APP_EVENT_CLOSE_SCANNER='closeScanner';export var APP_EVENT_SCANNER_DID_SCAN='scannerDidScan';export var APP_EVENT_SCANNER_ERROR_CONFIRMED='scannerErrorConfirmed';export var APP_EVENT_SCANNER_RESULT_PROCESSED='scannerResultProcessed';var eventsRegistered=false;/**
1
+ var _excluded=["requestId","scannerType"];function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import _regeneratorRuntime from"@babel/runtime/regenerator";function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key];}}return target;}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key];}return target;}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}import{logger}from"../../helpers";import event from"../Event";import registerEvents from"../../commands/registerEvents";import broadcastEvent from"../../commands/broadcastEvent";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_IMAGE}from"../../constants/Scanner";import{openScanner as _openScanner,closeScanner as _closeScanner,startScanner}from"../../commands/scanner";export var APP_EVENT_CLOSE_SCANNER='closeScanner';export var APP_EVENT_SCANNER_DID_SCAN='scannerDidScan';export var APP_EVENT_SCANNER_ERROR_CONFIRMED='scannerErrorConfirmed';export var APP_EVENT_SCANNER_RESULT_PROCESSED='scannerResultProcessed';var eventsRegistered=false;/**
2
2
  * A callback that is invoked whenever the scanner recognized supported content.
3
3
  * @callback scanHandler
4
4
  * @param {Object} payload The event payload for a successful content scan.
@@ -28,7 +28,7 @@ registerEvents([APP_EVENT_CLOSE_SCANNER,APP_EVENT_SCANNER_DID_SCAN,APP_EVENT_SCA
28
28
  * @param {Object|null} message An object that contains properties for a dialog popup.
29
29
  */var scannerResultProcessedEvent=function scannerResultProcessedEvent(requestId){var success=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var message=arguments.length>2&&arguments[2]!==undefined?arguments[2]:null;broadcastEvent({event:APP_EVENT_SCANNER_RESULT_PROCESSED,parameters:[requestId,success,message]});};/**
30
30
  * Wrapper function to enable execution of async code within an EventEmitter callback.
31
- */var execScanCallback=/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var requestId,scannerType,data,message,_error$title,title;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:requestId=payload.requestId,scannerType=payload.scannerType,data=_objectWithoutProperties(payload,["requestId","scannerType"]);_context.prev=1;_context.next=4;return _this.scanHandler({scannerType:scannerType,requestId:requestId,data:data});case 4:// Inform the scanner view about the outcome.
31
+ */var execScanCallback=/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var requestId,scannerType,data,message,_error$title,title;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:requestId=payload.requestId,scannerType=payload.scannerType,data=_objectWithoutProperties(payload,_excluded);_context.prev=1;_context.next=4;return _this.scanHandler({scannerType:scannerType,requestId:requestId,data:data});case 4:// Inform the scanner view about the outcome.
32
32
  scannerResultProcessedEvent(requestId);if(_this.autoClose){// Close the scanner after a successful scan.
33
33
  _this.closeScanner();}_context.next=12;break;case 8:_context.prev=8;_context.t0=_context["catch"](1);message=_context.t0.message,_error$title=_context.t0.title,title=_error$title===void 0?null:_error$title;// Trigger an error message within the scanner webview when content processing failed.
34
34
  scannerResultProcessedEvent(requestId,false,{message:message,title:title});case 12:case"end":return _context.stop();}}},_callee,null,[[1,8]]);}));return function execScanCallback(){return _ref.apply(this,arguments);};}();execScanCallback();}/**
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import event from"../Event";import registerEvents from"../../commands/registerEvents";import ScannerManager,{APP_EVENT_SCANNER_DID_SCAN,APP_EVENT_SCANNER_RESULT_PROCESSED,APP_EVENT_CLOSE_SCANNER,APP_EVENT_SCANNER_ERROR_CONFIRMED}from"./index";import ScanProcessingError from"./ScanProcessingError";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_CARD,SCANNER_TYPE_IMAGE}from"../../constants/Scanner";jest.mock("../Event");var mockedBroadcastEventCmd=jest.fn();jest.mock("../../commands/broadcastEvent",function(){return function(){return mockedBroadcastEventCmd.apply(void 0,arguments);};});jest.mock("../../commands/registerEvents",function(){return jest.fn();});var mockedOpenScannerCmd=jest.fn();var mockedCloseScannerCmd=jest.fn();var mockedStartScannerCmd=jest.fn();jest.mock("../../commands/scanner",function(){return{openScanner:function openScanner(){return mockedOpenScannerCmd.apply(void 0,arguments);},closeScanner:function closeScanner(){return mockedCloseScannerCmd.apply(void 0,arguments);},startScanner:function startScanner(){return mockedStartScannerCmd.apply(void 0,arguments);}};});var mockErrorLogger=jest.fn();jest.mock("../../helpers",function(){return{logger:{error:function error(){return mockErrorLogger.apply(void 0,arguments);},warn:function warn(){return function(){};}}};});describe('ScannerManager',function(){var instance;var mockedScanHandler=jest.fn().mockResolvedValue();var eventAddCallbackSpy=event.addCallbackSpy;var eventRemoveCallbackSpy=event.removeCallbackSpy;beforeAll(function(){});beforeEach(function(){jest.clearAllMocks();instance=new ScannerManager();instance.registerScanHandler(mockedScanHandler);});afterEach(function(){// Take care the the scanner event callbacks are removed.
1
+ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}import _regeneratorRuntime from"@babel/runtime/regenerator";function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import event from"../Event";import registerEvents from"../../commands/registerEvents";import ScannerManager,{APP_EVENT_SCANNER_DID_SCAN,APP_EVENT_SCANNER_RESULT_PROCESSED,APP_EVENT_CLOSE_SCANNER,APP_EVENT_SCANNER_ERROR_CONFIRMED}from"./index";import ScanProcessingError from"./ScanProcessingError";import{SCANNER_MODE_ON,SCANNER_TYPE_BARCODE,SCANNER_TYPE_CARD,SCANNER_TYPE_IMAGE}from"../../constants/Scanner";jest.mock("../Event");var mockedBroadcastEventCmd=jest.fn();jest.mock("../../commands/broadcastEvent",function(){return function(){return mockedBroadcastEventCmd.apply(void 0,arguments);};});jest.mock("../../commands/registerEvents",function(){return jest.fn();});var mockedOpenScannerCmd=jest.fn();var mockedCloseScannerCmd=jest.fn();var mockedStartScannerCmd=jest.fn();jest.mock("../../commands/scanner",function(){return{openScanner:function openScanner(){return mockedOpenScannerCmd.apply(void 0,arguments);},closeScanner:function closeScanner(){return mockedCloseScannerCmd.apply(void 0,arguments);},startScanner:function startScanner(){return mockedStartScannerCmd.apply(void 0,arguments);}};});var mockErrorLogger=jest.fn();jest.mock("../../helpers",function(){return{logger:{error:function error(){return mockErrorLogger.apply(void 0,arguments);},warn:function warn(){return function(){};}}};});describe('ScannerManager',function(){var instance;var mockedScanHandler=jest.fn().mockResolvedValue();var eventAddCallbackSpy=event.addCallbackSpy;var eventRemoveCallbackSpy=event.removeCallbackSpy;beforeAll(function(){});beforeEach(function(){jest.clearAllMocks();instance=new ScannerManager();instance.registerScanHandler(mockedScanHandler);});afterEach(function(){// Take care the the scanner event callbacks are removed.
2
2
  event.removeAllListeners();});describe('.constructor()',function(){it('should register necessary only once',function(){expect(registerEvents).toHaveBeenCalledTimes(1);var newInstance=new ScannerManager();expect(registerEvents).toHaveBeenCalledTimes(1);expect(newInstance).toBeInstanceOf(ScannerManager);});it('should work as expected when no options are passed',function(){expect(instance.autoClose).toBe(true);expect(instance.supportedTypes).toEqual(expect.any(Array));expect(instance.supportedTypes).not.toHaveLength(0);expect(_typeof(instance.scanHandler)).toBe('function');});it('should work as expected when the auto close option is passed',function(){instance=new ScannerManager({autoClose:false});expect(instance.autoClose).toBe(false);});});describe('.registerScanHandler()',function(){it('should work as expected when a valid handler was passed',function(){// eslint-disable-next-line require-jsdoc
3
3
  var handler=function handler(){};var result=instance.registerScanHandler(handler);expect(result).toEqual(instance);expect(instance.scanHandler).toBe(handler);});it('should work as expected when an invalid handler was passed',function(){var handler=null;var result=instance.registerScanHandler(handler);expect(result).toEqual(instance);expect(_typeof(instance.scanHandler)).toBe('function');});});describe('.openScanner()',function(){it('should work as expected without params',function(){var expectedOpenScannerParams={modes:_defineProperty({},SCANNER_TYPE_BARCODE,SCANNER_MODE_ON)};var result=instance.openScanner();expect(result).toEqual(instance);expect(eventAddCallbackSpy).toHaveBeenCalledTimes(3);expect(eventAddCallbackSpy).toHaveBeenCalledWith(APP_EVENT_CLOSE_SCANNER,instance.closeScanner);expect(eventAddCallbackSpy).toHaveBeenCalledWith(APP_EVENT_SCANNER_DID_SCAN,instance.scannerDidScanListener);expect(eventAddCallbackSpy).toHaveBeenCalledWith(APP_EVENT_SCANNER_ERROR_CONFIRMED,expect.any(Function));expect(mockedOpenScannerCmd).toHaveBeenCalledTimes(1);expect(mockedOpenScannerCmd).toHaveBeenCalledWith(expectedOpenScannerParams);});it('should work as expected when barcode type is passed as param',function(){var expectedOpenScannerParams={modes:_defineProperty({},SCANNER_TYPE_BARCODE,SCANNER_MODE_ON)};var result=instance.openScanner(SCANNER_TYPE_BARCODE);expect(result).toEqual(instance);expect(eventAddCallbackSpy).toHaveBeenCalledTimes(3);expect(mockedOpenScannerCmd).toHaveBeenCalledTimes(1);expect(mockedOpenScannerCmd).toHaveBeenCalledWith(expectedOpenScannerParams);});it('should work as expected when image type is passed as param',function(){var expectedOpenScannerParams={modes:_defineProperty({},SCANNER_TYPE_IMAGE,SCANNER_MODE_ON)};var result=instance.openScanner(SCANNER_TYPE_IMAGE);expect(result).toEqual(instance);expect(eventAddCallbackSpy).toHaveBeenCalledTimes(3);expect(mockedOpenScannerCmd).toHaveBeenCalledTimes(1);expect(mockedOpenScannerCmd).toHaveBeenCalledWith(expectedOpenScannerParams);});it('should log an error when an unsupported param is passed',function(){var result=instance.openScanner(SCANNER_TYPE_CARD);expect(result).toEqual(instance);expect(mockErrorLogger).toHaveBeenCalledTimes(1);expect(eventAddCallbackSpy).toHaveBeenCalledTimes(0);expect(mockedOpenScannerCmd).toHaveBeenCalledTimes(0);});});describe('.closeScanner()',function(){it('should work as expected',function(){var result=instance.closeScanner();expect(result).toEqual(instance);expect(eventRemoveCallbackSpy).toHaveBeenCalledTimes(3);expect(eventRemoveCallbackSpy).toHaveBeenCalledWith(APP_EVENT_CLOSE_SCANNER,instance.closeScanner);expect(eventRemoveCallbackSpy).toHaveBeenCalledWith(APP_EVENT_SCANNER_DID_SCAN,instance.scannerDidScanListener);expect(eventRemoveCallbackSpy).toHaveBeenCalledWith(APP_EVENT_SCANNER_ERROR_CONFIRMED,expect.any(Function));expect(mockedCloseScannerCmd).toHaveBeenCalledTimes(1);});});describe('.scannerDidScanListener()',function(){var requestId='abc123';var mockedCloseScanner;beforeEach(function(){// Create a new instance without a default handler for the following tests.
4
4
  instance=new ScannerManager();mockedCloseScanner=jest.spyOn(instance,'closeScanner');});it('should close the scanner when the handler does not throw an error',/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(){var handler;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:// eslint-disable-next-line require-jsdoc
@@ -1,8 +1,8 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor;}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}import event from"../Event";import{logger}from"../../helpers";import logGroup from"../../helpers/logGroup";import Request from"../Request";import requestBuffer from"../RequestBuffer";import Bridge from"../Bridge";var localSerial=0;/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor);}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);Object.defineProperty(Constructor,"prototype",{writable:false});return Constructor;}function _inherits(subClass,superClass){if(typeof superClass!=="function"&&superClass!==null){throw new TypeError("Super expression must either be null or a function");}subClass.prototype=Object.create(superClass&&superClass.prototype,{constructor:{value:subClass,writable:true,configurable:true}});Object.defineProperty(subClass,"prototype",{writable:false});if(superClass)_setPrototypeOf(subClass,superClass);}function _setPrototypeOf(o,p){_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(o,p){o.__proto__=p;return o;};return _setPrototypeOf(o,p);}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=_getPrototypeOf(Derived),result;if(hasNativeReflectConstruct){var NewTarget=_getPrototypeOf(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return _possibleConstructorReturn(this,result);};}function _possibleConstructorReturn(self,call){if(call&&(_typeof(call)==="object"||typeof call==="function")){return call;}else if(call!==void 0){throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self){if(self===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}function _getPrototypeOf(o){_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function _getPrototypeOf(o){return o.__proto__||Object.getPrototypeOf(o);};return _getPrototypeOf(o);}import event from"../Event";import{logger}from"../../helpers";import logGroup from"../../helpers/logGroup";import Request from"../Request";import requestBuffer from"../RequestBuffer";import Bridge from"../Bridge";var localSerial=0;/**
2
2
  * The WebStorageRequest class.
3
- */var WebStorageRequest=/*#__PURE__*/function(_Request){_inherits(WebStorageRequest,_Request);/**
3
+ */var WebStorageRequest=/*#__PURE__*/function(_Request){_inherits(WebStorageRequest,_Request);var _super=_createSuper(WebStorageRequest);/**
4
4
  * @param {string} name The name of the WebStorage entry.
5
- */function WebStorageRequest(){var _this;var name=arguments.length>0&&arguments[0]!==undefined?arguments[0]:'';_classCallCheck(this,WebStorageRequest);_this=_possibleConstructorReturn(this,_getPrototypeOf(WebStorageRequest).call(this));_this.name=name;_this.params=null;_this.createSerial(_this.name);_this.createEventCallbackName('webStorageResponse');return _this;}/**
5
+ */function WebStorageRequest(){var _this;var name=arguments.length>0&&arguments[0]!==undefined?arguments[0]:'';_classCallCheck(this,WebStorageRequest);_this=_super.call(this);_this.name=name;_this.params=null;_this.createSerial(_this.name);_this.createEventCallbackName('webStorageResponse');return _this;}/**
6
6
  * Generates the serial for this web storage request. Since the setWebStorageEntry expects
7
7
  * a number value here, the default createSerial method cannot be used by now.
8
8
  */_createClass(WebStorageRequest,[{key:"createSerial",value:function createSerial(){// Increase the local serial and use it for the request
@@ -1,4 +1,4 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import AppCommand from"../classes/AppCommand";import{logger}from"../helpers";/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import AppCommand from"../classes/AppCommand";import{logger}from"../helpers";/**
2
2
  * Enables the geofencing provider plotProjects
3
3
  * @param {string} token The public token that is needed to enable plot projects
4
4
  */export function plotProjectsEnable(token){var command=new AppCommand();command.setCommandName('plotProjectsEnable').setLibVersion('18.0').dispatch({publicToken:token});}/**
@@ -1,4 +1,4 @@
1
- function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import{logger}from"./index";var KEY_COLOR='gray';/**
1
+ function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import{logger}from"./index";var KEY_COLOR='gray';/**
2
2
  * Repeates a string by a defined amount of times.
3
3
  * @param {string} str The string to repeat.
4
4
  * @param {number} times How many times the string should be repeated.
@@ -1,4 +1,4 @@
1
- import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance");}function _iterableToArrayLimit(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=arr[Symbol.iterator](),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}function _typeof(obj){if(typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"){_typeof=function _typeof(obj){return typeof obj;};}else{_typeof=function _typeof(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};}return _typeof(obj);}import MobileDetect from'mobile-detect';import detector from'detector';import{logger,hasSGJavaScriptBridge}from"./index";import getWebStorageEntry from"../commands/getWebStorageEntry";var MODE_AT_MOST='at_most';var MODE_AT_LEAST='at_least';export var PLATFORM_ANDROID='android';export var PLATFORM_IOS='ios';export var MIN_ANDROID_LIB_VERSION='13.0';var versions=null;var requesting=false;var md=new MobileDetect(navigator.userAgent);export var isAndroidOs=md.is('AndroidOS');export var isIOs=md.is('iOS');var fullVersion=_typeof(detector)==='object'&&detector.os?detector.os.fullVersion:null;// Eslint doesn't allow to use one liner here.
1
+ import _regeneratorRuntime from"@babel/runtime/regenerator";function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key];}}}return target;};return _extends.apply(this,arguments);}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value;}catch(error){reject(error);return;}if(info.done){resolve(value);}else{Promise.resolve(value).then(_next,_throw);}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value);}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err);}_next(undefined);});};}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest();}function _nonIterableRest(){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 _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2[i]=arr[i];}return arr2;}function _iterableToArrayLimit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break;}}catch(err){_d=true;_e=err;}finally{try{if(!_n&&_i["return"]!=null)_i["return"]();}finally{if(_d)throw _e;}}return _arr;}function _arrayWithHoles(arr){if(Array.isArray(arr))return arr;}function _typeof(obj){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj;}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;},_typeof(obj);}import MobileDetect from'mobile-detect';import detector from'detector';import{logger,hasSGJavaScriptBridge}from"./index";import getWebStorageEntry from"../commands/getWebStorageEntry";var MODE_AT_MOST='at_most';var MODE_AT_LEAST='at_least';export var PLATFORM_ANDROID='android';export var PLATFORM_IOS='ios';export var MIN_ANDROID_LIB_VERSION='13.0';var versions=null;var requesting=false;var md=new MobileDetect(navigator.userAgent);export var isAndroidOs=md.is('AndroidOS');var fullVersion=_typeof(detector)==='object'&&detector.os?detector.os.fullVersion:null;// Eslint doesn't allow to use one liner here.
2
2
  var model=null;if(fullVersion){model=isAndroidOs?'Android':"iPhone".concat(fullVersion);}export var defaultClientInformation={libVersion:'21.0',appVersion:'5.18.0',codebaseVersion:'5.18.0',type:!md.tablet()?'phone':'tablet',device:{type:!md.tablet()?'phone':'tablet',os:{platform:isAndroidOs?PLATFORM_ANDROID:PLATFORM_IOS,ver:fullVersion},model:model},supportedAnalyticsServices:[]};/**
3
3
  * Waits till a passed handler function returns TRUE and resolves.
4
4
  * @param {Function} handler Handler function which checks a condition to resolve.
@@ -57,15 +57,15 @@ versions={libVersion:libVersion,appVersion:appVersion,codebaseVersion:codebaseVe
57
57
  * Checks if a required version matches at least the current lib version.
58
58
  * @param {string} requiredVersion The required version - 17[|17.0|17.0.0].
59
59
  * @return {Promise}
60
- */export var isLibVersionAtLeast=/*#__PURE__*/function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(requiredVersion){var _ref4,libVersion;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getVersionsFromClientInformation();case 2:_ref4=_context2.sent;libVersion=_ref4.libVersion;return _context2.abrupt("return",isVersionAtLeast(requiredVersion,libVersion));case 5:case"end":return _context2.stop();}}},_callee2);}));return function isLibVersionAtLeast(_x){return _ref3.apply(this,arguments);};}();/**
60
+ */export var isLibVersionAtLeast=/*#__PURE__*/function(){var _ref3=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(requiredVersion){var _yield$getVersionsFro,libVersion;return _regeneratorRuntime.wrap(function _callee2$(_context2){while(1){switch(_context2.prev=_context2.next){case 0:_context2.next=2;return getVersionsFromClientInformation();case 2:_yield$getVersionsFro=_context2.sent;libVersion=_yield$getVersionsFro.libVersion;return _context2.abrupt("return",isVersionAtLeast(requiredVersion,libVersion));case 5:case"end":return _context2.stop();}}},_callee2);}));return function isLibVersionAtLeast(_x){return _ref3.apply(this,arguments);};}();/**
61
61
  * Checks if a required version matches at most the current lib version.
62
62
  * @param {string} requiredVersion The required version - 17[|17.0|17.0.0].
63
63
  * @return {Promise}
64
- */export var isLibVersionAtMost=/*#__PURE__*/function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(requiredVersion){var _ref6,libVersion;return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getVersionsFromClientInformation();case 2:_ref6=_context3.sent;libVersion=_ref6.libVersion;return _context3.abrupt("return",isVersionAtMost(requiredVersion,libVersion));case 5:case"end":return _context3.stop();}}},_callee3);}));return function isLibVersionAtMost(_x2){return _ref5.apply(this,arguments);};}();/**
64
+ */export var isLibVersionAtMost=/*#__PURE__*/function(){var _ref4=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(requiredVersion){var _yield$getVersionsFro2,libVersion;return _regeneratorRuntime.wrap(function _callee3$(_context3){while(1){switch(_context3.prev=_context3.next){case 0:_context3.next=2;return getVersionsFromClientInformation();case 2:_yield$getVersionsFro2=_context3.sent;libVersion=_yield$getVersionsFro2.libVersion;return _context3.abrupt("return",isVersionAtMost(requiredVersion,libVersion));case 5:case"end":return _context3.stop();}}},_callee3);}));return function isLibVersionAtMost(_x2){return _ref4.apply(this,arguments);};}();/**
65
65
  * Checks if a required version matches the current lib version.
66
66
  * @param {string} requiredVersion The required version - 17[|17.0|17.0.0].
67
67
  * @return {Promise}
68
- */export var isLibVersion=/*#__PURE__*/function(){var _ref7=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(requiredVersion){var _ref8,libVersion;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getVersionsFromClientInformation();case 2:_ref8=_context4.sent;libVersion=_ref8.libVersion;return _context4.abrupt("return",isVersion(requiredVersion,libVersion));case 5:case"end":return _context4.stop();}}},_callee4);}));return function isLibVersion(_x3){return _ref7.apply(this,arguments);};}();/**
68
+ */export var isLibVersion=/*#__PURE__*/function(){var _ref5=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(requiredVersion){var _yield$getVersionsFro3,libVersion;return _regeneratorRuntime.wrap(function _callee4$(_context4){while(1){switch(_context4.prev=_context4.next){case 0:_context4.next=2;return getVersionsFromClientInformation();case 2:_yield$getVersionsFro3=_context4.sent;libVersion=_yield$getVersionsFro3.libVersion;return _context4.abrupt("return",isVersion(requiredVersion,libVersion));case 5:case"end":return _context4.stop();}}},_callee4);}));return function isLibVersion(_x3){return _ref5.apply(this,arguments);};}();/**
69
69
  * Returns the current libVersion.
70
70
  * @return {Promise}
71
- */export var getLibVersion=/*#__PURE__*/function(){var _ref9=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){var _ref10,libVersion;return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getVersionsFromClientInformation();case 2:_ref10=_context5.sent;libVersion=_ref10.libVersion;return _context5.abrupt("return",libVersion);case 5:case"end":return _context5.stop();}}},_callee5);}));return function getLibVersion(){return _ref9.apply(this,arguments);};}();
71
+ */export var getLibVersion=/*#__PURE__*/function(){var _ref6=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5(){var _yield$getVersionsFro4,libVersion;return _regeneratorRuntime.wrap(function _callee5$(_context5){while(1){switch(_context5.prev=_context5.next){case 0:_context5.next=2;return getVersionsFromClientInformation();case 2:_yield$getVersionsFro4=_context5.sent;libVersion=_yield$getVersionsFro4.libVersion;return _context5.abrupt("return",libVersion);case 5:case"end":return _context5.stop();}}},_callee5);}));return function getLibVersion(){return _ref6.apply(this,arguments);};}();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shopgate/pwa-core",
3
- "version": "6.20.0-beta.3",
3
+ "version": "6.20.0-beta.9",
4
4
  "description": "Core library for the Shopgate Connect PWA.",
5
5
  "author": "Support <support@shopgate.com>",
6
6
  "license": "Apache-2.0",