Skip to content

Commit c305dd4

Browse files
mirekmlkostrowski
andauthored
ProductDoctor: Reassure users about what was just verified, given the active stock availability mode (#6546)
Co-authored-by: Lukasz Ostrowski <lukasz.ostrowski@saleor.io>
1 parent 53474a0 commit c305dd4

13 files changed

Lines changed: 773 additions & 68 deletions

.changeset/curly-doves-dance.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"saleor-dashboard": patch
3+
---
4+
5+
ProductDoctor: Add mode-aware reassurance under public-API verification badge and tighten ambiguous diagnostic copy

locale/defaultMessages.json

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2116,6 +2116,10 @@
21162116
"context": "plain text attribute value was truncated",
21172117
"string": "Attribute value too long and truncated at {length} characters."
21182118
},
2119+
"A6mmoM": {
2120+
"context": "Reassurance under verification badge when API reports stock but the channel has no shipping zones in direct mode",
2121+
"string": "The public API reports the product as in stock — direct mode resolves stock from the warehouse-channel link without requiring a shipping zone. However, no shipping zones are configured for this channel, so customers cannot complete checkout."
2122+
},
21192123
"A7W4KO": {
21202124
"string": "Catalog rule"
21212125
},
@@ -2131,6 +2135,10 @@
21312135
"context": "Product can be purchased by customers",
21322136
"string": "Purchasable"
21332137
},
2138+
"AFZfCS": {
2139+
"context": "Reassurance under verification badge when API reports stock but the channel has no shipping zones in legacy mode",
2140+
"string": "The public API reports the product as in stock, but no shipping zones are configured for this channel — no customer is currently covered, so checkout cannot complete."
2141+
},
21342142
"AHK0K9": {
21352143
"context": "dialog content",
21362144
"string": "{counter,plural,one{Are you sure you want to unassign this product?} other{Are you sure you want to unassign {displayQuantity} products?}}"
@@ -5075,6 +5083,10 @@
50755083
"context": "is filter range or value",
50765084
"string": "between"
50775085
},
5086+
"QEXGYB": {
5087+
"context": "Reassurance under verification badge when product is purchasable in legacy mode",
5088+
"string": "The public API confirms the product is purchasable for customers covered by the channel's shipping zones."
5089+
},
50785090
"QFCUEt": {
50795091
"string": "Slug must be unique"
50805092
},
@@ -5153,10 +5165,6 @@
51535165
"context": "years after label",
51545166
"string": "years after issue"
51555167
},
5156-
"QfK+5Q": {
5157-
"context": "Description for warehouse not in zone warning",
5158-
"string": "Warehouses with stock are not assigned to any shipping zone in this channel."
5159-
},
51605168
"Qhb89u": {
51615169
"context": "Warning when no countries covered",
51625170
"string": "No countries covered"
@@ -5557,10 +5565,6 @@
55575565
"context": "header",
55585566
"string": "Create Variant"
55595567
},
5560-
"T7r26L": {
5561-
"context": "Description for no warehouses warning",
5562-
"string": "Products in this channel cannot be fulfilled without warehouses."
5563-
},
55645568
"T83iU7": {
55655569
"string": "Search categories..."
55665570
},
@@ -5876,6 +5880,10 @@
58765880
"context": "no categories",
58775881
"string": "No categories found"
58785882
},
5883+
"UuX9YV": {
5884+
"context": "Reassurance under verification badge when product is not purchasable",
5885+
"string": "The public API does not return this product as purchasable. Review the issues listed above to resolve."
5886+
},
58795887
"UvD+xp": {
58805888
"context": "attribute values",
58815889
"string": "Value {number}"
@@ -8288,6 +8296,10 @@
82888296
"context": "tooltip",
82898297
"string": "Stock allocations occur when:"
82908298
},
8299+
"icyljC": {
8300+
"context": "Description for no warehouses warning",
8301+
"string": "Without an assigned warehouse, this product will appear unavailable to customers in this channel and orders cannot be fulfilled."
8302+
},
82918303
"icz/jb": {
82928304
"context": "customer",
82938305
"string": "Join Date"
@@ -8603,6 +8615,10 @@
86038615
"context": "dialog header",
86048616
"string": "Unpublish models"
86058617
},
8618+
"kGBmBz": {
8619+
"context": "Message when no errors or warnings, but exactly one info-level advisory exists",
8620+
"string": "All channels configured correctly · 1 advisory"
8621+
},
86068622
"kIcyUo": {
86078623
"context": "column header",
86088624
"string": "Slug"
@@ -8732,6 +8748,10 @@
87328748
"krer6Z": {
87338749
"string": "Features preview"
87348750
},
8751+
"ksIgHn": {
8752+
"context": "Description for warehouse-not-in-zone warning (only fires in legacy stock availability mode)",
8753+
"string": "Warehouses with stock are not covered by any shipping zone in this channel. In legacy stock availability mode this hides the product from customers; assign the warehouse to a shipping zone or switch to direct stock availability."
8754+
},
87358755
"kuo4fW": {
87368756
"context": "dialog title",
87378757
"string": "Capture manual transaction"
@@ -9911,6 +9931,10 @@
99119931
"context": "option label prefix for using a typed email address",
99129932
"string": "Use email:"
99139933
},
9934+
"reogdY": {
9935+
"context": "Message when no errors or warnings, but more than one info-level advisory exists",
9936+
"string": "All channels configured correctly · {count} advisories"
9937+
},
99149938
"rfvBAF": {
99159939
"context": "select all options, button",
99169940
"string": "Select All"
@@ -10181,6 +10205,10 @@
1018110205
"context": "tab name",
1018210206
"string": "All products"
1018310207
},
10208+
"tFx7UX": {
10209+
"context": "Reassurance under verification badge when product is not visible to public API",
10210+
"string": "The public API cannot find this product. Confirm it is published and listed in this channel."
10211+
},
1018410212
"tI7/Ib": {
1018510213
"string": "Extension requested permissions that are not available in Saleor."
1018610214
},
@@ -10385,6 +10413,10 @@
1038510413
"context": "all selected items message",
1038610414
"string": "All available {itemsName} have been selected"
1038710415
},
10416+
"uL33aH": {
10417+
"context": "Reassurance under verification badge when product is purchasable in direct mode",
10418+
"string": "The public API confirms the product is purchasable. Stock availability is taken directly from the warehouse-channel link, regardless of shipping zones."
10419+
},
1038810420
"uN88fb": {
1038910421
"context": "button, submit form",
1039010422
"string": "Return and Replace products"
@@ -10686,6 +10718,10 @@
1068610718
"context": "default product variant indicator",
1068710719
"string": "Default"
1068810720
},
10721+
"vZN+nE": {
10722+
"context": "Public API verification: API says product has stock, but no shipping zones cover the channel (legacy mode)",
10723+
"string": "Reports stock, but no coverage"
10724+
},
1068910725
"vaFjs6": {
1069010726
"string": "No warehouses available to add"
1069110727
},
@@ -11161,6 +11197,10 @@
1116111197
"yAgKyi": {
1116211198
"string": "Webhook created"
1116311199
},
11200+
"yD1Ylr": {
11201+
"context": "Public API verification: customer can browse the product but no shipping method is available at checkout (direct mode, no shipping zones)",
11202+
"string": "Browseable, can't ship"
11203+
},
1116411204
"yDkmX7": {
1116511205
"context": "dialog content",
1116611206
"string": "{counter,plural,one{Are you sure you want to delete this product?} other{Are you sure you want to delete {displayQuantity} products?}}"

0 commit comments

Comments
 (0)