Skip to content

Releases: saleor/saleor-dashboard

3.22.36

23 Mar 10:35
b66038f

Choose a tag to compare

Patch Changes

  • #6406 142b8cf Thanks @lkostrowski! - Replaced a few instances of moment.js usage with native Intl API

  • #6409 32d03dc Thanks @witoszekdev! - Gift cards filters now have option to filder by gift card code explicitly. Previously this was available only in search box, which uses search query, this however might not be available immediately after creating a gift card, due to indexing running in the background.

  • #6450 3bfd607 Thanks @IKarbowiak! - Fixed missing Product Variant webhook events group in the webhook creation UI.

  • #6421 e7890fc Thanks @wcislo-saleor! - Added graceful fallback for product media images that fail to load, showing a placeholder icon and message instead of a broken image

  • #6438 0e11960 Thanks @lkostrowski! - Bumped Node to v24 in Dockerfiles (Github Actions, Docker, Devcontainers)

  • #6405 23a4ee7 Thanks @lkostrowski! - Pull @saleor/sdk dependency into Dashboard codebase, to restore control of external dependencies like Apollo

  • #6426 d280080 Thanks @lkostrowski! - Store Dashboard hostname as Sentry user, for better aggregation of errors. No PII leak (user is not attached to people, but service)

  • #6427 80ba3cf Thanks @lkostrowski! - Updated Vite bundler to 7.3.1 (from 6.4.1). This is a dev/build-time dependency update; no user-facing changes are expected.

  • #6404 659142b Thanks @lkostrowski! - Replace a few moment.js invocations with native browser APIs

  • #6414 bbc0cb1 Thanks @lkostrowski! - Updated Jotai package to 2.18.1

  • #6432 dc53906 Thanks @mirekm! - Fix datagrid header selection color (regression)

  • #6447 f5c2172 Thanks @lkostrowski! - Fixed bug where extensions() query was executed multiple times

  • #6407 65922df Thanks @IKarbowiak! - Add password login mode setting to Site Settings, allowing administrators to control whether password-based authentication is enabled, restricted to customers only, or fully disabled. The Sign In page now respects this setting — when password login is disabled or restricted to customers only, the email/password form is hidden and only external authentication methods (e.g. SSO) are shown.

  • #6437 e5a6dbd Thanks @lkostrowski! - Fixed dynamic fetching of categories (Combobox) in the Product Page (assign product to category)

  • #6419 75b85d9 Thanks @IKarbowiak! - Support REFUNDED_IN_ORDER event in gift card history

Full Changelog: 3.22.35...3.22.36

3.22.35

11 Mar 10:48
eca853b

Choose a tag to compare

Patch Changes

  • #6408 ae326e8 Thanks @witoszekdev! - Fixed main e2e test suite failing due to using masking on shared job output

  • #6402 75a5de8 Thanks @lkostrowski! - Update dependencies

  • #6399 fbbafcb Thanks @lkostrowski! - Replaced last remaining icons from MacawUI and replaced them with Lucide

  • #6391 dced6da Thanks @lkostrowski! - When App Store is not configured (env variable not set), Dashboard will not longer crash. Instead it will load
    local catalog of apps and plugins to render them as a fallback

  • #6401 41a3abb Thanks @lkostrowski! - Added Vite aliases so bare react and react-dom imports resolve from the project's node_modules. This allows using local linking of other React-based packages (like app-sdk or MacawUI) which normally break due to two React versions being installed.

  • #6395 664d662 Thanks @lkostrowski! - Hide Webhooks plugin on the extensions list

  • #6408 ae326e8 Thanks @witoszekdev! - run pw-e2e label on PRs will now also trigger a deployment. Previously e2e test failed due to a missing deployment without clear error.

  • #6393 f587cfb Thanks @lkostrowski! - Refund reasons are now sorted by name within Select

  • #6392 7d74846 Thanks @lkostrowski! - Updated MacawUI to 1.4.2

Full Changelog: 3.22.34...3.22.35

3.22.34

02 Mar 13:35
770b204

Choose a tag to compare

