@stapel/listings-react 0.25.0 → 0.25.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/dist/default/ListingSerpCard.d.ts +16 -75
  3. package/dist/default/ListingSerpCard.d.ts.map +1 -1
  4. package/dist/default/ListingSerpCard.js +80 -2
  5. package/dist/default/ListingSerpCard.js.map +1 -1
  6. package/dist/default/MyListingsPane.d.ts +13 -0
  7. package/dist/default/MyListingsPane.d.ts.map +1 -1
  8. package/dist/default/MyListingsPane.js +11 -3
  9. package/dist/default/MyListingsPane.js.map +1 -1
  10. package/dist/headless/MyListings.d.ts +35 -1
  11. package/dist/headless/MyListings.d.ts.map +1 -1
  12. package/dist/headless/MyListings.js +25 -1
  13. package/dist/headless/MyListings.js.map +1 -1
  14. package/dist/i18n/es.js +1 -1
  15. package/dist/i18n/es.js.map +1 -1
  16. package/dist/i18n/keys.js +1 -1
  17. package/dist/i18n/keys.js.map +1 -1
  18. package/dist/i18n/ru.js +1 -1
  19. package/dist/i18n/ru.js.map +1 -1
  20. package/dist/index.d.ts +2 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +1 -0
  23. package/dist/index.js.map +1 -1
  24. package/dist/model/tabAddress.d.ts +42 -0
  25. package/dist/model/tabAddress.d.ts.map +1 -0
  26. package/dist/model/tabAddress.js +84 -0
  27. package/dist/model/tabAddress.js.map +1 -0
  28. package/llms.txt +1 -1
  29. package/manifest.json +7 -1
  30. package/nav-manifest.json +1 -1
  31. package/package.json +5 -5
  32. package/src/analytics/generated/events.json +1 -1
  33. package/src/default/ListingSerpCard.tsx +38 -11
  34. package/src/default/MyListingsPane.tsx +24 -6
  35. package/src/headless/MyListings.tsx +64 -2
  36. package/src/i18n/es.ts +1 -1
  37. package/src/i18n/keys.ts +1 -1
  38. package/src/i18n/ru.ts +1 -1
  39. package/src/index.ts +8 -0
  40. package/src/model/tabAddress.ts +103 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,62 @@
1
1
  # @stapel/listings-react
2
2
 
3
+ ## 0.25.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 94cfe85: A result card can say who is selling it LAST.
8
+
9
+ `<ListingSerpCard sellerSlotPosition="below">` puts the seller line under the
10
+ place instead of over it. The bottom of a result card reads as one descending
11
+ line of provenance — what it is, then where it is, then who is selling it — and
12
+ this card had the seller between the specs and the place, where it reads as
13
+ part of the description rather than as the answer to "who am I buying from".
14
+ The reference classified, and the host measured against it, put it last.
15
+
16
+ A prop and not a change of mind, because the order is a surface's decision: a
17
+ seller's OWN page, where every card carries the same seller, wants that line
18
+ out of the way at the bottom, and a cross-seller feed leads with it. `"above"`
19
+ stays the default, so nothing already on screen moves.
20
+
21
+ Both arms render from one array rather than two branches, so they cannot drift
22
+ into two different pairs of nodes, and a card with no `location_label` still
23
+ draws the seller — the order spans two lines, one of which may not exist.
24
+
25
+ - 64f7d57: The seller dashboard's tab is in the address, and a badge cannot contradict
26
+ the rows under it.
27
+
28
+ - **`?tab=`.** `/account/listings?tab=drafts` opened Active, a reload threw
29
+ the tab away, and there was no address that meant "my drafts" — the tab was
30
+ component state, which is the same as nowhere. It now reads and writes
31
+ `?tab=` (new `model/tabAddress.ts`); `initialTab` (now a prop on
32
+ `<MyListingsPane>` too) stays as the fallback for when the address names
33
+ none, and an address outranks it because an address is the person's own
34
+ statement about what they want to see. An unknown value falls back rather
35
+ than opening an empty list. Every other parameter is preserved, and the
36
+ write REPLACES: switching tab is a read of your own dashboard, and a push
37
+ per tab makes Back walk Archive → Drafts → Active before it leaves the page.
38
+ A host with a router passes its own `MyListingsAddress`; `NO_ADDRESS` opts
39
+ out.
40
+ - **D407: never `0` while a row is visible.** The tab groupings live in two
41
+ places — `my/counters` aggregates them server-side, `MY_LISTINGS_TAB_STATUSES`
42
+ decides which statuses a tab asks for — and any disagreement (an older
43
+ counter, a status added upstream) lands as a badge contradicting the list: a
44
+ moderator-rejected listing sat in Drafts under a `0`. The new
45
+ `MyListingsBag.tabCounts` raises the OPEN tab's number to the rows actually
46
+ on screen. A floor, not a replacement — the rows are one keyset page and the
47
+ counter is the whole set, so the larger number still wins — and it says
48
+ nothing about the tabs a person is not looking at.
49
+
50
+ ## 0.25.1
51
+
52
+ ### Patch Changes
53
+
54
+ - 3168ad9: The favourites empty-state hint (`listings.favorites.empty_hint`) said "tap
55
+ the heart" in every locale, but the control it describes is a text button
56
+ labelled by `listings.card.favorite_add`. Rewrote the hint in all three
57
+ bundles (en, ru, es) to quote that label's own wording instead of naming an
58
+ imaginary heart-tap gesture.
59
+
3
60
  ## 0.25.0
