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

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

# Класс StylesToProperty

Класс `StylesToProperty` отвечает за преобразование свойств дизайна в стандартные CSS-свойства или вызовы SCSS-миксинов. Он управляет генерацией переменных, специальным форматированием свойств и вспомогательными значениями для таких параметров, как прозрачность.

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

- **Стандартные CSS-свойства** — Генерирует пары свойство-значение (например, `margin-top: 10px;`).
- **Интеграция с SCSS-миксинами** — Автоматически преобразует определенные свойства в вызовы миксинов, если они зарегистрированы в `styleTypes`.
- **Генерация CSS-переменных** — Может генерировать пользовательские CSS-переменные, если для свойства установлен флаг `varKey`.
- **Инициализация вспомогательных значений** — Автоматически включает вызовы инициализации для свойств, связанных с прозрачностью, если базовое свойство отсутствует.
- **Сортировка и отступы** — Добавляет вертикальные отступы между свойствами при изменении индекса сортировки.

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

Инициализируйте преобразователь `StylesToProperty` с текущей веткой свойств.

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

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

const converter = new StylesToProperty(property, '  ')
const result = converter.make()
```

## Методы

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

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