import Component from '@glimmer/component';
import DataTransferWrapper from '../system/data-transfer-wrapper.ts';
import { UploadFile } from '../upload-file.ts';
import type FileQueueService from '../services/file-queue.ts';
import { type FileUploadDragEvent, type FileDropzoneSignature } from '../interfaces.ts';
import DragListenerModifier from '../system/drag-listener-modifier.ts';
/**
`FileDropzone` is a component that will allow users to upload files by
drag and drop.
```hbs
{{#if dropzone.active}}
Drop to upload
{{else if queue.files.length}}
Uploading {{queue.files.length}} files. ({{queue.progress}}%)
{{else}}
Upload Images
{{#if dropzone.supported}}
Drag and drop images onto this area to upload them or
{{/if}}