Skip to content

fix(steps): add missing props, fix a11y, replace hardcoded colors#8507

Open
xnkl-ck wants to merge 1 commit intovueComponent:feat/vaporfrom
xnkl-ck:review/steps
Open

fix(steps): add missing props, fix a11y, replace hardcoded colors#8507
xnkl-ck wants to merge 1 commit intovueComponent:feat/vaporfrom
xnkl-ck:review/steps

Conversation

@xnkl-ck
Copy link
Copy Markdown

@xnkl-ck xnkl-ck commented Mar 24, 2026

Summary

  • types.ts: Add missing progressDot, items, responsive, inline type, icon prop, ProgressDotRender type, StepItem interface; remove size default to allow ConfigProvider inheritance
  • Steps.vue: Integrate useConfigInject for global size, useBreakpoint for responsive auto-vertical; support items prop via v-for; add inline/dot CSS classes; pass initial/progressDot/type via context
  • Step.vue: Conditional role="button" only when clickable; support icon prop rendering; progressDot dot icon; initial offset in step numbering
  • style/index.css: Replace 3x hardcoded #fff with CSS variables for dark theme support; add progressDot and inline type styles
  • tests: Add Inline demo to demo.test.ts; add 7 new test cases (inline type, progressDot, items prop, initial offset, dot icon, conditional role, component names)

Test plan

  • All 53 tests pass (37 unit + 16 demo snapshots)
  • No linter errors introduced
  • Snapshots regenerated

- types.ts: add progressDot, items, responsive, inline type, icon prop,
  ProgressDotRender type, StepItem interface, remove size default to
  allow ConfigProvider inheritance
- Steps.vue: integrate useConfigInject for global size, useBreakpoint
  for responsive auto-vertical, support items prop via v-for, add
  inline/dot CSS classes, pass initial/progressDot/type via context
- Step.vue: conditional role="button" only when clickable, support icon
  prop rendering, progressDot dot icon, initial offset in step numbering
- style/index.css: replace 3x hardcoded #fff with CSS variables for
  dark theme support, add progressDot and inline type styles
- tests: add Inline demo to demo.test.ts, add 7 new test cases for
  inline type, progressDot, items prop, initial offset, dot icon,
  conditional role, component names

Co-Authored-By: Cursor <noreply@cursor.com>
Made-with: Cursor
@xnkl-ck
Copy link
Copy Markdown
Author

xnkl-ck commented Mar 24, 2026

Note: All 4 CI failures are pre-existing on the feat/vapor branch and unrelated to this PR:

  • Lint: errors in apps/playground/vite.config.ts (empty block statements)
  • Test: calendar demo snapshot mismatch (date-dependent)
  • Type Check: configured with continue-on-error: true
  • PR Preview: fails due to upstream build issues

Steps component tests all pass locally (53/53).

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.

1 participant