You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add swatch variant attributes to variants datagrid
* Render swatch previews in variant datagrid cells
* Harden product type tab count deduping and add missing tests (#6722)
* Harden product type tab count deduping and add missing tests
* Default attribute list group-by-type on and fix test types.
New sessions see type tabs on product and model attribute lists by default, with ripple copy updated accordingly. Test helpers use NonNullable aliases for nullable GraphQL query fields.
Co-authored-by: Cursor <cursoragent@cursor.com>
* Extract messages
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
* Product Type and Model Type views update (#6725)
* Add PageTypeMetadataDialog for model type metadata editing
Prepares the header metadata modal pattern by introducing a standalone dialog component aligned with other entity detail pages.
* Move model type metadata editing to header modal
Wire PageTypeMetadataDialog through URL state and TopNav, and decouple metadata from the main type save flow on edit.
* Add skeleton title component to model type detail header
* Add changeset for type page metadata in header
Documents the user-facing move of metadata editing to the header on model type and product type detail pages.
* Move product type metadata editing to header modal
Mirror the model type refresh with ProductTypeMetadataDialog, TopNav metadata button, skeleton title, and decoupled metadata save on edit.
* Add iconized cog menu actions on type detail pages
* Polish type detail page layout and GraphiQL menu icon
* Reorganize type pages and improve create form UX
Move attribute schema to the main column and type settings to the sidebar, keep the variant toggle in main content, autofocus the name field on create, use Macaw inputs on model types, and suppress duplicate validation toasts when errors are shown inline.
* Align type delete dialogs with standard delete modal patter
* Fix type delete dialog links and remove blocking spinner
* Fix dirty state handling on product and model type detail pages
* Extract messages
* Fix fulfilment warehouse guard (#6726)
* Guard fulfill submit when warehouse is missing
Skip zero-quantity allocations and lines without a warehouse before
mapping warehouse IDs, preventing a crash when fulfilling a single line.
* Guard fulfill submit and polish order fulfill page
Extract getOrderFulfillSubmitItems with regression tests, add changeset,
and align fulfill line controls with macaw patterns including warehouse
pre-selection, zero-quantity disabling, and truncated variant captions.
* Polish reason reference modal layout (#6727)
Align add/edit reason dialog with dashboard modal patterns.
* Alternative fullfilments view (#6728)
* Line matrix order details view
Add "Timeline" | "Line matrix" toggle on order details with lifecycle columns,
expanded shipment panel, and shared warehouse labeling across matrix,
timeline, and order history. Correlate canceled fulfillments with restock
warehouse from events; default cancel-dialog restock warehouse to source;
move shipment cancel into overflow menu for parity with timeline cards.
* Complete line matrix Phase 1 polish
Persist view mode in list settings with legacy key migration, wire refunded
column tooltip, collapse canceled timeline fulfillments, add matrix tests and
i18n extraction, and drop visible focus ring on the expanded shipment panel.
* Add line-first return and refund actions to order matrix
Deep-link return and transaction refund flows with lineId prefill, expose per-row actions in the matrix, and show fulfillment refunded amounts in the expanded panel.
* Unify order refund navigation across dashboard entry points
Introduce getOrderRefundNavigation and route order details, fulfillment cards, and matrix row actions through it so legacy and transaction refunds pick the same destination.
* Polish order line matrix actions and shipment detail rows
Make shipment status and return context scannable in the expanded panel, and wire matrix row menus through TopNav.Menu with guarded return/refund actions.
* Polish line matrix refunds, failure surfacing, and needs-action UX
* Add ripple on line matrix view switch
* Correct column reorder off-by-one for pinned status, and scope expanded-panel refunds to the active line
* Fix order matrix and refund test fixture types for strict checking
* Close line matrix parity gaps and polish matrix UX for refunds and navigation
* Scope return page to a single line when opened from the matrix
* Unpin product column name in line matrix
* Keep expanded line panel open when fullfilment dialogs open
* Fix matrix column image cell invalidation
* Align price breakdown modal with DashboardModal layout patterns
* Use a 1px border for expanded matrix status icons
* Fix matrix scroll jank when a line is focused via lineId
The lineId sync effect called setViewMode("matrix") unconditionally; list
settings always produce a new state object and write to localStorage, and the
effect deps are recreated each render, so the whole order details tree
re-rendered in an endless loop whenever lineId was in the URL. Guard the
setViewMode call so the effect is idempotent.
* Attach tooltip to the label instead of a help icon
* Extract messages
* Remove unused ts-jest (#6730)
* Reuse existing SwatchPreview for variant datagrid swatch cells
Avoid a duplicate preview component by extracting swatch data helpers and wrapping the attributes SwatchPreview for datagrid use.
---------
Co-authored-by: Elon <yong.gu@coraool.ai>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>
Swatch variant attributes now appear in the product variants grid with color previews, so merchants can edit color-style variant values alongside other variant columns.
0 commit comments