UNPKG

barneo-file-service

Version:

Комплексная библиотека Vue 3 для работы с файлами в приложениях Barneo. Предоставляет мощную функциональность для загрузки, управления и обработки файлов с валидацией, отслеживанием прогресса и поддержкой localStorage.

76 lines 2.99 kB
import type { AppName } from "./AppName"; import type { ImageInfo } from "./ImageInfo"; /** * Состояние загрузки файла * * Отслеживает прогресс и статус загрузки отдельного файла */ export interface FileUploadState { /** Уникальный идентификатор загрузки */ id: string; /** Файл для загрузки */ file: File; /** Текущий статус загрузки */ status: "pending" | "uploading" | "success" | "error"; /** Прогресс загрузки в процентах (0-100) */ progress: number; /** Ответ сервера после успешной загрузки */ response?: FileUploadResponse[]; /** Сообщение об ошибке при неудачной загрузке */ error?: string; } /** * Ответ API после загрузки файла * * Структура данных, возвращаемая сервером после успешной загрузки */ export interface FileUploadResponse { /** Уникальный идентификатор файла на сервере */ id: number; /** Дата создания записи */ createdAt: string; /** Дата последнего обновления */ updatedAt: string; /** Дата удаления (null если файл не удален) */ deletedAt: string | null; /** Порядок сортировки */ sort: number; /** Активен ли файл */ active: boolean; /** Оригинальное имя файла */ originalName: string; /** Имя файла на сервере */ name: string; /** MIME-тип файла */ mimetype: string; /** Размер файла в байтах */ size: number; /** Расширение файла */ extname: string; /** Публичный ли файл */ public: boolean; /** Название приложения */ appName: AppName; /** Тип файла */ fileType: string; /** URL для доступа к файлу */ url: string; /** Загружен ли файл в AWS */ loadedToAws: boolean; /** Дополнительная информация для изображений */ image?: ImageInfo; } /** * Опции для загрузки файла * * Параметры, передаваемые при загрузке файла */ export interface FileUploadOptions { /** Название приложения для идентификации файлов */ appName: AppName; /** Callback для отслеживания прогресса загрузки */ onProgress?: (progress: number) => void; /** Callback для обработки ошибок загрузки */ onError?: (error: Error) => void; } //# sourceMappingURL=UploadTypes.d.ts.map