4
61
 
5
62
  ### Minor Changes
@@ -1,78 +1,3 @@
1
- /**
2
- * `<ListingSerpCard>` — the one-column result card of a phone SERP.
3
- *
4
- * `<ListingCard>` is the GRID card: a photo, a price, a title and a place,
5
- * sized so twenty-four of them tile a desktop catalogue. This is the other
6
- * shape a classified needs and the one the mobile refs are drawn to (refs §3):
7
- * one card per row, the full width of the screen, a swipeable photo strip, and
8
- * a column of actions down the right-hand side. They are two components rather
9
- * than a `variant` prop for the reason the fleet keeps writing down — a mode
10
- * switch produces one component nobody can photograph either arm of, and here
11
- * the two arms differ in reading ORDER, not only in size.
12
- *
13
- * ── The price is first, and it is the biggest thing on the card ────────────
14
- *
15
- * On a grid card the photo carries the layout. On a one-column result the
16
- * photo is already full-bleed above the text, so the first LINE is where the
17
- * eye lands — and on a classified that line is the price. Title at regular
18
- * weight underneath it, the seller's own spec line muted under that. This is
19
- * the ref's order and it is also the order the fleet's own storefront review
20
- * asked for: a person scanning a SERP is comparing prices, not reading names.
21
- *
22
- * ── Why the photo strip is OUTSIDE the anchor ─────────────────────────────
23
- *
24
- * `<ListingCard>` puts its photo inside the card's anchor, because a still
25
- * `<img>` inside a link is just a bigger link. A `<SkinCarousel>` is not: it
26
- * is a scroll container with its own tab stop, and a horizontal swipe that
27
- * ends inside an `<a>` is a swipe the browser may deliver as a click. Putting
28
- * the strip in the anchor would mean every attempt to look at photo two
29
- * navigated to the listing — the defect that makes phone galleries unusable.
30
- *
31
- * So the strip sits above the anchor as a sibling, exactly as the heart sits
32
- * below it as a sibling, and for the same class of reason: a link may not
33
- * contain a control, and a swipeable strip is a control. The anchor still
34
- * covers the four things that identify the listing — price, title, specs,
35
- * badges — so the card opens from everything a person reads.
36
- *
37
- * ── One column on a phone, one ROW on a desktop ───────────────────────────
38
- *
39
- * The card is still one per row; what changes with width is where the photo
40
- * sits. Full-bleed above the text is right at 390px and wrong at 974px, where
41
- * it makes the picture the whole screen and the offer a footnote — measured on
42
- * the live desktop SERP as one card per scroll. Above
43
- * {@link LISTING_CARD_ROW_MIN} the strip moves BESIDE the text at a fixed
44
- * width, from the card's own `@container` query rather than a viewport
45
- * breakpoint: this card knows how wide it is and has no business knowing how
46
- * wide the window is.
47
- *
48
- * ── The two slots, and what they are honestly for ─────────────────────────
49
- *
50
- * `sellerSlot` is the seller's name and rating. It is a SLOT because a rating
51
- * aggregate belongs to `@stapel/reviews-react` and this pair does not import
52
- * another L2 pair; the container is the seam. **The caveat a host must know:**
53
- * `<RatingBadge>` FETCHES — one request per card. On a page of twenty results
54
- * that is twenty requests for a decoration. A container drawing this in a list
55
- * should render the name plus a bare `<Rate>` from an aggregate the row
56
- * already carries, and render nothing at all when the row carries none. It
57
- * lives outside the anchor because a seller's name is usually a link to the
58
- * seller, and a link inside a link is neither valid nor operable.
59
- *
60
- * `actionsRail` is the vertical column at the trailing edge — "call", "write"
61
- * — filled by the container from `@stapel/chat-react` and from whatever the
62
- * deployment uses for a phone number. The pair supplies the COLUMN and the
63
- * favourite heart at the end of it, and nothing else: this package has no
64
- * conversation and no telephone number, and the search projection carries no
65
- * phone (gap G-2's neighbour, recorded in the wave spec §4).
66
- *
67
- * ── The price trend is a seam over data that does not exist yet ───────────
68
- *
69
- * `priceTrend` renders the ref's "was 1 800 000 ₽ ↓". The search projection
70
- * carries no price history — no `price_was`, no direction — so nothing on a
71
- * live SERP fills this today (wave gap **G-2**). It ships anyway, and the
72
- * demos show it against fixture data, because the alternative is a card that
73
- * has to be re-laid-out the day the projection grows the field. The seam is
74
- * the honest half; the missing data is written down rather than faked.
75
- */
76
1
  import type { ReactElement, ReactNode } from "react";
