Перейти к содержимому
ФреймворкJavaScript

Переключатель: сворачиваемый контент

Сворачиваемый блок-переключатель с кликабельной стрелкой. Дочерние блоки вкладываются внутрь переключателя и скрываются, когда он свёрнут. Переключение выполняется кликом по иконке стрелки или программно через публичный Block API: `api.blocks.getById(id)?.call("expand")` / `.call("collapse")`. Сворачиваемые заголовки (блоки Header с `isToggleable: true`) принимают те же две команды. Это команды, адресуемые строкой и маршрутизируемые через `BlockAPI.call()`, — они не объявлены как методы экспортируемых классов инструментов. Состояние «открыт / свёрнут» сохраняется в `isOpen` и восстанавливается при перезагрузке; по умолчанию переключатели открыты.

Импорт

TypeScript
import { Toggle } from '@bloklabs/core/tools';

Конфигурация

ОпцияТипПо умолчаниюОписание
placeholderstring"Toggle"Плейсхолдер, который показывается в пустом блоке переключателя.

Формат данных

TypeScript
interface ToggleData {
  text: string;     // Toggle title HTML content
  isOpen?: boolean; // Whether the toggle is expanded — persisted and restored on reload
}
JSON
{
  "id": "mno345",
  "type": "toggle",
  "data": {
    "text": "Click to expand"
  }
}

Пример использования

TypeScript
import { Blok } from '@bloklabs/core';
import { Toggle } from '@bloklabs/core/tools';

const editor = new Blok({
  holder: 'editor',
  tools: {
    toggle: {
      class: Toggle,
      placeholder: 'Toggle heading…',
    },
  },
});