easily add a dropzone to enable file drag and drop to your ember app
- Ember.js v3.16 or above
- Ember CLI v2.13 or above
- Node.js v10 or above
Since version 1.0.0 this addon makes use of glimmer components only.
ember install ember-file-drop-zone
check out the demo page
See the source code of the demo app for more complex examples
<FileDropZone @onDrop={{this.addFiles}} @disabled={{this.dropZoneDisabled}} as |state|>
{#if state.hovering}}
hovering over the dropzone
{{else if state.dragging}}
dragging is active
{{else}}
drop your files here...
{{/if}}
</FileDropZone>
Paramter | type | default | description |
---|---|---|---|
disabled | boolean | false | when set to true, the dropzone is disabled and files can no longer be dropped |
called when files have been dropped
files an EmberArray of js file objects that were dropped
called when files are being dragged over the dropzone
called when files are no longer dragged over the dropzone
This addon does not provide any predefined styles. However, it applies appropriate css class names so that look can be modified as needed.
class | description |
---|---|
ember-file-drop-zone | Used to style the default state of the dropzone |
disabled | Applied when the dropzone is disabled |
dragging | Applied when one or more files are current being dragged over the dropzone |
Please see app.css for a styling example:
.ember-file-drop-zone {
// initial styles
}
.ember-file-drop-zone.disabled {
// styles when disabled
}
.ember-file-drop-zone.dragging:not(.disabled) {
// styles when files are being dragged over the window, but not over the dropzone and dropzone is not disabled
}
.ember-file-drop-zone.hovering {
// styles when files are being dragged over the dropzone (independent of the disabled state)
}
See the Contributing guide for details.
This project is licensed under the MIT License.