77
2
  import type { SignInCta } from "@stapel/core";
78
3
  import type { ListingCard as ListingCardData } from "../api/types.js";
@@ -111,6 +36,22 @@ export interface ListingSerpCardBaseProps extends ThemeModeProp, CategoryFeature
111
36
  /** The seller's name and rating. See the file header for the per-card fetch
112
37
  * caveat a container has to avoid. */
113
38
  readonly sellerSlot?: ReactNode;
39
+ /**
40
+ * Where the seller line sits relative to the place: `"above"` (the default,
41
+ * and what this card has always drawn) or `"below"`.
42
+ *
43
+ * The reference classified — and the host measured against it — reads the
44
+ * bottom of a card as one descending line of PROVENANCE: what it is, then
45
+ * where it is, then who is selling it. This card put the seller between the
46
+ * specs and the place, which reads as part of the description rather than as
47
+ * the answer to "who am I buying from".
48
+ *
49
+ * A prop and not a change, because the order is a surface's decision and
50
+ * some surfaces genuinely want the seller first — a seller's own page, where
51
+ * every card has the same one, keeps it out of the way at the bottom, and a
52
+ * cross-seller feed leads with it. Both stay one line of composition.
53
+ */
54
+ readonly sellerSlotPosition?: "above" | "below";
114
55
  /** The vertical action column at the trailing edge — call, write. The
115
56
  * favourite heart is added at its end by this component. */
116
57
  readonly actionsRail?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"ListingSerpCard.d.ts","sourceRoot":"","sources":["../../src/default/ListingSerpCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AACH,OAAO,KAAK,EAAiB,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAqBtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,wBACf,SAAQ,aAAa,EACnB,oBAAoB;IACtB,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,4EAA4E;IAC5E,QAAQ,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IACxC;0CACsC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IAChC;gEAC4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC;wDACoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B;oEACgE;IAChE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;wDAGoD;IACpD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C;mCAC+B;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;CAC7B;AAED,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,GAAG,oBAAoB,CAAC;AAUnF,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,CA6MzE"}
