define(['jquery','uiComponent','underscore','Mirasvit_GoogleTagManager/js/event/select-item','Mirasvit_GoogleTagManager/js/event/view-item-list','Mirasvit_GoogleTagManager/js/event/select-promotion','Mirasvit_GoogleTagManager/js/event/view-promotion'],function($,Component,_,SelectItem,ItemList,SelectPromotion,ViewPromotion){'use strict';let intervalId;return Component.extend({initialize:function(logsUrl){this._super();SelectItem();ItemList();SelectPromotion();ViewPromotion();intervalId=setInterval(function(){if(typeof window.isGtmLoaded!='undefined'){if(typeof window.dataLayer!='undefined'&&window.dataLayer.length){let isError=!window.isGtmLoaded;this.saveLogs(isError);} clearInterval(intervalId);}}.bind(this),100);},saveLogs:function(isError){let logEvents=['add_to_cart','view_cart','begin_checkout','purchase','conversion'];let data=[];_.each(window.dataLayer,function(item){if(logEvents.includes(item.event)){data.push(item);}});$.ajax({url:this.logsUrl,type:'POST',dataType:'json',data:{isError:isError,data:data},success:function(response){if(typeof response.data!='undefined'){for(var i in response.data){window.mstGtmProducts[response.data[i]['product_id']]=response.data[i];}} this.isLoading=false;$(document).trigger('mst-gtm-init-products');}.bind(this)});}});});