v0.0.35: при раскрытии ZIP — только документы (pdf, doc, docx, txt, md), изображения пропускаются
Deploy drhider / validate (push) Canceled after 0s

This commit is contained in:
“Naeel”
2026-08-19 09:08:31 +04:00
parent 02d9592eb5
commit 5677c59261
3 changed files with 45 additions and 3 deletions
+38
View File
@@ -0,0 +1,38 @@
# v0.0.35 — фильтр документов при раскрытии ZIP — 2026-08-19
**Дата:** 2026-08-19
**Версия:** 0.0.34 → 0.0.35
**Файл:** `site/templates/index.html` (фронт `listZipFiles`), `site/app.py` (версия)
---
## Суть
При раскрытии ZIP в таблицу ранее вытаскивались ВСЕ файлы, включая изображения
(WhatsApp jpeg и т.п.). Теперь из ZIP извлекаются **только документы**:
Разрешённые расширения: `.pdf`, `.doc`, `.docx`, `.txt`, `.md`.
Всё прочее (jpeg, png, xls, exe и т.д.) — пропускается. Вложенные ZIP
раскрываются рекурсивно, и фильтр применяется и к их содержимому.
## Изменение
`listZipFiles()` в `index.html`:
```js
const allowedExt = ['.pdf', '.doc', '.docx', '.txt', '.md'];
...
else if (allowedExt.some(ext => low.endsWith(ext))) {
out.push(new File([e.data], e.name, { lastModified: e.dosMs }));
}
// иначе — не документ, пропускаем
```
## Проверка
- `node --check` — OK.
- Тест на архиве с `doc.pdf, old.doc, n.docx, a.txt, r.md, pic.jpeg, pic2.png`:
извлечены только 5 документов, jpeg/png пропущены — OK.
## Вопрос (отложен)
- Нужно также упомянуть в подсказке на странице требование современного
браузера (`DecompressionStream`: Chrome 103+, Safari 16.4+, Firefox 113+).