1
+ {"version":3,"file":"ListingSerpCard.d.ts","sourceRoot":"","sources":["../../src/default/ListingSerpCard.tsx"],"names":[],"mappings":"AA4EA,OAAO,KAAK,EAAiB,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAqBtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAG7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,yEAAyE;IACzE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,wBACf,SAAQ,aAAa,EACnB,oBAAoB;IACtB,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,4EAA4E;IAC5E,QAAQ,CAAC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IACxC;0CACsC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IAChC;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAChD;gEAC4D;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC;IACjC;wDACoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B;oEACgE;IAChE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;wDAGoD;IACpD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C;mCAC+B;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;CAC7B;AAED,MAAM,MAAM,oBAAoB,GAAG,wBAAwB,GAAG,oBAAoB,CAAC;AAUnF,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,YAAY,CAuNzE"}
@@ -1,4 +1,80 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * `<ListingSerpCard>` — the one-column result card of a phone SERP.
4
+ *
5
+ * `<ListingCard>` is the GRID card: a photo, a price, a title and a place,
6
+ * sized so twenty-four of them tile a desktop catalogue. This is the other
7
+ * shape a classified needs and the one the mobile refs are drawn to (refs §3):
8
+ * one card per row, the full width of the screen, a swipeable photo strip, and
9
+ * a column of actions down the right-hand side. They are two components rather
10
+ * than a `variant` prop for the reason the fleet keeps writing down — a mode
11
+ * switch produces one component nobody can photograph either arm of, and here
12
+ * the two arms differ in reading ORDER, not only in size.
13
+ *
14
+ * ── The price is first, and it is the biggest thing on the card ────────────
15
+ *
16
+ * On a grid card the photo carries the layout. On a one-column result the
17
+ * photo is already full-bleed above the text, so the first LINE is where the
18
+ * eye lands — and on a classified that line is the price. Title at regular
19
+ * weight underneath it, the seller's own spec line muted under that. This is
20
+ * the ref's order and it is also the order the fleet's own storefront review
21
+ * asked for: a person scanning a SERP is comparing prices, not reading names.
22
+ *
23
+ * ── Why the photo strip is OUTSIDE the anchor ─────────────────────────────
24
+ *
25
+ * `<ListingCard>` puts its photo inside the card's anchor, because a still
26
+ * `<img>` inside a link is just a bigger link. A `<SkinCarousel>` is not: it
27
+ * is a scroll container with its own tab stop, and a horizontal swipe that
28
+ * ends inside an `<a>` is a swipe the browser may deliver as a click. Putting
29
+ * the strip in the anchor would mean every attempt to look at photo two
30
+ * navigated to the listing — the defect that makes phone galleries unusable.
31
+ *
32
+ * So the strip sits above the anchor as a sibling, exactly as the heart sits
33
+ * below it as a sibling, and for the same class of reason: a link may not
34
+ * contain a control, and a swipeable strip is a control. The anchor still
35
+ * covers the four things that identify the listing — price, title, specs,
36
+ * badges — so the card opens from everything a person reads.
37
+ *
38
+ * ── One column on a phone, one ROW on a desktop ───────────────────────────
39
+ *
40
+ * The card is still one per row; what changes with width is where the photo
41
+ * sits. Full-bleed above the text is right at 390px and wrong at 974px, where
42
+ * it makes the picture the whole screen and the offer a footnote — measured on
43
+ * the live desktop SERP as one card per scroll. Above
44
+ * {@link LISTING_CARD_ROW_MIN} the strip moves BESIDE the text at a fixed
45
+ * width, from the card's own `@container` query rather than a viewport
46
+ * breakpoint: this card knows how wide it is and has no business knowing how
47
+ * wide the window is.
48
+ *
49
+ * ── The two slots, and what they are honestly for ─────────────────────────
50
+ *
51
+ * `sellerSlot` is the seller's name and rating. It is a SLOT because a rating
52
+ * aggregate belongs to `@stapel/reviews-react` and this pair does not import
53
+ * another L2 pair; the container is the seam. **The caveat a host must know:**
54
+ * `<RatingBadge>` FETCHES — one request per card. On a page of twenty results
55
+ * that is twenty requests for a decoration. A container drawing this in a list
56
+ * should render the name plus a bare `<Rate>` from an aggregate the row
57
+ * already carries, and render nothing at all when the row carries none. It
58
+ * lives outside the anchor because a seller's name is usually a link to the
59
+ * seller, and a link inside a link is neither valid nor operable.
60
+ *
61
+ * `actionsRail` is the vertical column at the trailing edge — "call", "write"
62
+ * — filled by the container from `@stapel/chat-react` and from whatever the
63
+ * deployment uses for a phone number. The pair supplies the COLUMN and the
64
+ * favourite heart at the end of it, and nothing else: this package has no
65
+ * conversation and no telephone number, and the search projection carries no
66
+ * phone (gap G-2's neighbour, recorded in the wave spec §4).
67
+ *
68
+ * ── The price trend is a seam over data that does not exist yet ───────────
69
+ *
70
+ * `priceTrend` renders the ref's "was 1 800 000 ₽ ↓". The search projection
71
+ * carries no price history — no `price_was`, no direction — so nothing on a
72
+ * live SERP fills this today (wave gap **G-2**). It ships anyway, and the
73
+ * demos show it against fixture data, because the alternative is a card that
74
+ * has to be re-laid-out the day the projection grows the field. The seam is
75
+ * the honest half; the missing data is written down rather than faked.
76
+ */
77
+ import { Fragment } from "react";
2
78
  import { Card, Flex, Typography, theme as antdTheme } from "antd";
3
79
  import { SkinTheme } from "@stapel/tokens-antd/skin";
4
80
  import { useT } from "@stapel/core";
@@ -63,8 +139,10 @@ export function ListingSerpCard(props) {
63
139
  ["--listing-card-hover-shadow"]: token.boxShadowSecondary,
64
140
  }, children: _jsx("div", { className: CARD_QUERY_CLASS, children: _jsxs("div", { className: CARD_FRAME_CLASS, style: { gap: spacing[3] }, children: [_jsx("div", { className: CARD_MEDIA_CLASS, children: _jsx(ListingPhotoStrip, { images: photos, title: title.length > 0 ? title : String(listing.id), testId: "listings-serp-photos" }) }), _jsx("div", { className: CARD_MAIN_CLASS, children: _jsxs(Flex, { gap: spacing[3], align: "flex-start", children: [_jsxs(Flex, { vertical: true, gap: spacing[1], style: BODY, children: [_jsxs(CardTarget, { ...openProps(props), listingId: listing.id, label: targetLabel, testId: "listings-serp-open", bodyTestId: "listings-serp-body", children: [props.badge, _jsxs(Flex, { align: "center", gap: spacing[2], wrap: true, children: [_jsx(Typography.Text, { strong: true, style: { fontSize: fontSize.xl.fontSize }, "data-testid": "listings-serp-price", children: _jsx(ListingPrice, { amount: listing.price, ...currency }) }), priceTrend !== undefined && (_jsx(PriceTrendIcon, { direction: priceTrend.direction, label: t(priceTrend.direction === "down"
65
141
  ? LISTINGS_I18N_KEYS.cardPriceDropped
66
- : LISTINGS_I18N_KEYS.cardPriceRaised) }))] }), priceTrend !== undefined && (_jsxs(Flex, { align: "baseline", gap: spacing[1], "data-testid": "listings-serp-old-price", children: [_jsx(Typography.Text, { type: "secondary", children: t(LISTINGS_I18N_KEYS.cardPriceWas) }), _jsx(Typography.Text, { type: "secondary", delete: true, children: _jsx(ListingPrice, { amount: priceTrend.oldPrice, ...currency }) })] })), _jsx(Typography.Text, { "data-testid": "listings-serp-title", children: title }), props.specsLine !== undefined && props.specsLine.length > 0 ? (_jsx(Typography.Text, { type: "secondary", ellipsis: true, "data-testid": "listings-serp-specs", children: props.specsLine })) : (_jsx(CardSpecLine, { rows: titleDaos, copy: copy, testId: "listings-serp-specs" })), _jsx(CardBadges, { rows: badgeDaos, copy: copy, variant: "badges" })] }), props.sellerSlot ?? null, listing.location_label !== undefined &&
67
- listing.location_label.length > 0 ? (_jsx(Typography.Text, { type: "secondary", "data-testid": "listings-serp-location", children: listing.location_label })) : null] }), rail] }) })] }) }) })] }));
142
+ : LISTINGS_I18N_KEYS.cardPriceRaised) }))] }), priceTrend !== undefined && (_jsxs(Flex, { align: "baseline", gap: spacing[1], "data-testid": "listings-serp-old-price", children: [_jsx(Typography.Text, { type: "secondary", children: t(LISTINGS_I18N_KEYS.cardPriceWas) }), _jsx(Typography.Text, { type: "secondary", delete: true, children: _jsx(ListingPrice, { amount: priceTrend.oldPrice, ...currency }) })] })), _jsx(Typography.Text, { "data-testid": "listings-serp-title", children: title }), props.specsLine !== undefined && props.specsLine.length > 0 ? (_jsx(Typography.Text, { type: "secondary", ellipsis: true, "data-testid": "listings-serp-specs", children: props.specsLine })) : (_jsx(CardSpecLine, { rows: titleDaos, copy: copy, testId: "listings-serp-specs" })), _jsx(CardBadges, { rows: badgeDaos, copy: copy, variant: "badges" })] }), (props.sellerSlotPosition === "below"
143
+ ? ["location", "seller"]
144
+ : ["seller", "location"]).map((part) => part === "seller" ? (_jsx(Fragment, { children: props.sellerSlot ?? null }, "seller")) : listing.location_label !== undefined &&
145
+ listing.location_label.length > 0 ? (_jsx(Typography.Text, { type: "secondary", "data-testid": "listings-serp-location", children: listing.location_label }, "location")) : null)] }), rail] }) })] }) }) })] }));
68
146
  }
