#2606: MultipleFileUploadArea.tsx
projectforge-webapp/src/components/base/dynamicLayout/components/upload/MultipleFileUploadArea.tsx TypeScript React-компонент (Dropzone + очередь загрузки), projectforge-webapp/src/components/base/dynamicLayout/components/upload/MultipleFileUploadArea.tsx 166 строк · 130 кода · 17 комментариев · 19 пустых
Компонент множественной загрузки файлов перетаскиванием с использованием react-dropzone. Управляет очередью файлов через useState<UploadableFile[]>. При сбросе: разделяет принятые и отклонённые файлы (с кодами FileError), присваивает последовательные ID. Перевод ошибок: сопоставляет file-too-large с i18n file.upload.error.maxSizeOfExceeded, too-many-files с file.upload.error.tooManyFiles через DynamicLayoutContext.translations. Отображает UploadError для отклонённых файлов, SingleFileUploadWithProgress для валидных файлов. Максимальный размер настраивается (КБ), жёсткое ограничение — 20 файлов (в комментарии указано 10). При успешной загрузке удаляет файл из очереди и вызывает afterFileUpload(response). Основано на туториале bmvantunes по множественной загрузке файлов с Formik.
История Git
356da5a38 Вычитка I18nResources от Claude Code.
f867698d3 wip: поднятие версий пакетов
c646250cf WIP: аудит передачи данных
e1c04a448 WIP: множественная загрузка
da657e1ce WIP: множественная загрузка