Split website stepper into home-stepper and product-stepper sections (#22149)

Reorganizes the flat `sections/stepper/` (30 files — two distinct
steppers plus shared code) into two product-feature-style sections, and
moves the shared code to the shared layers.

- **`sections/home-stepper/`** — the home-page stepper. Renamed
`Stepper` → `HomeStepper` (and the home components → `HomeStepperLottie`
/ `HomeStepperSteps` / `HomeStepperVisualFrame`) for symmetry with
`ProductStepper`. Shell at the root + `components/`/`data/`/`utils/` +
barrel.
- **`sections/product-stepper/`** — the product-page stepper, same
structure.

The 3 files both steppers shared can't live in a shared *section* —
`check-conventions` forbids a section importing another section. So they
moved to the shared layers:
- `StepperProgressRail`, `StepperSwipeDeck` → `ui/`
- `useBreakpointStepSync` → `platform/motion`

Both consumer pages repointed (`@/sections/home-stepper`,
`@/sections/product-stepper`); the row-gap allowlist in
`check-conventions.mjs` updated to the new paths; explanatory comments
stripped across the moved files (CSS-in-template comments and `'use
client'` kept).

Pure reorganization — no behavior change. typecheck + lint + build all
green.
This commit is contained in:
Abdullah.
2026-06-25 15:24:22 +05:00
committed by GitHub
parent 904d3d6bff
commit 5a657129f0
37 changed files with 73 additions and 118 deletions
@@ -102,8 +102,8 @@ const ROW_GAP_MULTI_AXIS_FILES = new Set([
'sections/pricing-plans/PricingBoard.tsx',
'sections/problem/Problem.tsx',
'sections/releases-feed/ReleasesFeed.tsx',
'sections/stepper/ProductStepper.tsx',
'sections/stepper/Stepper.tsx',
'sections/product-stepper/ProductStepper.tsx',
'sections/home-stepper/HomeStepper.tsx',
'sections/testimonials/PartnerTestimonialsCarousel.tsx',
'sections/testimonials/TestimonialsCarousel.tsx',
'sections/trusted-by/TrustedBy.tsx',