Blame view

天文台pc/tianwentai-ui/node_modules/react-dnd/dist/hooks/useDrag/DragSourceImpl.js 1.44 KB
bc518174   王天杨   提交两个项目文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
  export class DragSourceImpl {
      beginDrag() {
          const spec = this.spec;
          const monitor = this.monitor;
          let result = null;
          if (typeof spec.item === 'object') {
              result = spec.item;
          } else if (typeof spec.item === 'function') {
              result = spec.item(monitor);
          } else {
              result = {};
          }
          return result !== null && result !== void 0 ? result : null;
      }
      canDrag() {
          const spec = this.spec;
          const monitor = this.monitor;
          if (typeof spec.canDrag === 'boolean') {
              return spec.canDrag;
          } else if (typeof spec.canDrag === 'function') {
              return spec.canDrag(monitor);
          } else {
              return true;
          }
      }
      isDragging(globalMonitor, target) {
          const spec = this.spec;
          const monitor = this.monitor;
          const { isDragging  } = spec;
          return isDragging ? isDragging(monitor) : target === globalMonitor.getSourceId();
      }
      endDrag() {
          const spec = this.spec;
          const monitor = this.monitor;
          const connector = this.connector;
          const { end  } = spec;
          if (end) {
              end(monitor.getItem(), monitor);
          }
          connector.reconnect();
      }
      constructor(spec, monitor, connector){
          this.spec = spec;
          this.monitor = monitor;
          this.connector = connector;
      }
  }
  
  //# sourceMappingURL=DragSourceImpl.js.map