## Icon

Компонент для отображения иконок с поддержкой активного состояния, поворота, загрузки и интеграции со скелетоном.

Icon предоставляет унифицированный интерфейс для работы с иконками в дизайн-системе, поддерживая как основную иконку, так и альтернативную для активного состояния. Компонент автоматически управляет переключением между иконками, обрабатывает события загрузки и интегрируется с системой скелетонов для отображения состояния загрузки.

**Основные возможности:**

- Отображение основной и активной иконки с плавным переключением
- Поворот иконки на заданный угол
- Состояния disabled и hide для управления видимостью
- События загрузки изображений иконок
- Интеграция со Skeleton для состояний загрузки
- Поддержка в составе других компонентов (Button, Cell, Chip, Field)

**Типичные сценарии использования:**

- Иконки в кнопках и навигационных элементах
- Интерактивные иконки с изменением состояния
- Индикаторы состояния в формах и списках
- Декоративные элементы интерфейса с анимацией

```html
<script setup>
import { ref } from 'vue'
import { D1Icon } from '@dxtmisha/d1'

const isActive = ref(false)
</script>

<template>
  <D1Icon
    icon="home"
    icon-active="favorite"
    :active="isActive"
    turn="90"
    @load="onIconLoad"
  />
</template>
```

> Компонент Icon может использоваться как самостоятельно, так и в составе других UI-компонентов через свойства `icon`, `icon-trailing` и `icon-active`.