69
147
  /**
70
148
  * The three-armed open union, narrowed back out of this card's own props.
@@ -1 +1 @@
1
- {"version":3,"file":"ListingSerpCard.js","sourceRoot":"","sources":["../../src/default/ListingSerpCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListingSerpCard.js","sourceRoot":"","sources":["../../src/default/ListingSerpCard.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import type { ReactElement } from "react";
2
2
  import type { LinkComponent, SignInCtaProp } from "@stapel/core";
3
3
  import type { MyListingCard } from "../api/types.js";
4
4
  import type { MyListingsSource } from "../model/mineSource.js";
5
+ import type { MyListingsTab } from "../model/status.js";
6
+ import type { MyListingsAddress } from "../model/tabAddress.js";
5
7
  import type { ThemeModeProp } from "./types.js";
6
8
  /**
7
9
  * The row `listingHref` is called with as its second argument — the same
@@ -21,6 +23,17 @@ export interface MyListingsPaneProps extends ThemeModeProp, SignInCtaProp {
21
23
  /** How the host gets the caller's own rows. Absent: the contract's own
22
24
  * `GET my/listings/`, which is what a storefront wants. */
23
25
  readonly source?: MyListingsSource;
26
+ /**
27
+ * Which tab to open when the ADDRESS names none — `?tab=drafts` wins over
28
+ * it. See `model/tabAddress.ts`.
29
+ */
30
+ readonly initialTab?: MyListingsTab;
31
+ /**
32
+ * Where the open tab is kept. Default: the browser's own `?tab=`, so
33
+ * `/account/listings?tab=drafts` opens drafts and a reload keeps it. A host
34
+ * with a router passes its own binding; `NO_ADDRESS` opts out.
35
+ */
36
+ readonly address?: MyListingsAddress;
24
37
  /**
25
38
  * Open the composer on one of these listings. ABSENT IS A REAL ANSWER: the
26
39
  * Edit button then states that this app has no editing screen instead of
@@ -1 +1 @@
1
- {"version":3,"file":"MyListingsPane.d.ts","sourceRoot":"","sources":["../../src/default/MyListingsPane.tsx"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAWrD,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAS/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAoDhD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAgOjE,MAAM,WAAW,mBAAoB,SAAQ,aAAa,EAAE,aAAa;IACvE;+DAC2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,KAAK,MAAM,CAAC;IACrE;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;CACxC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,YAAY,CAuPvE"}
1
+ {"version":3,"file":"MyListingsPane.d.ts","sourceRoot":"","sources":["../../src/default/MyListingsPane.tsx"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAWrD,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAoDhD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAgOjE,MAAM,WAAW,mBAAoB,SAAQ,aAAa,EAAE,aAAa;IACvE;+DAC2D;IAC3D,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,gBAAgB,KAAK,MAAM,CAAC;IACrE;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;CACxC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,YAAY,CA6PvE"}
@@ -180,7 +180,11 @@ function MyListingRow(props) {
180
180
  export function MyListingsPane(props) {
181
181
  const t = useT();
182
182
  const tPlural = useTPlural();
183
- const bag = useMyListings(props.source !== undefined ? { source: props.source } : {});
183
+ const bag = useMyListings({
184
+ ...(props.source !== undefined ? { source: props.source } : {}),
185
+ ...(props.initialTab !== undefined ? { initialTab: props.initialTab } : {}),
186
+ ...(props.address !== undefined ? { address: props.address } : {}),
187
+ });
184
188
  // ONE confirmation for the whole list, keyed by the row that asked — not one
185
189
  // mounted dialog per row.
186
190
  const [removingId, setRemovingId] = useState(null);
@@ -204,7 +208,7 @@ export function MyListingsPane(props) {
204
208
  bag.setTab(key);
205
209
  }, items: bag.tabs.map((tab) => ({
206
210
  key: tab,
207
- label: (_jsxs(_Fragment, { children: [t(TAB_LABEL[tab]), matchLoad(bag.counters, {
211
+ label: (_jsxs(_Fragment, { children: [t(TAB_LABEL[tab]), matchLoad(bag.tabCounts, {
208
212
  loading: () => null,
209
213
  // A count we could not fetch is not zero. The number is
210
214
  // simply absent and the failure is stated once, below.
@@ -213,7 +217,11 @@ export function MyListingsPane(props) {
213
217
  // danger token and "Active 2" is not a warning. It also
214
218
  // keeps the tab short enough that three of them fit on a
215
219
  // phone instead of collapsing into an overflow menu.
216
- ready: (counters) => (_jsx(Typography.Text, { type: "secondary", "data-testid": `listings-mine-count-${tab}`, children: ` ${String(counters[tab])}` })),
220
+ //
221
+ // `tabCounts`, not `counters`: the badge is never allowed to
222
+ // read lower than the rows underneath it (D407 — a
223
+ // moderator-rejected listing sat in Drafts under a `0`).
224
+ ready: (counts) => (_jsx(Typography.Text, { type: "secondary", "data-testid": `listings-mine-count-${tab}`, children: ` ${String(counts[tab])}` })),
217
225
  })] })),
218
226
  })) }), matchLoad(bag.counters, {
219
227
  loading: () => null,
@@ -1 +1 @@
1
- {"version":3,"file":"MyListingsPane.js","sourceRoot":"","sources":["../../src/default/MyListingsPane.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MyListingsPane.js","sourceRoot":"","sources":["../../src/default/MyListingsPane.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { ActionAvailability, LoadState } from "@stapel/core";
3
3
  import type { MyListingCard, MyListingsParams, MyCounters } from "../api/types.js";
4
4
  import type { MyListingsSource } from "../model/mineSource.js";
5
5
  import type { MyListingsTab } from "../model/status.js";
6
+ import type { MyListingsAddress } from "../model/tabAddress.js";
6
7
  /**
7
8
  * The owner's dashboard.
8
9
  *
@@ -24,8 +25,26 @@ export interface MyListingsBag {
24
25
  readonly tab: MyListingsTab;
25
26
  readonly tabs: readonly MyListingsTab[];
26
27
  setTab(tab: MyListingsTab): void;
27
- /** The three real counts. */
28
+ /** The three real counts, as the server reports them. */
28
29
  readonly counters: LoadState<MyCounters>;
