import keycon from "keycon";
import Moveable from "lit-moveable";
import { throttle } from "@daybrush/utils";
import { LitElement, html } from "lit";
import { customElement, property } from "lit/decorators.js";
keycon.setGlobal();
@customElement("lit-app")
export default class App extends LitElement {
render() {
return html `
Resizable Target
Scalable Target
`;
}
onResizeStart(e) {
e.setFixedDirection([0, 0]);
}
onDrag(e) {
e.target.style.transform = e.transform;
}
onBeforeResize(e) {
if (keycon.global.shiftKey) {
e.setFixedDirection([-1, -1]);
} else {
e.setFixedDirection([0, 0]);
}
}
onResize(e) {
e.target.style.cssText += `width: ${e.width}px; height: ${e.height}px`;
e.target.style.transform = e.drag.transform;
}
onBeforeRotate(e) {
e.setRotation(throttle(e.rotation, 45));
}
onRotate(e) {
e.target.style.transform = e.drag.transform;
}
onScaleStart(e) {
e.setFixedDirection([0, 0]);
}
onDrag$0(e) {
e.target.style.transform = e.transform;
}
onBeforeScale(e) {
if (keycon.global.shiftKey) {
e.setFixedDirection([-1, -1]);
} else {
e.setFixedDirection([0, 0]);
}
}
onScale(e) {
e.target.style.transform = e.drag.transform;
}
}