import Moveable from "lit-moveable";
import "./snap.css";
import { LitElement, html } from "lit";
import { customElement, property, state } from "lit/decorators.js";
@customElement("lit-app")
export default class App extends LitElement {
@state()
snapContainer: HTMLElement | string = ".snapGrid";
render() {
return html `
`;
}
onMoustEnter(e: MouseEvent) {
this.snapContainer = e.currentTarget as HTMLElement;
}
onDragStart() {
document.querySelectorAll(".snapGrid").forEach(grid => {
grid.addEventListener("mouseenter", this.onMoustEnter);
});
}
onDrag(e) {
e.target.style.transform = e.transform;
e.target.style.pointerEvents = "none";
}
onDragEnd(e) {
e.target.style.pointerEvents = "";
document.querySelectorAll(".snapGrid").forEach(grid => {
grid.removeEventListener("mouseenter", this.onMoustEnter);
});
}
}