Works with any backend npm install Zero dependencies

Sortable Queue

Sort tasks by priority, size, or name. Use sortTasks() for custom ordering.

(function() {
 var uploader = new MultipleUpload('#demo', {
 uploadUrl: '/api/upload',
 multiple: true,
 autoUpload: false,
 sortable: true
 });
 document.getElementById('sort-select').addEventListener('change', function() {
 var v = this.value;
 if (!v) return;
 uploader.setOptions({ sortBy: v });
 uploader.sortTasks(function(a, b) {
 if (v === 'size') return a.fileSize - b.fileSize;
 if (v === 'name') return a.fileName.localeCompare(b.fileName);
 return b.priority - a.priority;
 });
 });
})();