30
+ /**
31
+ * The number to DRAW on each tab — the server's counter, raised to what is
32
+ * actually on screen.
33
+ *
34
+ * D407: a moderator-rejected listing was on the Drafts tab under a badge
35
+ * reading `0`. The two sets are grouped in two places — `my/counters`
36
+ * aggregates server-side, `MY_LISTINGS_TAB_STATUSES` decides which statuses
37
+ * a tab ASKS for — and any disagreement between them (a deployment running
38
+ * an older counter, a status added upstream, a grouping changed on one side)
39
+ * lands as a badge contradicting the rows underneath it.
40
+ *
41
+ * A count smaller than what a person can see is not a count, so the loaded
42
+ * rows are treated as evidence: for the OPEN tab the number is never below
43
+ * `rows.length`. It is a floor and not a replacement — the rows are one
44
+ * keyset page and the counter is the whole set, so the counter still wins
45
+ * whenever it is the larger of the two.
46
+ */
47
+ readonly tabCounts: LoadState<Readonly<Record<MyListingsTab, number>>>;
29
48
  /** The rows for the current tab. */
30
49
  readonly rows: LoadState<readonly MyListingCard[]>;
31
50
  /**
@@ -48,8 +67,23 @@ export interface UseMyListingsOptions {
48
67
  /** Replace the contract's own `my/listings` read — a deployment that keeps
49
68
  * its sellers' rows somewhere else. Absent: {@link defaultMyListingsSource}. */
