SDK (Software Development Kit) UI — набор инструментов и API для интеграции и кастомизации пользовательского интерфейса системы, позволяющий изменять/расширять её поведение без необходимости доступа к исходному коду
В разделе описана общая архитектура SDK UI, способы взаимодействия с системой, механизмы настройки и расширения функциональности, а также подходы к интеграции кастомизаций.
Для более подробных деталей по той или иной функциональности рекомендуется обратиться к разделу Руководства
Данная схема предоставляет обзор общей архитектуры SDK UI и показывает взаимодействие приложения с пользовательскими файлами кастомизации. Она демонстрирует, через какие интерфейсы SDK UI позволяет расширять и настраивать функциональность системы:
Архитектурная схема отображает только те артефакты, которые фигурируют при кастомизации пользовательского интерфейса через SDK. Для получения информации по архитектуре всей системы (бэкенд, БД, и прочие сервисы) обратитесь к пользовательской документации.
На диаграмме можно наблюдать два основных контура: Продукт и Кастомизации, а также взаимосвязи между ними
Продуктовые артефакты — артефакты, предоставляемые Юниверс Дата:
repository.universe-data.ru/dis/unidata-dg/frontend:v2.15.0 - Docker-образ приложения пользовательского интерфейса системы, который и предоставляет SDK API@universe-dg/sdk@2.15.0 - NPM-пакет с декларациями типов для SDK API. Необходим для удобной разработки
пользовательских кастомизаций с использованием TypeScript. Подробнее см.
раздел Продвинутый старт (TypeScript)Пользовательские артефакты — артефакты, которые могут быть созданы пользователем и подключены к приложению с целью кастомизации или настройки системы:
customer.json - Основной конфигурационный файл приложения. Подробнее см. раздел
Конфигурация<custom>.js - Внешние JS-модули, подключаемые к приложению. Являются основной точкой расширения функциональности
системы через SDK API. Подробнее см. разделы
Внешние модули и Быстрый старт<custom>.ts - Внешние TS-модули, из которых собираются JS-модули (если вы используете TypeScript). Подробнее см.
раздел Продвинутый старт (TypeScript)<custom>.css - Внешние CSS-модули, подключаемые к приложению. Подробнее см. раздел
Внешние модулиtheme.json - Пользовательская тема, позволяющая стилизовать приложение. Подробнее см. раздел
Темизация