@stapel/search-react 0.32.8 → 0.33.1
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 +101 -0
- package/README.md +76 -1
- package/dist/default/PartitionChips.d.ts.map +1 -1
- package/dist/default/PartitionChips.js +83 -2
- package/dist/default/PartitionChips.js.map +1 -1
- package/dist/default/SearchPage.d.ts +59 -2
- package/dist/default/SearchPage.d.ts.map +1 -1
- package/dist/default/SearchPage.js +24 -4
- package/dist/default/SearchPage.js.map +1 -1
- package/dist/default/SearchResultsPane.d.ts +55 -0
- package/dist/default/SearchResultsPane.d.ts.map +1 -1
- package/dist/default/SearchResultsPane.js +133 -2
- package/dist/default/SearchResultsPane.js.map +1 -1
- package/dist/default/index.d.ts +3 -3
- package/dist/default/index.d.ts.map +1 -1
- package/dist/default/index.js +2 -2
- package/dist/default/index.js.map +1 -1
- package/llms.txt +3 -3
- package/manifest.json +3 -1
- package/nav-manifest.json +1 -1
- package/package.json +3 -3
- package/src/analytics/generated/events.json +1 -1
- package/src/default/PartitionChips.tsx +86 -1
- package/src/default/SearchPage.tsx +73 -1
- package/src/default/SearchResultsPane.tsx +209 -13
- package/src/default/index.ts +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,106 @@
|
|
|
1
1
|
# @stapel/search-react
|
|
2
2
|
|
|
3
|
+
## 0.33.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 182a3b4: search: what pins on a results page is one row of controls, and the partition's arrow keys work more than once (D452, D454)
|
|
8
|
+
|
|
9
|
+
**D452 — the heading is out of the pinned block, and has the column to itself.**
|
|
10
|
+
Measured on the stand: the pinned results block on `/s` was **100px** at 1440
|
|
11
|
+
and **150px** at 1280. Both numbers are one `<h1>` wrapped to two lines. In the
|
|
12
|
+
wide header shape the heading was the leading flex item of the very block that
|
|
13
|
+
pins, the `nowrap` controls row beside it (count, sort, page size, view switch)
|
|
14
|
+
took the width it needed, and the heading was left a **415px** sub-column of a
|
|
15
|
+
1200px measure — so the page pinned a third of a laptop's fold under the header
|
|
16
|
+
while the feed scrolled past it.
|
|
17
|
+
|
|
18
|
+
The heading is now a row of its own at the column's full width
|
|
19
|
+
(`search-results-heading-row`, `inline-size: 100%`), and
|
|
20
|
+
`search-results-toolbar` — the element `stickyToolbar` acts on — is the
|
|
21
|
+
controls' line alone, which is what `header="compact"` already did. Nothing
|
|
22
|
+
about a heading belongs in a pinned bar: it is read once, and its length is the
|
|
23
|
+
HOST's (`resultsHeading` carries a surface's own sentence), so it is the one
|
|
24
|
+
element on the page whose height this pair cannot bound.
|
|
25
|
+
|
|
26
|
+
Visible change for a wide-shape host: the heading and the controls are two rows
|
|
27
|
+
rather than one line, separated by the results column's own gap. `resultsHeading`,
|
|
28
|
+
`resultsHeadingLevel`, `resultsHeadingVisible`, `RESULTS_TOOLBAR_CLASS` and
|
|
29
|
+
`stickyToolbar` are unchanged; a host reaching _into_ the toolbar for the
|
|
30
|
+
heading with a descendant selector must aim at `search-results-heading` instead.
|
|
31
|
+
|
|
32
|
+
**D454 — the segmented partition keeps the focus across the choice it just
|
|
33
|
+
made.** Measured on the stand: the first `ArrowRight` moved the rail from "all"
|
|
34
|
+
to "new" and navigated — correct, the choice IS a `category` in the URL — and
|
|
35
|
+
after the navigation `document.activeElement` was `BODY`. Every further arrow
|
|
36
|
+
press then did nothing, so a keyboard user got exactly one move per Tab into the
|
|
37
|
+
row.
|
|
38
|
+
|
|
39
|
+
Choosing re-renders the surface and, while the new category's children are
|
|
40
|
+
resolved, takes the rail down and puts a new one up: new `input`s, a new antd
|
|
41
|
+
`useId()` name, and the focus left on `<body>`. `<PartitionChips>` now restores
|
|
42
|
+
it to the chosen cell after an arrow press — in both variants, on a re-render
|
|
43
|
+
and across a remount — and only after an arrow press, so a page that was loaded,
|
|
44
|
+
clicked or scrolled is never grabbed. Within one mount it also brings the focus
|
|
45
|
+
and the selection back together, which is what makes the control's own focus
|
|
46
|
+
ring (painted on the checked cell) agree with where the keyboard actually is.
|
|
47
|
+
|
|
48
|
+
## 0.33.0
|
|
49
|
+
|
|
50
|
+
### Minor Changes
|
|
51
|
+
|
|
52
|
+
- 1cdb4eb: search: the rail and the results toolbar can both be told where the page's chrome ends
|
|
53
|
+
|
|
54
|
+
Both columns of `<SearchPage>` pin something, and a deployment with a fixed
|
|
55
|
+
header could state neither of them without reaching around the pair.
|
|
56
|
+
|
|
57
|
+
- **`<SearchPage railTop>`** — where the filter rail's sticky top edge sits. The
|
|
58
|
+
rail is `position: sticky; top: 0` written INLINE, and an inline declaration is
|
|
59
|
+
beaten by nothing but `!important`, so the fleet's storefront carried that
|
|
60
|
+
`!important` as the only rule in its repo aimed at a pair's own geometry —
|
|
61
|
+
which meant the first 56-64px of the rail (its heading and its first control)
|
|
62
|
+
sat behind the header everywhere else. A number is pixels; a string is taken as
|
|
63
|
+
written, so `railTop="var(--stapel-header-height)"` reads the height
|
|
64
|
+
`@stapel/shell-react`'s `<PublicShell>` now publishes rather than restating it.
|
|
65
|
+
The rail's internal height cap moves WITH the offset — a rail pushed 64px down
|
|
66
|
+
the window whose cap is still `100dvh` ends 64px past the foot of the screen
|
|
67
|
+
and its last control is unreachable. `railStyle(top)` is exported for a host
|
|
68
|
+
laying out its own column.
|
|
69
|
+
- **The results toolbar has an element of its own, in BOTH header shapes.**
|
|
70
|
+
`data-testid="search-results-toolbar"` and the class `RESULTS_TOOLBAR_CLASS`
|
|
71
|
+
(`"stapel-search-results-toolbar"`) are on the row that carries the sort, the
|
|
72
|
+
view switch, the page size and the count: in `"banner"` that is the wide header
|
|
73
|
+
block (heading at one end, controls at the other, one line, already a direct
|
|
74
|
+
child of the results column), in `"compact"` the toolbar row alone. It had no
|
|
75
|
+
class, no test id and, in the compact header, no parent but a ~112px stack, so
|
|
76
|
+
a host that wanted it pinned needed a `:has()` on the heading beside it, a
|
|
77
|
+
`display: contents` and this pair's own rail breakpoint restated in a media
|
|
78
|
+
query — three rules aimed at a shape the pane could change under them.
|
|
79
|
+
- **`<SearchResultsPane stickyToolbar={{ top }}>`**, passed through from
|
|
80
|
+
`<SearchPage stickyToolbar>`. It pins the row the pane ACTUALLY drew, which is
|
|
81
|
+
why it is a prop and not a stylesheet: the pane knows which shape it is in and
|
|
82
|
+
a sheet has to guess. Net-zero in flow — `position`, a layer and the `surface`
|
|
83
|
+
background, and not one pixel of padding, because a bar that grows room to
|
|
84
|
+
breathe has to give it back and which spacing that is belongs to the host. And
|
|
85
|
+
no second sort control: there is exactly one on a results page and this pins it
|
|
86
|
+
where it stands.
|
|
87
|
+
- **The toolbar row is one line that cannot become two** — `flex-wrap: nowrap`,
|
|
88
|
+
`min-inline-size: 0`, `overflow-x: auto` and a thin scrollbar, in both shapes. The count arrives
|
|
89
|
+
with the answer, one render after the toolbar is on screen; a row that wraps
|
|
90
|
+
grows a second line at exactly that moment, and a bar that grows while pinned
|
|
91
|
+
pushes the first cards of the feed down under the reader's eye.
|
|
92
|
+
|
|
93
|
+
**One visual change, and only on the phone**: the compact header's stack now
|
|
94
|
+
draws no box of its own (`display: contents`), so its heading, toolbar and count
|
|
95
|
+
are items of the results COLUMN — which is what a sticky row needs, since
|
|
96
|
+
`position: sticky` travels inside its parent and a toolbar nested in a 112px
|
|
97
|
+
stack can move 112px and no further. The gap between those three is therefore
|
|
98
|
+
the column's rather than the stack's. Everything else is unchanged for a host
|
|
99
|
+
that passes neither new prop.
|
|
100
|
+
|
|
101
|
+
Size: `dist/default/index.js` 31.05 → 31.2 KB measured with dependencies held
|
|
102
|
+
constant (150 B); the ceiling moves 31.25 → 31.5 KB.
|
|
103
|
+
|
|
3
104
|
## 0.32.8
|
|
4
105
|
|
|
5
106
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -466,6 +466,74 @@ the scroll port's floor, which is right in a sheet whose port IS the sheet. It
|
|
|
466
466
|
was pinned everywhere, and on the desktop rail an opaque bar over the last two
|
|
467
467
|
groups made them unreachable.
|
|
468
468
|
|
|
469
|
+
## Under a host's own header: `railTop` and `stickyToolbar`
|
|
470
|
+
|
|
471
|
+
```tsx
|
|
472
|
+
<SearchPage
|
|
473
|
+
adapter={adapter}
|
|
474
|
+
railTop="var(--stapel-header-height)"
|
|
475
|
+
stickyToolbar={{ top: "var(--stapel-header-height)" }}
|
|
476
|
+
/>
|
|
477
|
+
```
|
|
478
|
+
|
|
479
|
+
Both columns of this page pin something, and until now neither could be told
|
|
480
|
+
where the page's chrome ends.
|
|
481
|
+
|
|
482
|
+
**`railTop`** is where the filter rail's sticky top edge sits. The rail is
|
|
483
|
+
`position: sticky; top: 0` written INLINE, and an inline declaration is beaten
|
|
484
|
+
by nothing but `!important` — so a deployment with a fixed header had exactly
|
|
485
|
+
one way to move it, and the fleet's storefront carried that `!important` as the
|
|
486
|
+
only rule in its repo aimed at a pair's own geometry. A number is pixels; a
|
|
487
|
+
string is taken as written, so `--stapel-header-height` (published by
|
|
488
|
+
`@stapel/shell-react`'s `<PublicShell>`) can be read rather than restated. The
|
|
489
|
+
rail's internal height cap moves with the offset — a rail pushed 64px down the
|
|
490
|
+
window whose cap is still `100dvh` ends 64px past the foot of the screen, and
|
|
491
|
+
its last control is then unreachable. `railStyle(top)` is exported for a host
|
|
492
|
+
laying out its own column.
|
|
493
|
+
|
|
494
|
+
**`stickyToolbar`** pins the results toolbar under the same chrome, and it is a
|
|
495
|
+
prop rather than a host stylesheet because the pane knows which of its two
|
|
496
|
+
header shapes it drew and a sheet has to guess:
|
|
497
|
+
|
|
498
|
+
| Header shape | What the class `stapel-search-results-toolbar` / `data-testid="search-results-toolbar"` is on | What pins |
|
|
499
|
+
|---|---|---|
|
|
500
|
+
| `"banner"` (wide) | the controls' line — count at one end, the `toolbar` slot at the other | the row; the heading is a sibling ahead of it, in its own full-width row |
|
|
501
|
+
| `"compact"` (phone) | the toolbar row alone | the row — one line, the height of one phone control |
|
|
502
|
+
|
|
503
|
+
In BOTH shapes the pin acts on the controls' line and never on the heading
|
|
504
|
+
(D452). It used to be the wide header BLOCK, heading included, and an `<h1>`
|
|
505
|
+
squeezed into a 415px flex item beside a `nowrap` controls row wrapped to two
|
|
506
|
+
lines: the pinned block measured 100px at 1440 and 150px at 1280 on a live
|
|
507
|
+
storefront. The wide heading now takes a row of its own
|
|
508
|
+
(`data-testid="search-results-heading-row"`, `inline-size: 100%`) so it has the
|
|
509
|
+
column's full measure to set its line in, and what stands under the header
|
|
510
|
+
while the feed scrolls is one row of controls.
|
|
511
|
+
|
|
512
|
+
The compact stack draws no box of its own (`display: contents`), so its three
|
|
513
|
+
rows are items of the results COLUMN: `position: sticky` travels inside its
|
|
514
|
+
parent, and a toolbar nested in a ~112px stack can move 112px and no further.
|
|
515
|
+
The one visible consequence is that the gap between heading, toolbar and count
|
|
516
|
+
is the column's rather than the stack's — and the wide shape now takes the same
|
|
517
|
+
gap between its heading row and its toolbar.
|
|
518
|
+
|
|
519
|
+
Two things the pin does NOT do, both deliberate:
|
|
520
|
+
|
|
521
|
+
- **it adds no padding.** A pinned bar that grows room to breathe over the
|
|
522
|
+
cards passing under it has to give the same room back as negative margin, and
|
|
523
|
+
which spacing that is belongs to the host. A row that occupies exactly the box
|
|
524
|
+
it already occupied cannot shift anything.
|
|
525
|
+
- **it draws no second sort control.** The row that pins is the row the pane
|
|
526
|
+
already drew. A host that builds a bar of its own over the page ends up with
|
|
527
|
+
two sort controls over one search, and the one a person presses is whichever
|
|
528
|
+
the layout put under their thumb.
|
|
529
|
+
|
|
530
|
+
The row is also one line that cannot become two: `flex-wrap: nowrap`,
|
|
531
|
+
`min-inline-size: 0`, `overflow-x: auto` and a thin scrollbar (an invisible
|
|
532
|
+
scroll port is indistinguishable from a row that ends where it was cut). The count arrives WITH the answer,
|
|
533
|
+
one render after the toolbar is already on screen, and a row that wraps grows a
|
|
534
|
+
second line at exactly that moment — a bar that grows while it is pinned pushes
|
|
535
|
+
the first cards of the feed down under the reader's eye.
|
|
536
|
+
|
|
469
537
|
## The other sections are a line, and they come with the results
|
|
470
538
|
|
|
471
539
|
`<SearchPage otherCategories categoryName={...}>` draws
|
|
@@ -540,6 +608,13 @@ come with them. The contract does not vary with the variant, and the per-cell
|
|
|
540
608
|
test ids (`partition-chip-<path>`, `partition-chip-all`, each with
|
|
541
609
|
`data-checked`) are the same in both.
|
|
542
610
|
|
|
611
|
+
An arrow press leaves the focus on the CHOSEN cell — including when choosing
|
|
612
|
+
tore the row down and built it again, which is what a `category` change does to
|
|
613
|
+
it on a real storefront. Without that, the live rail moved once and dropped the
|
|
614
|
+
focus to `<body>`, so a keyboard user got one move per Tab (D454). The row takes
|
|
615
|
+
the focus back only after an arrow press of its own, so a page that was loaded,
|
|
616
|
+
clicked or scrolled is never grabbed.
|
|
617
|
+
|
|
543
618
|
```tsx
|
|
544
619
|
<PartitionChips items={children} value={state.category ?? null}
|
|
545
620
|
variant={isPhone ? "chips" : "segmented"}
|
|
@@ -599,7 +674,7 @@ the configured engine cannot evaluate.
|
|
|
599
674
|
| state (pure) | `parseSearchState`, `writeSearchState`, `patchSearchState`, `toggleFilterValue`, `setFilterValues`, `setRangeValue`, `clearFilters`, `activeFilterCount`, `parseDegradations`, `countIsEstimate`, `buildFacetGroups`, `orderFacetGroupsBySchema`, `facetGroupIsDrawable`, `facetGroupHasEvidence`, `facetOptionLabel`, `translitPrefixMatch`, `translitKey`, `consonantKey` |
|
|
600
675
|
| model | `createSearchRuntime`, `searchQueryKeys`, `useSearchQuery`, `useRankingDisclosure` |
|
|
601
676
|
| headless | `SearchProvider`, `SearchStateProvider`/`useSearchState`, `SearchResults`, `FacetPanel`, `RankingDisclosure`, `useOtherCategories` |
|
|
602
|
-
| `./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) |
|
|
677
|
+
| `./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`, `railStyle`, `RAIL_CLASS`, `RESULTS_TOOLBAR_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) |
|
|
603
678
|
| `./router` | `useRouterSearchParams` |
|
|
604
679
|
| i18n | `registerSearchI18n` (+ `./i18n/ru`, `./i18n/es`) |
|
|
605
680
|
| errors | `SEARCH_ERRORS`, `explainSearchError`, `SEARCH_WINDOW_EXCEEDED`, `SEARCH_BACKEND_UNAVAILABLE` |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PartitionChips.d.ts","sourceRoot":"","sources":["../../src/default/PartitionChips.tsx"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAGV,YAAY,EACZ,SAAS,EACV,MAAM,OAAO,CAAC;AAMf;;oDAEoD;AACpD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C;iFAC6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,uEAAuE;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;CAC1C;
|
|
1
|
+
{"version":3,"file":"PartitionChips.d.ts","sourceRoot":"","sources":["../../src/default/PartitionChips.tsx"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAGV,YAAY,EACZ,SAAS,EACV,MAAM,OAAO,CAAC;AAMf;;oDAEoD;AACpD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C;iFAC6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,uEAAuE;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;CAC1C;AAuED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,YAAY,CAkKvE"}
|
|
@@ -49,7 +49,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
49
49
|
* they were, plus `data-checked`, so a probe that reads a snapshot still has
|
|
50
50
|
* the chosen cell without asking the accessibility tree.
|
|
51
51
|
*/
|
|
52
|
-
import { useRef } from "react";
|
|
52
|
+
import { useEffect, useRef } from "react";
|
|
53
53
|
import { Button, Segmented } from "antd";
|
|
54
54
|
import { useT } from "@stapel/core";
|
|
55
55
|
import { radii, spacing } from "@stapel/tokens";
|
|
@@ -67,6 +67,44 @@ const ROW = {
|
|
|
67
67
|
flexWrap: "wrap",
|
|
68
68
|
gap: spacing[2],
|
|
69
69
|
};
|
|
70
|
+
/** The keys that move the choice, in both variants. */
|
|
71
|
+
const ARROW_KEYS = new Set(["ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown"]);
|
|
72
|
+
/**
|
|
73
|
+
* D454 — WHEN AN ARROW KEY LAST MOVED A PARTITION, AS A TIMESTAMP.
|
|
74
|
+
*
|
|
75
|
+
* Module-scoped, and that is the load-bearing part rather than an oversight.
|
|
76
|
+
*
|
|
77
|
+
* Measured on the stand: the first `ArrowRight` moved "all" -> "new" AND
|
|
78
|
+
* navigated to `/c/novye` — which is what the control is FOR, the choice is a
|
|
79
|
+
* `category` in the URL — and after that navigation `document.activeElement`
|
|
80
|
+
* was `BODY`, so every further arrow press did nothing. The row is not the
|
|
81
|
+
* same row afterwards: the storefront resolves the new category's children,
|
|
82
|
+
* the rail unmounts while that is in flight and mounts again with fresh
|
|
83
|
+
* `items`, and antd's `Segmented` takes a new `useId()` name and renders new
|
|
84
|
+
* `input`s. A ref, a piece of state, a `useEffect` cleanup — everything that
|
|
85
|
+
* lives INSIDE the component instance dies with it, so the one fact that has
|
|
86
|
+
* to cross the remount cannot be kept there.
|
|
87
|
+
*
|
|
88
|
+
* The window is short and the flag is spent on use ({@link takeArrowMove}), so
|
|
89
|
+
* this can restore focus exactly once per keypress and never steals it from a
|
|
90
|
+
* page nobody was driving from the keyboard.
|
|
91
|
+
*/
|
|
92
|
+
let lastArrowMove = 0;
|
|
93
|
+
/** How long after an arrow press the row will still take its focus back. Long
|
|
94
|
+
* enough for a navigation and a refetch, short enough that a page left alone
|
|
95
|
+
* and returned to later is never grabbed. */
|
|
96
|
+
const FOCUS_RESTORE_WINDOW_MS = 2000;
|
|
97
|
+
function noteArrowMove(key) {
|
|
98
|
+
if (ARROW_KEYS.has(key))
|
|
99
|
+
lastArrowMove = Date.now();
|
|
100
|
+
}
|
|
101
|
+
/** True once, for the row that acts on it. */
|
|
102
|
+
function takeArrowMove() {
|
|
103
|
+
const fresh = lastArrowMove !== 0 && Date.now() - lastArrowMove < FOCUS_RESTORE_WINDOW_MS;
|
|
104
|
+
if (fresh)
|
|
105
|
+
lastArrowMove = 0;
|
|
106
|
+
return fresh;
|
|
107
|
+
}
|
|
70
108
|
/** The row's cells, as `[value, label]` — the parent first, then the
|
|
71
109
|
* children in catalogue order. */
|
|
72
110
|
function cells(items, allLabel) {
|
|
@@ -101,6 +139,7 @@ export function PartitionChips(props) {
|
|
|
101
139
|
const cell = options[next];
|
|
102
140
|
if (cell === undefined)
|
|
103
141
|
return;
|
|
142
|
+
noteArrowMove(event.key);
|
|
104
143
|
props.onChange(cell[0]);
|
|
105
144
|
const buttons = row.current?.querySelectorAll('[role="radio"]');
|
|
106
145
|
buttons?.[next]?.focus();
|
|
@@ -110,6 +149,40 @@ export function PartitionChips(props) {
|
|
|
110
149
|
// parent chip rather than vanishing.
|
|
111
150
|
const active = options.findIndex(([value]) => value === props.value);
|
|
112
151
|
const stop = active >= 0 ? active : 0;
|
|
152
|
+
/**
|
|
153
|
+
* D454 — after an arrow press, the CHOSEN cell holds the focus.
|
|
154
|
+
*
|
|
155
|
+
* Two different things are repaired by one effect, and the second is the one
|
|
156
|
+
* the stand measured:
|
|
157
|
+
*
|
|
158
|
+
* - within one mount, `Segmented`'s own handler moves the VALUE and leaves
|
|
159
|
+
* the focus on the cell it started from, so the focused radio and the
|
|
160
|
+
* checked radio disagree — and the control paints its focus ring on the
|
|
161
|
+
* checked one, which is not where the keyboard is;
|
|
162
|
+
* - across a REMOUNT — the choice is a `category`, so choosing navigates,
|
|
163
|
+
* and the rail comes back as new elements — the focus is on `<body>` and
|
|
164
|
+
* the row is unreachable by every further arrow press without a Tab.
|
|
165
|
+
*
|
|
166
|
+
* Keyed on `props.value` and on mount, gated by {@link takeArrowMove}, so a
|
|
167
|
+
* page loaded, clicked, or scrolled is never grabbed: only the row whose
|
|
168
|
+
* arrow key started this takes the focus, and it takes it once.
|
|
169
|
+
*/
|
|
170
|
+
useEffect(() => {
|
|
171
|
+
const root = row.current;
|
|
172
|
+
if (root === null)
|
|
173
|
+
return;
|
|
174
|
+
if (!takeArrowMove())
|
|
175
|
+
return;
|
|
176
|
+
const focused = document.activeElement;
|
|
177
|
+
// Somewhere else on purpose — a dialog, a field the person tabbed into
|
|
178
|
+
// while the answer was in flight — is not ours to overrule. `<body>` is
|
|
179
|
+
// what a remount leaves behind, and inside the row is the intra-mount case
|
|
180
|
+
// where focus and selection have to be brought back together.
|
|
181
|
+
if (focused !== null && focused !== document.body && !root.contains(focused))
|
|
182
|
+
return;
|
|
183
|
+
const cells_ = root.querySelectorAll('input[type="radio"], [role="radio"]');
|
|
184
|
+
cells_[stop]?.focus();
|
|
185
|
+
}, [props.value, stop]);
|
|
113
186
|
const name = props.label ?? t(SEARCH_I18N_KEYS.partitionLabel);
|
|
114
187
|
if (props.variant === "segmented") {
|
|
115
188
|
// antd's own control: `.ant-segmented`, one `input[type=radio]` per cell
|
|
@@ -118,7 +191,15 @@ export function PartitionChips(props) {
|
|
|
118
191
|
// `aria-label` reach the root because the component spreads what it is
|
|
119
192
|
// given over its own defaults (which are `radiogroup` and the string
|
|
120
193
|
// "segmented control").
|
|
121
|
-
return (_jsx(Segmented, { block: true, size: "small", role: "radiogroup", "aria-label": name, "data-variant": "segmented", "data-testid": "partition-chips",
|
|
194
|
+
return (_jsx(Segmented, { block: true, size: "small", ref: row, role: "radiogroup", "aria-label": name, "data-variant": "segmented", "data-testid": "partition-chips",
|
|
195
|
+
/* The keypress is noted where it HAPPENS, before antd's own handler
|
|
196
|
+
turns it into a value change and the host turns that into a
|
|
197
|
+
navigation. Capture, because the cell's `input` is where the event
|
|
198
|
+
lands and the row is only its ancestor — and note only, so the
|
|
199
|
+
control's own arrow handling is untouched. */
|
|
200
|
+
onKeyDownCapture: (event) => {
|
|
201
|
+
noteArrowMove(event.key);
|
|
202
|
+
}, value: props.value ?? ALL, options: options.map(([value, label]) => ({
|
|
122
203
|
value: value ?? ALL,
|
|
123
204
|
label: (
|
|
124
205
|
// The cell's test id and its chosen state, on the one node inside
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PartitionChips.js","sourceRoot":"","sources":["../../src/default/PartitionChips.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"PartitionChips.js","sourceRoot":"","sources":["../../src/default/PartitionChips.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAqCnD;;;;;GAKG;AACH,MAAM,GAAG,GAAG,SAAS,CAAC;AAEtB,MAAM,IAAI,GAAkB,EAAE,YAAY,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;AAEzD,MAAM,GAAG,GAAkB;IACzB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,MAAM;IAChB,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;CAChB,CAAC;AAEF,uDAAuD;AACvD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;AAEhF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB;;6CAE6C;AAC7C,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,SAAS,aAAa,CAAC,GAAW;IAChC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AACtD,CAAC;AAED,8CAA8C;AAC9C,SAAS,aAAa;IACpB,MAAM,KAAK,GAAG,aAAa,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,GAAG,uBAAuB,CAAC;IAC1F,IAAI,KAAK;QAAE,aAAa,GAAG,CAAC,CAAC;IAC7B,OAAO,KAAK,CAAC;AACf,CAAC;AAED;kCACkC;AAClC,SAAS,KAAK,CACZ,KAAgC,EAChC,QAAmB;IAEnB,OAAO;QACL,CAAC,IAAI,EAAE,QAAQ,CAAU;QACzB,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAU,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAA0B;IACvD,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACjB,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,KAAK,CACnB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CACnD,CAAC;IAEF;;;;OAIG;IACH,MAAM,SAAS,GACb,CAAC,KAAa,EAAE,EAAE,CAClB,CAAC,KAAyB,EAAQ,EAAE;QACpC,MAAM,IAAI,GACR,KAAK,CAAC,GAAG,KAAK,YAAY,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW;YACrD,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS;gBACpD,CAAC,CAAC,CAAC,CAAC;gBACJ,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,MAAM;oBACpB,CAAC,CAAC,CAAC,KAAK;oBACR,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,KAAK;wBACnB,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK;wBAC5B,CAAC,CAAC,CAAC,CAAC;QACd,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO;QACvB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAc,gBAAgB,CAAC,CAAC;QAC7E,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC;IAEF,2EAA2E;IAC3E,6EAA6E;IAC7E,qCAAqC;IACrC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtC;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;QACzB,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO;QAC1B,IAAI,CAAC,aAAa,EAAE;YAAE,OAAO;QAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC;QACvC,uEAAuE;QACvE,wEAAwE;QACxE,2EAA2E;QAC3E,8DAA8D;QAC9D,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAClC,qCAAqC,CACtC,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;IACxB,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAExB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAE/D,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QAClC,yEAAyE;QACzE,2EAA2E;QAC3E,qEAAqE;QACrE,uEAAuE;QACvE,qEAAqE;QACrE,wBAAwB;QACxB,OAAO,CACL,KAAC,SAAS,IACR,KAAK,QACL,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,YAAY,gBACL,IAAI,kBACH,WAAW,iBACZ,iBAAiB;YAC7B;;;;4DAIgD;YAChD,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1B,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC,EACD,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,GAAG,EACzB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,KAAK,IAAI,GAAG;gBACnB,KAAK,EAAE;gBACL,kEAAkE;gBAClE,kEAAkE;gBAClE,4DAA4D;gBAC5D,8BACe,kBAAkB,KAAK,IAAI,KAAK,EAAE,kBACjC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,YAErD,KAAK,GACD,CACR;aACF,CAAC,CAAC,EACH,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjB,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,CAAC,GACD,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cACE,KAAK,EAAE,GAAG,kBACG,OAAO,EACpB,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,YAAY,gBACL,IAAI,iBACJ,iBAAiB,YAE5B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;YACrC,MAAM,QAAQ,GAAG,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC;YACvC,OAAO,CACL,KAAC,MAAM,IAEL,IAAI,EAAC,OAAO,EACZ,KAAK,EAAC,OAAO,EACb,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACtC,IAAI,EAAC,OAAO,kBACE,QAAQ;gBACtB,+DAA+D;gBAC/D,0CAA0C;gBAC1C,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjC,KAAK,EAAE,IAAI,iBACE,kBAAkB,KAAK,IAAI,KAAK,EAAE,oBAChC,MAAM,2BACC,+CAA+C,EACrE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAC3B,OAAO,EAAE,GAAG,EAAE;oBACZ,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC,YAEA,KAAK,IAlBD,KAAK,IAAI,GAAG,CAmBV,CACV,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ReactElement, ReactNode } from "react";
|
|
1
|
+
import type { CSSProperties, ReactElement, ReactNode } from "react";
|
|
2
2
|
import type { FeatureDef } from "@stapel/attributes-react";
|
|
3
3
|
import type { SearchParamsAdapter } from "../headless/SearchStateProvider.js";
|
|
4
4
|
import type { FacetLabelResolver } from "../headless/useFacetLabels.js";
|
|
@@ -6,7 +6,7 @@ import type { ParseSearchStateOptions } from "../state/urlState.js";
|
|
|
6
6
|
import type { SearchGeo } from "../api/types.js";
|
|
7
7
|
import type { CategoryFilterSlotProps, GeoFilterSlotProps } from "./FacetPanelPane.js";
|
|
8
8
|
import type { OtherCategoryHrefResolver, OtherCategoryNamer } from "./OtherCategoriesLine.js";
|
|
9
|
-
import type { ResultsColumns, SearchResultsWrapper } from "./SearchResultsPane.js";
|
|
9
|
+
import type { ResultsColumns, SearchResultsWrapper, SearchToolbarPin } from "./SearchResultsPane.js";
|
|
10
10
|
import type { SearchView } from "./ViewSwitch.js";
|
|
11
11
|
import type { DegradationNoticeVariant } from "./DegradationNotice.js";
|
|
12
12
|
import type { SearchCardRenderer } from "./SearchResultCard.js";
|
|
@@ -85,6 +85,19 @@ export declare const RAIL_STYLE_HREF = "stapel-search-rail";
|
|
|
85
85
|
* `<LocationSummaryLine>` hoists one.
|
|
86
86
|
*/
|
|
87
87
|
export declare function railScrollbarCss(): string;
|
|
88
|
+
/**
|
|
89
|
+
* The rail with a host's own offset under it.
|
|
90
|
+
*
|
|
91
|
+
* `top` and the height cap move TOGETHER, and that is the whole reason this is
|
|
92
|
+
* a function rather than one property: a rail pushed 64px down the window whose
|
|
93
|
+
* cap is still `100dvh` ends 64px past the foot of the screen, so its last
|
|
94
|
+
* control is unreachable — the internal scroll has scrolled past the window.
|
|
95
|
+
*
|
|
96
|
+
* A number is pixels; a string is taken as written, so
|
|
97
|
+
* `railTop="var(--stapel-header-height)"` reads the height `<PublicShell>`
|
|
98
|
+
* publishes instead of restating it.
|
|
99
|
+
*/
|
|
100
|
+
export declare function railStyle(top: number | string | undefined): CSSProperties;
|
|
88
101
|
export interface SearchPageProps extends ThemeModeProp, ParseSearchStateOptions {
|
|
89
102
|
/** The URL binding. `useRouterSearchParams()` from `./router` is the
|
|
90
103
|
* react-router one. */
|
|
@@ -320,6 +333,50 @@ export interface SearchPageProps extends ThemeModeProp, ParseSearchStateOptions
|
|
|
320
333
|
* rail beside a 110px result column.
|
|
321
334
|
*/
|
|
322
335
|
readonly filtersLayout?: SearchFiltersLayout;
|
|
336
|
+
/**
|
|
337
|
+
* WHERE the filter rail's sticky top edge is — the offset of whatever chrome
|
|
338
|
+
* is pinned above this page.
|
|
339
|
+
*
|
|
340
|
+
* ```tsx
|
|
341
|
+
* // the height <PublicShell> publishes, read rather than restated
|
|
342
|
+
* <SearchPage railTop="var(--stapel-header-height)" />
|
|
343
|
+
* ```
|
|
344
|
+
*
|
|
345
|
+
* The rail is `position: sticky; top: 0` written INLINE, and an inline
|
|
346
|
+
* declaration is beaten by nothing but `!important` — so a host with a fixed
|
|
347
|
+
* header had exactly one way to say "start below it", and the fleet's
|
|
348
|
+
* storefront carried that `!important` as the only one in the repo aimed at a
|
|
349
|
+
* pair's own geometry. Every deployment with a pinned header has this
|
|
350
|
+
* problem; none of them could state it.
|
|
351
|
+
*
|
|
352
|
+
* A number is pixels; a string is taken as written (a `var()`, a `calc()`,
|
|
353
|
+
* `"4rem"`). The internal scroll cap moves with it — see {@link railStyle} —
|
|
354
|
+
* so the rail still ends at the foot of the window rather than that far past
|
|
355
|
+
* it. Default `0`, which is where the rail has always started.
|
|
356
|
+
*
|
|
357
|
+
* The phone SHEET is unaffected: it is a dialog, not a column, and it has no
|
|
358
|
+
* header to clear.
|
|
359
|
+
*/
|
|
360
|
+
readonly railTop?: number | string;
|
|
361
|
+
/**
|
|
362
|
+
* PIN the results toolbar under whatever chrome is above this page — the
|
|
363
|
+
* other column's half of {@link railTop}.
|
|
364
|
+
*
|
|
365
|
+
* ```tsx
|
|
366
|
+
* <SearchPage
|
|
367
|
+
* railTop="var(--stapel-header-height)"
|
|
368
|
+
* stickyToolbar={{ top: "var(--stapel-header-height)" }}
|
|
369
|
+
* />
|
|
370
|
+
* ```
|
|
371
|
+
*
|
|
372
|
+
* Handed straight to `<SearchResultsPane stickyToolbar>`, which pins the row
|
|
373
|
+
* it actually drew — the whole header block in the wide shape, the toolbar
|
|
374
|
+
* alone in the compact one. There is exactly one sort control on a results
|
|
375
|
+
* page and this pins it where it stands; a host that draws a bar of its own
|
|
376
|
+
* over the page ends up with two, and the one a person presses is whichever
|
|
377
|
+
* the layout put under their thumb.
|
|
378
|
+
*/
|
|
379
|
+
readonly stickyToolbar?: SearchToolbarPin;
|
|
323
380
|
/**
|
|
324
381
|
* The host's own exits from an empty result — sibling sections with their
|
|
325
382
|
* counts. A SLOT for the same reason `breadcrumb` is one: walking the tree
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchPage.d.ts","sourceRoot":"","sources":["../../src/default/SearchPage.tsx"],"names":[],"mappings":"AAgEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"SearchPage.d.ts","sourceRoot":"","sources":["../../src/default/SearchPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -230,6 +230,24 @@ const RAIL = {
|
|
|
230
230
|
// Room for the focus ring of the last control against the scroll edge.
|
|
231
231
|
paddingBlockEnd: spacing[2],
|
|
232
232
|
};
|
|
233
|
+
/**
|
|
234
|
+
* The rail with a host's own offset under it.
|
|
235
|
+
*
|
|
236
|
+
* `top` and the height cap move TOGETHER, and that is the whole reason this is
|
|
237
|
+
* a function rather than one property: a rail pushed 64px down the window whose
|
|
238
|
+
* cap is still `100dvh` ends 64px past the foot of the screen, so its last
|
|
239
|
+
* control is unreachable — the internal scroll has scrolled past the window.
|
|
240
|
+
*
|
|
241
|
+
* A number is pixels; a string is taken as written, so
|
|
242
|
+
* `railTop="var(--stapel-header-height)"` reads the height `<PublicShell>`
|
|
243
|
+
* publishes instead of restating it.
|
|
244
|
+
*/
|
|
245
|
+
export function railStyle(top) {
|
|
246
|
+
if (top === undefined)
|
|
247
|
+
return RAIL;
|
|
248
|
+
const offset = typeof top === "number" ? `${String(top)}px` : top;
|
|
249
|
+
return { ...RAIL, top, maxHeight: `calc(100dvh - ${offset})` };
|
|
250
|
+
}
|
|
233
251
|
/** The results take what is left. `minWidth: 0` so a long word inside a card
|
|
234
252
|
* cannot push the grid wider than its column. */
|
|
235
253
|
const RESULTS_COLUMN = { flex: "1 1 auto", minWidth: 0 };
|
|
@@ -352,7 +370,9 @@ function SearchPageBody(props) {
|
|
|
352
370
|
*/
|
|
353
371
|
const phoneToolbar = layout === "sheet";
|
|
354
372
|
const toolbar = phoneToolbar ? (_jsxs(Flex, { align: "center", justify: "space-between", gap: spacing[2], style: { width: "100%" }, children: [_jsxs(Flex, { align: "center", gap: spacing[2], style: { minWidth: 0 }, children: [_jsx(ViewSwitch, { views: views, value: view.id, onChange: changeView }), _jsx(SortSelect, { compact: true })] }), props.resultsAction] })) : (_jsxs(Flex, { align: "center", wrap: true, gap: spacing[3], children: [_jsx(ViewSwitch, { views: views, value: view.id, onChange: changeView }), _jsx(SortSelect, {}), props.pageSize !== false && _jsx(PageSizeSelect, {}), props.resultsAction] }));
|
|
355
|
-
const results = (_jsx(SearchResultsPane, { toolbar: toolbar, ...(props.resultsLead !== undefined ? { lead: props.resultsLead } : {}), ...(phoneToolbar ? { header: "compact" } : {}),
|
|
373
|
+
const results = (_jsx(SearchResultsPane, { toolbar: toolbar, ...(props.resultsLead !== undefined ? { lead: props.resultsLead } : {}), ...(phoneToolbar ? { header: "compact" } : {}), ...(props.stickyToolbar !== undefined
|
|
374
|
+
? { stickyToolbar: props.stickyToolbar }
|
|
375
|
+
: {}), headingLevel: props.resultsHeadingLevel ?? 1, ...(view.render !== undefined ? { renderResults: view.render } : {}), ...(props.wrapResults !== undefined ? { wrapResults: props.wrapResults } : {}), ...(view.layout !== undefined ? { layout: view.layout } : {}), ...(props.renderCard !== undefined ? { renderCard: props.renderCard } : {}), ...(props.resultsColumns !== undefined
|
|
356
376
|
? { columns: props.resultsColumns }
|
|
357
377
|
: {}), ...(props.resultsHeadingVisible !== undefined
|
|
358
378
|
? { headingVisible: props.resultsHeadingVisible }
|
|
@@ -392,10 +412,10 @@ function SearchPageBody(props) {
|
|
|
392
412
|
setSheetOpen(false);
|
|
393
413
|
}, title: t(SEARCH_I18N_KEYS.facetsTitle), dismissLabel: t(SEARCH_I18N_KEYS.filtersDismiss), "data-testid": "search-filters-sheet", footer: _jsx(Button, { block: true, type: "primary", "data-testid": "search-filters-apply", "data-analytics": "none", "data-analytics-reason": "the filters are already applied; this closes the sheet", onClick: () => {
|
|
394
414
|
setSheetOpen(false);
|
|
395
|
-
}, children: applyLabel }), children: panel }), results] })) : showFilters ? (_jsxs(Flex, { align: "flex-start", gap: spacing[5], "data-testid": "search-page-columns", children: [_jsxs("div", { className: RAIL_CLASS, style:
|
|
415
|
+
}, children: applyLabel }), children: panel }), results] })) : showFilters ? (_jsxs(Flex, { align: "flex-start", gap: spacing[5], "data-testid": "search-page-columns", children: [_jsxs("div", { className: RAIL_CLASS, style: railStyle(props.railTop), children: [_jsx("style", { href: RAIL_STYLE_HREF, precedence: "default", children: railScrollbarCss() }), panel] }), _jsx("div", { style: RESULTS_COLUMN, children: results })] })) : (results)] }));
|
|
396
416
|
}
|
|
397
417
|
export function SearchPage(props) {
|
|
398
|
-
const { adapter, renderCard, categoryFeatures, locale, resolveFacetLabels, searchBox, languages, renderCategoryFilter, categoryLabel, renderGeoFilter, geoLabel, skippedNotice, geoOffer, footer, filtersHeader, resultsHeader, resultsLead, categoryFilter, appliedChips, otherCategories, categoryName, categoryHref, categoryNamesPending, resultsHeading, degradationNotice, railFrom, filtersLayout, defaultFiltersOpen, pageSize, breadcrumb, wrapResults, views, defaultView, onViewChange, resultsAction, resultsHeadingLevel, resultsColumns, resultsHeadingVisible, dictionaryMode, visibleGroups, pinnedFacets, mode, ...parseOptions } = props;
|
|
399
|
-
return (_jsx(SkinTheme, { surface: "base", ...(mode !== undefined ? { mode } : {}), children: _jsx(SearchStateProvider, { adapter: adapter, geoOffer: geoOffer, ...parseOptions, children: _jsx(SearchPageBody, { ...(renderCard !== undefined ? { renderCard } : {}), ...(resultsColumns !== undefined ? { resultsColumns } : {}), ...(resultsHeadingVisible !== undefined ? { resultsHeadingVisible } : {}), ...(dictionaryMode !== undefined ? { dictionaryMode } : {}), ...(visibleGroups !== undefined ? { visibleGroups } : {}), ...(pinnedFacets !== undefined ? { pinnedFacets } : {}), ...(categoryFeatures !== undefined ? { categoryFeatures } : {}), ...(locale !== undefined ? { locale } : {}), ...(resolveFacetLabels !== undefined ? { resolveFacetLabels } : {}), ...(searchBox !== undefined ? { searchBox } : {}), ...(languages !== undefined ? { languages } : {}), ...(renderCategoryFilter !== undefined ? { renderCategoryFilter } : {}), ...(categoryLabel !== undefined ? { categoryLabel } : {}), ...(renderGeoFilter !== undefined ? { renderGeoFilter } : {}), ...(geoLabel !== undefined ? { geoLabel } : {}), ...(skippedNotice !== undefined ? { skippedNotice } : {}), ...(footer !== undefined ? { footer } : {}), ...(filtersHeader !== undefined ? { filtersHeader } : {}), ...(resultsHeader !== undefined ? { resultsHeader } : {}), ...(resultsLead !== undefined ? { resultsLead } : {}), ...(categoryFilter !== undefined ? { categoryFilter } : {}), ...(appliedChips !== undefined ? { appliedChips } : {}), ...(otherCategories !== undefined ? { otherCategories } : {}), ...(categoryName !== undefined ? { categoryName } : {}), ...(categoryHref !== undefined ? { categoryHref } : {}), ...(categoryNamesPending !== undefined ? { categoryNamesPending } : {}), ...(resultsHeading !== undefined ? { resultsHeading } : {}), ...(degradationNotice !== undefined ? { degradationNotice } : {}), ...(railFrom !== undefined ? { railFrom } : {}), ...(filtersLayout !== undefined ? { filtersLayout } : {}), ...(defaultFiltersOpen !== undefined ? { defaultFiltersOpen } : {}), ...(pageSize !== undefined ? { pageSize } : {}), ...(breadcrumb !== undefined ? { breadcrumb } : {}), ...(wrapResults !== undefined ? { wrapResults } : {}), ...(views !== undefined ? { views } : {}), ...(defaultView !== undefined ? { defaultView } : {}), ...(onViewChange !== undefined ? { onViewChange } : {}), ...(resultsAction !== undefined ? { resultsAction } : {}), ...(resultsHeadingLevel !== undefined ? { resultsHeadingLevel } : {}) }) }) }));
|
|
418
|
+
const { adapter, renderCard, categoryFeatures, locale, resolveFacetLabels, searchBox, languages, renderCategoryFilter, categoryLabel, renderGeoFilter, geoLabel, skippedNotice, geoOffer, footer, filtersHeader, resultsHeader, resultsLead, categoryFilter, appliedChips, otherCategories, categoryName, categoryHref, categoryNamesPending, resultsHeading, degradationNotice, railFrom, filtersLayout, railTop, stickyToolbar, defaultFiltersOpen, pageSize, breadcrumb, wrapResults, views, defaultView, onViewChange, resultsAction, resultsHeadingLevel, resultsColumns, resultsHeadingVisible, dictionaryMode, visibleGroups, pinnedFacets, mode, ...parseOptions } = props;
|
|
419
|
+
return (_jsx(SkinTheme, { surface: "base", ...(mode !== undefined ? { mode } : {}), children: _jsx(SearchStateProvider, { adapter: adapter, geoOffer: geoOffer, ...parseOptions, children: _jsx(SearchPageBody, { ...(renderCard !== undefined ? { renderCard } : {}), ...(resultsColumns !== undefined ? { resultsColumns } : {}), ...(resultsHeadingVisible !== undefined ? { resultsHeadingVisible } : {}), ...(dictionaryMode !== undefined ? { dictionaryMode } : {}), ...(visibleGroups !== undefined ? { visibleGroups } : {}), ...(pinnedFacets !== undefined ? { pinnedFacets } : {}), ...(categoryFeatures !== undefined ? { categoryFeatures } : {}), ...(locale !== undefined ? { locale } : {}), ...(resolveFacetLabels !== undefined ? { resolveFacetLabels } : {}), ...(searchBox !== undefined ? { searchBox } : {}), ...(languages !== undefined ? { languages } : {}), ...(renderCategoryFilter !== undefined ? { renderCategoryFilter } : {}), ...(categoryLabel !== undefined ? { categoryLabel } : {}), ...(renderGeoFilter !== undefined ? { renderGeoFilter } : {}), ...(geoLabel !== undefined ? { geoLabel } : {}), ...(skippedNotice !== undefined ? { skippedNotice } : {}), ...(footer !== undefined ? { footer } : {}), ...(filtersHeader !== undefined ? { filtersHeader } : {}), ...(resultsHeader !== undefined ? { resultsHeader } : {}), ...(resultsLead !== undefined ? { resultsLead } : {}), ...(categoryFilter !== undefined ? { categoryFilter } : {}), ...(appliedChips !== undefined ? { appliedChips } : {}), ...(otherCategories !== undefined ? { otherCategories } : {}), ...(categoryName !== undefined ? { categoryName } : {}), ...(categoryHref !== undefined ? { categoryHref } : {}), ...(categoryNamesPending !== undefined ? { categoryNamesPending } : {}), ...(resultsHeading !== undefined ? { resultsHeading } : {}), ...(degradationNotice !== undefined ? { degradationNotice } : {}), ...(railFrom !== undefined ? { railFrom } : {}), ...(filtersLayout !== undefined ? { filtersLayout } : {}), ...(railTop !== undefined ? { railTop } : {}), ...(stickyToolbar !== undefined ? { stickyToolbar } : {}), ...(defaultFiltersOpen !== undefined ? { defaultFiltersOpen } : {}), ...(pageSize !== undefined ? { pageSize } : {}), ...(breadcrumb !== undefined ? { breadcrumb } : {}), ...(wrapResults !== undefined ? { wrapResults } : {}), ...(views !== undefined ? { views } : {}), ...(defaultView !== undefined ? { defaultView } : {}), ...(onViewChange !== undefined ? { onViewChange } : {}), ...(resultsAction !== undefined ? { resultsAction } : {}), ...(resultsHeadingLevel !== undefined ? { resultsHeadingLevel } : {}) }) }) }));
|
|
400
420
|
}
|
|
401
421
|
//# sourceMappingURL=SearchPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchPage.js","sourceRoot":"","sources":["../../src/default/SearchPage.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SearchPage.js","sourceRoot":"","sources":["../../src/default/SearchPage.tsx"],"names":[],"mappings":"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"}
|