Your IP : 52.14.242.56


Current Path : /var/www/www-root/data/www/monolith-realty.ru/bitrix/js/landing/metrika/dist/
Upload File :
Current File : /var/www/www-root/data/www/monolith-realty.ru/bitrix/js/landing/metrika/dist/metrika.bundle.js.map

{"version":3,"file":"metrika.bundle.js","sources":["../src/metrika.js"],"sourcesContent":["import {Dom, Type, Text, Event, Runtime} from 'main.core';\nimport type {AnalyticsOptions} from './types';\n\n/**\n * @memberOf BX.Landing\n */\nexport class Metrika\n{\n\tstatic TOOL_NAME = 'landing';\n\n\tformSelector: string;\n\twidgetBlockItemSelector: string;\n\tsiteType: ?string;\n\tformBlocks: Array<string>;\n\tformsLoaded: Array;\n\tsendedLabel: Array;\n\twidgetOpened: boolean;\n\twidgetBlockHover: boolean;\n\n\tconstructor(light: boolean)\n\t{\n\t\tthis.sendedLabel = [];\n\n\t\tif (light === true)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.formSelector= '.bitrix24forms';\n\t\tthis.widgetBlockItemSelector = '.landing-b24-widget-button-social-item';\n\t\tthis.formBlocks = [...document.querySelectorAll(this.formSelector)];\n\t\tthis.siteType = this.getSiteType();\n\t\tthis.formsLoaded = [];\n\t\tthis.widgetOpened = false;\n\t\tthis.widgetBlockHover = false;\n\n\t\t/*if (this.isFormsExists())\n\t\t{\n\t\t\tthis.waitForForms();\n\t\t}*/\n\t\tthis.waitForWidget();\n\t\tthis.detectAnchor();\n\t}\n\n\t/**\n\t * Returns site type.\n\t * @return {string|null}\n\t */\n\tgetSiteType()\n\t{\n\t\tconst metaSiteType = document.querySelector('meta[property=\"Bitrix24SiteType\"]');\n\t\tif (metaSiteType)\n\t\t{\n\t\t\treturn metaSiteType.getAttribute('content');\n\t\t}\n\t\treturn null;\n\t}\n\n\t/**\n\t * Is any form exists into the page.\n\t * @return {boolean}\n\t */\n\tisFormsExists(): boolean\n\t{\n\t\treturn this.formBlocks.length > 0;\n\t}\n\n\t/**\n\t * Listener for address links on the page.\n\t */\n\tdetectAnchor(): void\n\t{\n\t\t[...document.querySelectorAll('a')].map(node => {\n\t\t\tlet href = Dom.attr(node, 'href');\n\t\t\tif (href)\n\t\t\t{\n\t\t\t\thref = href.toString();\n\t\t\t}\n\t\t\tif (href && href.indexOf(':'))\n\t\t\t{\n\t\t\t\tconst hrefPref = href.split(':')[0];\n\t\t\t\tif (['callto', 'tel', 'mailto'].includes(hrefPref))\n\t\t\t\t{\n\t\t\t\t\tEvent.bind(node, 'click', () => {\n\t\t\t\t\t\tthis.sendLabel('', 'addressClick', hrefPref);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Listener for widget commands.\n\t */\n\twaitForWidget(): void\n\t{\n\t\t[...document.querySelectorAll(this.widgetBlockItemSelector)].map(node => {\n\t\t\tEvent.bind(node, 'mouseover', () => {\n\t\t\t\tthis.widgetBlockHover = true;\n\t\t\t});\n\t\t\tEvent.bind(node, 'mouseout', () => {\n\t\t\t\tthis.widgetBlockHover = false;\n\t\t\t});\n\t\t\tEvent.bind(node, 'click', () => {\n\t\t\t\t[...node.classList].map(className => {\n\t\t\t\t\tif (className.indexOf('ui-icon-service-') === 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst ol = className.substr('ui-icon-service-'.length);\n\t\t\t\t\t\tthis.sendLabel('', 'olOpenedFromWidget', ol);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\n\t\twindow.addEventListener('onBitrixLiveChat', event => {\n\t\t\tconst {widget, widgetHost} = event.detail;\n\t\t\twidget.subscribe({\n\t\t\t\ttype: BX.LiveChatWidget.SubscriptionType.every,\n\t\t\t\tcallback: event => {\n\t\t\t\t\tif (event.type === BX.LiveChatWidget.SubscriptionType.widgetOpen)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (this.widgetBlockHover)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.sendLabel(widgetHost, 'chatOpenedFromWidget');\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.sendLabel(widgetHost, 'chatOpened');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Sends analytic label when form is loaded, otherwise sends fail label.\n\t */\n\twaitForForms(): void\n\t{\n\t\twindow.addEventListener('b24:form:show:first', event => {\n\t\t\tconst {id, sec, address} = event.detail.object.identification;\n\t\t\tconst disabled = event.detail.object.disabled;\n\n\t\t\tthis.formsLoaded.push(id + '|' + sec);\n\n\t\t\tif (disabled)\n\t\t\t{\n\t\t\t\tthis.sendLabel(address, 'formDisabledLoad', id+ '|' + sec);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.sendLabel(address, 'formSuccessLoad', id+ '|' + sec);\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => {\n\t\t\tthis.formBlocks.map(node => {\n\t\t\t\tconst dataAttr = Dom.attr(node, 'data-b24form');\n\t\t\t\tif (dataAttr && dataAttr.indexOf('|'))\n\t\t\t\t{\n\t\t\t\t\tconst formData = dataAttr.split('|');\n\t\t\t\t\tif (!this.formsLoaded.includes(formData[0] + '|' + formData[1]))\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.sendLabel(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\t'formFailLoad',\n\t\t\t\t\t\t\tformData[1] ? formData[0] + '|' + formData[1] : formData[0]\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}, 5000);\n\t}\n\n\t/**\n\t * Clears already sent labels.\n\t */\n\tclearSendedLabel()\n\t{\n\t\tthis.sendedLabel = [];\n\t}\n\n\t/**\n\t * Send label to the portal.\n\t * @param {string|null} portalUrl\n\t * @param {string} label\n\t * @param {string|null} value\n\t */\n\tsendLabel(portalUrl: ?string, label: string, value: ?string): void\n\t{\n\t\tif (this.sendedLabel.includes(label + value))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tif (value && value.substr(0, 1) === '#')\n\t\t{\n\t\t\tvalue = value.substr(1);\n\t\t}\n\t\tthis.sendedLabel.push(label + value);\n\t\tBX.ajax({url:\n\t\t\t(portalUrl ? portalUrl : '') + '/bitrix/images/landing/analytics/pixel.gif?action=' + label +\n\t\t\t(value ? '&value=' + value : '') +\n\t\t\t(this.siteType ? '&siteType=' + this.siteType : '') +\n\t\t\t'&time=' + (new Date().getTime())\n\t\t});\n\t}\n\n\t/**\n\t * For new analytic scheme\n\t * @param data\n\t */\n\tsendData(data: AnalyticsOptions): void\n\t{\n\t\tRuntime.loadExtension('ui.analytics')\n\t\t\t.then(exports => {\n\t\t\t\tdata.tool = Metrika.TOOL_NAME;\n\t\t\t\tif (data.params && Type.isObject(data.params))\n\t\t\t\t{\n\t\t\t\t\tlet i = 1;\n\t\t\t\t\tconst maxParams = 5;\n\t\t\t\t\tfor (let param in data.params)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (i <= maxParams)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconst key = 'p' + i++;\n\t\t\t\t\t\t\tText.toCamelCase(param);\n\t\t\t\t\t\t\tdata[key] = Text.toCamelCase(param) + '_' + Text.toCamelCase(data.params[param]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tdelete data.params;\n\t\t\t\t}\n\n\t\t\t\tconst {sendData} = exports;\n\t\t\t\tsendData(data);\n\t\t\t})\n\t\t;\n\t}\n}"],"names":["Metrika","light","sendedLabel","formSelector","widgetBlockItemSelector","formBlocks","document","querySelectorAll","siteType","getSiteType","formsLoaded","widgetOpened","widgetBlockHover","waitForWidget","detectAnchor","metaSiteType","querySelector","getAttribute","length","map","node","href","Dom","attr","toString","indexOf","hrefPref","split","includes","Event","bind","sendLabel","classList","className","ol","substr","window","addEventListener","event","detail","widget","widgetHost","subscribe","type","BX","LiveChatWidget","SubscriptionType","every","callback","widgetOpen","object","identification","id","sec","address","disabled","push","setTimeout","dataAttr","formData","portalUrl","label","value","ajax","url","Date","getTime","data","Runtime","loadExtension","then","exports","tool","TOOL_NAME","params","Type","isObject","i","maxParams","param","key","Text","toCamelCase","sendData"],"mappings":"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"}