@db-state/vue-files
| Install | |
|---|---|
npm install @db-state/vue-files |
|
| Latest Version: | 0.3.11 |
| Vue: | 3 |
| License: | MIT |
| Last Updated: | Oct 13, 2026 |
| Links: | GitHub · npm |
@db-state/vue-files
Vue-клиент для upload/download файлов поверх @db-state/vue.
Он использует существующий db-state WebSocket и автоматически регистрирует
state.file, если таблица еще не подключена.
import { createFileClient } from "@db-state/vue-files"
const files = createFileClient(state)
const uploaded = await files.upload(file, {
policy: { mode: "registered" },
onProgress: ({ loaded, total, percent }) => {}
})
await state.message.add({
text,
file: [uploaded.token]
}, "message-form")
const blob = await files.download(uploaded.token, {
onProgress: ({ loaded, total, percent }) => {}
})
files.url(uploaded.token) // /f/<token>
upload сначала считает SHA-256 файла; если такой файл на сервере уже есть,
байты не отправляются, а в результате deduplicated: true. { hash: false }
отключает хэш; файлы больше hashMaxSize (256 МБ) грузятся без хэша.
Progress передачи файлов идет через onProgress. Он специально отделен от
state.getKeyRef(key), который остается loading/helper-объектом для обычных
db-state чтений и записей.
Полная документация: docs/ru/files.md.
Related Packages
Edit your env var config, encrypt and upload it to a git repo. Get your config d...
Tiny reactive Vue 3 client for db-state: typed tables, listRef / idsRef / countR...
Version History
| Version | Released | Vue | License |
|---|---|---|---|
| 0.3.11 | >=3.0.0 | MIT | |
| 0.3.10 | >=3.0.0 | MIT | |
| 0.3.8 | >=3.0.0 | MIT | |
| 0.3.3 | >=3.0.0 | MIT | |
| 0.3.2 | >=3.0.0 | MIT | |
| 0.3.1 | >=3.0.0 | MIT | |
| 0.3.0 | >=3.0.0 | MIT | |
| 0.2.0 | >=3.0.0 | MIT | |
| 0.1.4 | >=3.0.0 | MIT | |
| 0.1.3 | >=3.0.0 | MIT | |
| 0.1.2 | >=3.0.0 | MIT | |
| 0.1.1 | >=3.0.0 | MIT | |
| 0.1.0 | >=3.0.0 | MIT | |
| 0.0.11 | >=3.0.0 | MIT | |
| 0.0.9 | >=3.0.0 | MIT |