From 5899a81490427da39e159bedf9b5081a7e10510e Mon Sep 17 00:00:00 2001 From: Sandeep Date: Tue, 29 Mar 2022 11:06:48 +0800 Subject: [PATCH 1/2] re: dataLayer is not defined - added a check on GTM --- src/botPage/bot/TradeEngine/Purchase.js | 2 +- src/botPage/view/View.js | 4 ++-- src/botPage/view/blockly/customBlockly.js | 2 +- src/botPage/view/blockly/index.js | 4 ++-- src/botPage/view/index.js | 2 +- src/common/appId.js | 2 +- src/common/elevio.js | 6 +++--- src/indexPage/index.js | 2 +- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/botPage/bot/TradeEngine/Purchase.js b/src/botPage/bot/TradeEngine/Purchase.js index 85f663059b..ae67de9959 100644 --- a/src/botPage/bot/TradeEngine/Purchase.js +++ b/src/botPage/bot/TradeEngine/Purchase.js @@ -21,7 +21,7 @@ export default Engine => // Don't unnecessarily send a forget request for a purchased contract. this.data.proposals = this.data.proposals.filter(p => p.id !== response.echo_req.buy); const { buy } = response; - GTM.pushDataLayer({ event: 'bot_purchase', buy_price: proposal.ask_price }); + GTM?.pushDataLayer?.({ event: 'bot_purchase', buy_price: proposal.ask_price }); contractStatus({ id : 'contract.purchase_recieved', diff --git a/src/botPage/view/View.js b/src/botPage/view/View.js index b9dc59dadc..711bcbc968 100644 --- a/src/botPage/view/View.js +++ b/src/botPage/view/View.js @@ -444,7 +444,7 @@ export default class View { this.stop(); Elevio.logoutUser(); googleDriveUtil.logout(); - GTM.setVisitorId(); + GTM?.setVisitorId?.(); removeTokens(); }) .catch(() => {}); @@ -688,7 +688,7 @@ export default class View { .then(() => { this.stop(); Elevio.logoutUser(); - GTM.setVisitorId(); + GTM?.setVisitorId?.(); const activeToken = $(e.currentTarget).attr('value'); const tokenList = getTokenList(); setStorage('tokenList', ''); diff --git a/src/botPage/view/blockly/customBlockly.js b/src/botPage/view/blockly/customBlockly.js index 083d22193a..13bc0ef6c5 100644 --- a/src/botPage/view/blockly/customBlockly.js +++ b/src/botPage/view/blockly/customBlockly.js @@ -348,7 +348,7 @@ Blockly.Input.prototype.attachShadowBlock = function(value, name, shadowBlockTyp Blockly.Toolbox.TreeNode.prototype.onClick_ = function(_e) { // eslint-disable-next-line no-underscore-dangle const blocklyCategoryName = translateLangToLang(_e.target.innerText, getLanguage(), 'en'); - GTM.pushDataLayer({ event: 'Click Block Category', blocklyCategoryName }); + GTM?.pushDataLayer?.({ event: 'Click Block Category', blocklyCategoryName }); // Expand icon. if (this.hasChildren() && this.isUserCollapsible_) { diff --git a/src/botPage/view/blockly/index.js b/src/botPage/view/blockly/index.js index 2cf51c91eb..94695623a0 100644 --- a/src/botPage/view/blockly/index.js +++ b/src/botPage/view/blockly/index.js @@ -353,7 +353,7 @@ export default class _Blockly { event.ids.forEach(id => { const block = workspace.getBlockById(id); if (block) { - GTM.pushDataLayer({ + GTM?.pushDataLayer?.({ event : 'Block Event', blockEvent: event.type, blockType : block.type, @@ -364,7 +364,7 @@ export default class _Blockly { const dom = Blockly.Xml.textToDom(`${event.oldXml.outerHTML}`); const blockNodes = dom.getElementsByTagName('block'); Array.from(blockNodes).forEach(blockNode => { - GTM.pushDataLayer({ + GTM?.pushDataLayer?.({ event : 'Block Event', blockEvent: event.type, blockType : blockNode.getAttribute('type'), diff --git a/src/botPage/view/index.js b/src/botPage/view/index.js index c8b45964d8..61bb3a06ad 100644 --- a/src/botPage/view/index.js +++ b/src/botPage/view/index.js @@ -31,7 +31,7 @@ view.initPromise.then(() => { $('.barspinner').hide(); window.dispatchEvent(new Event('resize')); Elevio.init(); - GTM.init(); + GTM?.init?.(); trackJs.configure({ userId: $('.account-id') .first() diff --git a/src/common/appId.js b/src/common/appId.js index 63f5b42cba..dade80a665 100644 --- a/src/common/appId.js +++ b/src/common/appId.js @@ -134,7 +134,7 @@ export async function addTokenIfValid(token, tokenObjectList) { } catch (e) { removeToken(tokenObjectList[0].token); Elevio.logoutUser(); - GTM.setVisitorId(); + GTM?.setVisitorId?.(); throw e; } return api.disconnect(); diff --git a/src/common/elevio.js b/src/common/elevio.js index 54f20a380e..58f1c03129 100644 --- a/src/common/elevio.js +++ b/src/common/elevio.js @@ -55,7 +55,7 @@ const Elevio = (() => { // eslint-disable-next-line no-underscore-dangle window._elev.on('load', elev => { - GTM.pushDataLayer({ event: 'elevio_widget_load' }); + GTM?.pushDataLayer?.({ event: 'elevio_widget_load' }); const availableLanguages = ['en', 'es', 'id', 'pt', 'ru']; const currentLanguage = getLanguage(); if (availableLanguages.includes(currentLanguage)) { @@ -81,11 +81,11 @@ const Elevio = (() => { const addEventListenerGTM = () => { window._elev.on('widget:opened', () => { // eslint-disable-line no-underscore-dangle - GTM.pushDataLayer({ event: 'elevio_widget_opened', is_elevio: true }); + GTM?.pushDataLayer?.({ event: 'elevio_widget_opened', is_elevio: true }); }); window._elev.on('page:view', () => { // eslint-disable-line no-underscore-dangle - GTM.pushDataLayer({ event: 'elevio_page_views', is_elevio: true }); + GTM?.pushDataLayer?.({ event: 'elevio_page_views', is_elevio: true }); }); }; diff --git a/src/indexPage/index.js b/src/indexPage/index.js index 44da8fb6dd..5d37fa0d3a 100644 --- a/src/indexPage/index.js +++ b/src/indexPage/index.js @@ -32,7 +32,7 @@ const loginCheck = () => { $('.show-on-load').show(); $('.barspinner').hide(); renderElements(); - GTM.init(); + GTM?.init?.(); }); } }; From af1346d9201dda7b521fc0eb60651584a43b0048 Mon Sep 17 00:00:00 2001 From: Sandeep Date: Tue, 29 Mar 2022 11:32:14 +0800 Subject: [PATCH 2/2] Resolved eslint errors and warnings --- src/botPage/bot/TradeEngine/Purchase.js | 2 ++ src/botPage/view/View.js | 4 ++++ src/botPage/view/blockly/customBlockly.js | 2 ++ src/botPage/view/blockly/index.js | 2 ++ src/botPage/view/blockly/utils.js | 1 + src/botPage/view/index.js | 2 ++ src/common/appId.js | 1 + src/common/elevio.js | 23 +++++++++++------------ src/common/i18n.js | 1 + src/common/utils/tools.js | 2 ++ src/indexPage/index.js | 1 + 11 files changed, 29 insertions(+), 12 deletions(-) diff --git a/src/botPage/bot/TradeEngine/Purchase.js b/src/botPage/bot/TradeEngine/Purchase.js index ae67de9959..c643dba66c 100644 --- a/src/botPage/bot/TradeEngine/Purchase.js +++ b/src/botPage/bot/TradeEngine/Purchase.js @@ -21,6 +21,8 @@ export default Engine => // Don't unnecessarily send a forget request for a purchased contract. this.data.proposals = this.data.proposals.filter(p => p.id !== response.echo_req.buy); const { buy } = response; + + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event: 'bot_purchase', buy_price: proposal.ask_price }); contractStatus({ diff --git a/src/botPage/view/View.js b/src/botPage/view/View.js index 711bcbc968..4072cfafa8 100644 --- a/src/botPage/view/View.js +++ b/src/botPage/view/View.js @@ -444,6 +444,8 @@ export default class View { this.stop(); Elevio.logoutUser(); googleDriveUtil.logout(); + + /* eslint-disable-next-line no-unused-expressions */ GTM?.setVisitorId?.(); removeTokens(); }) @@ -688,6 +690,8 @@ export default class View { .then(() => { this.stop(); Elevio.logoutUser(); + + /* eslint-disable-next-line no-unused-expressions */ GTM?.setVisitorId?.(); const activeToken = $(e.currentTarget).attr('value'); const tokenList = getTokenList(); diff --git a/src/botPage/view/blockly/customBlockly.js b/src/botPage/view/blockly/customBlockly.js index 13bc0ef6c5..d0531f7844 100644 --- a/src/botPage/view/blockly/customBlockly.js +++ b/src/botPage/view/blockly/customBlockly.js @@ -348,6 +348,8 @@ Blockly.Input.prototype.attachShadowBlock = function(value, name, shadowBlockTyp Blockly.Toolbox.TreeNode.prototype.onClick_ = function(_e) { // eslint-disable-next-line no-underscore-dangle const blocklyCategoryName = translateLangToLang(_e.target.innerText, getLanguage(), 'en'); + + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event: 'Click Block Category', blocklyCategoryName }); // Expand icon. diff --git a/src/botPage/view/blockly/index.js b/src/botPage/view/blockly/index.js index 94695623a0..c1c065ad63 100644 --- a/src/botPage/view/blockly/index.js +++ b/src/botPage/view/blockly/index.js @@ -353,6 +353,7 @@ export default class _Blockly { event.ids.forEach(id => { const block = workspace.getBlockById(id); if (block) { + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event : 'Block Event', blockEvent: event.type, @@ -364,6 +365,7 @@ export default class _Blockly { const dom = Blockly.Xml.textToDom(`${event.oldXml.outerHTML}`); const blockNodes = dom.getElementsByTagName('block'); Array.from(blockNodes).forEach(blockNode => { + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event : 'Block Event', blockEvent: event.type, diff --git a/src/botPage/view/blockly/utils.js b/src/botPage/view/blockly/utils.js index 78c3b2d253..3c1a4883bd 100644 --- a/src/botPage/view/blockly/utils.js +++ b/src/botPage/view/blockly/utils.js @@ -220,6 +220,7 @@ export const getMandatoryBlocks = () => config.mandatoryBlocks.map(type => getBl export const getMandatoryMainBlocks = () => config.mandatoryMainBlocks.map(type => getBlockByType(type)).filter(b => b); export const hasChildOfType = (block, childType) => + /* eslint-disable-next-line no-underscore-dangle */ block.childBlocks_.find(child => child.type === childType || hasChildOfType(child, childType)); export const getMissingBlocksTypes = () => { diff --git a/src/botPage/view/index.js b/src/botPage/view/index.js index 61bb3a06ad..13d32f8e1c 100644 --- a/src/botPage/view/index.js +++ b/src/botPage/view/index.js @@ -31,6 +31,8 @@ view.initPromise.then(() => { $('.barspinner').hide(); window.dispatchEvent(new Event('resize')); Elevio.init(); + + /* eslint-disable-next-line no-unused-expressions */ GTM?.init?.(); trackJs.configure({ userId: $('.account-id') diff --git a/src/common/appId.js b/src/common/appId.js index dade80a665..f792c15a63 100644 --- a/src/common/appId.js +++ b/src/common/appId.js @@ -134,6 +134,7 @@ export async function addTokenIfValid(token, tokenObjectList) { } catch (e) { removeToken(tokenObjectList[0].token); Elevio.logoutUser(); + /* eslint-disable-next-line no-unused-expressions */ GTM?.setVisitorId?.(); throw e; } diff --git a/src/common/elevio.js b/src/common/elevio.js index 58f1c03129..fc2f997af8 100644 --- a/src/common/elevio.js +++ b/src/common/elevio.js @@ -1,3 +1,4 @@ +/* eslint-disable no-underscore-dangle */ import { generateLiveApiInstance } from './appId'; // import { getLanguage } from '../common/lang'; import { getTokenList } from './utils/storageManager'; @@ -21,8 +22,8 @@ const Elevio = (() => { }; const injectElevio = (isOpen = false) => { - window._elev = {}; // eslint-disable-line no-underscore-dangle - window._elev.account_id = accountId; // eslint-disable-line no-underscore-dangle + window._elev = {}; + window._elev.account_id = accountId; const script = document.createElement('script'); script.type = 'text/javascript'; @@ -31,30 +32,28 @@ const Elevio = (() => { script.id = 'loaded-elevio-script'; document.body.appendChild(script); - window._elev.q = []; // eslint-disable-line no-underscore-dangle + window._elev.q = []; window._elev.on = (z, y) => { - // eslint-disable-line no-underscore-dangle - window._elev.q.push([z, y]); // eslint-disable-line no-underscore-dangle + window._elev.q.push([z, y]); }; script.onload = () => loadElevio(isOpen); }; const loadElevio = (isOpen = false) => { - if (!window._elev) return; // eslint-disable-line no-underscore-dangle + if (!window._elev) return; - // eslint-disable-next-line no-underscore-dangle window._elev.on('widget:opened', () => { if (localStorage.getItem('seenWhatsBinaryBot')) { - window._elev.open(); // eslint-disable-line no-underscore-dangle + window._elev.open(); } else { localStorage.setItem('seenWhatsBinaryBot', true); - window._elev.openArticle(90); // eslint-disable-line no-underscore-dangle + window._elev.openArticle(90); } }); - // eslint-disable-next-line no-underscore-dangle window._elev.on('load', elev => { + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event: 'elevio_widget_load' }); const availableLanguages = ['en', 'es', 'id', 'pt', 'ru']; const currentLanguage = getLanguage(); @@ -80,11 +79,11 @@ const Elevio = (() => { const addEventListenerGTM = () => { window._elev.on('widget:opened', () => { - // eslint-disable-line no-underscore-dangle + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event: 'elevio_widget_opened', is_elevio: true }); }); window._elev.on('page:view', () => { - // eslint-disable-line no-underscore-dangle + /* eslint-disable-next-line no-unused-expressions */ GTM?.pushDataLayer?.({ event: 'elevio_page_views', is_elevio: true }); }); }; diff --git a/src/common/i18n.js b/src/common/i18n.js index eacfd2e844..76466896b0 100644 --- a/src/common/i18n.js +++ b/src/common/i18n.js @@ -45,6 +45,7 @@ export const translate = (input, params = []) => { let translatedString = i18nTranslate(stringToBeTranslated); params.forEach((replacement, index) => { if (translatedString && typeof translatedString === 'string') { + /* eslint-disable-next-line no-useless-escape */ translatedString = translatedString.replaceAll(`\{\$${index}\}`, replacement); } }); diff --git a/src/common/utils/tools.js b/src/common/utils/tools.js index 9f21d9df2d..db284d3e7a 100644 --- a/src/common/utils/tools.js +++ b/src/common/utils/tools.js @@ -122,5 +122,7 @@ export const loadExternalScript = (src, async = true, defer = true) => export const errLogger = (err, msg) => { const errStr = JSON.stringify(err); const errMsg = `${msg} - Error: ${errStr}`; + + /* eslint-disable-next-line */ console.warn(errMsg); }; diff --git a/src/indexPage/index.js b/src/indexPage/index.js index 5d37fa0d3a..7a56ec432d 100644 --- a/src/indexPage/index.js +++ b/src/indexPage/index.js @@ -32,6 +32,7 @@ const loginCheck = () => { $('.show-on-load').show(); $('.barspinner').hide(); renderElements(); + /* eslint-disable-next-line no-unused-expressions */ GTM?.init?.(); }); } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy