Skip to content

feat(gear-library): build comparison flow - #705

Merged
Perdolique merged 1 commit into
masterfrom
feat/gear-library-comparison
Jul 26, 2026
Merged

feat(gear-library): build comparison flow#705
Perdolique merged 1 commit into
masterfrom
feat/gear-library-comparison

Conversation

@Perdolique

@Perdolique Perdolique commented Jul 25, 2026

Copy link
Copy Markdown
Owner

Summary

Turns the catalog selection tray into a complete, shareable comparison flow 🧭📊 The same semantic matrix now works across viewport sizes, with horizontal scrolling keeping all selected items available on mobile 😎🤙

  • ✨ Launch comparisons from the catalog tray with 2–4 ordered item query parameters
  • 🧭 Validate shared URLs locally and handle loading, retryable server failures, and stale-request cancellation
  • 📊 Render an accessible sticky comparison matrix in category property order across desktop and mobile
  • 🔎 Filter rows by raw typed-value differences, including nulls, booleans, numbers, enums, and text
  • ⌨️ Remove columns locally, keep the URL and catalog return state synchronized, and restore keyboard focus
  • ✅ Cover query validation, value projection, tray navigation, direct URLs, responsive scrolling, error states, request cancellation, and item removal

Motivation

Issue #685 had the ordered catalog selection flow but no dedicated destination for comparing selected equipment. This change completes that path using the existing ordered comparison API while keeping the full 2–4 item matrix available at every viewport size 🎯

The implemented responsive behavior intentionally uses one horizontally scrollable semantic table instead of separate mobile pair selectors. My Gear mutations are not part of this PR. This keeps the comparison interaction consistent and focused on the confirmed catalog-to-comparison flow 📱🖥️

Related issues

Closes #685

@github-actions

github-actions Bot commented Jul 25, 2026

Copy link
Copy Markdown

🎉 Deployed to Cloudflare!

@Perdolique
Perdolique force-pushed the feat/gear-library-comparison branch from 4014b99 to bcc616b Compare July 26, 2026 15:45
@Perdolique
Perdolique force-pushed the feat/gear-library-comparison branch from bcc616b to 858b1c7 Compare July 26, 2026 17:12
@Perdolique
Perdolique marked this pull request as ready for review July 26, 2026 17:15
- ✨ add an ordered 2–4 item comparison flow with URL validation and catalog navigation
- ✨ render a responsive property matrix with difference filtering, item removal, and keyboard focus restoration
- ✅ cover comparison utilities and browser flows, including stale-request cancellation
- 🔧 reuse local E2E servers and clarify focused verification guidance
@Perdolique
Perdolique force-pushed the feat/gear-library-comparison branch from 858b1c7 to 2db5407 Compare July 26, 2026 17:37
@Perdolique Perdolique changed the title feat(gear-library): add comparison page feat(gear-library): build comparison flow Jul 26, 2026
@Perdolique
Perdolique merged commit cc9196f into master Jul 26, 2026
12 checks passed
@Perdolique
Perdolique deleted the feat/gear-library-comparison branch July 26, 2026 17:44
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.

[Comparison UI] Build the shareable desktop table and mobile pair mode

1 participant