Skip to content

feat(SegmentedControl): add SegmentedControl component #124

Open
am1g0s wants to merge 1 commit intomax-messenger:mainfrom
am1g0s:feat/add-segmented-control
Open

feat(SegmentedControl): add SegmentedControl component #124
am1g0s wants to merge 1 commit intomax-messenger:mainfrom
am1g0s:feat/add-segmented-control

Conversation

@am1g0s
Copy link

@am1g0s am1g0s commented Jul 30, 2025

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

📦 Пропсы:

  • children: SegmentedControl.Item[] — список пунктов
    • каждый пункт принимает selected, onClick, children

⚙️ Особенности:

  • Анимированный слайдер активного пункта
  • Адаптация под платформу (ios стили)
  • Использует forwardRef, clsx, role="tablist"
  • Поддержка любого количества сегментов

📚 Storybook:

  • Добавлена демо-история Playground с 3 вариантами
  • Реализовано управление через useState
  • Стилизованный контейнер с фиксированной шириной

@am1g0s am1g0s requested a review from a team as a code owner July 30, 2025 18:22
@vadim-tre
Copy link
Collaborator

vadim-tre commented Jul 31, 2025

Привет! Предположительно на следующей неделе смогу добраться до этого PR

На первый взгляд все кул, будем смотреть и тестить детальнее + либа разрабатывается по дизайн-системе Макса, поэтому нужно получить ОКи от команды дизайна

upd: ревью пока на паузе, отдаем приоритет пока компонентам из внутренней дизайн системы

@am1g0s
Copy link
Author

am1g0s commented Jul 31, 2025

Возможно ли получить ограниченный доступ к дизайну компонентов? Я хотел бы создать ещё несколько. Требуется ли помощь в разработке? У меня есть опыт использования подобных библиотек в мини-аппах Telegram, и мне было бы интересно заняться разработкой.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants