docs: sync readmes with picker API

This commit is contained in:
“Naeel”
2026-09-05 15:12:20 +03:00
parent a0bfd9f0e3
commit f6b2f6d1b3
4 changed files with 56 additions and 9 deletions
+16 -2
View File
@@ -19,6 +19,9 @@ backend.
upload-platform/
├── requirements.txt
├── config.json # слой 0 (рабочий конфиг этого демо)
├── package.json # сборка browser bundle
├── build.mjs # esbuild: ESM + IIFE
├── dist/ # готовые bundle для встраивания
├── upload/ # ← переиспользуемый модуль (копируется в любой проект)
│ ├── README.md # инструкция интеграции
│ ├── config.example.json
@@ -37,10 +40,16 @@ upload-platform/
```bash
pip install -r requirements.txt
npm install
npm run build
python site/app.py
# → http://127.0.0.1:5000/
```
Для запуска уже собранного demo достаточно иметь зависимости Python и
содержимое `dist/`. `npm run build` требуется после изменения исходников
`upload/frontend/`.
## Деплой на Nubes
- Точка входа: `site/app.py` (платформа запускает `python site/app.py`).
@@ -50,13 +59,16 @@ python site/app.py
## Как интегрировать picker в другой проект
1. Скопировать `upload/frontend/` и один из собранных файлов `dist/` в свой проект.
2. Подключить `file-picker.iife.js` через `<script>` и вызвать `FilePicker.initFilePicker`, либо импортировать ESM-бандл.
1. Скопировать `dist/file-picker.iife.js` или `dist/file-picker.esm.js` в свой проект.
2. Подключить IIFE через `<script>` и вызвать `FilePicker.initFilePicker`, либо импортировать ESM-бандл.
3. Передать `mount`, `allowedExt`, а при необходимости `labels`, `layout`, `limits` и `onChange`.
4. Получить выбранные leaf-файлы через `picker.getFiles()`; каждый элемент содержит
`path`, `name`, `size` и исходный `file`.
5. После удаления компонента вызвать `picker.destroy()`.
Исходники `upload/frontend/` нужны только для разработки и пересборки bundle;
встроенная библиотека `fflate` уже включена в готовые bundle.
Разрешённые расширения демо: `.pdf`, `.doc`, `.docx`, `.txt`, `.md`.
ZIP-файлы используются как контейнеры и раскрываются в браузере; сам ZIP не
возвращается как leaf-файл. По умолчанию действуют ограничения: 1000 entries,
@@ -71,3 +83,5 @@ ZIP-файлы используются как контейнеры и раск
Полный справочник функций, состояния, DOM-контрактов и ограничений находится в
[`docs/CODE-REFERENCE.md`](docs/CODE-REFERENCE.md).
История решений и проверок находится в [`HISTORY/`](HISTORY/).