Patch Changes

  • #6360 8a3c66d Thanks @witoszekdev! - Added filtering to "Assign Collection" modals based on collection query filter options (published status, metadata, channel), matching existing filters on the collection list page.

  • #6371 ab46371 Thanks @witoszekdev! - Updated minimal Node version to 22.15

  • #6372 05d8ab2 Thanks @witoszekdev! - Updated Storybook to 10.2.12

  • #6374 053c6ca Thanks @lkostrowski! - Fixed path to payment methods assets

  • #6386 5e22bb2 Thanks @lkostrowski! - Fixed customer selection component in Draft Order page, where custom email could not have been added.

  • #6371 ab46371 Thanks @witoszekdev! - Removed .nvmrc, in favor of pacakge.json engines filed

  • #6367 be5c413 Thanks @witoszekdev! - Added deployment of Storybook to Chromaitc via GitHub actions

  • #6360 8a3c66d Thanks @witoszekdev! - Filtering in "Assign ..." modals is not available in all contexts. Previously filtering feature was available only in product update page.

  • #6377 d310e49 Thanks @lkostrowski! - Added breadcrumbs to Category Details page. Now entire category path will be visible, instead of only showing the current one (e.g. Apparel / Men / T-Shirts)

  • #6383 f25222b Thanks @witoszekdev! - Fixed filters that map to single-value fields (e.g. "Is published", boolean flags, date ranges) being added multiple times in the filter panel.
    Duplicate rows silently overwrote each other, with only the last value taking effect. Single-value filters are now correctly limited to one occurrence, meaning they cannot be selected when adding new filter line.

  • #6370 271928b Thanks @IKarbowiak! - Extend search input width to prevent placeholder text from being cut off

  • #6384 f820904 Thanks @witoszekdev! - Fix product attribute filters for CATEGORY and COLLECTION reference types showing empty dropdown.
    Previously, filtering products by attributes that reference categories or collections would show no options in the value picker.

Full Changelog: 3.22.33...3.22.34

3.22.33

24 Feb 15:20
09427e5

Choose a tag to compare

🚨 Warning

This release requires Saleor core 3.22.38.

Used with older version, Dashboard will crash.

Patch Changes

  • #6326 4238398 Thanks @witoszekdev! - Added filtering to "Assign Category" modals based on categories query filter options, similar to existing filters on category list page.

  • #6355 80b93f6 Thanks @IKarbowiak! - Added "Address Validation" setting to the site settings page, allowing admins to preserve address fields that fall outside a country's standard format instead of having them removed during validation.

  • #6350 51575d1 Thanks @IKarbowiak! - Extend site settings with webhook emission section - allow changing useLegacyUpdateWebhookEmission flag

  • #6352 3b4e59c Thanks @IKarbowiak! - Fix Gift Cards search to use giftCards.search query parameter instead of filtering by code. This enables searching gift cards by email, user name, and code rather than only by exact code match.

  • #6356 8c5f075 Thanks @witoszekdev! - Fix pnpm audit security vulnerabilities by adding dependency overrides for ajv, and bumping qs to a patched version. Suppress minimatch CVE-2026-26996 (ReDoS) via auditConfig since upgrading to minimatch 10.x breaks Jest coverage instrumentation.

  • #6348 49308be Thanks @lkostrowski! - Fix mapping VISA payment method in Transaction view. Now VISA logo is displayed correctly

  • #6349 496f688 Thanks @chrislaai! - Update the API_URL in .env.template

  • #6363 1d78e48 Thanks @lkostrowski! - Added a hint (Ripple) on the installed extensions page to notify users about the new app problems feature, which shows issues with apps directly in the extensions list.

  • #6283 fca0cbf Thanks @lkostrowski! - Added app problems display to the installed extensions list. Each app now shows reported problems with severity badges, timestamps, and dismissal support. The "Open the app" action link is only shown for third-party apps. Requires Saleor 3.22+.

Full Changelog: 3.22.32...3.22.33

3.22.32

17 Feb 14:22
ed62f27

Choose a tag to compare

Patch Changes

  • #6340 ccc005a Thanks @lkostrowski! - Fixed debugging messages (warnings in browser console) where Dashboard confused actions from 3rd party, like browser extensions signals with AppBridge actions. Now warnings should only occur, when proper frame is sent, but with invalid events inside

  • #6323 85e7f3f Thanks @witoszekdev! - Added new e2e tests for Saleor apps deployed in staging environment (internal). They check if app loads correctly and displays its settings

  • #6254 a0011cc Thanks @iharshyadav! - Fix product export with "Current search" filter option. The export mutation now correctly includes filter parameters when exporting products with the "Current search" scope, allowing users to export only filtered products as intended.

  • #6339 23d946c Thanks @lkostrowski! - Order Transaction will now display payment method details, like card brand or type.

  • #6327 4f81c86 Thanks @witoszekdev! - Added filtering UI to "Assign Model" dialogs.
    This allows filtering by "Model type" when assigning values to Model reference attributes in products and product variants.

  • #6311 61a484d Thanks @witoszekdev! - Fixed issue when filtering products by parameters depending on channel (e.g. price) - previously filters didn't work correctly and always returned an empty list. Now filters will work correctly by passing correct channel value.

  • #6318 cf1c8aa Thanks @mirekm! - Product availability diagnostics now skip shipping zone warnings for non-shippable products (digital goods, activation codes, etc.). Products with isShippingRequired: false on their product type will no longer see false positive warnings about missing shipping zones or unreachable warehouses via shipping.

  • #6333 1739498 Thanks @witoszekdev! - Fixed code splitting for auth and configuration chunks. Previously this code was included in the main bundle, skipping dynamic imports. Now it will only load when needed, which should improve performance.

  • #6324 9ab34dc Thanks @witoszekdev! - Fixed icon in theme switcher not showing

  • #6317 160511f Thanks @witoszekdev! - Updated to storybook v10

  • #6311 61a484d Thanks @witoszekdev! - Added filtering to "Assign Variant" modals based on products query where options, similar to existing filters on product list page.

  • #6334 5669ef5 Thanks @witoszekdev! - Maintanance: Added stories for Assign attribute value modals and configuration for mocking GraphQL responses in Storybook.

  • #6341 4a45b49 Thanks @lkostrowski! - Added quick-paste of auth token to GraphQL Playground. Now to test queries as apps or specific users, you can paste bare token and full authorization header will be included.

