Este resumen es generado por inteligencia artificial y revisado por la redacción.
`; document.body.appendChild(modalWrapper); let figcaption = modalWrapper.querySelector(«figcaption»); if(figcaption) figcaption.style.display=»none»; modalWrapper.querySelector(«.s-multimedia__close-modal»).addEventListener(«click»,()=>{modalWrapper.remove(); e.style.display=»flex»; if(caption) caption.style.display=»block»;});})})});});
Las defensas antiaéreas rusas derribaron la pasada noche 124 drones ucranianos en 17 regiones, incluida Moscú y la península ucraniana de Crimea, anexionada en 2014.
Las defensas antiaéreas rusas derribaron la pasada noche 124 drones ucranianos en 17 regiones, incluida Moscú y la península ucraniana de Crimea, anexionada en 2014.
“Durante la pasada madrugada los sistemas de defensa antiaérea activos destruyeron 124 drones ucranianos de ala fija”, reza el comunicado del Ministerio de Defensa en Telegram.
Los ataques afectaron a 17 regiones, aunque el grueso fue derribado en Briansk (29), Oriol (15) y Bélgorod (11).
PUEDES VER: Ataque ucraniano con drones contra planta química rusa deja siete civiles muertos
Otros nueve fueron abatidos en Riazán, ocho en Kaluga, siete en Vorónezh, seis en Kursk, otros seis en Rostov, seis en Volgogrado, seis más en Crimea, cinco en Tula y otros cinco en Samara.
En menor nivel afectaron a las regiones de Lípetsk, donde derribaron tres drones, la región de Moscú (tres), Sarátov (dos), Uliánovsk (dos) e Ivánovsk (uno).
Uno de los drones interceptados sobrevolando la región de Moscú se dirigía hacia la capital rusa, afirma Defensa.
La administración regional de Briansk señaló que los drones alcanzaron infraestructura agrícola, entre ellos un edificio administrativo de Miratorg, una de las mayores empresas del sector primario ruso, y un almacén de la empresa Ohotno.
Rusia continuó con sus ataques a Kyiv este fin de semana.
`; document.body.appendChild(modalWrapper); let figcaption = modalWrapper.querySelector(«figcaption»); if(figcaption) figcaption.style.display=»none»; modalWrapper.querySelector(«.s-multimedia__close-modal»).addEventListener(«click»,()=>{modalWrapper.remove(); e.style.display=»flex»; if(caption) caption.style.display=»block»;});})})});});
Por su parte, el gobernador de Samara, Viacheslav Fedorishev, informó que una persona resultó herida a causa de los ataques.
Los ataques aéreos llevaron también al cierre de varios aeropuertos rusos, incluidos lo de Kazán, Nizhnekamsk y Bugulmá, todos en la misma región de Tatarstán.
El parte ruso únicamente comunica sobre los drones abatidos, no de aquellos que impactan contra sus objetivos.
Ayer, Defensa seguró haber interceptado 83 drones ucranianos.
Conforme a los criterios de
Tipo de trabajo:
‘+sanitizeHTML(modalConfig.message)+’
‘;}function closeSources(){isSourcesExiting=true;const sourcesEl=document.getElementById(‘merlin-sources-overlay’);if(sourcesEl){sourcesEl.className=CLS.sourcesOverlay+’ ‘+CLS.sourcesOverlayExiting;}setTimeout(function(){showSources=false;isSourcesExiting=false;sourcesButtonRect=null;sourcesData=[];nonNoticiaUrlsData=[];document.body.style.overflow=»;if(sourcesEl&&sourcesEl.parentNode){sourcesEl.parentNode.removeChild(sourcesEl);}},200);}function getDisplayTitle(source){if(source.title)return source.title;try{const url=new URL(source.url.replace(/[?&]merlin=true/,»));const pathname=url.pathname;const lastSegment=pathname.split(«https://elcomercio.pe/»).filter(Boolean).pop()||»;return lastSegment .replace(/-/g,’ ‘).replace(/bw/g,function(char){return char.toUpperCase();});}catch{return ‘Ver artículo’;}}function getNonNoticiaDisplayTitle(urlItem,index){if(urlItem.title)return urlItem.title;try{var clean=urlItem.url.split(‘?’)[0];var urlObj=new URL(clean);var path=urlObj.pathname.replace(/^/+/,»).replace(//$/,»);if(!path)return index!==undefined?’Ver enlace ‘+(index+1):’Ver enlace’;return ‘Ver ‘+path;}catch(e){return index!==undefined?’Ver enlace ‘+(index+1):’Ver enlace’;}}function escapeHTML(str){if(!str)return »;const div=document.createElement(‘div’);div.textContent=str;return div.innerHTML;}function sanitizeURL(url){if(!url)return »;try{const parsed=new URL(url);if(parsed.protocol!==’http:’&&parsed.protocol!==’https:’){return »;}return parsed.href;}catch{return »;}}function renderSources(){if(!showSources||(sourcesData.length===0&&nonNoticiaUrlsData.length===0))return »;const totalSources=sourcesData.length+nonNoticiaUrlsData.length;const isSingleSource=totalSources===1;return »;}const root=document.createElement(‘div’);root.id=’merlin-widget-root’;document.body.appendChild(root);function render(){root.innerHTML=’
‘+(isLoggedIn()?renderModal():»)+renderWarningModal()+renderSources()+’
‘;setupModalEventDelegation();bindEvents();}function setupModalEventDelegation(){document.removeEventListener(‘click’,handleGlobalOverlayClicks,true);document.addEventListener(‘click’,handleGlobalOverlayClicks,true);setTimeout(function(){const warningCloseBtn=document.getElementById(‘merlin-warning-modal-close’);const warningModal=document.getElementById(‘merlin-warning-modal’);const sourcesCloseBtn=document.getElementById(‘merlin-sources-close’);const sourcesOverlay=document.getElementById(‘merlin-sources-overlay’);},0);}function handleGlobalOverlayClicks(e){const target=e.target;if(!target||!target.closest)return;if(target.closest(‘#merlin-warning-modal-close’)){e.preventDefault();e.stopPropagation();closeModal();return;}if(target.closest(‘#merlin-sources-close’)){e.preventDefault();e.stopPropagation();closeSources();return;}const warningModal=document.getElementById(‘merlin-warning-modal’);if(warningModal&&target===warningModal){closeModal();return;}const sourcesOverlay=document.getElementById(‘merlin-sources-overlay’);if(sourcesOverlay&&target===sourcesOverlay){closeSources();return;}const showSourcesBtn=target.closest(‘[data-show-sources]’);if(showSourcesBtn){e.preventDefault();e.stopPropagation();const messageId=showSourcesBtn.getAttribute(‘data-show-sources’);sourcesButtonRect=showSourcesBtn.getBoundingClientRect();const msg=messages.find(function(m){return m.id===messageId;});if(!msg)return;if(msg.enrichedSources){sourcesData=msg.enrichedSources.noticiaSources||[];nonNoticiaUrlsData=msg.enrichedSources.nonNoticiaSources||[];showSources=true;isSourcesExiting=false;document.body.style.overflow=’hidden’;const totalSources=sourcesData.length+nonNoticiaUrlsData.length;const isSingleSource=totalSources===1;const finalHTML=»;const widgetDiv=root.querySelector(‘.’+CLS.widget);if(widgetDiv){const existingSources=document.getElementById(‘merlin-sources-overlay’);if(existingSources&&existingSources.parentNode){existingSources.parentNode.removeChild(existingSources);}widgetDiv.insertAdjacentHTML(‘beforeend’,finalHTML);setupModalEventDelegation();}return;}const urls=msg.urls&&msg.urls.length>0?msg.urls:extractUrlsFromMessage(msg.text);if(urls&&urls.length>0){if(!msg.urls){msg.urls=urls;}let noticiaUrls=urls.filter(function(u){return isNoticiaUrl(u.url);});const nonNoticiaUrls=urls.filter(function(u){return!isNoticiaUrl(u.url);});if(noticiaUrls.length>5){noticiaUrls=noticiaUrls.slice(noticiaUrls.length-5);}nonNoticiaUrlsData=nonNoticiaUrls;showSources=true;isSourcesExiting=false;document.body.style.overflow=’hidden’;const skeletonCount=noticiaUrls.length;const isSingleSource=skeletonCount===1;let skeletonItems=»»;for(let i=0;i‘;}const skeletonHTML=»;const widgetDiv=root.querySelector(‘.’+CLS.widget);if(widgetDiv){const existingSources=document.getElementById(‘merlin-sources-overlay’);if(existingSources&&existingSources.parentNode){existingSources.parentNode.removeChild(existingSources);}widgetDiv.insertAdjacentHTML(‘beforeend’,skeletonHTML);setupModalEventDelegation();}enrichSources(noticiaUrls).then(function(enrichedSources){sourcesData=enrichedSources;msg.enrichedSources={noticiaSources:enrichedSources,nonNoticiaSources:nonNoticiaUrls};const sourcesList=document.querySelector(‘.’+CLS.sourcesList);if(sourcesList&&showSources){let html=sourcesData.map(function(source){const safeUrl=sanitizeURL(source.url);if(!safeUrl)return »;const urlWithMerlin=safeUrl.includes(‘?’)?safeUrl+’&chatbotmerlin=true’:safeUrl+’?chatbotmerlin=true’;const safeCategory=escapeHTML(source.category);const safeAuthor=escapeHTML(source.author);const safeTimestamp=escapeHTML(source.timestamp);const safeTitle=escapeHTML(getDisplayTitle(source));const safeImage=sanitizeURL(source.image);const safeAlt=escapeHTML(source.title||’Imagen de la fuente’);return ‘
‘+safeCategory+’
‘:»)+’
‘+safeTitle+’
‘)+(safeImage?’
‘:»)+’
‘+»+’
‘;}).join(»);html+=nonNoticiaUrlsData.map(function(urlItem,index){const safeUrl=sanitizeURL(urlItem.url);if(!safeUrl)return »;const urlWithMerlin=safeUrl.includes(‘?’)?safeUrl+’&chatbotmerlin=true’:safeUrl+’?chatbotmerlin=true’;const safeTitle=escapeHTML(getNonNoticiaDisplayTitle(urlItem,index));return ‘
‘+safeTitle+’
‘+»+’
‘;}).join(»);sourcesList.innerHTML=html;}}).catch(function(err){console.error(‘[Merlin Widget]Error enriching sources:’,err);});}}}function renderModal(){return »;}function renderChat(){let messagesHTML=»;if(messages.length>0){messagesHTML=messages.map(function(msg){return renderMessage(msg);}).join(»);}else{messagesHTML=’
‘;}return ‘
‘+messagesHTML+(isBotTyping?renderTypingIndicator():»)+’
‘+_0x3m4n+’
‘;}function isMobileDevice(){return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||(‘ontouchstart’ in window)||(navigator.maxTouchPoints>0);}function updateChatDOM(){const modalBody=document.querySelector(‘.’+CLS.body);if(!modalBody)return;chatEventsBound=false;modalBody.innerHTML=renderChat();const container=document.querySelector(‘.’+CLS.chatMessages);if(container){container.style.overflowY=’auto’;container.style.overflowX=’hidden’;container.style.flex=’1′;container.style.display=’flex’;container.style.flexDirection=’column’;const targetBottom=container.scrollHeight;const startPosition=Math.max(0,targetBottom-container.clientHeight-150);container.scrollTop=startPosition;requestAnimationFrame(function(){container.scrollTo({top:container.scrollHeight,behavior:’smooth’,});});}setupChatEvents();if(pendingInputRestore){const input=document.getElementById(‘merlin-input’);if(input&&pendingInputRestore){input.value=pendingInputRestore;pendingInputRestore=null;if(!isMobileDevice()){input.focus();}}}else if(!isBotTyping&&isLoggedIn()&&!showModal&&!showSources){setTimeout(function(){const input=document.getElementById(‘merlin-input’);if(input&&!input.disabled&&!isMobileDevice()){input.focus();}},100);}const warningModal=root.querySelector(‘.’+CLS.warningModal);if(warningModal){warningModal.outerHTML=renderWarningModal();}else if(showModal){const widgetDiv=root.querySelector(‘.’+CLS.widget);if(widgetDiv){widgetDiv.insertAdjacentHTML(‘beforeend’,renderWarningModal());}}const sourcesOverlay=root.querySelector(‘.’+CLS.sourcesOverlay);if(sourcesOverlay){sourcesOverlay.outerHTML=renderSources();}else if(showSources){const widgetDiv=root.querySelector(‘.’+CLS.widget);if(widgetDiv){widgetDiv.insertAdjacentHTML(‘beforeend’,renderSources());}}}function renderMessage(msg){const bubbleClass=msg.type===’sent’?CLS.bubbleContainer+’ ‘+CLS.bubbleContainerSent:CLS.bubbleContainer+’ ‘+CLS.bubbleContainerReceived;const bubbleTypeClass=msg.type===’sent’?CLS.bubble+’ ‘+CLS.bubbleSent:CLS.bubble;if(msg.type===’received’){const formattedText=formatTextToHTML(msg.text);const sanitizedHTML=sanitizeHTML(formattedText);const urls=msg.urls&&msg.urls.length>0?msg.urls:extractUrlsFromMessage(msg.text);const hasUrls=urls&&urls.length>0;if(hasUrls&&!msg.urls){msg.urls=urls;}const showSourcesButton=msg.hasValidSources===true||(msg.enrichedSources&&(msg.enrichedSources.noticiaSources.length>0||msg.enrichedSources.nonNoticiaSources.length>0));return ‘
‘+sanitizedHTML+’
‘+(showSourcesButton?’
‘+ICONS.sourceIcon+’
Fuentes‘:»)+’
‘;}else{const div=document.createElement(‘div’);div.textContent=msg.text;const escapedText=div.innerHTML;return »;}}function renderTypingIndicator(){return ‘
‘+ICONS.merlinThinkingIcon+’
‘;}function renderScrollButton(){return »;}function renderInput(){const placeholder=isLoggedIn()?’Pregúntale a Merlín’:’Por favor inicia sesión’;const disabledAttr=!isLoggedIn()?’ disabled’:»;return ‘
‘;}function renderTooltip(){return »;}let chatEventsBound=false;function setupChatEvents(){if(chatEventsBound)return;chatEventsBound=true;const input=document.getElementById(‘merlin-input’);const sendBtn=document.getElementById(‘merlin-send’);const messagesContainer=document.querySelector(‘.’+CLS.chatMessages);const scrollBtn=document.getElementById(‘merlin-scroll-down’);if(input){input.addEventListener(‘keydown’,function(e){if(e.key===’Enter’&&!e.shiftKey&&!isBotTyping){e.preventDefault();handleSend();}});input.addEventListener(‘input’,function(e){if(!isBotTyping){const cursorPos=input.selectionStart;const originalValue=e.target.value;const sanitized=sanitizeInput(originalValue);if(sanitized!==originalValue){const diff=originalValue.length-sanitized.length;input.value=sanitized;const newPos=Math.max(0,cursorPos-diff);input.setSelectionRange(newPos,newPos);}}});input.addEventListener(‘touchstart’,function(e){if(!input.disabled){input.readOnly=false;}},{passive:true});input.addEventListener(‘focus’,function(){if(!input.disabled){input.readOnly=false;}});}if(sendBtn){sendBtn.addEventListener(‘click’,handleSend);sendBtn.addEventListener(‘touchend’,function(e){e.preventDefault();handleSend();});}if(messagesContainer){messagesContainer.addEventListener(‘scroll’,checkScrollPosition,{passive:true});}if(scrollBtn){scrollBtn.addEventListener(‘click’,function(){scrollToBottom(true);});scrollBtn.addEventListener(‘touchend’,function(e){e.preventDefault();scrollToBottom(true);});}}async function handleSend(){const input=document.getElementById(‘merlin-input’);if(!input||!isLoggedIn()||isBotTyping)return;const messageToSend=input.value.trim();if(messageToSend){const validation=validateMessage(messageToSend);if(!validation.valid){errorMessage=validation.error||’Mensaje no válido.’;showModal=true;isModalExiting=false;insertWarningModal();input.focus();return;}try{window.dataLayer=window.dataLayer||[];window.dataLayer.push({event:’merlin_search_query’,search_term:messageToSend,query_type:’manual’,query_location:’widget’});}catch(e){console.error(‘Error pushing to dataLayer:’,e);}if(showModal){closeModal();}input.value=»»;await handleSendMessage(messageToSend);}}let mainEventsBound=false;function bindEvents(){const widgetBtn=document.getElementById(‘merlin-widget-button’);const closeBtn=document.getElementById(‘merlin-close’);const expandBtn=document.getElementById(‘merlin-expand’);const tooltipBtn=document.getElementById(‘merlin-tooltip-btn’);const tooltipMenu=document.getElementById(‘merlin-tooltip-menu’);const aboutBtn=document.getElementById(‘merlin-about’);const clearBtn=document.getElementById(‘merlin-clear’);if(widgetBtn){widgetBtn.onclick=function(){if(!isLoggedIn())return;toggle();};}if(closeBtn){closeBtn.onclick=toggle;closeBtn.ontouchend=function(e){e.preventDefault();toggle();};}if(expandBtn){expandBtn.onclick=expand;expandBtn.ontouchend=function(e){e.preventDefault();expand();};}if(tooltipBtn){const toggleTooltip=function(e){e.stopPropagation();tooltipOpen=!tooltipOpen;const menu=document.getElementById(‘merlin-tooltip-menu’);if(menu){if(tooltipOpen){menu.classList.remove(‘merlin-hidden’);}else{menu.classList.add(‘merlin-hidden’);}}};tooltipBtn.onclick=toggleTooltip;tooltipBtn.ontouchend=function(e){e.preventDefault();toggleTooltip(e);};}if(aboutBtn){aboutBtn.onclick=function(){window.open(«https://elcomercio.pe/»+LANDING_REDIRECT,’_blank’,’noopener,noreferrer’);tooltipOpen=false;const menu=document.getElementById(‘merlin-tooltip-menu’);if(menu)menu.classList.add(‘merlin-hidden’);};}if(clearBtn){clearBtn.onclick=function(){clearChat();tooltipOpen=false;const menu=document.getElementById(‘merlin-tooltip-menu’);if(menu)menu.classList.add(‘merlin-hidden’);};}if(!mainEventsBound){mainEventsBound=true;document.addEventListener(‘click’,function(e){const menu=document.getElementById(‘merlin-tooltip-menu’);const btn=document.getElementById(‘merlin-tooltip-btn’);if(menu&&btn&&tooltipOpen&&!menu.contains(e.target)&&!btn.contains(e.target)){tooltipOpen=false;menu.classList.add(‘merlin-hidden’);}});document.addEventListener(‘keydown’,handleEscKey);}}function handleEscKey(e){if(e.key===’Escape’){if(showSources){closeSources();}else if(showModal){closeModal();}}}function toggle(){if(isOpen){chatEventsBound=false;if(showModal){showModal=false;errorMessage=null;responseMessage=null;responseCode=null;remainingQuestions=null;isModalExiting=false;const modalEl=document.getElementById(‘merlin-warning-modal’);if(modalEl&&modalEl.parentNode){modalEl.parentNode.removeChild(modalEl);}}if(showSources){showSources=false;isSourcesExiting=false;document.body.style.overflow=»;const sourcesEl=document.getElementById(‘merlin-sources-overlay’);if(sourcesEl&&sourcesEl.parentNode){sourcesEl.parentNode.removeChild(sourcesEl);}}}const wasOpen=isOpen;isOpen=!isOpen;const existingModal=document.querySelector(‘.’+CLS.modal);if(existingModal){if(isOpen){existingModal.classList.add(CLS.modalOpen);}else{existingModal.classList.remove(CLS.modalOpen);}}else{render();}if(isOpen&&!wasOpen){chatEventsBound=false;if(!historyLoaded){const modalBody=document.querySelector(‘.’+CLS.body);if(modalBody){modalBody.innerHTML=»;}retrieveHistory().then(function(){historyLoaded=true;updateChatDOM();setTimeout(function(){scrollToBottom(false);checkScrollPosition();},100);}).catch(function(error){console.error(‘Error loading chat history:’,error);historyLoaded=true;updateChatDOM();setTimeout(function(){scrollToBottom(false);checkScrollPosition();},100);});}else{updateChatDOM();setTimeout(function(){scrollToBottom(false);checkScrollPosition();},100);}}else if(isOpen){updateChatDOM();setTimeout(function(){scrollToBottom(false);checkScrollPosition();},100);}}function expand(){try{localStorage.setItem(‘merlin-expand-to-chat’,’true’);localStorage.setItem(‘merlin-origin-url’,window.location.href);}catch(error){console.error(‘Error al guardar estado:’,error);}window.location.href=window.location.origin+»https://elcomercio.pe/»+REDIRECT_PATH;}(function setupStorageListener(){window.addEventListener(‘storage’,function(e){if(e.key===_0x1k2l&&e.newValue!==e.oldValue){if(isOpen&&isLoggedIn()){messages=[];showScrollButton=false;updateChatDOM();tooltipOpen=false;const scrollBtnContainer=document.querySelector(‘.’+CLS.chatScrollDownButtonContainer);if(scrollBtnContainer){scrollBtnContainer.classList.add(‘merlin-hidden’);}}}else if(e.key===_0x9i0j&&e.newValue!==e.oldValue){if(isOpen&&isLoggedIn()){setTimeout(function(){retrieveHistory().then(function(){responseCode=null;responseMessage=null;errorMessage=null;updateChatDOM();setTimeout(function(){scrollToBottom(false);checkScrollPosition();},100);}).catch(function(error){console.error(‘Error reloading messages after sync:’,error);});},500);}}});})();function startWidget(){(async function init(){try{await waitForCryptoHelpers();}catch(error){console.error(‘Failed to load cryptoHelpers:’,error);}messages=[];render();})();}if(document.readyState===’loading’){document.addEventListener(‘DOMContentLoaded’,startWidget);}else{startWidget();}})();




