Перейти к содержанию

Руководство разработчика

Модуль 0.133.0 · интерфейс 0.103.0 · Agent API 1.23 · редакция документации 1.6. API и требования к Node.js проверены 29 сентября 2026 года; регенерация проверена на установленном Битрикс.

Редактор поддерживает собственные блоки, источники данных и шаблоны. Они подключаются отдельно от ядра. Редактор поставляется готовым бандлом. Если вы пишете своё расширение на TypeScript или JSX, соберите только это расширение перед подключением.

Выберите способ расширения

Задача Подход
Добавить блок с текстовыми, числовыми или логическими полями Декларативный блок: поля и шаблон в JSON
Создать узел Lexical, форму React или команды редактирования JavaScript-расширение типа native: Runtime SDK
Выводить записи инфоблока, каталога или внешнего API Серверный провайдер данных
Добавить готовую секцию или основу страницы Шаблоны содержимого
Настроить шрифты, кнопки и оформление Конфигурация и события
Добавить интерактивность опубликованному блоку Публичный модуль расширения: подключение JavaScript
Менять документ из скрипта или агента Page Agent API и WebMCP

Для нового блока начните с готового примера Runtime SDK. Для данных из внешнего источника — с примера провайдера.

Основные понятия

Документ — дерево узлов Lexical, сохранённое в JSON. Из него редактор формирует HTML для сайта. Поэтому правка DOM вручную не сохраняется в документе.

Блок — элемент документа со стабильным идентификатором blockUid. Идентификатор документа — contentUid. Ключ Lexical NodeKey действует в текущем экземпляре редактора; для постоянных ссылок используйте blockUid.

Расширение — пакет с файлами и манифестом. В манифесте указаны идентификатор, версия, зависимости и контрольные суммы. Сервер проверяет пакет и разрешает его использование для конкретных документов.

Хост — приложение, в которое встроен редактор. Оно открывает редактор, сохраняет документ и снимает обработчики при закрытии. В Битрикс это делает код интеграции модуля. В отдельном приложении это делает его разработчик.

Справочники

Перед подключением пакета проверьте версии SDK и ABI: от них зависит совместимость с React и Lexical. Права на сервере тоже настройте заранее. Как это сделать, описано в Runtime SDK. Через SDK добавляют блоки и те элементы интерфейса, которые для этого предусмотрены. Заменить им внутренние панели ядра нельзя.