@besnovatyj/filemanager-core
v1.0.4
Published
Framework-agnostic файловый менеджер (ядро). Используется самостоятельно или как зависимость CKEditor-адаптера.
Readme
@besnovatyj/filemanager-core
Framework-agnostic ядро файлового менеджера. Не зависит от CKEditor — монтируется на любой
странице. CKEditor-адаптер (@besnovatyj/ckeditor5-filemanager) использует этот пакет как зависимость.
Сборка
npm install
npm run build # → dist/standalone.js (+ .css вшит в JS)
npm run types # → dist/standalone.d.ts (типы для адаптера)dist/ коммитится в git (его потребляют адаптер и composer-пакеты без пересборки).
Standalone-использование
import {createApp} from '@besnovatyj/filemanager-core';
const runtime = createApp({
fmConnector: '/api/filemanager', // URL бэкенда
fmBaseUrl: '/api/filemanager/',
fmDefaultPath: '/',
fmHeaders: { 'X-CSRF-Token': '...' },
onSelect: (files) => { /* что делать с выбранными файлами */ },
onClose: () => {},
});
await runtime.open(); // показать окно
// runtime.destroy(); // погаситьПубличный API (src/standalone.ts)
createApp(config: AppConfig): AppRuntime— собрать и получить рантайм.AppRuntime—open(),destroy(), шина событий.AppConfig— конфиг (коннектор, заголовки, колбэкиonSelect/onClose).FileEntity— доменная сущность файла.IFileManagerBackend+HttpFileManagerBackend+HttpClient— контракт бэкенда и HTTP-реализация.
Внутри — FSD-структура (app, entities, features, shared, widgets, pages). Внутренние
импорты через алиас @/* → src/*.
