PageSourceSearch

https://www.socketmobile.com/ResourcePackages/Talon/assets/dist/js/product-cards.min.js

js socketmobile.com collected 2026-10-01 11:33:28 UTC 5,582 bytes, 1 lines download raw bytes

1document.addEventListener("DOMContentLoaded",(function(){const t=document.querySelectorAll(".product-cards");let e=[],c=[],s=[],i=[];const r=document.querySelector(".comparison-translations"),n=document.querySelectorAll(".comparison-data"),o=document.querySelector(".compare-buttons"),a=document.querySelector(".compare-buttons-background"),l=document.querySelector(".compare-button"),d=document.querySelector(".deselect-button"),u=l.querySelector(".num-selected");a&&document.body.appendChild(a),o&&document.body.appendChild(o);function p(t,e){let c=t.find((t=>t.startsWith(e+"-MIN"))),s="N/A";if(c){s=c.split("-").pop();let i=t.find((t=>t.startsWith(e+"-MAX")));i&&(s=s+" - "+i.split("-").pop())}return s}document.querySelectorAll(".product-card__img").forEach((t=>{let e=t.querySelector(".in-use-img");if(e){let c=t.querySelector(".product-img");c&&(c.style.height=e.offsetHeight+"px",t.addEventListener("mouseover",(function(){e.style.opacity=0,c.style.opacity=1})),t.addEventListener("mouseleave",(function(){c.style.opacity=0,e.style.opacity=1})))}})),n.forEach((t=>{c.push(function(t){const e=t.querySelector('input[type="checkbox"]').getAttribute("name"),c=t.querySelector('input[type="checkbox"]').getAttribute("img-src"),s=t.getAttribute("product-tags")?t.getAttribute("product-tags").split(";"):[];let i=[p(s,"UPCA"),p(s,"DATAMATRIX")],n=s.filter((t=>t.startsWith("SURFACE"))).map((t=>t.substring(t.indexOf("-")+1).replace(/-/g," ").replace(/_/g,"-")));n=n.map((t=>t.charAt(0).toUpperCase()+t.slice(1)));const o=(t.getAttribute("product-reads")?t.getAttribute("product-reads").split(";"):[]).map((t=>t.startsWith("OCR")?t.replace("OCR Fonts","OCR Fonts ("+r.getAttribute("passport-translation")+")"):t)),a=s.filter((t=>t.startsWith("RATED"))).map((t=>t.substring(t.indexOf("-")+1).replace(/-/g," "))),l=t.getAttribute("product-compatibilities")?t.getAttribute("product-compatibilities").split(";"):[],d=t.getAttribute("battery-life")?t.getAttribute("battery-life").split(";"):[];return{title:e,img:c,distance:i,surface:n,reads:o,iprating:a,compatibilities:l,battery:d}}(t));const d=t.querySelector('input[type="checkbox"]');let m=d.getAttribute("name");s.includes(m)&&i.push(m),s.push(m),t.addEventListener("click",(function(){if(d.checked=!d.checked,i.includes(m)){document.querySelectorAll(`input[type="checkbox"][name="${m}"]`).forEach((t=>{t.checked=d.checked}))}d.checked?e.includes(m)||e.push(m):e=e.filter((t=>t!==m)),e.length>=7?n.forEach((t=>{t.classList.add("disable-compare")})):n.forEach((t=>{t.classList.contains("disable-compare")&&t.classList.remove("disable-compare")})),e.length>0?(o.style.display="flex",a.style.display="block",u.innerText=e.length,e.length>1&&e.length<=7?l.classList.remove("inactive"):l.classList.add("inactive")):(o.style.display="none",a.style.display="none",l.classList.add("inactive"))}))})),c=c.filter(((t,e,c)=>e===c.findIndex((e=>e.title===t.title)))),l.addEventListener("click",(function(){const{relevantProducts:s,tags:i}=function(){const t=c.filter((t=>e.includes(t.title)));let s={};return t.forEach((t=>{for(const e in t)"title"!=e&&"img"!=e&&(s[e]?t[e].forEach((t=>{s[e].includes(t)||s[e].push(t)})):s[e]=t[e].slice())})),{relevantProducts:t,tags:s}}();let n=document.querySelector(".comparison-table-wrapper");n||(n=document.createElement("div"),n.className="comparison-table-wrapper");const o=document.querySelector(".products-wrapper");if(o&&o.querySelector(".product-cards"))o.contains(n)||o.appendChild(n);else{const e=t[t.length-1];e&&e.parentNode.insertBefore(n,e.nextSibling)}let a=document.querySelector(".distance-text");a?n.insertAdjacentElement("afterend",a):(n.insertAdjacentHTML("afterend",'<p class="distance-text" style="display:none">* '+r.getAttribute("distance-subtext")+"</p>"),a=document.querySelector(".distance-text")),a.style.display="none",n.innerHTML=function(t,c){let s="<table class='comparison-table"+(e.length<=4?" nowrap-tags":"")+"'>";s+="<tr class='header'><td colspan=2></td>",t.forEach((t=>{s+="<td><div class='product'><img src=\""+t.img+'">'+t.title+"</div></td>"})),s+="</tr>";for(const e in c){if(void 0===c[e]||0===c[e].length)continue;let i=r.getAttribute(e+"-translation");"distance"==e?(document.querySelector(".distance-text").style.display="block",s+="<tr class='first-row'><td class='category' rowspan=2>"+i+" *</td>",s+="<td class='tag distance-tag'><img src='https://cdn.socketmobile.com/sitefinity-assets/images/default-source/icons/comparison-upca.png'><br/>"+r.getAttribute("distance-upca")+"</td>",t.forEach((t=>{s+="<td>"+t.distance[0]+"</td>"})),s+="</tr>",s+="<tr><td class='tag distance-tag'><img src='https://cdn.socketmobile.com/sitefinity-assets/images/default-source/icons/comparison-datamatrix.png'><br/>"+r.getAttribute("distance-matrix")+"</td>",t.forEach((t=>{s+="<td>"+t.distance[1]+"</td>"})),s+="</tr>"):(s+="<tr class='first-row'><td class='category' rowspan="+c[e].length+">"+i+"</td>",c[e].forEach(((c,i)=>{0!=i&&(s+="<tr>"),s+="<td class='tag'>"+c+"</td>",t.forEach((t=>{t[e]&&t[e].includes(c)?s+="<td><img src='https://cdn.socketmobile.com/sitefinity-assets/images/default-source/default-album/check-circle.png'></td>":s+="<td></td>"})),s+="</tr>"})))}return s}(s,i);const l=n.getBoundingClientRect().top+window.pageYOffset+-200;window.scrollTo({top:l,behavior:"smooth"})}
1)),d.addEventListener("click",(function(){n.forEach((t=>{t.querySelector('input[type="checkbox"]').checked=!1,t.classList.contains("disable-compare")&&t.classList.remove("disable-compare")})),e=[],o.style.display="none",a.style.display="none",l.classList.add("inactive")}))}));

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.