(source: Draggable, options: DragSensorOptions)
| 30 | } |
| 31 | |
| 32 | public bind(source: Draggable, options: DragSensorOptions): CleanupFunction { |
| 33 | const unbind = effect(() => { |
| 34 | const target = source.handle ?? source.element; |
| 35 | const listener: EventListener = (event: Event) => { |
| 36 | if (event instanceof DragEvent) { |
| 37 | this.handleDragStart(event, source, options); |
| 38 | } |
| 39 | }; |
| 40 | |
| 41 | if (target) { |
| 42 | target.addEventListener('dragstart', listener); |
| 43 | |
| 44 | return () => { |
| 45 | target.removeEventListener('dragstart', listener); |
| 46 | }; |
| 47 | } |
| 48 | }); |
| 49 | |
| 50 | return unbind; |
| 51 | } |
| 52 | |
| 53 | private handleDragStart = ( |
| 54 | event: DragEvent, |
no test coverage detected