50
69
  readonly source?: MyListingsSource;
70
+ /**
71
+ * Which tab to open when the ADDRESS names none. `?tab=drafts` wins over it
72
+ * — an address is a person's own statement about what they want to see, and
73
+ * a default cannot outrank one.
74
+ */
51
75
  readonly initialTab?: MyListingsTab;
52
76
  readonly limit?: number;
77
+ /**
78
+ * Where the open tab is kept. Default: the browser's own query string
79
+ * (`?tab=`), which is what makes `/account/listings?tab=drafts` open drafts
80
+ * and survive a reload — see `model/tabAddress.ts`.
81
+ *
82
+ * A host with a router passes its own binding. `NO_ADDRESS` opts out
83
+ * entirely, for a surface that mounts this hook somewhere the address is not
84
+ * about it (two dashboards on one page, a preview inside a modal).
85
+ */
86
+ readonly address?: MyListingsAddress;
53
87
  }
54
88
  export declare function useMyListings(options?: UseMyListingsOptions): MyListingsBag;
55
89
  /** Renderless: the bag, handed to a render prop. */
@@ -1 +1 @@
1
- {"version":3,"file":"MyListings.d.ts","sourceRoot":"","sources":["../../src/headless/MyListings.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAUrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,UAAU,EACX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,6BAA6B;IAC7B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IACzC,oCAAoC;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,aAAa,EAAE,CAAC,CAAC;IACnD;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,aAAa,EAAE,CAAC,CAAC;IAC1D,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IACf,qDAAqD;IACrD,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC;oFACgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,aAAa,CAC3B,OAAO,GAAE,oBAAyB,GACjC,aAAa,CAiGf;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CACxB,KAAK,EAAE,oBAAoB,GAAG;IAC5B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,SAAS,CAAC;CAC7C,GACA,YAAY,CAGd"}
1
+ {"version":3,"file":"MyListings.d.ts","sourceRoot":"","sources":["../../src/headless/MyListings.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAUrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,UAAU,EACX,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,yDAAyD;IACzD,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IACzC;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACvE,oCAAoC;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,aAAa,EAAE,CAAC,CAAC;IACnD;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,aAAa,EAAE,CAAC,CAAC;IAC1D,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IACf,qDAAqD;IACrD,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC;oFACgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CACtC;AAED,wBAAgB,aAAa,CAC3B,OAAO,GAAE,oBAAyB,GACjC,aAAa,CA4Hf;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CACxB,KAAK,EAAE,oBAAoB,GAAG;IAC5B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,SAAS,CAAC;CAC7C,GACA,YAAY,CAGd"}
@@ -7,12 +7,18 @@ import { useListingsApi } from "../model/context.js";
7
7
  import { useMyCounters } from "../model/queries.js";
8
8
  import { listingsQueryKeys, pageKey } from "../model/queryKeys.js";
9
9
  import { MY_LISTINGS_TABS, MY_LISTINGS_UNTABBED_STATUSES } from "../model/status.js";
10
+ import { browserAddress, tabFromSearch } from "../model/tabAddress.js";
10
11
  import { LISTINGS_I18N_KEYS } from "../i18n/keys.js";
11
12
  import { useMandateGate } from "./useMandateGate.js";
12
13
  export function useMyListings(options = {}) {
13
14
  const gate = useMandateGate();
14
15
  const sessionReady = useActiveSessionReady();
15
- const [tab, setTabState] = useState(options.initialTab ?? "active");
16
+ // The address is read ONCE, at mount, and written on every change: this is
17
+ // the initial value of a control the person then operates, not a controlled
18
+ // input fed by the URL. (A host that navigates its own router to a different
19
+ // `?tab=` remounts the pane, which is the same thing.)
20
+ const address = options.address ?? browserAddress();
21
+ const [tab, setTabState] = useState(() => tabFromSearch(address.search) ?? options.initialTab ?? "active");
16
22
  const [page, setPage] = useState(options.limit !== undefined ? { limit: options.limit } : {});
17
23
  const counters = useMyCounters();
18
24
  const api = useListingsApi();
@@ -51,6 +57,20 @@ export function useMyListings(options = {}) {
51
57
  return loadLoading();
52
58
  }, [blockedQuery.status, blockedQuery.error, blockedQuery.data]);
53
59
  const envelope = rowsQuery.data;
60
+ // D407, the floor: never a number smaller than the rows on screen. See
61
+ // `MyListingsBag.tabCounts`.
62
+ const tabCounts = useMemo(() => {
63
+ if (counters.status === "error")
64
+ return loadFailed(counters.error);
65
+ if (counters.data === undefined)
66
+ return loadLoading();
67
+ const server = counters.data;
68
+ const visible = rows.status === "ready" ? rows.data.length : 0;
69
+ return loadReady(Object.fromEntries(MY_LISTINGS_TABS.map((one) => [
70
+ one,
71
+ one === tab ? Math.max(server[one], visible) : server[one],
72
+ ])));
73
+ }, [counters.status, counters.error, counters.data, rows, tab]);
54
74
  return {
55
75
  tab,
56
76
  tabs: MY_LISTINGS_TABS,
@@ -61,12 +81,16 @@ export function useMyListings(options = {}) {
61
81
  // down for its own keyset state.
62
82
  setPage(options.limit !== undefined ? { limit: options.limit } : {});
63
83
  setTabState(next);
84
+ // …and the address says which list is on screen, so a reload, a
85
+ // bookmark and a shared link all land on it.
86
+ (options.address ?? browserAddress()).setTab(next);
64
87
  },
65
88
  counters: counters.status === "error"
66
89
  ? loadFailed(counters.error)
67
90
  : counters.data !== undefined
68
91
  ? loadReady(counters.data)
69
92
  : loadLoading(),
93
+ tabCounts,
70
94
  rows,
71
95
  blockedRows,
72
96
  page,
@@ -1 +1 @@
1
- {"version":3,"file":"MyListings.js","sourceRoot":"","sources":["../../src/headless/MyListings.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MyListings.js","sourceRoot":"","sources":["../../src/headless/MyListings.tsx"],"names":[],"mappings":"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"}
package/dist/i18n/es.js CHANGED
@@ -156,7 +156,7 @@ export const listingsI18nBundleEs = {
156
156
  "listings.favorites.loading": "Cargando tus favoritos…",
157
157
  "listings.favorites.load_failed": "No pudimos cargar tus favoritos",
158
158
  "listings.favorites.empty": "Todavía no has guardado nada",
159
- "listings.favorites.empty_hint": "Toca el corazón en cualquier anuncio y te estará esperando aquí.",
159
+ "listings.favorites.empty_hint": "Toca «Guardar en favoritos» en cualquier anuncio y te estará esperando aquí.",
160
160
  "listings.favorites.sign_in_hint": "Los favoritos se guardan en tu cuenta, así que te siguen entre dispositivos.",
161
161
  // Las dos comprobaciones de publicación que llegaron con el contrato 0.17.
162
162
  "error.400.listing_location_required": "Indica dónde está el artículo antes de publicarlo",