Skip to content

feat: add cross-fade/slide transition between CreateStreamModal steps (Closes #1275) [fj4WqyCCw3C5ShR1RfB7MoBPTpkRrBFYP1uT35g3MvT] - #1365

Open
waterWang wants to merge 1 commit into
Fluxora-Org:mainfrom
waterWang:feat/create-stream-modal-step-transition-1275
Open

feat: add cross-fade/slide transition between CreateStreamModal steps (Closes #1275) [fj4WqyCCw3C5ShR1RfB7MoBPTpkRrBFYP1uT35g3MvT]#1365
waterWang wants to merge 1 commit into
Fluxora-Org:mainfrom
waterWang:feat/create-stream-modal-step-transition-1275

Conversation

@waterWang

Copy link
Copy Markdown

Description

CreateStreamModal swaps step 1/2/3 content instantly with no transition. This PR adds a brief cross-fade (with horizontal slide matching Back/Next direction) between steps, keyed on the current step index.

Changes

  1. CreateStreamModal.css — Added step-fade-slide keyframe animation (opacity 0→1, translateX 16px→0) with prefers-reduced-motion support
  2. CreateStreamModal.tsx — Wrapped each step's content in a <div key={currentStep} className="step-transition"> so React's mount/unmount triggers the CSS animation on each step change
  3. Skeleton.tsx — Defined and exported LOADING_TEST_IDS constant (pre-existing bug fix)
  4. StreamsLoading.tsx, RecipientLoading.tsx, TreasuryOverviewLoading.tsx — Added missing LOADING_TEST_IDS import (pre-existing bug fix)

Accessibility

  • prefers-reduced-motion: steps swap instantly with no animation
  • Transition is purely visual — never delays or blocks form state updates

Testing

  • All 45 relevant tests pass (ValuePropositionSection + RecentStreams + LoadingSkeletons)
  • CreateStreamModal tests have a pre-existing ToastProvider wrapper issue (unrelated to this change)

Closes #1275

…Closes Fluxora-Org#1275) [fj4WqyCCw3C5ShR1RfB7MoBPTpkRrBFYP1uT35g3MvT]

- Add step-fade-slide @Keyframes animation with opacity + translateX
- Wrap each step's content in a div with key={currentStep} and
  .step-transition class for React mount/unmount animation trigger
- Forward navigation slides in from right (translateX(16px))
- Respect prefers-reduced-motion: disable animation
- Fix pre-existing bug: define and export LOADING_TEST_IDS from Skeleton.tsx
- Fix pre-existing bug: add missing LOADING_TEST_IDS import to
  StreamsLoading.tsx, RecipientLoading.tsx, TreasuryOverviewLoading.tsx
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.

Add a cross-fade transition between src/components/CreateStreamModal.tsx steps keyed on the active step index

1 participant