%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/bitrix/www/bitrix/js/landing/event-tracker/
Upload File :
Create Path :
Current File : /home/bitrix/www/bitrix/js/landing/event-tracker/event-tracker.min.js

(function(){"use strict";BX.namespace("BX.Landing");var n=BX.Landing.Utils.bind;var e=BX.Landing.Utils.data;var t=BX.Landing.Utils.isEmpty;var i=BX.Landing.Utils.isPlainObject;var a=BX.Landing.Utils.slice;var r=BX.Landing.Utils.findParent;var c=BX.Landing.Utils.trim;var l=BX.Landing.Utils.join;var o=BX.Landing.Utils.attr;function s(n,e,t){switch(t){case"show":return u(n,e);case"click":return f(n,e);default:return function(){}}}function u(n,e){if(!n.blockWiewMap.has(e)){n.intersectionObserver.observe(e);n.blockWiewMap.set(e,null)}}function f(e,t){var i=[].concat(a(t.querySelectorAll("a")),a(t.querySelectorAll("button")));i.forEach(function(t){if(!e.clickMap.has(t)){n(t,"click",h.bind(null,e,t));e.clickMap.set(t,null)}})}function h(n,e){var i=r(e,{className:"block-wrapper"});var a={type:"click",category:l("#",i.id),label:c(e.innerText)};if(t(a.label)&&e.tagName==="A"){var s=e.firstElementChild;if(s&&s.tagName==="IMG"&&o(s,"alt")){a.label=o(s,"alt")}else{a.label=o(e,"href")}}n.push(a)}function v(n){var a=e(n);var r={};if(i(a)&&!t(a)){r.event=a["data-event-tracker"]||[]}return r}function d(n,e){g(n,e);var t=setTimeout(function(){var t=r(e,{className:"block-wrapper"});n.push({category:"Block",type:"show",label:"#"+t.id})},1e3);n.blockWiewMap.set(e,t)}function g(n,e){clearTimeout(n.blockWiewMap.get(e));n.blockWiewMap.set(e,0)}function b(n){var e=window.innerHeight;if(n.boundingClientRect.height<=e/2){return.9}if(n.boundingClientRect.height>=e){var t=Math.min(n.boundingClientRect.height,e)/Math.max(n.boundingClientRect.height,e);return t-t/100*10}return.7}function p(n,e){e.forEach(function(e){if(e.intersectionRatio>=b(e)){d(n,e.target);return}g(n,e.target)})}BX.Landing.EventTracker=function(){this.intersectionObserver=new IntersectionObserver(p.bind(null,this),{threshold:[0,.05,.1,.2,.3,.4,.5,.6,.7,.8,.9,1]});this.blockWiewMap=new WeakMap;this.clickMap=new WeakMap;this.services=[new BX.Landing.EventTracker.Service.GoogleAnalytics]};BX.Landing.EventTracker.getInstance=function(){return BX.Landing.EventTracker.instance||(BX.Landing.EventTracker.instance=new BX.Landing.EventTracker)};BX.Landing.EventTracker.prototype={observe:function(n){var e=v(document.body);if(i(e)&&!t(e)){e.event.forEach(s.bind(null,this,n))}},push:function(n){this.services.forEach(function(e){e.push(n)})},run:function(){a(document.querySelectorAll(".block-wrapper > *:first-child")).forEach(this.observe,this)}}})();

Zerion Mini Shell 1.0