File size: 587 Bytes
7aec436
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script>
  import {createEventDispatcher} from 'svelte';
  export let dropping = false;
  const dispatch = createEventDispatcher();
</script>

<div on:drop={(e) => {
  if (e.dataTransfer.types.includes('Files') && e.dataTransfer.files[0]) {
    e.preventDefault();
    dispatch('drop', e.dataTransfer);
    dropping = false;
  }
}} on:dragover={(e) => {
  if (e.dataTransfer.types.includes('Files')) {
    e.preventDefault();
    e.dataTransfer.dropEffect = 'copy';
    dropping = true;
  }
}} on:dragleave={(e) => {
  dropping = false;
}}>
  <slot></slot>
</div>