@stapel/search-react 0.23.0 → 0.25.0
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.
- package/CHANGELOG.md +120 -0
- package/README.md +76 -2
- package/dist/default/FilterChips.d.ts +86 -2
- package/dist/default/FilterChips.d.ts.map +1 -1
- package/dist/default/FilterChips.js +208 -2
- package/dist/default/FilterChips.js.map +1 -1
- package/dist/default/OtherCategoriesLine.d.ts +49 -0
- package/dist/default/OtherCategoriesLine.d.ts.map +1 -0
- package/dist/default/OtherCategoriesLine.js +127 -0
- package/dist/default/OtherCategoriesLine.js.map +1 -0
- package/dist/default/SearchPage.d.ts +36 -1
- package/dist/default/SearchPage.d.ts.map +1 -1
- package/dist/default/SearchPage.js +9 -4
- package/dist/default/SearchPage.js.map +1 -1
- package/dist/default/SearchResultsPane.d.ts +15 -0
- package/dist/default/SearchResultsPane.d.ts.map +1 -1
- package/dist/default/SearchResultsPane.js +4 -1
- package/dist/default/SearchResultsPane.js.map +1 -1
- package/dist/default/index.d.ts +4 -2
- package/dist/default/index.d.ts.map +1 -1
- package/dist/default/index.js +2 -1
- package/dist/default/index.js.map +1 -1
- package/dist/headless/useOtherCategories.d.ts +52 -0
- package/dist/headless/useOtherCategories.d.ts.map +1 -0
- package/dist/headless/useOtherCategories.js +92 -0
- package/dist/headless/useOtherCategories.js.map +1 -0
- package/dist/i18n/es.d.ts.map +1 -1
- package/dist/i18n/es.js +9 -0
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/keys.d.ts +42 -0
- package/dist/i18n/keys.d.ts.map +1 -1
- package/dist/i18n/keys.js +53 -0
- package/dist/i18n/keys.js.map +1 -1
- package/dist/i18n/ru.d.ts.map +1 -1
- package/dist/i18n/ru.js +10 -0
- package/dist/i18n/ru.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/llms.txt +2 -1
- package/manifest.json +34 -1
- package/nav-manifest.json +1 -1
- package/package.json +7 -7
- package/src/analytics/generated/events.json +1 -1
- package/src/default/FilterChips.tsx +308 -4
- package/src/default/OtherCategoriesLine.tsx +238 -0
- package/src/default/SearchPage.tsx +65 -1
- package/src/default/SearchResultsPane.tsx +28 -0
- package/src/default/index.ts +28 -1
- package/src/headless/useOtherCategories.ts +193 -0
- package/src/i18n/es.ts +10 -0
- package/src/i18n/keys.ts +57 -0
- package/src/i18n/ru.ts +11 -0
- package/src/index.ts +10 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,125 @@
|
|
|
1
1
|
# @stapel/search-react
|
|
2
2
|
|
|
3
|
+
## 0.25.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 6441f84: search: the sections a query reached are ONE line, drawn from the answer that drew the cards
|
|
8
|
+
|
|
9
|
+
A storefront's results page carried a block titled "Categories for «auto»":
|
|
10
|
+
one full-width row per section, fourteen of them under the results — and it
|
|
11
|
+
appeared a beat AFTER the results, because it came from a second request to
|
|
12
|
+
`/suggest`. So the page a person had already started reading moved under them,
|
|
13
|
+
for information that was not new. `/query` had answered with
|
|
14
|
+
`facet_meta.categories` — `{path, count}` for every section the candidate set
|
|
15
|
+
contains, the same list the block was printing — and the type-ahead had shown
|
|
16
|
+
the same sections a keystroke earlier.
|
|
17
|
+
|
|
18
|
+
**`<SearchPage otherCategories categoryName={...}>`** (and the same two props
|
|
19
|
+
on `<SearchResultsPane>`) draws it as a line above the results:
|
|
20
|
+
|
|
21
|
+
> Search in other categories: **Cars 12** · **Buses 3** · **Motorhomes 1** · 5 more
|
|
22
|
+
|
|
23
|
+
- **the rows come from the SEARCH response**, so the line is in the document in
|
|
24
|
+
the same commit as the first card. With results on screen this feature makes
|
|
25
|
+
no request at all — the test asserts zero `/suggest` calls on the wire, not
|
|
26
|
+
merely that nothing is drawn twice;
|
|
27
|
+
- **the one exception is an empty result**, which by definition has no
|
|
28
|
+
candidates and is the screen where the sections are worth the most. There
|
|
29
|
+
`/suggest` is asked, into a slot whose height is reserved from the first
|
|
30
|
+
frame, so the answer lands without moving anything — filled or empty;
|
|
31
|
+
- **the counts are the answer's own** and the line is capped at 8 with the tail
|
|
32
|
+
folded behind "N more"; on the phone surface the cap halves to 4 and the
|
|
33
|
+
collapsed line is clamped to two rows besides, because it is name LENGTH and
|
|
34
|
+
not entry count that turns a line back into a block;
|
|
35
|
+
- **pressing an entry narrows the search on screen and keeps the query.** The
|
|
36
|
+
count beside a name is the count for THIS query in that section; a link to
|
|
37
|
+
the bare category feed would show a different, larger number one click later,
|
|
38
|
+
so the caption would be a lie. Each entry is a real `<button>` whose
|
|
39
|
+
accessible name says what it does.
|
|
40
|
+
|
|
41
|
+
Naming an id path stays the host's, the same seam `categoryLabel` fills for the
|
|
42
|
+
category chip: `categoryName` is tried first, then the server's own name (a
|
|
43
|
+
`/suggest` answer already in the query cache names the rows for free), then the
|
|
44
|
+
path's last segment when it is a slug. A row none of the three can name is
|
|
45
|
+
dropped rather than printed as `163`.
|
|
46
|
+
|
|
47
|
+
New: `useOtherCategories`, `OTHER_CATEGORIES_LIMIT`, `OTHER_CATEGORIES_PHONE_LIMIT`,
|
|
48
|
+
`otherCategoryLeaf` from the main entry; `<OtherCategoriesLine>`,
|
|
49
|
+
`otherCategoriesCss()`, `OTHER_CATEGORIES_CLASS`, `OTHER_CATEGORIES_STYLE_HREF`,
|
|
50
|
+
`OTHER_CATEGORIES_PHONE_ROWS`, `OTHER_CATEGORIES_SLOT_MIN_HEIGHT` from
|
|
51
|
+
`./default`. Opt-in: a page that passes neither prop is byte-for-byte what it
|
|
52
|
+
was.
|
|
53
|
+
|
|
54
|
+
Size limits raised with their reasons in the entry names: index 12.5 → 13 KB
|
|
55
|
+
(the headless read), default 26.25 → 27 KB (the line — a net deletion on the
|
|
56
|
+
page that mounts it), i18n/es 3.5 → 3.75 KB (three strings).
|
|
57
|
+
|
|
58
|
+
## 0.24.0
|
|
59
|
+
|
|
60
|
+
### Minor Changes
|
|
61
|
+
|
|
62
|
+
- 01edcd1: search: the chip row gains an APPLIED mode — one chip per constraint, each beside the control that drops it
|
|
63
|
+
|
|
64
|
+
A storefront integrator built this row by hand and asked for it back. On a
|
|
65
|
+
desktop the filters are a rail two thousand pixels tall, and picking two values
|
|
66
|
+
left NOTHING between the page header and the first card: the only trace of a
|
|
67
|
+
choice was a pressed button somewhere inside the column and one "clear all (2)"
|
|
68
|
+
beside it. Dropping ONE of the two meant scrolling the rail until the same
|
|
69
|
+
button came back. A constraint on screen must keep the control that removes it,
|
|
70
|
+
and on that surface neither half was true — the constraint was not on screen
|
|
71
|
+
and its control was not beside it.
|
|
72
|
+
|
|
73
|
+
`<FilterChips>` could not be the answer as it stood. It is a row of OPENERS —
|
|
74
|
+
one chip per axis, applied or not, each opening its own `SkinDialog` — which is
|
|
75
|
+
the right shape where the panel is behind a tap and the wrong one where the
|
|
76
|
+
panel is already drawn: beside an open rail it prints the whole panel twice and
|
|
77
|
+
still removes nothing without a modal over the results.
|
|
78
|
+
|
|
79
|
+
**`mode?: "openers" | "applied"`**, default `openers`, which is byte-for-byte
|
|
80
|
+
the row that shipped. In `applied`:
|
|
81
|
+
|
|
82
|
+
- **one chip per applied VALUE and per applied numeric range**, never one per
|
|
83
|
+
axis — three chosen brands are three chips and three removals, where an
|
|
84
|
+
axis-shaped chip would drop all three with one press;
|
|
85
|
+
- **every caption names the axis AND the value** — "Brand: Bosch", "Price: from
|
|
86
|
+
100 to 500" — because beside a dozen axes a bare value names nothing. A core
|
|
87
|
+
money axis prints as money in the currency the answer's own cards carry; an
|
|
88
|
+
attribute prints its schema unit; the bounds themselves print exactly as the
|
|
89
|
+
URL carries them, since the wire never promised a number and reformatting one
|
|
90
|
+
would rewrite the link;
|
|
91
|
+
- **every chip is a real `<button>`** whose press removes exactly that
|
|
92
|
+
constraint and whose accessible name says so. Not an antd `Tag closable`,
|
|
93
|
+
whose close icon is a `<span>` with no tab stop — a constraint a keyboard can
|
|
94
|
+
read and cannot drop — and not a modal detour;
|
|
95
|
+
- **the rail's own clear-all**, beside the chips instead of a column-height
|
|
96
|
+
down the page;
|
|
97
|
+
- **the same label path as the rail**, stamped on the markup:
|
|
98
|
+
`data-label-source` for the axis and `data-value-label-source` for the value,
|
|
99
|
+
each `server | schema | host | none`. A raw index term reaching this row is
|
|
100
|
+
something a storefront's test can fail on rather than eyeball;
|
|
101
|
+
- **nothing at all when nothing is applied** — an empty band above the results
|
|
102
|
+
is furniture — and nothing before the answer lands: both halves of a caption
|
|
103
|
+
are named by the envelope (`facet_labels`, `facet_meta.core_ranges`), so a row
|
|
104
|
+
that drew early would caption a chip with a slug and rename it a moment
|
|
105
|
+
later.
|
|
106
|
+
|
|
107
|
+
Both modes read the SAME bag the rail reads (`useFacetPanel`, `buildRangeGroups`
|
|
108
|
+
over the page's own state), so no two surfaces can disagree about what is
|
|
109
|
+
applied or about what a value is called.
|
|
110
|
+
|
|
111
|
+
**`<SearchPage appliedChips="desktop">`** mounts the row in the results header
|
|
112
|
+
with one prop. `"desktop"` is the case this exists for — where the rail is on
|
|
113
|
+
screen; on the phone the opener row below already states every applied filter on
|
|
114
|
+
its own chip, and a second row would say it twice. `true` draws it in both
|
|
115
|
+
layouts; omitted, nothing changes.
|
|
116
|
+
|
|
117
|
+
`buildAppliedChips`, `rangeChipText`, `rangeLabelSource` and
|
|
118
|
+
`appliedChipTestId` are exported for a host composing its own row, along with
|
|
119
|
+
`FilterChipsMode` and the split prop types (`FilterChipsOpenerProps` /
|
|
120
|
+
`FilterChipsAppliedProps`, unioned as `FilterChipsProps`) — the applied mode
|
|
121
|
+
takes no `onOpenAll` because it opens nothing.
|
|
122
|
+
|
|
3
123
|
## 0.23.0
|
|
4
124
|
|
|
5
125
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -242,6 +242,44 @@ brings the whole list back **with the bounds said in words** ("from 1900 to
|
|
|
242
242
|
all, silently. A mileage (`1..1000000`) and the core price stay two typed
|
|
243
243
|
fields.
|
|
244
244
|
|
|
245
|
+
## The applied filters have a row of their own
|
|
246
|
+
|
|
247
|
+
`<FilterChips>` has two modes. The default, `mode="openers"`, is the phone's
|
|
248
|
+
row: one chip per axis, applied or not, each opening its own picker. Beside a
|
|
249
|
+
desktop rail that shape is wrong twice — it prints the whole panel a second
|
|
250
|
+
time, and no chip in it removes anything without a modal over the results.
|
|
251
|
+
|
|
252
|
+
`mode="applied"` is the other row, and a page mounts it with one prop:
|
|
253
|
+
|
|
254
|
+
```tsx
|
|
255
|
+
<SearchPage adapter={adapter} appliedChips="desktop" categoryFeatures={features} />
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
`"desktop"` draws it only where the rail is on screen (on the phone the opener
|
|
259
|
+
row below already states every applied filter on its own chip); `true` draws it
|
|
260
|
+
in both layouts. `<FilterChips mode="applied" />` mounts the same row anywhere
|
|
261
|
+
a host wants it.
|
|
262
|
+
|
|
263
|
+
What it draws:
|
|
264
|
+
|
|
265
|
+
- **one chip per applied VALUE and per applied numeric range**, never one per
|
|
266
|
+
axis — three chosen brands are three chips and three removals;
|
|
267
|
+
- **each caption names the axis and the value** — "Brand: Bosch", "Price: from
|
|
268
|
+
100 to 500" — because beside a dozen axes a bare value names nothing. A core
|
|
269
|
+
money axis prints as money, in the currency the answer's own cards carry;
|
|
270
|
+
- **each chip is a real `<button>`** whose press drops exactly that constraint
|
|
271
|
+
and whose accessible name says so (an antd `Tag closable` puts the removal in
|
|
272
|
+
a `<span>` with no tab stop: a constraint a keyboard can read and cannot
|
|
273
|
+
drop), plus the same clear-all the rail's footer runs;
|
|
274
|
+
- **the label path of the rail**, stamped: `data-label-source` for the axis and
|
|
275
|
+
`data-value-label-source` for the value, both `server | schema | host | none`;
|
|
276
|
+
- **nothing at all when nothing is applied**, and nothing before the answer
|
|
277
|
+
lands — a caption that renames itself under the reader is worse than one that
|
|
278
|
+
arrives a moment later.
|
|
279
|
+
|
|
280
|
+
`buildAppliedChips`, `rangeChipText`, `rangeLabelSource` and
|
|
281
|
+
`appliedChipTestId` are exported for a host composing its own row.
|
|
282
|
+
|
|
245
283
|
## The rail's scrollbar is in the gutter, not on the filters
|
|
246
284
|
|
|
247
285
|
The rail scrolls on its own when it outgrows the window. `scrollbar-width:
|
|
@@ -253,6 +291,42 @@ real width and every colour a `--stapel-*` custom property, so it is the
|
|
|
253
291
|
panel's own hairline in both themes. `railScrollbarCss()` and `RAIL_CLASS` are
|
|
254
292
|
exported for a host that lays out its own column.
|
|
255
293
|
|
|
294
|
+
## The other sections are a line, and they come with the results
|
|
295
|
+
|
|
296
|
+
`<SearchPage otherCategories categoryName={...}>` draws
|
|
297
|
+
|
|
298
|
+
> Search in other categories: **Cars 12** · **Buses 3** · **Motorhomes 1** · 5 more
|
|
299
|
+
|
|
300
|
+
above the results, and every part of that sentence is already in the answer
|
|
301
|
+
that drew the cards. `/query` returns `facet_meta.categories` — `{path, count}`
|
|
302
|
+
for every section the candidate set contains — so the line renders in the SAME
|
|
303
|
+
commit as the first card. There is no second request to arrive late and push
|
|
304
|
+
the page, which is exactly what the shape it replaces did: a full-width block
|
|
305
|
+
of one row per section, fetched from `/suggest` after the page had settled.
|
|
306
|
+
|
|
307
|
+
One case still earns a request. An empty result set has no candidates, so the
|
|
308
|
+
answer names no sections, and that is the screen where "this word exists in
|
|
309
|
+
these sections" is worth the most — there `/suggest` is asked, into a slot
|
|
310
|
+
whose height is reserved from the first frame (`OTHER_CATEGORIES_SLOT_MIN_HEIGHT`)
|
|
311
|
+
so the answer lands without moving anything. `useOtherCategories()` says which
|
|
312
|
+
case a page is in (`source`, `reserving`, `pending`) for a host drawing its own.
|
|
313
|
+
|
|
314
|
+
Pressing an entry NARROWS the search on screen and keeps the query: the count
|
|
315
|
+
beside a name is the count for this query in that section, and a link to the
|
|
316
|
+
bare category feed would show a different number a click later.
|
|
317
|
+
|
|
318
|
+
`categoryName` is what makes the line useful on a catalogue addressed by ids.
|
|
319
|
+
The pair holds `"140/145"` and no tree — the same seam `categoryLabel` fills for
|
|
320
|
+
the chip. Without it the line still draws every row the server itself named (a
|
|
321
|
+
`/suggest` answer already in the cache names them for free) and every path whose
|
|
322
|
+
last segment is a slug; a row nothing can name is dropped rather than printed as
|
|
323
|
+
`163`.
|
|
324
|
+
|
|
325
|
+
On the phone surface the cap halves (8 → 4) and the collapsed line is clamped to
|
|
326
|
+
two rows besides, because it is name LENGTH and not entry count that turns a line
|
|
327
|
+
back into a block. `otherCategoriesCss()` and `OTHER_CATEGORIES_CLASS` are
|
|
328
|
+
exported for a host that hoists the sheet itself.
|
|
329
|
+
|
|
256
330
|
## Two browse surfaces the page places
|
|
257
331
|
|
|
258
332
|
Both are exported from `./default` and neither lays itself out — where they
|
|
@@ -334,8 +408,8 @@ the configured engine cannot evaluate.
|
|
|
334
408
|
| api | `createSearchApi`, `searchQueryParams`, `SEARCH_SORTS`, wire types |
|
|
335
409
|
| state (pure) | `parseSearchState`, `writeSearchState`, `patchSearchState`, `toggleFilterValue`, `setFilterValues`, `setRangeValue`, `clearFilters`, `activeFilterCount`, `parseDegradations`, `countIsEstimate`, `buildFacetGroups`, `orderFacetGroupsBySchema`, `facetGroupIsDrawable`, `facetGroupHasEvidence`, `facetOptionLabel`, `translitPrefixMatch`, `translitKey`, `consonantKey` |
|
|
336
410
|
| model | `createSearchRuntime`, `searchQueryKeys`, `useSearchQuery`, `useRankingDisclosure` |
|
|
337
|
-
| headless | `SearchProvider`, `SearchStateProvider`/`useSearchState`, `SearchResults`, `FacetPanel`, `RankingDisclosure` |
|
|
338
|
-
| `./default` | `SearchPage`, `SearchResultsPane`, `FacetPanelPane`, `RankingDisclosurePane`, `SearchBox`, `SortSelect`, `PageSizeSelect`, `LanguageSelect`, `SearchResultCard`, `RangeFilterRow`, `DegradationNotice`, `UrlIssueNotice`, `PopularValues`, `PartitionChips`, `facetGroupShape`, `isDictionaryFacet`, `railScrollbarCss`, `RAIL_CLASS`, `FACET_VISIBLE_GROUPS` (the skin themes itself through `SkinTheme` from `@stapel/tokens-antd/skin`; the pair's own `SearchSkinTheme` is gone as of 0.6.0) |
|
|
411
|
+
| headless | `SearchProvider`, `SearchStateProvider`/`useSearchState`, `SearchResults`, `FacetPanel`, `RankingDisclosure`, `useOtherCategories` |
|
|
412
|
+
| `./default` | `SearchPage`, `SearchResultsPane`, `FacetPanelPane`, `RankingDisclosurePane`, `SearchBox`, `SortSelect`, `PageSizeSelect`, `LanguageSelect`, `SearchResultCard`, `RangeFilterRow`, `DegradationNotice`, `UrlIssueNotice`, `PopularValues`, `PartitionChips`, `OtherCategoriesLine`, `otherCategoriesCss`, `FilterChips` (`mode="openers" | "applied"`), `buildAppliedChips`, `facetGroupShape`, `isDictionaryFacet`, `railScrollbarCss`, `RAIL_CLASS`, `FACET_VISIBLE_GROUPS` (the skin themes itself through `SkinTheme` from `@stapel/tokens-antd/skin`; the pair's own `SearchSkinTheme` is gone as of 0.6.0) |
|
|
339
413
|
| `./router` | `useRouterSearchParams` |
|
|
340
414
|
| i18n | `registerSearchI18n` (+ `./i18n/ru`, `./i18n/es`) |
|
|
341
415
|
| errors | `SEARCH_ERRORS`, `explainSearchError`, `SEARCH_WINDOW_EXCEEDED`, `SEARCH_BACKEND_UNAVAILABLE` |
|
|
@@ -2,7 +2,7 @@ import type { ReactElement, ReactNode } from "react";
|
|
|
2
2
|
import type { FeatureDef } from "@stapel/attributes-react";
|
|
3
3
|
import type { FacetLabelResolver } from "../headless/useFacetLabels.js";
|
|
4
4
|
import type { RangeGroup } from "../state/ranges.js";
|
|
5
|
-
import type { FacetGroup } from "../state/facets.js";
|
|
5
|
+
import type { FacetGroup, FacetLabelSource } from "../state/facets.js";
|
|
6
6
|
import type { CategoryFilterSlotProps } from "./FacetPanelPane.js";
|
|
7
7
|
/** The class the scroller carries, for {@link chipRowCss}. */
|
|
8
8
|
export declare const CHIP_ROW_CLASS = "stapel-filter-chips";
|
|
@@ -67,7 +67,10 @@ export declare function capChipRow(specs: readonly ChipSpec[], max: number | nul
|
|
|
67
67
|
readonly visible: readonly ChipSpec[];
|
|
68
68
|
readonly overflow: number;
|
|
69
69
|
};
|
|
70
|
-
|
|
70
|
+
/** What the row is FOR — see this module's opening note. */
|
|
71
|
+
export type FilterChipsMode = "openers" | "applied";
|
|
72
|
+
/** What both modes read the search through. */
|
|
73
|
+
export interface FilterChipsCommonProps {
|
|
71
74
|
/** The category's feature schema — the source of option labels, of which
|
|
72
75
|
* slugs get a range chip, of which slugs are choosable at all, and of how
|
|
73
76
|
* each group is drawn. */
|
|
@@ -79,6 +82,10 @@ export interface FilterChipsProps {
|
|
|
79
82
|
* value cannot read one way on a chip and another way inside the sheet.
|
|
80
83
|
*/
|
|
81
84
|
readonly resolveFacetLabels?: FacetLabelResolver;
|
|
85
|
+
}
|
|
86
|
+
export interface FilterChipsOpenerProps extends FilterChipsCommonProps {
|
|
87
|
+
/** The default. Every chip OPENS a picker; see the module note. */
|
|
88
|
+
readonly mode?: "openers";
|
|
82
89
|
/**
|
|
83
90
|
* The catalogue picker (`categories-react`), same slot the panel takes.
|
|
84
91
|
*
|
|
@@ -111,6 +118,18 @@ export interface FilterChipsProps {
|
|
|
111
118
|
*/
|
|
112
119
|
readonly maxRowChips?: number | null;
|
|
113
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* The applied row: one chip per constraint, each of which removes it.
|
|
123
|
+
*
|
|
124
|
+
* None of the opener props are here and that is the point — a row that draws
|
|
125
|
+
* only what is applied has no picker to open, no capped tail to stand in front
|
|
126
|
+
* of and no category chip (narrowing the category is a navigation, not a
|
|
127
|
+
* filter this row can drop).
|
|
128
|
+
*/
|
|
129
|
+
export interface FilterChipsAppliedProps extends FilterChipsCommonProps {
|
|
130
|
+
readonly mode: "applied";
|
|
131
|
+
}
|
|
132
|
+
export type FilterChipsProps = FilterChipsOpenerProps | FilterChipsAppliedProps;
|
|
114
133
|
/**
|
|
115
134
|
* The last segment of a `root/leaf` category path.
|
|
116
135
|
*
|
|
@@ -122,5 +141,70 @@ export interface FilterChipsProps {
|
|
|
122
141
|
* a coordinate, always print the name you actually have.
|
|
123
142
|
*/
|
|
124
143
|
export declare function categoryLeaf(path: string): string | undefined;
|
|
144
|
+
/**
|
|
145
|
+
* The row, in whichever mode was asked for.
|
|
146
|
+
*
|
|
147
|
+
* Two components rather than one with a branch in it: the modes share the
|
|
148
|
+
* search they read and share nothing they DRAW, and a single body would have
|
|
149
|
+
* to run both sets of hooks on every render of either.
|
|
150
|
+
*/
|
|
125
151
|
export declare function FilterChips(props: FilterChipsProps): ReactElement | null;
|
|
152
|
+
type Translate = (key: string, params?: Record<string, unknown>) => string;
|
|
153
|
+
/** Which constraint one applied chip drops. */
|
|
154
|
+
export type AppliedChipTarget = {
|
|
155
|
+
readonly kind: "facet";
|
|
156
|
+
readonly slug: string;
|
|
157
|
+
readonly value: string;
|
|
158
|
+
} | {
|
|
159
|
+
readonly kind: "range";
|
|
160
|
+
readonly slug: string;
|
|
161
|
+
};
|
|
162
|
+
/** One applied constraint, resolved to the words it prints and what it drops. */
|
|
163
|
+
export interface AppliedChip {
|
|
164
|
+
readonly key: string;
|
|
165
|
+
readonly target: AppliedChipTarget;
|
|
166
|
+
/** What the AXIS is called, and which source named it. */
|
|
167
|
+
readonly name: string;
|
|
168
|
+
readonly nameSource: FacetLabelSource;
|
|
169
|
+
/** What the VALUE is called, and which source named it. */
|
|
170
|
+
readonly value: string;
|
|
171
|
+
readonly valueSource: FacetLabelSource;
|
|
172
|
+
}
|
|
173
|
+
/** The chip's own test hook — the constraint it drops, spelled out. */
|
|
174
|
+
export declare function appliedChipTestId(target: AppliedChipTarget): string;
|
|
175
|
+
/**
|
|
176
|
+
* A numeric constraint as one phrase.
|
|
177
|
+
*
|
|
178
|
+
* The bounds print exactly as the URL carries them — the wire never promised a
|
|
179
|
+
* number and reformatting one would rewrite the link — except on a core MONEY
|
|
180
|
+
* axis, where the currency the answer's own cards carry turns "1000" into
|
|
181
|
+
* money, the same way the cards do.
|
|
182
|
+
*/
|
|
183
|
+
export declare function rangeChipText(range: RangeGroup, t: Translate): string;
|
|
184
|
+
/**
|
|
185
|
+
* Where a range axis got its NAME — the same three-source question the facet
|
|
186
|
+
* groups answer for themselves, asked of the other half of the model.
|
|
187
|
+
*
|
|
188
|
+
* A core axis is named by the answer declaring it (`facet_meta.core_ranges`)
|
|
189
|
+
* and this package's own catalogue; a category attribute is named by the
|
|
190
|
+
* schema; a slug the URL constrains that neither explains prints as itself,
|
|
191
|
+
* and that is `"none"` — the same honest bottom the rail marks.
|
|
192
|
+
*/
|
|
193
|
+
export declare function rangeLabelSource(range: RangeGroup): FacetLabelSource;
|
|
194
|
+
/**
|
|
195
|
+
* Every applied constraint of the current search, in the order the rail states
|
|
196
|
+
* them: the facet values first, in the order the groups came in, then the
|
|
197
|
+
* numeric ranges.
|
|
198
|
+
*
|
|
199
|
+
* Pure, and exported, because "one chip per VALUE" is the whole shape of the
|
|
200
|
+
* row — a build that collapsed three chosen brands into one chip would remove
|
|
201
|
+
* three filters with one press and no test that only counts chips would see
|
|
202
|
+
* it.
|
|
203
|
+
*/
|
|
204
|
+
export declare function buildAppliedChips(input: {
|
|
205
|
+
readonly groups: readonly FacetGroup[];
|
|
206
|
+
readonly ranges: readonly RangeGroup[];
|
|
207
|
+
readonly t: Translate;
|
|
208
|
+
}): readonly AppliedChip[];
|
|
209
|
+
export {};
|
|
126
210
|
//# sourceMappingURL=FilterChips.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterChips.d.ts","sourceRoot":"","sources":["../../src/default/FilterChips.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FilterChips.d.ts","sourceRoot":"","sources":["../../src/default/FilterChips.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,43 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
|
-
* `<FilterChips>` — the
|
|
4
|
-
*
|
|
3
|
+
* `<FilterChips>` — the filter row, in its two modes.
|
|
4
|
+
*
|
|
5
|
+
* ## `mode="openers"` (the default): the phone's row
|
|
6
|
+
*
|
|
7
|
+
* One horizontally scrolling line of chips, each of which opens its OWN
|
|
8
|
+
* picker. Everything below this heading describes that mode.
|
|
9
|
+
*
|
|
10
|
+
* ## `mode="applied"`: the row a rail on screen needs
|
|
11
|
+
*
|
|
12
|
+
* Where the panel is already drawn — the desktop column — a row of openers is
|
|
13
|
+
* the wrong shape twice over: it prints the whole rail a second time, and no
|
|
14
|
+
* chip in it REMOVES anything without opening a modal over the results. A
|
|
15
|
+
* storefront hit exactly that (a 2377px filter column; picking two values left
|
|
16
|
+
* nothing between the header and the first card, and dropping one of them
|
|
17
|
+
* meant scrolling the rail until its button came back) and wrote its own row.
|
|
18
|
+
* This mode is that row, in the pair:
|
|
19
|
+
*
|
|
20
|
+
* - one chip per applied facet VALUE and per applied numeric range, never per
|
|
21
|
+
* axis — "Brand" with three values chosen is three chips, three removals;
|
|
22
|
+
* - each chip names the axis AND the value ("Brand: Bosch", "Price: from 100
|
|
23
|
+
* to 500"), because beside a dozen axes a bare value names nothing;
|
|
24
|
+
* - each chip is a real `<button>` whose press removes THAT constraint, and
|
|
25
|
+
* whose accessible name says so — not an antd `Tag closable`, whose close
|
|
26
|
+
* icon is a `<span>` with no tab stop, i.e. a constraint a keyboard can
|
|
27
|
+
* read and cannot drop;
|
|
28
|
+
* - the same clear-all the rail's footer runs, beside the chips instead of a
|
|
29
|
+
* column-height away;
|
|
30
|
+
* - nothing applied, nothing drawn. An empty band above the results is
|
|
31
|
+
* furniture, and this row's whole claim is that it is there only when it
|
|
32
|
+
* has something to say.
|
|
33
|
+
*
|
|
34
|
+
* Both modes read the SAME bag (`useFacetPanel`, `buildRangeGroups` over the
|
|
35
|
+
* page's own state) the rail reads, so no two surfaces can disagree about what
|
|
36
|
+
* is applied or about what a value is called — including the label path:
|
|
37
|
+
* the answer's `facet_labels` first, the category schema second, the raw slug
|
|
38
|
+
* marked as such third. Every applied chip stamps `data-label-source` and
|
|
39
|
+
* `data-value-label-source` so a storefront's test fails on a raw index term
|
|
40
|
+
* rather than eyeballing one.
|
|
5
41
|
*
|
|
6
42
|
* ## What it replaces, and why the replacement is not cosmetic
|
|
7
43
|
*
|
|
@@ -278,7 +314,17 @@ export function categoryLeaf(path) {
|
|
|
278
314
|
// FILTER's own name, the same thing every other unset chip shows.
|
|
279
315
|
return /^\d+$/.test(leaf) ? undefined : leaf;
|
|
280
316
|
}
|
|
317
|
+
/**
|
|
318
|
+
* The row, in whichever mode was asked for.
|
|
319
|
+
*
|
|
320
|
+
* Two components rather than one with a branch in it: the modes share the
|
|
321
|
+
* search they read and share nothing they DRAW, and a single body would have
|
|
322
|
+
* to run both sets of hooks on every render of either.
|
|
323
|
+
*/
|
|
281
324
|
export function FilterChips(props) {
|
|
325
|
+
return props.mode === "applied" ? (_jsx(AppliedChipRow, { ...props })) : (_jsx(OpenerChipRow, { ...props }));
|
|
326
|
+
}
|
|
327
|
+
function OpenerChipRow(props) {
|
|
282
328
|
const t = useT();
|
|
283
329
|
const { state, setCategory } = useSearchState();
|
|
284
330
|
const bag = useFacetPanel({
|
|
@@ -386,6 +432,166 @@ export function FilterChips(props) {
|
|
|
386
432
|
: sheetFor(open, group.label, _jsx(RangeFilterRow, { group: group, onApply: bag.setRange }));
|
|
387
433
|
})()] }));
|
|
388
434
|
}
|
|
435
|
+
/** The chip's own test hook — the constraint it drops, spelled out. */
|
|
436
|
+
export function appliedChipTestId(target) {
|
|
437
|
+
return target.kind === "facet"
|
|
438
|
+
? `search-applied-chip-${target.slug}-${target.value}`
|
|
439
|
+
: `search-applied-chip-range-${target.slug}`;
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* A numeric constraint as one phrase.
|
|
443
|
+
*
|
|
444
|
+
* The bounds print exactly as the URL carries them — the wire never promised a
|
|
445
|
+
* number and reformatting one would rewrite the link — except on a core MONEY
|
|
446
|
+
* axis, where the currency the answer's own cards carry turns "1000" into
|
|
447
|
+
* money, the same way the cards do.
|
|
448
|
+
*/
|
|
449
|
+
export function rangeChipText(range, t) {
|
|
450
|
+
const one = (bound) => {
|
|
451
|
+
const n = Number(bound);
|
|
452
|
+
if (range.currency !== undefined && Number.isFinite(n)) {
|
|
453
|
+
return new Intl.NumberFormat(undefined, {
|
|
454
|
+
style: "currency",
|
|
455
|
+
currency: range.currency,
|
|
456
|
+
maximumFractionDigits: 0,
|
|
457
|
+
}).format(n);
|
|
458
|
+
}
|
|
459
|
+
return range.unit === undefined ? bound : `${bound} ${range.unit}`;
|
|
460
|
+
};
|
|
461
|
+
if (range.from !== undefined && range.to !== undefined) {
|
|
462
|
+
return t(SEARCH_I18N_KEYS.filtersChipRangeBetween, {
|
|
463
|
+
from: one(range.from),
|
|
464
|
+
to: one(range.to),
|
|
465
|
+
});
|
|
466
|
+
}
|
|
467
|
+
if (range.from !== undefined) {
|
|
468
|
+
return t(SEARCH_I18N_KEYS.filtersChipRangeFrom, { from: one(range.from) });
|
|
469
|
+
}
|
|
470
|
+
return t(SEARCH_I18N_KEYS.filtersChipRangeTo, { to: one(range.to ?? "") });
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Where a range axis got its NAME — the same three-source question the facet
|
|
474
|
+
* groups answer for themselves, asked of the other half of the model.
|
|
475
|
+
*
|
|
476
|
+
* A core axis is named by the answer declaring it (`facet_meta.core_ranges`)
|
|
477
|
+
* and this package's own catalogue; a category attribute is named by the
|
|
478
|
+
* schema; a slug the URL constrains that neither explains prints as itself,
|
|
479
|
+
* and that is `"none"` — the same honest bottom the rail marks.
|
|
480
|
+
*/
|
|
481
|
+
export function rangeLabelSource(range) {
|
|
482
|
+
if (range.core)
|
|
483
|
+
return "server";
|
|
484
|
+
return range.feature === undefined ? "none" : "schema";
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Every applied constraint of the current search, in the order the rail states
|
|
488
|
+
* them: the facet values first, in the order the groups came in, then the
|
|
489
|
+
* numeric ranges.
|
|
490
|
+
*
|
|
491
|
+
* Pure, and exported, because "one chip per VALUE" is the whole shape of the
|
|
492
|
+
* row — a build that collapsed three chosen brands into one chip would remove
|
|
493
|
+
* three filters with one press and no test that only counts chips would see
|
|
494
|
+
* it.
|
|
495
|
+
*/
|
|
496
|
+
export function buildAppliedChips(input) {
|
|
497
|
+
const chips = [];
|
|
498
|
+
for (const group of input.groups) {
|
|
499
|
+
for (const option of group.options) {
|
|
500
|
+
if (!option.selected)
|
|
501
|
+
continue;
|
|
502
|
+
chips.push({
|
|
503
|
+
key: `f.${group.slug}=${option.value}`,
|
|
504
|
+
target: { kind: "facet", slug: group.slug, value: option.value },
|
|
505
|
+
name: group.label,
|
|
506
|
+
nameSource: group.labelSource,
|
|
507
|
+
value: option.label,
|
|
508
|
+
valueSource: option.labelSource,
|
|
509
|
+
});
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
for (const range of input.ranges) {
|
|
513
|
+
if (!range.active)
|
|
514
|
+
continue;
|
|
515
|
+
const source = rangeLabelSource(range);
|
|
516
|
+
chips.push({
|
|
517
|
+
key: `r.${range.slug}`,
|
|
518
|
+
target: { kind: "range", slug: range.slug },
|
|
519
|
+
name: range.label,
|
|
520
|
+
nameSource: source,
|
|
521
|
+
value: rangeChipText(range, input.t),
|
|
522
|
+
// The bounds are the person's own numbers — nobody had to name them.
|
|
523
|
+
valueSource: source,
|
|
524
|
+
});
|
|
525
|
+
}
|
|
526
|
+
return chips;
|
|
527
|
+
}
|
|
528
|
+
/** The applied row wraps: it stands beside a rail, not on a 390px scroller,
|
|
529
|
+
* and a constraint pushed off the line is a constraint with no control. */
|
|
530
|
+
const APPLIED_ROW = {
|
|
531
|
+
display: "flex",
|
|
532
|
+
alignItems: "center",
|
|
533
|
+
gap: spacing[2],
|
|
534
|
+
flexWrap: "wrap",
|
|
535
|
+
// Room for the focus ring of the first chip, which a flush edge clips.
|
|
536
|
+
paddingBlock: spacing[1],
|
|
537
|
+
};
|
|
538
|
+
function AppliedChipRow(props) {
|
|
539
|
+
const t = useT();
|
|
540
|
+
const { state } = useSearchState();
|
|
541
|
+
const bag = useFacetPanel({
|
|
542
|
+
...(props.categoryFeatures !== undefined
|
|
543
|
+
? { categoryFeatures: props.categoryFeatures }
|
|
544
|
+
: {}),
|
|
545
|
+
...(props.locale !== undefined ? { locale: props.locale } : {}),
|
|
546
|
+
...(props.resolveFacetLabels !== undefined
|
|
547
|
+
? { resolveFacetLabels: props.resolveFacetLabels }
|
|
548
|
+
: {}),
|
|
549
|
+
});
|
|
550
|
+
const ranges = buildRangeGroups({
|
|
551
|
+
state,
|
|
552
|
+
...(props.categoryFeatures !== undefined
|
|
553
|
+
? { categoryFeatures: props.categoryFeatures }
|
|
554
|
+
: {}),
|
|
555
|
+
coreRanges: bag.coreRanges,
|
|
556
|
+
...(bag.currency !== undefined ? { currency: bag.currency } : {}),
|
|
557
|
+
t,
|
|
558
|
+
});
|
|
559
|
+
/* NOTHING IS DRAWN UNTIL THE ANSWER LANDS.
|
|
560
|
+
*
|
|
561
|
+
* Both halves of a chip are named by the envelope: the heading path
|
|
562
|
+
* (`facet_labels[<slug>]`), and — for a range — the answer's own declaration
|
|
563
|
+
* of which axes are CORE columns (`facet_meta.core_ranges`). Before it, an
|
|
564
|
+
* `r.price` the URL carries is a slug this row has no name for, so it would
|
|
565
|
+
* draw a chip captioned with that slug and rename it a moment later. A
|
|
566
|
+
* caption that changes under the reader is worse than a caption that
|
|
567
|
+
* arrives; the panel is the control in the meantime.
|
|
568
|
+
*/
|
|
569
|
+
const answered = bag.state.status === "ready";
|
|
570
|
+
const chips = buildAppliedChips({
|
|
571
|
+
groups: answered ? bag.state.data : [],
|
|
572
|
+
ranges: answered ? ranges : [],
|
|
573
|
+
t,
|
|
574
|
+
});
|
|
575
|
+
if (chips.length === 0)
|
|
576
|
+
return null;
|
|
577
|
+
const remove = (target) => {
|
|
578
|
+
if (target.kind === "facet")
|
|
579
|
+
bag.toggle(target.slug, target.value);
|
|
580
|
+
else
|
|
581
|
+
bag.setRange(target.slug, null);
|
|
582
|
+
};
|
|
583
|
+
return (_jsxs("div", { style: APPLIED_ROW, role: "group", "aria-label": t(SEARCH_I18N_KEYS.filtersAppliedLabel), "data-testid": "search-applied-chips", children: [chips.map((chip) => {
|
|
584
|
+
const text = t(SEARCH_I18N_KEYS.filtersChipPair, {
|
|
585
|
+
name: chip.name,
|
|
586
|
+
value: chip.value,
|
|
587
|
+
});
|
|
588
|
+
return (_jsxs(Button, { shape: "round", size: "small", style: CHIP, "data-testid": appliedChipTestId(chip.target), "data-label-source": chip.nameSource, "data-value-label-source": chip.valueSource, "data-analytics": "none", "data-analytics-reason": "dropping a filter is a read, not a flow step", "aria-label": t(SEARCH_I18N_KEYS.filtersChipRemove, { filter: text }), onClick: () => {
|
|
589
|
+
remove(chip.target);
|
|
590
|
+
}, children: [_jsx("span", { children: text }), _jsx("span", { "aria-hidden": "true", children: "×" })] }, chip.key));
|
|
591
|
+
}), _jsx(Button, { type: "link", size: "small", style: { paddingInline: 0 }, "data-testid": "search-applied-chips-clear", "data-analytics": "none", "data-analytics-reason": "dropping the filters is a read, not a flow step", onClick: () => {
|
|
592
|
+
bag.clearAll();
|
|
593
|
+
}, children: t(SEARCH_I18N_KEYS.facetsClearAll, { count: bag.activeFilters }) })] }));
|
|
594
|
+
}
|
|
389
595
|
/** The mark on the "all filters" chip: something is applied. Not a count —
|
|
390
596
|
* the counts are on the chips beside it, and a number inside a 32px circle is
|
|
391
597
|
* a number nobody reads. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterChips.js","sourceRoot":"","sources":["../../src/default/FilterChips.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FilterChips.js","sourceRoot":"","sources":["../../src/default/FilterChips.tsx"],"names":[],"mappings":"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"}
|