Sha256: e74a61de5b1c0fd95dbe9b36b3abd1f453f11c19aa50a677282e932fda73c9c4
Contents?: true
Size: 993 Bytes
Versions: 4
Compression:
Stored size: 993 Bytes
Contents
import {Controller} from "@hotwired/stimulus" // References: // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API export default class extends Controller { static get targets() { return ["input"] } connect() { this.element.classList.add('h-dropzone') // Drag this.inputTarget.addEventListener('dragover', (event) => { this.element.classList.add('dragover') }) this.inputTarget.addEventListener('dragleave', (event) => { this.element.classList.remove('dragover') }) this.inputTarget.addEventListener('drop', (event) => { this.element.classList.remove('dragover') }) // Focus this.inputTarget.addEventListener('focusin', (event) => { this.element.classList.add('active') }) this.inputTarget.addEventListener('focusout', (event) => { this.element.classList.remove('active') }) } }
Version data entries
4 entries across 4 versions & 1 rubygems