UNPKG

@shopgate/pwa-common-commerce

Version:

Commerce library for the Shopgate Connect PWA.

7 lines 1.88 kB
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{mutable}from'@shopgate/pwa-common/helpers/redux';import handleSearch from"./handleSearch";import handleNoResults from"./handleNoResults";import successHandleScanner from"../action-creators/successHandleScanner";/** * Handle bar code * @param {ScannerEvent} event Scanner event that emitted. * @param {string} format Format of the scanned code. * @param {string} payload Barcode payload. * @return {Function} A redux thunk. */var handleBarCode=function handleBarCode(event){return(/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(dispatch){var scope,format,payload;return _regeneratorRuntime.wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:scope=event.scope,format=event.format,payload=event.payload;_context.next=3;return dispatch(handleSearch(payload));case 3:if(!_context.sent){_context.next=7;break;}dispatch(successHandleScanner(scope,format,payload));_context.next=8;break;case 7:dispatch(handleNoResults(event,'scanner.noResult.barCode'));case 8:case"end":return _context.stop();}},_callee);}));return function(_x){return _ref.apply(this,arguments);};}());};/** @mixes {MutableFunction} */export default mutable(handleBarCode);