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

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

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

- Линейные и круговые индикаторы прогресса
- Точечные варианты для минимального отображения
- Детерминированный режим с конкретными значениями (0-100%)
- Индетерминированный режим для неизвестного времени выполнения
- Гибкое позиционирование (top, bottom, static)
- Настройка задержек появления и скрытия
- Компактный и инвертированный режимы отображения
- Автоматическое управление видимостью

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

- Индикация загрузки данных с сервера
- Отображение прогресса загрузки файлов
- Визуализация выполнения многоэтапных операций
- Глобальные индикаторы загрузки страницы
- Прогресс-бары в формах и мастерах
- Индикация фоновых процессов

```html
<script setup>
import { ref } from 'vue'

const progress = ref(0)
const loading = ref(false)

const startLoading = () => {
  loading.value = true
  progress.value = 0

  const interval = setInterval(() => {
    progress.value += 10
    if (progress.value >= 100) {
      clearInterval(interval)
      loading.value = false
    }
  }, 500)
}
</script>

<template>
  <button @click="startLoading">Начать загрузку</button>

  <!-- Линейный индикатор с определенным значением -->
  <Progress
    :visible="loading"
    :value="progress"
    linear
    position="top"
  />

  <!-- Круговой индикатор -->
  <Progress
    :visible="loading"
    :value="progress"
    circular
  />

  <!-- Неопределенный индикатор -->
  <Progress
    :visible="loading"
    linear
    indeterminate="type1"
  />
</template>
```
