+/**
+ * Fade out the given element.
+ * @param {Element} element
+ * @param {Number} animTime
+ * @param {Function|null} onComplete
+ */
+export function fadeOut(element, animTime = 400, onComplete = null) {
+ animateStyles(element, {
+ opacity: ['1', '0']
+ }, animTime, () => {
+ element.style.display = 'none';
+ if (onComplete) onComplete();
+ });
+}
+
/**
* Hide the element by sliding the contents upwards.
* @param {Element} element
import DropZone from "dropzone";
+import { fadeOut } from "../../services/animations";
const template = `
<div class="dropzone-container">
const props = ['placeholder', 'uploadUrl', 'uploadedTo'];
-// TODO - Remove jQuery usage
function mounted() {
const container = this.$el;
const _this = this;
dz.on('success', function (file, data) {
_this.$emit('success', {file, data});
- $(file.previewElement).fadeOut(400, function () {
+ fadeOut(file.previewElement, 800, () => {
dz.removeFile(file);
});
});
_this.$emit('error', {file, errorMessage, xhr});
function setMessage(message) {
- $(file.previewElement).find('[data-dz-errormessage]').text(message);
+ const messsageEl = file.previewElement.querySelector('[data-dz-errormessage]');
+ messsageEl.textContent = message;
}
if (xhr && xhr.status === 413) {