blob: 03eff1ef933c0a414a0632c79c19700c8dafa329 [file] [log] [blame]
import{__decorate as t}from"../node_modules/tslib/tslib.es6.js";import{LitElement as e,html as r}from"https://cdn.jsdelivr.net/gh/lit/dist@2/core/lit-core.min.js";import{property as a,customElement as i}from"https://cdn.skypack.dev/pin/lit@v2.5.0-jYRq0AKQogjUdUh7SCAE/mode=imports/optimized/lit/decorators.js";import{simulationState as d}from"./device-observer.js";var s;let o=s=class extends e{constructor(){super(),this.action="move",this.addEventListener("dragstart",this.handleDragStart),this.addEventListener("dragend",this.handleDragEnd),this.addEventListener("click",this.handleSelect)}connectedCallback(){this.draggable=!0}handleDragStart(t){this.style.opacity="0.4",t.dataTransfer&&t.target&&(s.dragged=t.target,t.dataTransfer.effectAllowed="move"===this.action?"move":"copy")}handleDragEnd(){this.style.opacity="1",s.dragged=null}handleSelect(t){this.style.opacity="1",t.target&&d.patchSelected(t.target.id)}render(){return r` <slot></slot> `}};t([a({type:String,attribute:"action"})],o.prototype,"action",void 0),o=s=t([i("ns-device-dragzone")],o);export{o as DeviceDragZone};