export class UploadInput { private wrap: HTMLElement; private inner: HTMLElement; private hover = false; constructor(public input: HTMLInputElement) {} initialize(): void { this.wrap = document.createElement('div'); this.wrap.classList.add('upload__wrapper'); this.inner = document.createElement('div'); this.inner.classList.add('upload'); this.wrap.appendChild(this.inner); this.inner.addEventListener('dragenter', () => { this.hover = true; this.inner.classList.add('upload--hovered'); }); this.inner.addEventListener('dragleave', () => { this.hover = false; this.inner.classList.remove('upload--hovered'); }); this.inner.addEventListener('dragover', () => {}); this.input.parentElement.appendChild(this.wrap); } }