umbot
    Preparing search index...

    Buttons Класс для управления коллекцией кнопок и их отображением на различных платформах.

    Класс предоставляет функциональность для:

    • Создания и управления коллекцией кнопок
    • Адаптации кнопок под различные платформы
    • Поддержки различных типов кнопок (интерактивные, ссылки)
    Index

    Constructors

    • Создает новый экземпляр коллекции кнопок. Инициализирует все массивы и устанавливает тип кнопок по умолчанию для Алисы.

      Parameters

      • appContext: AppContext

        Контекст приложения. ⚠️ Обычно НЕ создаётся вручную — автоматически передаётся через контроллер:

        // Правильно — через контроллер:
        this.buttons.addBtn('caption');

        // НЕ рекомендуется — ручное создание:
        new Buttons(this.appContext); // appContext берётся из контроллера

      Returns Buttons

    Properties

    buttons: IButtonType<TBtnPayload>[]

    Массив объектов Button, представляющих все кнопки в коллекции.

    Button

    B_BTN: boolean = true

    Константа для создания кнопки в виде интерактивной кнопки.

    B_LINK: boolean = false

    Константа для создания кнопки в виде ссылки (сайджест).

    Methods

    • Добавляет интерактивную кнопку в коллекцию.

      Parameters

      • title: string | null

        Текст кнопки

      • Optionalurl: string | null = ''

        URL для перехода

      • Optionalpayload: TButtonPayload = ''

        Дополнительные данные

      • Optionaloptions: IButtonOptions = {}

        Дополнительные параметры

      Returns this

      // Простая кнопка
      buttons.addBtn('Нажми меня');

      // Кнопка с URL и payload
      buttons.addBtn('Перейти', 'https://example.com', { action: 'navigate' });
    • Добавляет кнопку-ссылку в коллекцию.

      Parameters

      • title: string | null

        Текст кнопки

      • Optionalurl: string = ''

        URL для перехода

      • Optionalpayload: TButtonPayload = ''

        Дополнительные данные

      • Optionaloptions: IButtonOptions = {}

        Дополнительные параметры

      Returns this

      // Простая ссылка
      buttons.addLink('Перейти на сайт', 'https://example.com');

      // Ссылка с payload
      buttons.addLink('Документация', 'https://docs.example.com', { section: 'api' });
    • Возвращает JSON-представление кнопок для указанной платформы.

      Type Parameters

      • T = unknown
      • TType = string | Record<string, unknown> | null

      Parameters

      Returns string | null

    • Возвращает массив кнопок, адаптированный для указанной платформы.

      Type Parameters

      • T = unknown
      • TType = string | Record<string, unknown> | null

      Parameters

      Returns T | null

    • Устанавливает контекст приложения.

      Parameters

      • appContext: AppContext

      Returns this