1. YCLIENTS
  2. Маркетплейс интеграций
  3. Плагинизация
  4. Руководство по созданию Frontend плагина
  5. Плагинизация виджета онлайн-записи
  6. Примеры плагинов виджета
  7. Плагин кастомизации

Плагин кастомизации


Что делает

Меняет цветовую схему виджета онлайн‑записи, перекрашивая токены под ваш бренд.

Принцип работы

1. Старт работы плагина

Запуск плагина происходит через функцию initializePlugin.

export function initializePlugin() {
  LoggerUtil.info('Инициализация ThemeCustomizer');
  hostEventEmitter.onDocument(HOST_EVENT_NAMES.READY, handleHostReadyEvent);
  if (typeof window !== 'undefined') {
    window.addEventListener('beforeunload', cleanup);
  }
}

LoggerUtil — утилита для логирования. Добавлена для примера.

При старте плагин подписывается на событие HOST_EVENT_NAMES.READY, которое будет отправлено виджетом онлайн записи, когда он будет готов для работы с плагинами.

2. Обработчик handleHostReadyEvent

В нем вызываем нашу логику смены цветов:

function handleHostReadyEvent(event: CustomEvent<THostReadyEvent>): void {
  LoggerUtil.info('Host ready:', event);
  ThemeService.applyCustomColors();
}

3. Сервис ThemeService

export class ThemeService {
  static applyCustomColors() {
    if (!WidgetApiUtil.isMethodAvailable('setColorTokens')) {
      LoggerUtil.error('Метод setColorTokens недоступен');
      return;
    }

    const tokens = {
      color_bg: '#141414',
      color_white: '#FAFAFA',
      color_text_black: '#2d9649'
    };

    window.widgetApi.setColorTokens(tokens);
    LoggerUtil.info('Цветовые токены применены:', tokens);
  }
}

WidgetApiUtil — обертка для проверки доступности API‑методов.

Предыдущая статья Примеры плагинов виджета
Следующая статья Тестовый плагин виджета (masters-promo)