Releases: saleor/saleor-dashboard
3.22.36
Patch Changes
-
#6406
142b8cfThanks @lkostrowski! - Replaced a few instances of moment.js usage with native Intl API -
#6409
32d03dcThanks @witoszekdev! - Gift cards filters now have option to filder by gift card code explicitly. Previously this was available only in search box, which usessearchquery, this however might not be available immediately after creating a gift card, due to indexing running in the background. -
#6450
3bfd607Thanks @IKarbowiak! - Fixed missing Product Variant webhook events group in the webhook creation UI. -
#6421
e7890fcThanks @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
0e11960Thanks @lkostrowski! - Bumped Node to v24 in Dockerfiles (Github Actions, Docker, Devcontainers) -
#6405
23a4ee7Thanks @lkostrowski! - Pull @saleor/sdk dependency into Dashboard codebase, to restore control of external dependencies like Apollo -
#6426
d280080Thanks @lkostrowski! - Store Dashboard hostname as Sentry user, for better aggregation of errors. No PII leak (user is not attached to people, but service) -
#6427
80ba3cfThanks @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
659142bThanks @lkostrowski! - Replace a few moment.js invocations with native browser APIs -
#6414
bbc0cb1Thanks @lkostrowski! - Updated Jotai package to 2.18.1 -
#6432
dc53906Thanks @mirekm! - Fix datagrid header selection color (regression) -
#6447
f5c2172Thanks @lkostrowski! - Fixed bug where extensions() query was executed multiple times -
#6407
65922dfThanks @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
e5a6dbdThanks @lkostrowski! - Fixed dynamic fetching of categories (Combobox) in the Product Page (assign product to category) -
#6419
75b85d9Thanks @IKarbowiak! - Support REFUNDED_IN_ORDER event in gift card history
Full Changelog: 3.22.35...3.22.36
3.22.35
Patch Changes
-
#6408
ae326e8Thanks @witoszekdev! - Fixed main e2e test suite failing due to using masking on shared job output -
#6402
75a5de8Thanks @lkostrowski! - Update dependencies -
#6399
fbbafcbThanks @lkostrowski! - Replaced last remaining icons from MacawUI and replaced them with Lucide -
#6391
dced6daThanks @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
41a3abbThanks @lkostrowski! - Added Vite aliases so barereactandreact-domimports 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
664d662Thanks @lkostrowski! - Hide Webhooks plugin on the extensions list -
#6408
ae326e8Thanks @witoszekdev! -run pw-e2elabel on PRs will now also trigger a deployment. Previously e2e test failed due to a missing deployment without clear error. -
#6393
f587cfbThanks @lkostrowski! - Refund reasons are now sorted by name within Select -
#6392
7d74846Thanks @lkostrowski! - Updated MacawUI to 1.4.2
Full Changelog: 3.22.34...3.22.35
3.22.34
Patch Changes
-
#6360
8a3c66dThanks @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
ab46371Thanks @witoszekdev! - Updated minimal Node version to 22.15 -
#6372
05d8ab2Thanks @witoszekdev! - Updated Storybook to 10.2.12 -
#6374
053c6caThanks @lkostrowski! - Fixed path to payment methods assets -
#6386
5e22bb2Thanks @lkostrowski! - Fixed customer selection component in Draft Order page, where custom email could not have been added. -
#6371
ab46371Thanks @witoszekdev! - Removed .nvmrc, in favor of pacakge.json engines filed -
#6367
be5c413Thanks @witoszekdev! - Added deployment of Storybook to Chromaitc via GitHub actions -
#6360
8a3c66dThanks @witoszekdev! - Filtering in "Assign ..." modals is not available in all contexts. Previously filtering feature was available only in product update page. -
#6377
d310e49Thanks @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
f25222bThanks @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
271928bThanks @IKarbowiak! - Extend search input width to prevent placeholder text from being cut off -
#6384
f820904Thanks @witoszekdev! - Fix product attribute filters forCATEGORYandCOLLECTIONreference 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
🚨 Warning
This release requires Saleor core 3.22.38.
Used with older version, Dashboard will crash.
Patch Changes
-
#6326
4238398Thanks @witoszekdev! - Added filtering to "Assign Category" modals based on categories query filter options, similar to existing filters on category list page. -
#6355
80b93f6Thanks @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
51575d1Thanks @IKarbowiak! - Extend site settings with webhook emission section - allow changinguseLegacyUpdateWebhookEmissionflag -
#6352
3b4e59cThanks @IKarbowiak! - Fix Gift Cards search to usegiftCards.searchquery parameter instead of filtering bycode. This enables searching gift cards by email, user name, and code rather than only by exact code match. -
#6356
8c5f075Thanks @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
49308beThanks @lkostrowski! - Fix mapping VISA payment method in Transaction view. Now VISA logo is displayed correctly -
#6349
496f688Thanks @chrislaai! - Update the API_URL in .env.template -
#6363
1d78e48Thanks @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
fca0cbfThanks @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
Patch Changes
-
#6340
ccc005aThanks @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
85e7f3fThanks @witoszekdev! - Added new e2e tests for Saleor apps deployed in staging environment (internal). They check if app loads correctly and displays its settings -
#6254
a0011ccThanks @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
23d946cThanks @lkostrowski! - Order Transaction will now display payment method details, like card brand or type. -
#6327
4f81c86Thanks @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
61a484dThanks @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
cf1c8aaThanks @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
1739498Thanks @witoszekdev! - Fixed code splitting forauthandconfigurationchunks. Previously this code was included in the main bundle, skipping dynamic imports. Now it will only load when needed, which should improve performance. -
#6324
9ab34dcThanks @witoszekdev! - Fixed icon in theme switcher not showing -
#6317
160511fThanks @witoszekdev! - Updated to storybook v10 -
#6311
61a484dThanks @witoszekdev! - Added filtering to "Assign Variant" modals based on products querywhereoptions, similar to existing filters on product list page. -
#6334
5669ef5Thanks @witoszekdev! - Maintanance: Added stories for Assign attribute value modals and configuration for mocking GraphQL responses in Storybook. -
#6341
4a45b49Thanks @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
Patch Changes
-
#6310
3693eb4Thanks @lkostrowski! - Updated @saleor/app-sdk and added support forpopupCloseaction. Since this release, app will be able to close the popup via code -
#6292
0bdad3eThanks @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
0bdad3eThanks @witoszekdev! - Fixed e2e tests: updated assertions for notifications, datagrid, gift cards
Full Changelog: 3.22.30...3.22.31
3.22.30
3.22.29
Patch Changes
-
#6284
1a8279bThanks @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
cee423fThanks @mirekm! - Fix visibility of checkboxes (when focused) in DataGrid -
#6300
57e859aThanks @mirekm! - Fix variant form initialisation -
#6285
d65d066Thanks @mirekm! - Improved Variants Generator to support required non-selection attributes with a dedicated tab. Also added contextual tooltips explaining why generation is disabled. -
#6301
d097e37Thanks @mirekm! - Attribute configuration: allow users to filter attribute values by slug or name when there are more than 5 values. -
#6276
d0f142eThanks @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
What's Changed
- fix comboboxes on chrome 144 by @lkostrowski in #6291
Full Changelog: 3.21.18...3.21.19
3.22.28
Patch Changes
-
#6266
2983f07Thanks @witoszekdev! - Refactored filtering logic in Product selection modal, shouldn't introduce any changes for users -
#6273
c16e37aThanks @witoszekdev! - Update lodash version to4.17.23 -
#6257
57cef53Thanks @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
a38274bThanks @mirekm! - Improve variant attributes discoverabilityAdded better messaging for variant attributes in both Product Type and Variant views.
-
#6278
21eacd7Thanks @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 asqueryparameter. -
#6274
3b0ec28Thanks @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
ace3e01Thanks @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
b193657Thanks @lkostrowski! - Remove intrusive error on app invalid action and rely on console logs for better debugging.
Full Changelog: 3.22.27...3.22.28