#2609: context.tsx
projectforge-webapp/src/components/base/dynamicLayout/context.tsx Определение контекста TypeScript React, projectforge-webapp/src/components/base/dynamicLayout/context.tsx 215 строк · 48 кода · 164 комментария · 3 пустых
Определяет DynamicLayoutContext (React.createContext) и TypeScript-интерфейс DynamicLayout для серверной системы динамической компоновки (аналог UILayout.kt). Формат контекста: callAction(action) — отправляет действия UI, полученные с сервера; data — реактивное хранилище для значений полей ввода; isFetching — состояние загрузки; options — переключатели (disableLayoutRendering, displayPageMenu, setBrowserTitle, showActionButtons, showPageMenuTitle); renderLayout(content) — декларативный рендеринг макета из JSON-массива; setData/setVariables — установщики состояния с поддержкой колбэков/промисов; ui.translations — карта i18n ключ/значение с сервера; validationErrors[] — результаты серверной валидации; variables — данные макета редактирования, предоставленные сервером (AbstractBaseRest.kt > EditLayoutData). Экспортирует значения по умолчанию, которые выбрасывают ошибку "ещё не реализовано". Используется всеми компонентами динамической компоновки через React.useContext(DynamicLayoutContext).
История Git
033629f77 исправление ошибок typescript eslint
c66bf8f62 WIP: множественная загрузка
253b9f38b обновление некоторых зависимостей и исправление ошибок eslint
bbd81edc3 es-lint, новые версии js.
508e382e8 #67 реализация индикатора загрузки страницы формы