Skip to content

Commit 15ce3f2

Browse files
committed
revert maxFiles/maxFilesize
1 parent 7150181 commit 15ce3f2

File tree

3 files changed

+4
-28
lines changed

3 files changed

+4
-28
lines changed

web_src/js/features/dropzone.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import {clippie} from 'clippie';
44
import {showTemporaryTooltip} from '../modules/tippy.js';
55
import {GET, POST} from '../modules/fetch.js';
66
import {showErrorToast} from '../modules/toast.js';
7-
import {createElementFromHTML, createElementFromAttrs, elemGetAttributeNumber} from '../utils/dom.js';
7+
import {createElementFromHTML, createElementFromAttrs} from '../utils/dom.js';
88

99
const {csrfToken, i18n} = window.config;
1010

@@ -52,8 +52,8 @@ export async function initDropzone(dropzoneEl) {
5252
const dzInst = await createDropzone(dropzoneEl, {
5353
url: dropzoneEl.getAttribute('data-upload-url'),
5454
headers: {'X-Csrf-Token': csrfToken},
55-
maxFiles: elemGetAttributeNumber('data-max-file', null), // match dropzone default value, no limit
56-
maxFilesize: elemGetAttributeNumber('data-max-size', 256), // match dropzone default value: 256 MiB
55+
maxFiles: Number(dropzoneEl.getAttribute('data-max-file')) || null, // match dropzone default value, no limit
56+
maxFilesize: Number(dropzoneEl.getAttribute('data-max-size')) || 256, // match dropzone default value: 256 MiB
5757
acceptedFiles: ['*/*', ''].includes(dropzoneEl.getAttribute('data-accepts')) ? null : dropzoneEl.getAttribute('data-accepts'),
5858
addRemoveLinks: true,
5959
dictDefaultMessage: dropzoneEl.getAttribute('data-default-message'),

web_src/js/utils/dom.js

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -318,18 +318,3 @@ export function createElementFromAttrs(tagName, attrs) {
318318
}
319319
return el;
320320
}
321-
322-
/**
323-
* Get a number from an element attribute. If the attribute doesn't exist, return the default value.
324-
* If the attribute exists but is not a number, throw an error.
325-
* @param {HTMLElement} el
326-
* @param {string} attr
327-
* @param {number|null} def
328-
* @returns {number|null}
329-
*/
330-
export function elemGetAttributeNumber(el, attr, def = null) {
331-
if (!el.hasAttribute(attr)) return def; // getAttribute also returns null for non-existing attribute
332-
const v = parseInt(el.getAttribute(attr));
333-
if (Number.isNaN(v)) throw new Error(`Attribute "${attr}" is not a number`);
334-
return v;
335-
}

web_src/js/utils/dom.test.js

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {createElementFromAttrs, createElementFromHTML, elemGetAttributeNumber} from './dom.js';
1+
import {createElementFromAttrs, createElementFromHTML} from './dom.js';
22

33
test('createElementFromHTML', () => {
44
expect(createElementFromHTML('<a>foo<span>bar</span></a>').outerHTML).toEqual('<a>foo<span>bar</span></a>');
@@ -14,12 +14,3 @@ test('createElementFromAttrs', () => {
1414
});
1515
expect(el.outerHTML).toEqual('<button id="the-id" class="cls-1 cls-2" data-foo="the-data" disabled=""></button>');
1616
});
17-
18-
test('elemGetAttributeNumber', () => {
19-
expect(elemGetAttributeNumber(createElementFromHTML('<a>foo</a>'), `data-key`)).toEqual(null);
20-
expect(elemGetAttributeNumber(createElementFromHTML('<a>foo</a>'), `data-key`, 1)).toEqual(1);
21-
expect(elemGetAttributeNumber(createElementFromHTML('<a data-key="2">foo</a>'), `data-key`)).toEqual(2);
22-
expect(() => {
23-
elemGetAttributeNumber(createElementFromHTML('<a data-key="abc">foo</a>'), `data-key`);
24-
}).toThrowError('Attribute "data-key" is not a number');
25-
});

0 commit comments

Comments
 (0)