{"mappings":"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","sources":["src/utils.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-708f197bb7b75287.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-29ed0c2b1b78e475.js","src/index.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-44ac43213d2c73c7.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-0cfcb240f131653a.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-29ae0b70e9017d16.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-13f7c1d3f48434fb.js"],"sourcesContent":["export function handleClass(el, classes, reason='add') {\n classes=Array.isArray(classes) ? classes : [classes];\n classes.forEach((className) => (el.classList[reason](className)));\n}\n\nexport function addClass(element, classes) {\n handleClass(element, classes, 'add');\n}\n\nexport function removeClass(element, classes) {\n handleClass(element, classes, 'remove');\n}\n\n// create element\nexport function createElement(tag, options={}) {\n const element=document.createElement(tag);\n\n if (options.classes) {\n addClass(element, options.classes);\n }\n\n if (options.innerHTML) {\n element.innerHTML = options.innerHTML;\n }\n\n Object.keys(options.attrs || {})\n .forEach((key) => (element.setAttribute(key, options.attrs[key])));\n\n Object.keys(options.listeners || {})\n .forEach((key) => (element[key] = options.listeners[key]));\n\n (!options.appendChild ? [] : Array.isArray(options.appendChild) ? options.appendChild : [options.appendChild])\n .forEach((el) => (element.appendChild(el)));\n\n return element;\n}\n\n// slugfy method\nexport function slugify(value) {\n if (value) {\n return value\n .toLowerCase()\n .replace(/[áãâà]/g, \"a\")\n .replace(/[éẽêè]/g, \"e\")\n .replace(/[íĩîì]/g, \"i\")\n .replace(/[óõôò]/g, \"o\")\n .replace(/[úũûù]/g, \"u\")\n .replace(/[ç]/g, \"c\")\n .replace(/ /g, \"-\")\n .replace(/[\"'!?()]/g, \"\");\n }\n\n return value;\n}\n\n// add metrics\nexport function handleAudience(action, position, reference) {\n window.hitAudience.countClick({\n 'position': position,\n 'action': action,\n 'reference': slugify(reference),\n 'central': 'copas',\n 'channel': 'copa 2022',\n 'mediaName': 'no-media',\n 'area': 'footer-flutuante',\n 'component': 'ticker-copa22',\n });\n}","module.exports = \"786a07c81291a0a5\";","module.exports = \"08342a9d5b067c72\";","/* eslint-disable */\n\nimport css from 'bundle-text:./style.scss';\nimport { createElement, handleAudience } from './utils';\nimport worldcup2022Svg from 'bundle-text:./logo-worldcup.svg';\nimport braSvg from 'bundle-text:./bra.svg';\nimport starSvg from 'bundle-text:./star.svg';\nimport separatorSvg from 'bundle-text:./separator.svg';\nimport logoUolSvg from 'bundle-text:./logo-uol.svg';\n\nlet SOCKET_CHANNEL='rtevent.uol.com';\nconst gamesMap={};\nlet worlcupMacthesId=[];\nlet isMobile=false;\nlet linkParam='';\nlet scope='';\nlet editorialConfig='';\n\n// variable to info team advertising\nwindow.showAnchorads = true;\n\n// Load page\n(function () {\n if (document.readyState == \"complete\") {\n getInitConfig();\n } else {\n\n window.addEventListener(\"load\", function () {\n getInitConfig();\n });\n }\n})();\n\nconst getInitConfig=async () => {\n console.info('getting data config ticker');\n\n try {\n editorialConfig=await getDefinitions();\n await configWatcher();\n } catch (e) {\n console.error(e);\n return;\n }\n\n init(editorialConfig);\n}\n\n// check if url is partner or UOL\nscope = checkUrlPartner() ? 'Partners' : 'UOL';\n\n/*\n * get configurations worldcup 2022\n */\nasync function getDefinitions() {\n // request to config component\n const commonsPath=\"//c.jsuol.com.br/service?loadComponent=projects/worldcup-2022/worldcup-2022-ticker-config&data={%22jsonp%22:false}&dataType=config\";\n\n return await fetch(commonsPath, { cache: \"no-cache\" })\n .then(data => {\n return data.json()\n })\n .then((response) => {\n return response;\n })\n .catch(err => console.info('Error loading Worldcup Ticker', err));\n}\n\n/*\n * get worldcup games on commons\n */\nasync function getWorldcupGames() {\n // request to config component\n const commonsPath=\"//c.jsuol.com.br/service?loadComponent=projects/worldcup-2022/worldcup-2022-ticker-config&data={%22jsonp%22:false}&dataType=games\";\n\n return await fetch(commonsPath, { cache: \"no-cache\" })\n .then(data => {\n return data.json()\n })\n .then(({ games }) => games)\n .catch(err => console.info('Error to get games', err));\n}\n\n/*\n * get main worldcup game on commmons\n */\nasync function getMainGame() {\n // request to config component\n const commonsPath=\"//c.jsuol.com.br/service?loadComponent=projects/worldcup-2022/worldcup-2022-ticker-config&data={%22jsonp%22:false}&dataType=mainGame\";\n\n return await fetch(commonsPath, { cache: \"no-cache\" })\n .then(data => {\n return data.json()\n })\n .then(({ game }) => {\n if (game.competition === 'Copa do Mundo') {\n return game;\n } else {\n return;\n }\n })\n .catch(err => console.info('Error to get main game', err));\n}\n\n/*\n * get Games data on commons\n */\nasync function getGamesDataOnCommons() {\n // request to component data \n const commonsPath=\"//c.jsuol.com.br/service?loadComponent=projects/worldcup-2022/worldcup-2022-ticker-data&data={%22jsonp%22:false}\";\n\n return await fetch(commonsPath, { cache: \"no-cache\" })\n .then(data => {\n return data.json()\n })\n .then(({ gamesDataCommons }) => gamesDataCommons)\n .catch(err => console.info('Error to get games on commons', err));\n}\n\n/*\n * watcher to check editorial config\n */\nasync function configWatcher() {\n setInterval(async () => {\n //transform obj in string to compare configs\n const newConfig=JSON.stringify(await getDefinitions());\n const currentConfig=JSON.stringify(editorialConfig);\n\n if (newConfig === currentConfig) {\n return;\n } else {\n editorialConfig=JSON.parse(newConfig);\n const ticker=document.querySelector('#worldcup-2022-ticker');\n if (ticker) ticker.remove();\n window.usocket.disconnect();\n init(editorialConfig);\n }\n }, 60000);\n}\n\n/*\n * waiting for conection socket\n */\nfunction waitWsSocket() {\n setTimeout(function () {\n if (window.usocket !== undefined) {\n\n return new Promise((resolve) => {\n // start ws first time\n connectSocket(SOCKET_CHANNEL, 'placar-futebol-live')\n .then((data) => {\n resolve(data);\n });\n });\n } else {\n waitWsSocket();\n }\n }, 500);\n};\n\n/** \n * conection on socket\n **/\nfunction connectSocket(domain, channel) {\n console.info('Worldcup Ticker - Getting DATA from Socket')\n return new Promise((resolve) => {\n\n if (!window.usocket.isConnected()) window.usocket.config({ domain });\n\n let allSubchannels={};\n\n // add polling to get first data cards on socket\n if (window.usocket) {\n window.usocket.polling(channel, (err, data) => {\n allSubchannels.subchannels = data.subchannels;\n checkDataToUpdateCards(allSubchannels);\n })\n }\n\n const ws=window.usocket.connect(channel);\n\n const connectionRetry=function () {\n if (window.channelTryConnection) {\n window.channelTryConnection -= 1;\n\n window.setTimeout(() => {\n console.info('Trying to connect socket, channel: ', channel);\n connectSocket(domain, channel);\n }, 60000);\n }\n }\n\n ws.on('message', data=> {\n console.info('Worldcup Ticker Socket Data', data);\n\n if (!data) {\n console.info('Missing essential data, retrying conection with socket: ', channel);\n connectionRetry();\n resolve();\n return;\n }\n\n if (document.querySelector('#worldcup-2022-ticker')) {\n checkDataToUpdateCards(data);\n resolve();\n } else {\n resolve(data);\n }\n\n if (data.invalidChannel) {\n connectionRetry();\n }\n });\n\n ws.on('error', () => {\n console.info('connectSocket ERROR ~ domain, channel ', domain, channel);\n connectionRetry();\n })\n\n ws.on('open', data=> {\n console.info('SOCKET OPEN', data);\n window.channelTryConnection = 3\n });\n\n ws.on('close', data=> {\n console.info('SOCKET CLOSE', data);\n });\n });\n}\n\n/** \n * check if worldcup ticker is render at partner\n **/\nfunction checkUrlPartner() {\n const partners=[\n 'anamaria.uol.com.br',\n 'aventurasnahistoria.uol.com.br',\n 'bnews.com.br',\n 'caras.uol.com.br',\n 'cinebuzz.uol.com.br',\n 'contigo.uol.com.br',\n 'costanorte.com.br',\n 'maxima.uol.com.br',\n 'natelinha.uol.com.br',\n 'ofuxico.com.br',\n 'olhardigital.com.br',\n 'paranaportal.uol.com.br',\n 'recreio.uol.com.br',\n 'www.redetv.uol.com.br',\n 'rollingstone.uol.com.br',\n 'sportbuzz.uol.com.br',\n 'tnonline.uol.com.br',\n 'cultura.uol.com.br',\n 'observatoriodatv.uol.com.br',\n 'observatoriodocinema.uol.com.br',\n 'observatoriodosfamosos.uol.com.br',\n 'observatoriog.bol.uol.com.br',\n 'observatoriodegames.uol.com.br',\n 'terceirotempo.uol.com.br',\n 'biologianet.com',\n 'futhistoria.com.br',\n 'historiadomundo.com.br',\n 'manualdaquimica.com',\n 'mundoeducacao.uol.com.br',\n 'ne10.uol.com.br',\n 'interior.ne10.uol.com.br',\n 'jc.ne10.uol.com.br',\n 'radiojornal.ne10.uol.com.br',\n 'tvjornal.ne10.uol.com.br',\n 'revistaanamaria.com.br'\n ]\n\n const partnerURL=partners.find(url => window.location.href.indexOf(url) != -1);\n\n if (partnerURL) {\n SOCKET_CHANNEL=\"rtpartner.uol.com\";\n linkParam=`?utm_source=${partnerURL}&utm_medium=ticker&utm_campaign=copa22&utm_content=`;\n return true\n }\n\n return false\n};\n\n/** \n * initializing wordcup ticker\n **/\nconst init=async (config) => {\n\n console.info('Worldcup ticker init');\n\n // Check scope to get config of Partner or UOL to disabled ticker\n if (!config[`status${scope}`]) {\n console.info('Worldcup Ticker Disabled');\n return;\n }\n\n // info to advertising\n window.showAnchorads = false;\n\n // Check LGPD or anchorAds active\n if (scope === 'UOL' && (document.querySelector(\".banner-lgpd-consent-container\") || document.body.dataset.anchorads == true)) {\n console.info('Worlcup ticker disabled - anchorads active');\n return;\n }\n\n function urlUOLStations(selectedStation) {\n const stations={\n 'canaluol': 'uol.com.br/play',\n 'carros': 'uol.com.br/carros',\n 'ecoa': 'uol.com.br/ecoa',\n 'economia': 'economia.uol.com.br',\n 'educacao': 'educacao.uol.com.br',\n 'esporte': 'uol.com.br/esporte',\n 'noticias': 'noticias.uol.com.br',\n 'nossa': 'uol.com.br/nossa',\n 'splash': 'uol.com.br/splash',\n 'tab': 'tab.uol.com.br',\n 'tilt': 'uol.com.br/tilt',\n 'universa': 'uol.com.br/universa',\n 'vivabem': 'uol.com.br/vivabem'\n }\n return stations[selectedStation] || ''\n }\n\n // Check if show ticker in all stations\n if (scope === 'UOL' && config.options == 'algumas') {\n let urlStations=[];\n let stationsRemoved=[];\n let urls=[];\n\n const allUrlStations=[\n 'canaluol',\n 'carros',\n 'ecoa',\n 'economia',\n 'educacao',\n 'esporte',\n 'noticias',\n 'nossa',\n 'splash',\n 'tab',\n 'tilt',\n 'universa',\n 'vivabem'\n ]\n\n urlStations=config.stations.split(';');\n\n stationsRemoved=allUrlStations.filter(item => !urlStations.includes(item));\n stationsRemoved.forEach(item => {\n urls.push(urlUOLStations(item));\n });\n\n if (urls.find(url => window.location.href.indexOf(url) != -1)) {\n console.info('Worldcup Ticker Disabled');\n return\n }\n }\n\n // Check if url is advertising page to not rendering worldcup ticker\n if (window.location.href.includes('conteudo-de-marca') ||\n window.location.href.includes('conteudo-publicitario') ||\n window.location.href.includes('ao-vivo')) {\n console.info('Worlcup ticker disabled');\n return;\n }\n\n // Check if url is \"create your team\" page to not rendering worldcup ticker\n if (window.location.href.includes('escale-seu-time') || window.location.href.includes('copa-do-mundo/escale')) {\n console.info('Worlcup ticker disabled');\n return;\n }\n\n // check if is mobile \n isMobile = window.innerWidth < 1230;\n\n // add inline css\n document.head.appendChild(\n createElement('style', {\n appendChild: document.createTextNode(css),\n })\n );\n\n // usocket script\n document.head.appendChild(\n createElement('script', {\n attrs: {\n src: '//c.jsuol.com.br/assets/?loadComponent=media&contentType=js&tpl=assets/dist/libs/usocket',\n async: '',\n }\n })\n );\n\n // audience script\n document.head.appendChild(\n createElement('script', {\n attrs: {\n src: '//c.jsuol.com.br/assets/?loadComponent=media&contentType=js&tpl=assets/dist/audience/audience.min',\n async: '',\n }\n }),\n );\n\n // ticker skeleton\n const container = createElement('div', {\n classes: ['ticker-container', 'is-open']\n });\n\n const gamesWrapper = createElement('div', {\n classes: 'games-wrapper'\n });\n\n const worldcupTicker = createElement('div', {\n attrs: { id: 'worldcup-2022-ticker' },\n appendChild: container,\n });\n\n // add class to partner\n if (scope !== 'UOL') {\n worldcupTicker.classList.add('partner');\n }\n\n // rule for this partner\n if (scope === 'Partners' && window.location.href.includes('paranaportal.uol.com.br')) {\n if (worldcupTicker) {\n worldcupTicker.classList.add('parana-portal');\n }\n }\n\n // worldcup logo metrics\n const btnToggleMetrics = {\n position: 1,\n action: '',\n reference: 'content'\n }\n\n // button toggle\n const btnToggle = createElement('button', {\n classes: 'btn-toggle',\n appendChild: document.createTextNode('esconder placar'),\n listeners: {\n onclick: function () {\n if (container) {\n container.classList.toggle('is-open');\n // set info on local storage\n if (container.classList.contains('is-open')) {\n btnToggle.textContent = 'esconder placar';\n localStorage.setItem('worldcupTicker', 'opened');\n } else {\n btnToggle.textContent = 'mostrar placar';\n localStorage.setItem('worldcupTicker', 'closed');\n }\n }\n handleAudience(\n container.classList.contains('is-open')\n ? 'interaction-open'\n : 'interaction-close', btnToggleMetrics.position, btnToggleMetrics.reference\n );\n },\n },\n });\n\n // always show games on desktop\n if (!isMobile) {\n container.classList.add('is-open');\n }\n\n // check if hide ticker was selected\n if (scope === 'UOL' && isMobile) {\n if (localStorage.getItem('worldcupTicker') === 'closed') {\n container.classList.remove('is-open');\n btnToggle.textContent = 'mostrar placar';\n }\n }\n\n // header elements\n const starHeader = createElement('li', {\n classes: 'worldcup-star-header',\n innerHTML: starSvg,\n });\n\n // worldcup logo metrics\n const metricsLogoWorldcup = {\n position: 1,\n action: 'https://www.uol.com.br/esporte/futebol/copa-do-mundo',\n reference: 'logo-copa-2022'\n }\n\n const worldcupLink = createElement('a', {\n classes: 'title-link',\n innerHTML: worldcup2022Svg,\n attrs: {\n href: 'https://www.uol.com.br/esporte/futebol/copa-do-mundo',\n target: '_blank'\n },\n listeners: {\n onclick: function () {\n handleAudience(\n linkParam\n ?\n `${metricsLogoWorldcup.action}${linkParam}tabela-da-copa`\n : metricsLogoWorldcup.action,\n metricsLogoWorldcup.position,\n metricsLogoWorldcup.reference\n );\n }\n }\n });\n\n // metrics logo UOL\n const metricsLogoUOL = {\n position: 1,\n action: 'https://www.uol.com.br',\n reference: 'logo-uol'\n }\n\n const logoUOL = createElement('a', {\n classes: 'logo-uol',\n innerHTML: logoUolSvg,\n attrs: {\n href: 'https://www.uol.com.br',\n target: '_blank'\n },\n listeners: {\n onclick: function () {\n handleAudience(\n linkParam\n ?\n `${metricsLogoUOL.action}${linkParam}UOL`\n : metricsLogoUOL.action,\n metricsLogoUOL.position,\n metricsLogoUOL.reference\n );\n }\n }\n });\n\n const title = createElement('div', {\n classes: 'ticker-title',\n appendChild: worldcupLink,\n });\n\n const tickerHeaderItems = createElement('li', {\n classes: 'ticker-header-item',\n appendChild: title,\n });\n\n const tickerHeaderList = createElement('ul', {\n classes: 'ticker-header-list',\n appendChild: [starHeader, tickerHeaderItems],\n });\n\n if (scope === 'Partners') {\n tickerHeaderItems.appendChild(logoUOL);\n };\n\n const tickerHeader = createElement('div', {\n classes: 'ticker-header',\n appendChild: tickerHeaderList,\n });\n\n // footer elements\n const starFooter = createElement('div', {\n classes: 'worldcup-star-footer',\n innerHTML: starSvg,\n });\n\n const tickerFooterList = createElement('ul', {\n classes: 'ticker-footer-list',\n });\n\n const separator = createElement('div', {\n classes: 'games-separator',\n innerHTML: separatorSvg,\n });\n\n const tickerFooter = createElement('div', {\n classes: 'ticker-footer',\n appendChild: [separator, tickerFooterList, starFooter],\n });\n\n for (let item = 0; item <= 1; item++) {\n const tickerFooterItems=createElement('li', {\n attrs: {\n id: `ticker-footer-item-${item}`,\n },\n });\n\n tickerFooterList.appendChild(tickerFooterItems);\n }\n\n // world cup table metrics\n const worldcupTableMetrics={\n position: 1,\n action: 'https://www.uol.com.br/esporte/futebol/copa-do-mundo/tabela-da-copa/',\n reference: 'tabela-copa'\n }\n\n const worldcupTable=createElement('a', {\n classes: 'worldcup-table',\n appendChild: document.createTextNode('tabela da copa'),\n attrs: {\n href: 'https://www.uol.com.br/esporte/futebol/copa-do-mundo/tabela-da-copa/',\n title: 'Tabela da copa',\n target: '_blank'\n },\n listeners: {\n onclick: function () {\n handleAudience(\n linkParam\n ?\n `${worldcupTableMetrics.action}${linkParam}tabela-da-copa`\n : worldcupTableMetrics.action,\n worldcupTableMetrics.position,\n worldcupTableMetrics.reference\n );\n }\n }\n });\n\n // world cup table metrics\n const brazilUrlMetrics={\n position: 1,\n action: 'https://www.uol.com.br/esporte/futebol/selecoes/selecao-brasileira/',\n reference: 'selecao'\n }\n\n const brazilUrl=createElement('a', {\n classes: 'brazil-url',\n appendChild: document.createTextNode('seleção'),\n attrs: {\n href: 'https://www.uol.com.br/esporte/futebol/selecoes/selecao-brasileira/',\n title: 'Seleção',\n target: '_blank'\n },\n innerHTML: braSvg,\n listeners: {\n onclick: function () {\n handleAudience(\n linkParam\n ?\n `${brazilUrlMetrics.action}${linkParam}selecao`\n : brazilUrlMetrics.action,\n brazilUrlMetrics.position,\n brazilUrlMetrics.reference\n );\n }\n }\n });\n\n const tableLinkLi=tickerFooterList.querySelector('#ticker-footer-item-0');\n const brazilLinkLi=tickerFooterList.querySelector('#ticker-footer-item-1');\n\n tableLinkLi.appendChild(worldcupTable);\n brazilLinkLi.appendChild(brazilUrl);\n\n const games=createElement('ul');\n\n /** \n * initializing worlcup cards in ticker\n **/\n const createWorldcupCardGames=(gamesData, mainGameData, gamesDataCommons) => {\n let sortedDataGames=[];\n let isMainGameFinished=false;\n\n // check if main game 1 was finished\n if (mainGameData && Object.values(gamesDataCommons).length > 0) {\n if (gamesDataCommons[mainGameData.idMatch]) {\n isMainGameFinished=gamesDataCommons[mainGameData.idMatch].placar1 !== null;\n } else {\n mainGameData=null;\n }\n }\n\n // Check if only gamesData true\n if (gamesData && !mainGameData) {\n sortedDataGames=gamesData;\n }\n\n // Check if only mainGameData true\n if (mainGameData && !isMainGameFinished && !gamesData) {\n sortedDataGames=mainGameData;\n }\n\n //check if main game is include at list of games\n if (mainGameData && !isMainGameFinished) {\n if (!gamesData.some(e => e.idMatch === mainGameData.idMatch)) {\n gamesData.unshift(mainGameData);\n sortedDataGames=gamesData;\n } else {\n sortedDataGames=gamesData.filter(item => item.idMatch !== mainGameData.idMatch)\n sortedDataGames.unshift(mainGameData);\n }\n } else {\n sortedDataGames=gamesData;\n }\n\n // ticker show only 3 games\n const gamesCardsData=sortedDataGames.length >= 3 ? sortedDataGames.slice(0, 3) : sortedDataGames;\n\n // get ids games\n worlcupMacthesId=gamesCardsData.map(item => item.idMatch);\n\n const existentCards=games.querySelectorAll('li');\n\n // check if is final game\n if (container) {\n if (gamesCardsData.length == 1) {\n container.classList.add('final-game');\n }\n }\n\n ;[].forEach.call(existentCards, function (item) {\n const id=item.getAttribute('id').split('-').pop();\n if (!gamesCardsData.find(({ idMatch }) => idMatch== id)) {\n item.remove();\n }\n })\n\n for (const game of Object.values(gamesCardsData)) {\n const gameCard=games.querySelector(`[id=game-${game.idMatch}]`);\n if (!gameCard) {\n // add separator in games\n const gameSeparator=createElement('div', {\n classes: 'games-separator',\n innerHTML: separatorSvg,\n });\n\n games.appendChild(\n createElement('li', {\n appendChild: [createCard(game), gameSeparator],\n attrs: {\n id: `game-${game.idMatch}`\n }\n })\n );\n }\n }\n }\n\n createWorldcupCardGames(await getWorldcupGames(), await getMainGame(), await getGamesDataOnCommons());\n setInterval(async () => {\n createWorldcupCardGames(await getWorldcupGames(), await getMainGame(), await getGamesDataOnCommons());\n }, 60000);\n\n gamesWrapper.appendChild(games);\n container.appendChild(tickerHeader);\n container.appendChild(tickerFooter);\n container.appendChild(gamesWrapper);\n container.appendChild(btnToggle);\n\n document.body.appendChild(worldcupTicker);\n\n waitWsSocket();\n};\n\n/*\n * Check if game id contains in list to update card\n */\nconst checkDataToUpdateCards=(gamesData) => {\n for (game in gamesData.subchannels) {\n\n const match=gamesData.subchannels[game];\n\n // update card if contains in id list\n if (worlcupMacthesId.includes(match.id)) {\n const socketGamesMap={\n team1: {\n name: match.teams.home['short-name'],\n flag: match.teams.home.image,\n score: match.teams.home.goals,\n penalties: match.teams.home.penalties\n },\n team2: {\n name: match.teams.away['short-name'],\n flag: match.teams.away.image,\n score: match.teams.away.goals,\n penalties: match.teams.away.penalties\n },\n status: match.status,\n urlScore: match.url,\n dateTime: match.date\n }\n\n const newDataMatch=socketGamesMap;\n updateCard(match.id, newDataMatch);\n }\n }\n}\n\n/*\n * update card game \n */\nconst updateCard=(id, data) => {\n if (!gamesMap[id]) {\n return;\n }\n\n ['team1', 'team2']\n .forEach((item) => {\n gamesMap[id][item].score.innerHTML = data[item].score;\n\n // add penalty score only if data exist\n if (data[item].penalties >= 0) {\n gamesMap[id][item].penalties.innerHTML = data[item].penalties;\n gamesMap[id][item].penalties.parentElement.classList.add('penalty');\n }\n });\n\n const statusMap={\n 2: 'ao vivo',\n 3: 'encerrado',\n 4: 'pré-jogo',\n 5: 'encerrado'\n }\n\n gamesMap[id].urlScore.href = data.urlScore;\n gamesMap[id].urlScore.target = '_blank';\n gamesMap[id].matchInfo.classList[data.status === 4 ? 'add' : 'remove']('pre-game');\n gamesMap[id].matchInfo.classList[data.status === 2 ? 'add' : 'remove']('live');\n gamesMap[id].matchInfo.classList[data.status === 3 || data.status === 5 ? 'add' : 'remove']('finished');\n\n if (statusMap[data.status]) {\n gamesMap[id].status.innerHTML = statusMap[data.status];\n }\n\n if (data.status === 4) {\n gamesMap[id].time.innerHTML = `- ${data.dateTime.toString().slice(8, 10)}h`;\n }\n}\n\n/*\n * create card game\n */\nconst createCard=(dataCard) => {\n const teamHomeAbbr = createElement('abbr', {\n classes: 'team-home-abbr',\n appendChild: document.createTextNode(dataCard.teams[0].slug || ''),\n });\n\n const teamAwayAbbr = createElement('abbr', {\n classes: 'team-away-abbr',\n appendChild: document.createTextNode(dataCard.teams[1].slug || ''),\n });\n\n const teamVs = createElement('div', {\n classes: 'team-vs',\n appendChild: document.createTextNode('x'),\n });\n\n const teamHomeScore = createElement('div', {\n classes: 'team-home-score',\n });\n\n const teamAwayScore = createElement('div', {\n classes: 'team-away-score',\n });\n\n const teamAwayPenaltyScore = createElement('div', {\n classes: 'team-away-penalty-score',\n });\n\n const teamHomePenaltyScore = createElement('div', {\n classes: 'team-home-penalty-score',\n });\n\n const teamHomeFlag = createElement('img', {\n classes: 'team-home-flag',\n attrs: {\n src: dataCard.teams[0].photo.images[0].src || 'https://imguol.com/c/geral/3d/2021/05/25/placeholder-image-1621949831997_v2_300x300.jpg',\n width: '20',\n height: '20',\n }\n });\n\n const teamAwayFlag = createElement('img', {\n classes: 'team-away-flag',\n attrs: {\n src: dataCard.teams[1].photo.images[0].src || 'https://imguol.com/c/geral/3d/2021/05/25/placeholder-image-1621949831997_v2_300x300.jpg',\n width: '20',\n height: '20',\n }\n });\n\n const imgHomeContent = createElement('div', {\n appendChild: teamHomeFlag,\n });\n\n const imgAwayContent = createElement('div', {\n appendChild: teamAwayFlag,\n });\n\n const teamHome = createElement('div', {\n classes: ['team', 'team-home'],\n appendChild: [teamHomeAbbr, imgHomeContent, teamHomeScore, teamHomePenaltyScore],\n });\n\n const teamAway = createElement('div', {\n classes: ['team', 'team-away'],\n appendChild: [teamAwayAbbr, imgAwayContent, teamAwayScore, teamAwayPenaltyScore],\n });\n\n const matchScore = createElement('div', {\n classes: 'match-score',\n appendChild: [teamHome, teamVs, teamAway],\n });\n\n const gameStatus = createElement('div', {\n classes: 'game-status',\n innerHTML: dataCard.date ? `${dataCard.date} - ` : '',\n });\n\n const gameTime = createElement('div', {\n classes: 'game-time',\n innerHTML: dataCard.time ? dataCard.time.slice(0, 3) : '',\n })\n\n const matchInfo = createElement('div', {\n classes: 'match-info',\n appendChild: [gameStatus, gameTime],\n });\n\n const matchContent = createElement('div', {\n classes: 'match-content',\n appendChild: [matchScore, matchInfo],\n });\n\n const linkScorePage = createElement('a', {\n appendChild: matchContent,\n listeners: {\n onclick: function () {\n handleAudience(\n linkParam\n ?\n `${linkScorePage.href}${linkParam}jogos`\n : linkScorePage.href,\n linkScoreMetrics.position,\n linkScoreMetrics.reference\n );\n }\n }\n });\n\n // metrics anchor card\n const linkScoreMetrics = {\n position: 1,\n reference: 'jogo'\n }\n\n if (!dataCard.date) {\n matchInfo.classList.add('only-time');\n }\n\n if (dataCard.link) {\n linkScorePage.href = dataCard.link;\n linkScorePage.target = '_blank';\n }\n\n gamesMap[dataCard.idMatch] = {\n team1: {\n name: teamHomeAbbr,\n flag: teamHomeFlag,\n score: teamHomeScore,\n penalties: teamHomePenaltyScore\n },\n team2: {\n name: teamAwayAbbr,\n flag: teamAwayFlag,\n score: teamAwayScore,\n penalties: teamAwayPenaltyScore\n },\n status: gameStatus,\n urlScore: linkScorePage,\n matchInfo: matchInfo,\n time: gameTime\n }\n\n return createElement('div', {\n classes: 'match',\n appendChild: linkScorePage,\n });\n};\n","module.exports = \"d473df64c2611d9c\";","module.exports = \"2f9b58fdc99d035f\";","module.exports = \"85b8814c3d38fafb\";","module.exports = \"1487fc3db69ff1d9\";"],"names":["$34717bef4f744687$export$f4e73fbca24a59d7","el","classes","reason","Array","isArray","forEach","className","classList","$34717bef4f744687$export$c8a8987d4410bf2d","tag","options","element","document","createElement","$34717bef4f744687$export$d2cf6cd1dc7067d3","innerHTML","Object","keys","attrs","key","setAttribute","listeners","appendChild","$34717bef4f744687$export$df20ca4fbe39a5b3","action","position","reference","value","window","hitAudience","countClick","toLowerCase","replace","central","channel","mediaName","area","component","$c9cb7081d0d54ec3$exports","$723c60c04625f0fc$exports","$dbd71384e24028a9$var$SOCKET_CHANNEL","$dbd71384e24028a9$var$gamesMap","$dbd71384e24028a9$var$worlcupMacthesId","$dbd71384e24028a9$var$isMobile","$dbd71384e24028a9$var$linkParam","$dbd71384e24028a9$var$scope","$dbd71384e24028a9$var$editorialConfig","showAnchorads","readyState","$dbd71384e24028a9$var$getInitConfig","addEventListener","async","console","info","$dbd71384e24028a9$var$getDefinitions","setInterval","newConfig","JSON","stringify","parse","ticker","querySelector","remove","usocket","disconnect","$dbd71384e24028a9$var$init","$dbd71384e24028a9$var$configWatcher","e","error","fetch","cache","then","data","json","response","catch","err","$dbd71384e24028a9$var$getWorldcupGames","games","$dbd71384e24028a9$var$getMainGame","game","competition","$dbd71384e24028a9$var$getGamesDataOnCommons","gamesDataCommons","$dbd71384e24028a9$var$waitWsSocket","setTimeout","undefined","Promise","resolve","$dbd71384e24028a9$var$connectSocket","domain","isConnected","config","allSubchannels","polling","subchannels","$dbd71384e24028a9$var$checkDataToUpdateCards","ws","connect","connectionRetry","channelTryConnection","on","invalidChannel","partnerURL","find","url","location","href","indexOf","$dbd71384e24028a9$var$checkUrlPartner","body","dataset","anchorads","urlStations","stationsRemoved","urls","allUrlStations","stations","split","filter","item","includes","push","canaluol","carros","ecoa","economia","educacao","esporte","noticias","nossa","splash","tab","tilt","universa","vivabem","innerWidth","head","createTextNode","$parcel$interopDefault","src","container","gamesWrapper","worldcupTicker","id","add","btnToggleMetrics","btnToggle","onclick","toggle","contains","textContent","localStorage","setItem","getItem","starHeader","metricsLogoWorldcup","worldcupLink","target","metricsLogoUOL","logoUOL","title","tickerHeaderItems","tickerHeaderList","tickerHeader","starFooter","tickerFooterList","separator","tickerFooter","tickerFooterItems","worldcupTableMetrics","worldcupTable","brazilUrlMetrics","brazilUrl","tableLinkLi","brazilLinkLi","createWorldcupCardGames","gamesData","mainGameData","sortedDataGames","isMainGameFinished","values","length","idMatch","placar1","some","unshift","gamesCardsData","slice","map","existentCards","querySelectorAll","call","getAttribute","pop","gameSeparator","$dbd71384e24028a9$var$createCard","match","newDataMatch","team1","name","teams","home","flag","image","score","goals","penalties","team2","away","status","urlScore","dateTime","date","$dbd71384e24028a9$var$updateCard","parentElement","statusMap","matchInfo","time","toString","dataCard","teamHomeAbbr","slug","teamAwayAbbr","teamVs","teamHomeScore","teamAwayScore","teamAwayPenaltyScore","teamHomePenaltyScore","teamHomeFlag","photo","images","width","height","teamAwayFlag","imgHomeContent","imgAwayContent","teamHome","teamAway","matchScore","gameStatus","gameTime","matchContent","linkScorePage","linkScoreMetrics","link"],"version":3,"file":"index.js.map"}