PageSourceSearch

https://junglueck.de/cdn/shop/t/676/assets/reviews-io-components.js?v=100504180177763478091772615407

js junglueck.de collected 2026-10-02 07:19:34 UTC 5,909 bytes, 2 lines download raw bytes

1class ReviewsIoBadge extends HTMLElement{static API={state:"initial",data:null};constructor(){super()}init(){const that=this,all_reviews=ReviewsIoBadge.API?.data,this_skus=that.getAttribute("variants");let average_rating=0,total_reviews=0;if(this_skus&&all_reviews){const this_reviews=Array.from(all_reviews.values())?.filter(review=>this_skus.includes(review.sku));let lookup_review=[];for(const this_review of this_reviews){if(this_review.lookup==this_review.sku)continue;const lookupValues=this_review.lookup.split(";");for(const lookup of lookupValues)lookup!=this_review.sku&&(lookup_review=lookup_review.concat(Array.from(all_reviews.values())?.filter(review=>lookup==review.sku)))}const check_unique=[...new Set(lookup_review)],this_total_review=this_reviews.concat(check_unique);if(total_reviews=this_total_review.reduce((total,current)=>total+current.num_ratings,0),total_reviews>0){const rating_html=that.querySelector(".review-rating"),review_count_html=that.querySelector(".review-count"),review_title=that.querySelector("[title]");average_rating=this_total_review.reduce((total,current)=>total+current.average_rating*current.num_ratings,0),average_rating=(average_rating/total_reviews+Number.EPSILON).toFixed(2),rating_html&&(rating_html.innerHTML=average_rating),review_count_html&&(review_count_html.innerHTML=total_reviews),review_title&&review_title.setAttribute("title",average_rating+"-"+review_title.getAttribute("title").split("-").shift()),that.style="--reviews-io-rating: "+average_rating,that.
1style.visibility=""}else that.style.visibility="hidden"}else that.style.visibility="hidden"}static getReviews(){const reviewButtons=document.querySelectorAll("reviews-io-badge"),uniq_skus=[];if(reviewButtons.forEach(button=>{if(!button.initialized){let button_skus=button.getAttribute("variants");button_skus&&(button_skus=button_skus.split(";"),button_skus.forEach(button_sku=>{uniq_skus.includes(button_sku)||uniq_skus.push(button_sku)}))}}),uniq_skus.length>0){const url="https://api.reviews.io/product/rating-batch?sku="+uniq_skus.join(";")+"&enableSyndication=true&store=junglueck.de";fetch(url,{method:"GET",headers:{accept:"application/json"}}).then(result=>result.json()).then(result=>{result.length>0&&result.forEach(entry=>{ReviewsIoBadge.API.data.set(entry.sku,entry)}),ReviewsIoBadge.API.state==="initial"||ReviewsIoBadge.API.state==="loading"?window.dispatchEvent(new CustomEvent("reviewsIO::api::ready")):window.dispatchEvent(new CustomEvent("reviewsIO::api::updated")),reviewButtons.forEach(button=>{button.initialized=!0}),ReviewsIoBadge.API.state="loaded"}).catch(error=>console.error(error))}}connectedCallback(){const that=this;that.initialized=!1,ReviewsIoBadge.API.state==="initial"?(ReviewsIoBadge.API.state="loading",ReviewsIoBadge.API.data=new Map,document.addEventListener("DOMContentLoaded",ReviewsIoBadge.getReviews),window.addEventListener("collection::updated",ReviewsIoBadge.getReviews),window.addEventListener("recommendations:updated",ReviewsIoBadge.getReviews),window.addEventListener("predictive-search:updated",ReviewsIoBadge.getReviews),window.addEventListener("reviewsIO::api::ready",that.init.bind(that))):ReviewsIoBadge.API.state==="loading"?window.addEventListener("reviewsIO::api::ready",that.init.bind(that)):that.init(),window.addEventListener("reviewsIO::api::updated",that.init.bind(that))}}customElements.define("reviews-io-badge",ReviewsIoBadge);class ReviewsIoStoreBadge extends HTMLElement{static API={state:"initial",data:{}};constructor(){super()}init(){const that=this,review_data=ReviewsIoStoreBadge.API?.data;let average_rating=0,total_reviews=0;if(review_data.product_review_stats||review_data.company_review_stats||review_data.third_party_review_stats)if(average_rating+=review_data.product_review_stats.total_reviews*Number(review_data.product_review_stats.average_rating),average_rating+=review_data.company_review_stats.total_reviews*Number(review_data.company_review_stats.average_rating),average_rating+=review_data.third_party_review_stats.total_reviews*Number(review_data.third_party_review_stats.average_rating),total_reviews+=review_data.product_review_stats.total_reviews??0,total_reviews+=review_data.company_review_stats.total_reviews??0,total_reviews+=review_data.third_party_review_stats.total_reviews??0,total_reviews>0){average_rating=(average_rating/total_reviews+Number.EPSILON).toFixed(2);const rating_html=that.querySelector(".review-rating"),review_count_html=that.querySelector(".review-count"),review_title=that.querySelector("[title]");rating_html&&(rating_html.innerHTML=average_rating),review_count_html&&(review_count_html.innerHTML=total_reviews),review_title&&review_title.setAttribute("title",average_rating+"-"+review_title.getAttribute("title").split("-").shift()),that.style="--reviews-io-rating: "+average_rating,that.
1style.visibility=""}else that.style.visibility="hidden";else that.style.visibility="hidden"}getReviews(){fetch("https://api.reviews.io/stats/all?store=junglueck.de",{method:"GET",headers:{accept:"application/json"}}).then(result=>result.json()).then(result=>{result&&(ReviewsIoStoreBadge.API.data=result),window.dispatchEvent(new CustomEvent("reviewsIO::api::store::ready")),ReviewsIoStoreBadge.API.state="loaded"}).catch(error=>console.error(error))}connectedCallback(){const that=this;that.initialized=!1,ReviewsIoStoreBadge.API.state==="initial"?(ReviewsIoStoreBadge.API.state="loading",ReviewsIoStoreBadge.API.data=new Array,document.addEventListener("DOMContentLoaded",()=>{that.getReviews()}),window.addEventListener("reviewsIO::api::store::ready",that.init.bind(that))):ReviewsIoStoreBadge.API.state==="loading"?window.addEventListener("reviewsIO::api::store::ready",that.init.bind(that)):that.init()}}customElements.define("reviews-io-store-badge",ReviewsIoStoreBadge);
2//# sourceMappingURL=/cdn/shop/t/676/assets/reviews-io-components.js.map?v=100504180177763478091772615407

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.