diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 16:16:36 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 16:16:36 +0300 |
commit | 311b0269b4eb9839fa63f80c8d7a58f32b8138a0 (patch) | |
tree | 07e7870bca8aed6d61fdcc810731c50d2c40af47 /app/assets/javascripts/dropzone_input.js | |
parent | 27909cef6c4170ed9205afa7426b8d3de47cbb0c (diff) |
Add latest changes from gitlab-org/gitlab@14-5-stable-eev14.5.0-rc42
Diffstat (limited to 'app/assets/javascripts/dropzone_input.js')
-rw-r--r-- | app/assets/javascripts/dropzone_input.js | 41 |
1 files changed, 15 insertions, 26 deletions
diff --git a/app/assets/javascripts/dropzone_input.js b/app/assets/javascripts/dropzone_input.js index f98f63529fc..f404fa4e0e8 100644 --- a/app/assets/javascripts/dropzone_input.js +++ b/app/assets/javascripts/dropzone_input.js @@ -43,7 +43,6 @@ export default function dropzoneInput(form, config = { parallelUploads: 2 }) { let pasteText; let addFileToForm; let updateAttachingMessage; - let isImage; let uploadFile; formTextarea.wrap('<div class="div-dropzone"></div>'); @@ -173,7 +172,7 @@ export default function dropzoneInput(form, config = { parallelUploads: 2 }) { return dropzoneInstance.addFile(file); }); }); - // eslint-disable-next-line consistent-return + handlePaste = (event) => { const pasteEvent = event.originalEvent; const { clipboardData } = pasteEvent; @@ -186,32 +185,22 @@ export default function dropzoneInput(form, config = { parallelUploads: 2 }) { const text = converter.convertToTableMarkdown(); pasteText(text); } else { - const image = isImage(pasteEvent); - - if (image) { - event.preventDefault(); - const MAX_FILE_NAME_LENGTH = 246; - const filename = getFilename(pasteEvent) || 'image.png'; - const truncateFilename = truncate(filename, MAX_FILE_NAME_LENGTH); - const text = `{{${truncateFilename}}}`; - pasteText(text); - - return uploadFile(image.getAsFile(), truncateFilename); - } - } - } - }; - - isImage = (data) => { - let i = 0; - while (i < data.clipboardData.items.length) { - const item = data.clipboardData.items[i]; - if (item.type.indexOf('image') !== -1) { - return item; + const fileList = [...clipboardData.files]; + fileList.forEach((file) => { + if (file.type.indexOf('image') !== -1) { + event.preventDefault(); + const MAX_FILE_NAME_LENGTH = 246; + + const filename = getFilename(file) || 'image.png'; + const truncateFilename = truncate(filename, MAX_FILE_NAME_LENGTH); + const text = `{{${truncateFilename}}}`; + pasteText(text); + + uploadFile(file, truncateFilename); + } + }); } - i += 1; } - return false; }; pasteText = (text, shouldPad) => { |