Fix maxFiles issue when added files from server - #2003
Open
zalesak wants to merge 1 commit into
Open
Conversation
|
oe, nice; this would probably fix #2031 :) |
mathiasmadsen
approved these changes
Feb 23, 2022
|
Olá boa tarde preciso exatamente dessa correção quando será realizado o merge ? Obrigado! |
|
+1 - Works as expected. In the meantime, the method can be overridden in a custom JS file: const instance = new Dropzone(element, settings);
const { displayExistingFile } = instance;
instance.displayExistingFile = function (mockFile, imageUrl, callback, crossOrigin, param) {
displayExistingFile.call(this, mockFile, imageUrl, callback, crossOrigin, param);
// @see https://github.com/dropzone/dropzone/pull/2003
mockFile.accepted = true;
mockFile.status = Dropzone.SUCCESS;
this.files.push(mockFile);
this._updateMaxFilesReachedClass();
}; |
|
@RobPhillips Maybe dumb question here but, where does the local variable "file" come from in your custom displayExistingFile function? |
|
Whoops! Typo. Updated. |
dracos
added a commit
to mysociety/fixmystreet
that referenced
this pull request
Jul 11, 2023
I used the Dropzone source code to come up with what was missing when adding existing files (we were previously reducing maxFiles which had much the same effect unless you tried to remove/add when it got quite confused); after doing that, I then discovered a PR on Dropzone which has the same fixes: enyo/dropzone#2003
dracos
added a commit
to mysociety/fixmystreet
that referenced
this pull request
Jul 13, 2023
I used the Dropzone source code to come up with what was missing when adding existing files (we were previously reducing maxFiles which had much the same effect unless you tried to remove/add when it got quite confused); after doing that, I then discovered a PR on Dropzone which has the same fixes: enyo/dropzone#2003
dracos
added a commit
to mysociety/fixmystreet
that referenced
this pull request
Jul 13, 2023
I used the Dropzone source code to come up with what was missing when adding existing files (we were previously reducing maxFiles which had much the same effect unless you tried to remove/add when it got quite confused); after doing that, I then discovered a PR on Dropzone which has the same fixes: enyo/dropzone#2003
dracos
added a commit
to mysociety/fixmystreet
that referenced
this pull request
Jul 13, 2023
I used the Dropzone source code to come up with what was missing when adding existing files (we were previously reducing maxFiles which had much the same effect unless you tried to remove/add when it got quite confused); after doing that, I then discovered a PR on Dropzone which has the same fixes: enyo/dropzone#2003
dracos
added a commit
to mysociety/fixmystreet
that referenced
this pull request
Aug 7, 2023
I used the Dropzone source code to come up with what was missing when adding existing files (we were previously reducing maxFiles which had much the same effect unless you tried to remove/add when it got quite confused); after doing that, I then discovered a PR on Dropzone which has the same fixes: enyo/dropzone#2003
|
Any hope for this going live anytime soon? 👀 🙏 |
enyo
added a commit
that referenced
this pull request
Sep 12, 2026
Coverage went from 72.26% of statements to 79.84%, and from 80.47% of functions to 92.85%. 61 tests, in four new files plus the emitter's. The largest hole was drag and drop. The existing suite calls dropzone.drop() directly, which skips the listeners the constructor binds, so every handler on the element -- the whole point of the library -- ran in no test at all. They are covered now through real DOM events, including the guard that leaves a drag carrying anything other than files alone, and the dropEffect that makes dragging out of Chrome's download bar work. Also covered: paste, the transport failures (ontimeout, onerror and progress forwarding, previously only the success path had tests), displayExistingFile, the fallback form, the removal confirmations, renameFilename, handleFiles and Dropzone.discover. emitter.js reaches 100%. Three of these pin behaviour that is wrong rather than right, each pointing at the roadmap entry that will change it: paste still does not emit addedfiles, displayExistingFile still does not count towards maxFiles (#2003), and constructing with forceFallback returns the fallback element rather than a Dropzone, because fallback() ends in a return and a constructor returning an object overrides this. The emitter's tests sat behind `return describe(...)`, a CoffeeScript conversion artefact that ends the enclosing callback, so anything appended after it was never registered -- which is exactly what happened when the first four tests here were added and silently did not run. The eleven other occurrences in all.js hide nothing today, but they are the same trap, and are removed too. The suite count is unchanged by that, which is the point. The end-to-end suite already drives a real drop through a real DataTransfer against the built bundle, so the gap there was failure: the test server only ever answered 200. It can now reject an upload, and a test drives a real 500 through to the message in the preview.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Files added by displayExistingFiles are not counted to files limit when maxFiles is set.