PageSourceSearch

https://www.decathlon.com/cdn/shop/t/378/assets/product-title-truncation.js?v=81744426891537421781787069265

js decathlon.com collected 2026-09-24 08:41:15 UTC 1,586 bytes, 2 lines download raw bytes

1import{Component}from"@theme/component";class ProductTitle extends Component{constructor(){super()}connectedCallback(){super.connectedCallback(),this.#initializeTruncation()}#initializeTruncation(){"ResizeObserver"in window?(this.resizeObserver=new ResizeObserver(()=>{this.#calculateTruncation()}),this.resizeObserver.observe(this),this.#calculateTruncation()):(window.addEventListener("resize",this.#handleResize.bind(this)),this.#calculateTruncation())}#calculateTruncation(){const textElement=this.refs.text||this.querySelector(".title-text")||this;if(!textElement.textContent)return;const containerHeight=this.clientHeight,computedStyle=window.getComputedStyle(this),lineHeight=parseFloat(computedStyle.lineHeight),paddingTop=parseFloat(computedStyle.paddingTop),paddingBottom=parseFloat(computedStyle.paddingBottom),availableHeight=containerHeight-paddingTop-paddingBottom,maxLines=Math.max(1,Math.floor(availableHeight/lineHeight));textElement.style.display="-webkit-box",textElement.style.webkitBoxOrient="vertical",textElement.style.overflow="hidden",textElement.style.textOverflow="ellipsis",textElement.style.webkitLineClamp=String(maxLines)}#handleResize(){this.#calculateTruncation()}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver&&this.resizeObserver.disconnect(),window.removeEventListener("resize",this.#handleResize)}}customElements.get("product-title")||customElements.define("product-title",ProductTitle);export default ProductTitle;
2//# sourceMappingURL=/cdn/shop/t/378/assets/product-title-truncation.js.map?v=81744426891537421781787069265

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.