1(self.webpackChunkapp_project=self.webpackChunkapp_project||[]).push([[1599],{52255:(e,t,i)=>{"use strict";i.r(t),i.d(t,{default:()=>h});var s=i(12737),n=i(29100);const o=i(38302).default,a=i(11253).Z;class h extends o{constructor(e,t){super(e),this.animationFrame=null,this.draggableArea=t,this.isDragging=!1,this.initialized=!1,this.offsetX=0,this.offsetY=0,this.boundingRect=this.element.getBoundingClientRect(),this.mouseMove=e=>{e.preventDefault(),this.isDragging&&this.dragHandler(e)},this.mouseDown=e=>{this.isDragging=!0,this.boundingRect=this.element.getBoundingClientRect(),this.offsetX=this.element.offsetLeft-e.clientX,this.offsetY=this.element.offsetTop-e.clientY,this.element.classList.add("is-dragging"),document.addEventListener("mousemove",this.mouseMoveHandler)},this.mouseUp=e=>{this.isDragging=!1,this.element.classList.remove("is-dragging"),document.removeEventListener("mousemove",this.mouseMoveHandler)},this.onDatalonkClick=e=>{e.preventDefault();const t=e.currentTarget.dataset.link;window.location.href=t},this.mouseDownHandler=this.mouseDown.bind(this),this.mouseUpHandler=this.mouseUp.bind(this),this.mouseMoveHandler=this.mouseMove.bind(this),this.dataLinkHandler=this.onDatalonkClick.bind(this),this.resizeHandler(),s.Z.on("breakpoint:change",(e=>{this.resizeHandler()}))}dragHandler(e){console.log(this.element.offsetLeft-e.clientX);let t=e.clientX+this.offsetX,i=e.clientY+this.offsetY;t>0&&t+this.boundingRect.width<this.draggableArea.boundingRect.width&&(this.element.style.left="".concat(Math.max(0,t),"px")),i>0&&i+this.boundingRect.height<this.draggableArea.boundingRect.height&&(this.element.style.top="".concat(Math.max(0,i),"px"))}dispose(){this.initialized||(this.width=(0,n.h)(210,320),"true"!=this.element.dataset.useDefaultPosition&&(this.x=(0,n.h)(0,Math.max(0,this.draggableArea.boundingRect.width-this.boundingRect.width)),this.y=(0,n.h)(0,Math.max(0,this.draggableArea.boundingRect.height-this.boundingRect.height))),this.element.addEventListener("mousedown",this.mouseDownHandler),this.element.addEventListener("mouseup",this.mouseUpHandler),this.element.classList.remove("hidden"))}dataLink(e){try{const t=this.element.querySelector("[data-link]");e?(t.removeEventListener("click",this.dataLinkHandler),t.removeAttribute("role"),t.removeAttribute("tabndex")):(t.setAttribute("role","link"),t.setAttribute("tabndex","0"),t.addEventListener("click",this.dataLinkHandler))}catch(e){console.error(e)}}destroyDrag(){this.initialized=!1,this.element.removeEventListener("mousedown",this.mouseDownHandler),this.element.removeEventListener("mouseup",this.mouseUpHandler),document.removeEventListener("mousemove",this.mouseMoveHandler),this.element.removeAttribute("style")}resizeHandler(){["large","xlarge"].indexOf(a.getCurrentBreakPoint())>=0?(this.dispose(),this.dataLink(!0)):(this.destroyDrag(),this.dataLink())}set x(e){this.element.style.left="".concat(e,"px"),this.boundingRect=this.element.getBoundingClientRect()}set y(e){this.element.style.top="".concat(e,"px"),this.boundingRect=this.element.getBoundingClientRect()}set width(e){this.element.style.width="".concat(e,"px"),this.boundingRect=this.element.getBoundingClientRect()}}},29100:(e,t,i)=>{"use strict";function s(e,t){return Math.floor(Math.random()*(t-e+1)+e)}function n(e){return new Promise((t=>{if(e){const i=document.createElement("link");i.rel="stylesheet",i.type="text/css",i.href=e,i.onload=()=>{t()},document.getElementsByTagName("head")[0].appendChild(i)}else t()}))}i.d(t,{h:()=>s,j:()=>n})}}]);
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.