Interface: EditorPlugin
Интерфейс предназначен для разработки надстроек, расширяющих функциональность веб-редактора.
Для корректной интеграции надстройки необходимо реализовывать методы указанного интерфейса.
Example
Файл простой надстройки должен выглядеть следующим образом и содержать только метод EditorPlugin.onInit.
export default {
// Точка входа в надстройку
onInit: startPlugin,
}
function startPlugin() {
console.log('Plugin started');
}
Остальное взаимодействие будет строиться на базе EditorApi
Methods
onDestroy()?
optionalonDestroy(editorApi):void|Promise<void>
Опциональный метод, позволяющий освободить занятые ресурсы перед удалением надстройки из редактора.
Используется для удаления зарегистрированных компонентов интерфейса и любых изменений, внесённых в редактор.
Если реализация предусмотрена, рекомендуется очищать создаваемые надстройки элементы пользовательского интерфейса с использованием методов из пространства имен EditorApi.ui.
Например:
editorApi.ui.ribbon.removeTabs([tabId]); // удаление вкладки панели инструментов
editorApi.ui.sidebar.removeTabs([tabId]); // удаление боковой панели
editorApi.ui.contextMenu.removeItems([itemId, ...]); // очистка пунктов контекстного меню
Parameters
editorApi
объект типа EditorApi - обеспечивающий доступ к API редактора.
Returns
void | Promise<void>
onInit()
onInit(
editorApi):void|Promise<void>
Опциональный метод освобождения ресурсов перед удалением надстройки.
Используйте для снятия UI-компонентов, отписок и очистки.
Рекомендуется удалять созданный UI через EditorApi.ui.
Например:
editorApi.ui.ribbon.removeTabs([tabId]);
editorApi.ui.sidebar.removeTabs([tabId]);
editorApi.ui.contextMenu.removeItems([itemId, ...]);
Parameters
editorApi
интерфейс EditorApi для взаимодействия с редактором
Returns
void | Promise<void>