Interface: ModalsApi
API для управления модальными окнами редактора.
Модальные окна временно блокируют взаимодействие с основным приложением и используются для:
- Информирования пользователя о событиях, результатах операций, статусе
- Получения подтверждения перед выполнением важных или опасных действий
- Предоставления справки, инструкций и дополнительной информации
- Отображения результатов анализа, расчётов или обработки данных
Каждое модальное окно полностью описывается единственным объектом параметров, где все свойства (заголовок, содержимое, кнопки, обработчики) находятся в одном месте.
Methods
showModal()
showModal(
modal):void
Открывает модальное информационное окно.
Используется для вывода информации, уведомлений, справки или результатов операций. Окно содержит заголовок, содержимое (текст или HTML) и одну кнопку подтверждения.
Описание сценария передаётся полностью в объекте параметров: все необходимые данные и логика находятся в одном месте для полной прозрачности.
Parameters
modal
CustomModal
Описание модального окна (тип CustomModal)
Returns
void
Example
Уведомление о готовности
editorApi.ui.modals.showModal({
id: 'plugin:modal:success',
title: 'Готово',
content: 'Документ успешно сохранён.',
contentType: 'text',
okButton: {
title: 'ОК',
onClick: editorApi.createCallback(() => {
console.log('Модальное окно закрыто');
})
}
});
Показ статистики с HTML-разметкой.
editorApi.ui.modals.showModal({
id: 'plugin:modal:stats',
title: 'Статистика документа',
content: `
<h3>Результаты анализа</h3>
<table>
<tr><td>Слов:</td><td>1250</td></tr>
<tr><td>Символов:</td><td>8450</td></tr>
<tr><td>Абзацев:</td><td>42</td></tr>
</table>
`,
contentType: 'html',
okButton: {
title: 'Закрыть отчёт',
onClick: editorApi.createCallback(() => {
editorApi.ui.toasts.showToast({ id, content: 'Отчёт просмотрен' });
})
}
});
Справка без обработчика (просто закрывает окно)
editorApi.ui.modals.showModal({
id: 'plugin:modal:help',
title: 'Справка',
content: 'Это поле принимает текст в формате Markdown с поддержкой всех основных тегов.',
contentType: 'text'
// okButton не указан - окно закроется по клику на стандартную кнопку "ОК"
});
See
- CustomModal — структура параметров
- EditorApi.createCallback — создание обработчиков
- ToastsApi — для уведомлений после закрытия