ciam-stepper.tsx 755 B

12345678910111213141516171819202122232425262728293031323334
  1. import classNames from 'classnames'
  2. import { useTranslation } from 'react-i18next'
  3. export function CiamStepper({
  4. steps,
  5. active,
  6. }: {
  7. steps: number
  8. active: number
  9. }) {
  10. const { t } = useTranslation()
  11. return (
  12. <div className="ciam-stepper-container">
  13. <div
  14. className="ciam-stepper"
  15. role="progressbar"
  16. aria-label={t('progress_bar_percentage')}
  17. aria-valuenow={active + 1}
  18. aria-valuemax={steps}
  19. >
  20. {Array.from({ length: steps }).map((_, i) => (
  21. <div
  22. key={i}
  23. className={classNames({
  24. step: true,
  25. active: i === active,
  26. completed: i < active,
  27. })}
  28. />
  29. ))}
  30. </div>
  31. </div>
  32. )
  33. }