import {Meta} from '@storybook/addon-docs/blocks'

<Meta title='@dxtmisha/ru/scripts/Classes/StylesToClass - Генератор CSS-классов'/>

# Класс StylesToClass

Класс `StylesToClass` используется для создания стандартных CSS-правил (селекторов и их содержимого) на основе свойств дизайна. Он гарантирует, что блоки создаются только в том случае, если они содержат вложенные правила.

## Ключевые возможности

- **Выборочная генерация** — Создает вывод только в том случае, если вызываемая функция `content()` возвращает непустой массив.
- **Разрешение селектора** — Использует имя свойства дизайна в качестве CSS-селектора.
- **Автоматическая обертка блока** — Корректно оборачивает свойства в стандартные фигурные скобки CSS `{}`.

## Инициализация

Инициализируйте преобразователь `StylesToClass` с помощью необходимого свойства и функции контента для вложенных правил стиля.

**Параметры:**
- `property: PropertyItemsItem` — текущая ветка дерева свойств, которая обрабатывается.
- `space: string` — строка отступа (например, `"  "` или `"\t"`).
- `content?: () => string[]` — вызываемая функция, которая возвращает массив строк, представляющих внутренние стили.
- `first?: boolean` — указывает, является ли этот элемент первым на текущем уровне (необязательно, по умолчанию: `true`).

```typescript
import { StylesToClass } from '@dxtmisha/scripts'

// Использование в логике преобразования
const converter = new StylesToClass(property, '  ', contentCallable)
const result = converter.make()
```

## Методы

### Управление

- `make(): string[]` — Основная точка входа. Организует преобразование и добавляет необходимый отступ к каждой строке.

