PageSourceSearch

https://medibilbaosalud.com/scripts/embeds.js?v=auto-5

js medibilbaosalud.com collected 2026-10-08 19:51:34 UTC 2,522 bytes, 39 lines download raw bytes

1(()=>{
2 const widgets=[...document.querySelectorAll('[data-external-embed]')];
3 let automatic=true;
4 const observer='IntersectionObserver' in window?new IntersectionObserver(entries=>{
5  for(const entry of entries)if(entry.isIntersecting&&automatic){observer.unobserve(entry.target);load(entry.target);}
6 },{rootMargin:'150px 0px'}):null;
7 function fallback(widget,message){
8  widget.dataset.state='error';widget.querySelector('[data-embed-placeholder]').hidden=false;
9  widget.querySelector('[data-embed-status]').textContent=message;
10  widget.querySelector('[data-embed-load]').hidden=false;
11  const link=widget.querySelector('.mbs-embed-fallback');if(link)link.hidden=false;
12 }
13 function load(widget){
14  if(widget.querySelector('iframe'))return;
15  let url;try{url=new URL(widget.dataset.src);}catch{return fallback(widget,'No se pudo cargar este contenido.');}
16  if(!['www.google.com','maps.google.com','player.vimeo.com'].includes(url.hostname)||url.protocol!=='https:')return fallback(widget,'No se pudo cargar este contenido.');
17  const frame=document.createElement('iframe');frame.title=widget.dataset.title;frame.referrerPolicy='no-referrer';frame.loading='eager';
18  if(url.hostname==='player.vimeo.com')frame.allowFullscreen=true;
19  widget.dataset.state='loading';widget.querySelector('[data-embed-load]').hidden=true;
20  frame.addEventListener('load',()=>{widget.dataset.state='ready';widget.querySelector('[data-embed-placeholder]').hidden=true;});
21  frame.addEventListener('error',()=>{frame.remove();fallback(widget,'No se pudo cargar este contenido. Puedes reintentarlo o abrir el enlace.');});
22  frame.src=url.href;widget.querySelector('[data-embed-frame]').append(frame);
23 }
24 function watch(widget){
25  const styles=document.querySelector('link[data-mbs-full-styles]');
26  const start=()=>{if(automatic){if(observer)observer.observe(widget);else load(widget);}};
27  if(styles&&styles.media!=='all')styles.addEventListener('load',start,{once:true});else start();
28 }
29 for(const widget of widgets){
30  widget.querySelector('[data-embed-load]').addEventListener('click',()=>load(widget));
31  watch(widget);
32 }
33 const withdraw=()=>{
34  automatic=false;observer?.disconnect();
35  for(const widget of widgets){widget.querySelector('[data-embed-frame]').replaceChildren();fallback(widget,'Contenido externo desactivado.');widget.dataset.state='disabled';}
36 };
37 document.addEventListener('mbs:consent',event=>{if(!event.detail?.advertising)withdraw();});
38 document.addEventListener('mbs:external-withdraw',withdraw);
39})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.