Full Changelog: 3.22.31...3.22.32

3.22.31

04 Feb 12:42
c63c951

Choose a tag to compare

Patch Changes

  • #6310 3693eb4 Thanks @lkostrowski! - Updated @saleor/app-sdk and added support for popupClose action. Since this release, app will be able to close the popup via code

  • #6292 0bdad3e Thanks @witoszekdev! - Fixed data-fetching in Order details page. Now when line items are changed, order summary (total, shipping price, etc.) are updated. Previously these values were not updated and displayed stale data.

  • #6292 0bdad3e Thanks @witoszekdev! - Fixed e2e tests: updated assertions for notifications, datagrid, gift cards

Full Changelog: 3.22.30...3.22.31

3.22.30

02 Feb 15:06
1c3d370

Choose a tag to compare

Patch Changes

  • #6305 b53b0d7 Thanks @mirekm! - Fix broken pagination in simple product create mutation

  • #6306 cf68ca5 Thanks @mirekm! - New products are now created unpublished, unavailable, and unlisted by default

Full Changelog: 3.22.29...3.22.30

3.22.29

30 Jan 11:43
dbcc73f

Choose a tag to compare

Patch Changes

  • #6284 1a8279b Thanks @xseignard! - Added metadata editing dialog for warehouses, allowing users to manage both public and private metadata through a dedicated modal accessible from the warehouse details page.

  • #6299 cee423f Thanks @mirekm! - Fix visibility of checkboxes (when focused) in DataGrid

  • #6300 57e859a Thanks @mirekm! - Fix variant form initialisation

  • #6285 d65d066 Thanks @mirekm! - Improved Variants Generator to support required non-selection attributes with a dedicated tab. Also added contextual tooltips explaining why generation is disabled.

  • #6301 d097e37 Thanks @mirekm! - Attribute configuration: allow users to filter attribute values by slug or name when there are more than 5 values.

  • #6276 d0f142e Thanks @mirekm! - Improve table design consistency across the dashboard with unified styling for ResponsiveTable components, better loading states, and improved scroll behavior for variant navigation

Full Changelog: 3.22.28...3.22.29

3.21.19

29 Jan 07:33
1a45498

Choose a tag to compare

What's Changed

Full Changelog: 3.21.18...3.21.19

3.22.28

28 Jan 14:38
eac721d

Choose a tag to compare

Patch Changes

  • #6266 2983f07 Thanks @witoszekdev! - Refactored filtering logic in Product selection modal, shouldn't introduce any changes for users

  • #6273 c16e37a Thanks @witoszekdev! - Update lodash version to 4.17.23

  • #6257 57cef53 Thanks @mirekm! - Added bulk variant generator - Quickly create all product variant combinations by selecting attribute values, with live preview, optional SKU/stock defaults, and automatic skipping of existing variants.

  • #6270 a38274b Thanks @mirekm! - Improve variant attributes discoverability

    Added better messaging for variant attributes in both Product Type and Variant views.

  • #6278 21eacd7 Thanks @witoszekdev! - Fix combobox components in Attribute selection. "Add new value" option was added again for clear UX. New values are added when clicked "Save" in the form, like previously. Fixed fetching more items in the combobox: now when user enters a value in the input, we fetch options using input from user as query parameter.

  • #6274 3b0ec28 Thanks @mirekm! - Unify success notification messages

    • Pattern: {Entity} {action} - e.g., "Product updated", "Order cancelled"
    • Past tense - the action is complete
    • No filler words - avoid "successfully", "has been", "was"
    • Specific over generic - avoid commonMessages.savedChanges, use contextual messages
    • Compound actions use comma - "Products returned, refund granted"
  • #6277 ace3e01 Thanks @mirekm! - Redesigned product availability panel with built-in diagnostics. The new panel identifies configuration issues preventing purchase (missing prices, no stock, inactive channels) and includes a "Test" button to verify actual storefront visibility via the public API. Scheduling for publication and availability dates is now supported directly in the panel.

  • #6280 b193657 Thanks @lkostrowski! - Remove intrusive error on app invalid action and rely on console logs for better debugging.

Full Changelog: 3.22.27...3.22.28