ngx-stepper

Бесплатно
Открытый исходный код

Сайт: github.com/brandocorp/ngx-stepper

ngx-stepper — это программная библиотека и Angular-компонент (директива) для реализации многошаговых форм и последовательных интерфейсов на базе экосистемы Angular и компонентов Material Design. Она предоставляет инструменты для организации процессов, разбитых на логические шаги, включая навигацию между ними, управление состояниями и валидацию. В отсутствии авторитетной единой реализации под именем «ngx-stepper» описание также обобщает типичные характеристики и поведение подобных библиотек, использующих подходы Angular Material stepper и расширяющих их API.

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

  • Поддержка ориентации: возможность отображения шагов в горизонтальном или вертикальном формате для разных макетов интерфейса.
  • Линейный и нелинейный режимы: опции для требовательной последовательной навигации (блокировка перехода к следующему шагу до выполнения условий) и для свободного перехода между шагами.
  • Интеграция с формами: совместимость с Angular Reactive Forms и Template-driven Forms для валидации полей на каждом шаге.
  • API управления: программные методы и события для перехода к следующему/предыдущему шагу, установки активного шага по индексу и получения текущего состояния шага.
  • Обратная связь и события: эмиттирование событий при смене шага, успешной валидации, отмене или ошибках для построения реактивной логики приложения.
  • Кастомизация внешнего вида: возможности стилизации заголовков шагов, индикаторов состояния (завершён, активен, ошибка) и контента шага через шаблоны и CSS-переменные.
  • Адаптивность и доступность: настройки для корректного поведения на разных размерах экранов и соответствие базовым требованиям доступности (ARIA-атрибуты, фокусная навигация).
  • Состояние прогресса: визуальные индикаторы прогресса и возможность отображения процента выполнения или меток статуса для каждого шага.
  • Локализация и текстовые метки: гибкость в предоставлении локализуемых заголовков, подсказок и сообщений об ошибках.
  • Расширяемость: хук-поинты и интерфейсы для добавления пользовательской логики, например, динамической генерации шагов или асинхронной проверки перед переходом.
Подробнее