@stapel/search-react 0.24.0 → 0.26.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 +73 -0
- package/MODULE.md +21 -9
- package/README.md +109 -15
- package/dist/api/generated/schema.d.ts +18 -3
- package/dist/api/generated/schema.d.ts.map +1 -1
- package/dist/api/types.d.ts +39 -4
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js.map +1 -1
- package/dist/default/FacetGroupControl.d.ts +20 -13
- package/dist/default/FacetGroupControl.d.ts.map +1 -1
- package/dist/default/FacetGroupControl.js +29 -21
- package/dist/default/FacetGroupControl.js.map +1 -1
- package/dist/default/FacetPanelPane.d.ts +15 -4
- package/dist/default/FacetPanelPane.d.ts.map +1 -1
- package/dist/default/FacetPanelPane.js +10 -5
- package/dist/default/FacetPanelPane.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 -0
- package/dist/default/SearchPage.d.ts.map +1 -1
- package/dist/default/SearchPage.js +12 -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 +2 -0
- package/dist/default/index.d.ts.map +1 -1
- package/dist/default/index.js +1 -0
- package/dist/default/index.js.map +1 -1
- package/dist/headless/SearchStateProvider.d.ts +12 -2
- package/dist/headless/SearchStateProvider.d.ts.map +1 -1
- package/dist/headless/SearchStateProvider.js +58 -6
- package/dist/headless/SearchStateProvider.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 +3 -0
- package/dist/i18n/es.js.map +1 -1
- package/dist/i18n/generated/errors.es.gen.d.ts.map +1 -1
- package/dist/i18n/generated/errors.es.gen.js +1 -0
- package/dist/i18n/generated/errors.es.gen.js.map +1 -1
- package/dist/i18n/generated/errors.gen.d.ts +6 -0
- package/dist/i18n/generated/errors.gen.d.ts.map +1 -1
- package/dist/i18n/generated/errors.gen.js +3 -0
- package/dist/i18n/generated/errors.gen.js.map +1 -1
- package/dist/i18n/generated/errors.ru.gen.d.ts.map +1 -1
- package/dist/i18n/generated/errors.ru.gen.js +1 -0
- package/dist/i18n/generated/errors.ru.gen.js.map +1 -1
- package/dist/i18n/keys.d.ts +25 -0
- package/dist/i18n/keys.d.ts.map +1 -1
- package/dist/i18n/keys.js +29 -0
- package/dist/i18n/keys.js.map +1 -1
- package/dist/i18n/ru.d.ts.map +1 -1
- package/dist/i18n/ru.js +4 -0
- package/dist/i18n/ru.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/model/queries.d.ts.map +1 -1
- package/dist/model/queries.js +9 -1
- package/dist/model/queries.js.map +1 -1
- package/dist/state/facets.d.ts +62 -11
- package/dist/state/facets.d.ts.map +1 -1
- package/dist/state/facets.js +141 -29
- package/dist/state/facets.js.map +1 -1
- package/dist/state/urlState.d.ts +77 -2
- package/dist/state/urlState.d.ts.map +1 -1
- package/dist/state/urlState.js +80 -6
- package/dist/state/urlState.js.map +1 -1
- package/llms.txt +4 -2
- package/manifest.json +45 -1
- package/nav-manifest.json +1 -1
- package/package.json +10 -10
- package/src/analytics/generated/events.json +1 -1
- package/src/api/generated/schema.ts +18 -3
- package/src/api/types.ts +42 -4
- package/src/default/FacetGroupControl.tsx +27 -23
- package/src/default/FacetPanelPane.tsx +30 -8
- package/src/default/OtherCategoriesLine.tsx +238 -0
- package/src/default/SearchPage.tsx +57 -1
- package/src/default/SearchResultsPane.tsx +28 -0
- package/src/default/index.ts +13 -0
- package/src/headless/SearchStateProvider.tsx +94 -4
- package/src/headless/useOtherCategories.ts +193 -0
- package/src/i18n/es.ts +4 -0
- package/src/i18n/generated/errors.es.gen.ts +1 -0
- package/src/i18n/generated/errors.gen.ts +3 -0
- package/src/i18n/generated/errors.json +9 -0
- package/src/i18n/generated/errors.ru.gen.ts +1 -0
- package/src/i18n/keys.ts +32 -0
- package/src/i18n/ru.ts +5 -0
- package/src/index.ts +23 -1
- package/src/model/queries.ts +11 -1
- package/src/state/facets.ts +173 -30
- package/src/state/urlState.ts +137 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,78 @@
|
|
|
1
1
|
# @stapel/search-react
|
|
2
2
|
|
|
3
|
+
## 0.26.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- d88077a: Short feature keys in the address, a vocabulary axis that is always a field, and an axis with no evidence that is no longer drawn.
|
|
8
|
+
|
|
9
|
+
**`f.make=toyota`, not `f.make_ref_select=toyota`.** The importer's type suffix carries nothing a reader can act on. stapel-search 0.14.4+ states the readable half per group (`facet_labels[slug].url_key` — the slug minus its suffix where that stays unambiguous among the features of the category in scope, the slug itself otherwise) and accepts both forms inside that scope. The codec now **writes** `url_key` and **reads either**: `parseSearchState(params, {facetKeys})`, `writeSearchState(state, base, facetKeys)`, `buildFacetKeyMap` / `facetKeyMapFromLabels` to make a map, and the server's own collision rules applied again on the client — a short form that is another slug of the same answer, or that two slugs claim, keeps the slug on both sides. The map rides the answer: `useSearchQuery` publishes it to `SearchStateProvider` (`usePublishFacetKeys` / `useFacetKeys`), which re-parses the URL with it and writes every later address through it. Nothing is renamed and nothing is stored — the request this pair sends still carries the slug — so a link written before this release, and a link written against a server that states no `url_key`, both keep working. `buildFacetGroups` matches a filter by either spelling, so the rail, the chip row, the popular-values block and the applied chips all round-trip through one key.
|
|
10
|
+
|
|
11
|
+
**A vocabulary-backed axis is always the field.** `isDictionaryFacet` counted evidence buckets, so on a leaf holding three cars the make drew three checkboxes over a vocabulary of four hundred makes. Where the values LIVE decides the control now: `ref_select`/`ref_hierarchical_select` — or a group with no def whose answer names a `vocabulary` — is a dictionary however many buckets came back, and the searchable field is the only control that can reach values the answer never enumerated. An inline `select` keeps its checkboxes or pills whatever its length. `facetGroupIsVocabularyBacked` is exported; `FacetGroup` carries `urlKey` and `vocabulary`.
|
|
12
|
+
|
|
13
|
+
**A group with zero evidence and nothing selected is not drawn.** A live laptops leaf drew six of six groups as accordions a person could open and narrow nothing by: every counted bucket zero, and the axes the facet budget skipped standing on their authored option tables with `count: null` on every row. `facetGroupIsDrawable` now asks for evidence — at least one value some candidate carries — with two exemptions: an axis the reader has already filtered on, and any vocabulary-backed axis, whose field searches its dictionary with no buckets at all (`make` on a cars leaf holding three cars, `vendor` on a laptops leaf holding one — both now KEPT where they used to be dropped, while the zero-filled inline tables beside them go). `mandatory` is not part of the rule: the live laptops leaf marks none of vendor/model/screen size required, so gating on it would have deleted the vendor picker to save the make one. Consequence worth stating: an axis the plan cut at `MAX_FACET_FIELDS` is no longer drawn from its schema table alone — raising that budget is the fix, and stapel-search 0.14.5 spends it in schema order, required first.
|
|
14
|
+
|
|
15
|
+
**Three things a storefront could not do from `<SearchPage>`.**
|
|
16
|
+
|
|
17
|
+
- `dictionaryMode` reaches the page at last, defaulted per layout: `"field"` in the column (the select-style «Any» that opens the searchable list) and `"inline"` in the phone sheet, which is already a disclosure.
|
|
18
|
+
- `footerBar` takes `"sticky" | "static"` (`true` still means sticky). The column layout passes `"static"`: pinned to the rail's scroll port the opaque bar sat over the last two groups, and a storefront was reaching for `!important` to lift it off. A sheet, whose port is the sheet, still pins it.
|
|
19
|
+
- The undrawable-axis warning is DEV-ONLY for real. The guard asked "is this not production", a browser bundle with no `process` shim answered wrong, and `facet group "complectation" has no values to draw` reached buyers' consoles once per page load. It now asks "is this a dev build".
|
|
20
|
+
|
|
21
|
+
## 0.25.0
|
|
22
|
+
|
|
23
|
+
### Minor Changes
|
|
24
|
+
|
|
25
|
+
- 6441f84: search: the sections a query reached are ONE line, drawn from the answer that drew the cards
|
|
26
|
+
|
|
27
|
+
A storefront's results page carried a block titled "Categories for «auto»":
|
|
28
|
+
one full-width row per section, fourteen of them under the results — and it
|
|
29
|
+
appeared a beat AFTER the results, because it came from a second request to
|
|
30
|
+
`/suggest`. So the page a person had already started reading moved under them,
|
|
31
|
+
for information that was not new. `/query` had answered with
|
|
32
|
+
`facet_meta.categories` — `{path, count}` for every section the candidate set
|
|
33
|
+
contains, the same list the block was printing — and the type-ahead had shown
|
|
34
|
+
the same sections a keystroke earlier.
|
|
35
|
+
|
|
36
|
+
**`<SearchPage otherCategories categoryName={...}>`** (and the same two props
|
|
37
|
+
on `<SearchResultsPane>`) draws it as a line above the results:
|
|
38
|
+
|
|
39
|
+
> Search in other categories: **Cars 12** · **Buses 3** · **Motorhomes 1** · 5 more
|
|
40
|
+
|
|
41
|
+
- **the rows come from the SEARCH response**, so the line is in the document in
|
|
42
|
+
the same commit as the first card. With results on screen this feature makes
|
|
43
|
+
no request at all — the test asserts zero `/suggest` calls on the wire, not
|
|
44
|
+
merely that nothing is drawn twice;
|
|
45
|
+
- **the one exception is an empty result**, which by definition has no
|
|
46
|
+
candidates and is the screen where the sections are worth the most. There
|
|
47
|
+
`/suggest` is asked, into a slot whose height is reserved from the first
|
|
48
|
+
frame, so the answer lands without moving anything — filled or empty;
|
|
49
|
+
- **the counts are the answer's own** and the line is capped at 8 with the tail
|
|
50
|
+
folded behind "N more"; on the phone surface the cap halves to 4 and the
|
|
51
|
+
collapsed line is clamped to two rows besides, because it is name LENGTH and
|
|
52
|
+
not entry count that turns a line back into a block;
|
|
53
|
+
- **pressing an entry narrows the search on screen and keeps the query.** The
|
|
54
|
+
count beside a name is the count for THIS query in that section; a link to
|
|
55
|
+
the bare category feed would show a different, larger number one click later,
|
|
56
|
+
so the caption would be a lie. Each entry is a real `<button>` whose
|
|
57
|
+
accessible name says what it does.
|
|
58
|
+
|
|
59
|
+
Naming an id path stays the host's, the same seam `categoryLabel` fills for the
|
|
60
|
+
category chip: `categoryName` is tried first, then the server's own name (a
|
|
61
|
+
`/suggest` answer already in the query cache names the rows for free), then the
|
|
62
|
+
path's last segment when it is a slug. A row none of the three can name is
|
|
63
|
+
dropped rather than printed as `163`.
|
|
64
|
+
|
|
65
|
+
New: `useOtherCategories`, `OTHER_CATEGORIES_LIMIT`, `OTHER_CATEGORIES_PHONE_LIMIT`,
|
|
66
|
+
`otherCategoryLeaf` from the main entry; `<OtherCategoriesLine>`,
|
|
67
|
+
`otherCategoriesCss()`, `OTHER_CATEGORIES_CLASS`, `OTHER_CATEGORIES_STYLE_HREF`,
|
|
68
|
+
`OTHER_CATEGORIES_PHONE_ROWS`, `OTHER_CATEGORIES_SLOT_MIN_HEIGHT` from
|
|
69
|
+
`./default`. Opt-in: a page that passes neither prop is byte-for-byte what it
|
|
70
|
+
was.
|
|
71
|
+
|
|
72
|
+
Size limits raised with their reasons in the entry names: index 12.5 → 13 KB
|
|
73
|
+
(the headless read), default 26.25 → 27 KB (the line — a net deletion on the
|
|
74
|
+
page that mounts it), i18n/es 3.5 → 3.75 KB (three strings).
|
|
75
|
+
|
|
3
76
|
## 0.24.0
|
|
4
77
|
|
|
5
78
|
### Minor Changes
|
package/MODULE.md
CHANGED
|
@@ -209,15 +209,27 @@ one value.
|
|
|
209
209
|
|
|
210
210
|
**The gap the seam does not close: EXISTENCE.** `resolveFacetLabels` names
|
|
211
211
|
values; it does not enumerate them. A `ref_select` group the server did not
|
|
212
|
-
count
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
and
|
|
219
|
-
|
|
220
|
-
|
|
212
|
+
count has no options from either side — the answer counted nothing, the schema
|
|
213
|
+
holds a pointer. Since 0.26 that is no longer a reason to take a
|
|
214
|
+
vocabulary-backed axis off the page: its control is a searchable field, the
|
|
215
|
+
field works over a dictionary the answer never enumerated, and a leaf holding
|
|
216
|
+
three cars is a fact about the stand rather than about the make axis. The rule
|
|
217
|
+
does not ask `mandatory` — the live laptops leaf marks none of vendor, model
|
|
218
|
+
and screen size required, and gating on it would have deleted the vendor
|
|
219
|
+
picker to save the make one. What the
|
|
220
|
+
client still cannot do is fill the list — so the fix on the other side stands
|
|
221
|
+
(the facet plan must count a required vocabulary axis, and stapel-search 0.14.5
|
|
222
|
+
now spends `MAX_FACET_FIELDS` in schema order, required first), and a host that
|
|
223
|
+
wants values in that field before the plan counts them wires
|
|
224
|
+
`resolveFacetLabels` to its vocabulary.
|
|
225
|
+
|
|
226
|
+
Every OTHER axis with no evidence is dropped: an authored option set the answer
|
|
227
|
+
zero-filled, or one the budget skipped, is a set of checkboxes each guaranteed
|
|
228
|
+
to return nothing (a live laptops leaf drew six of those and no filter). The
|
|
229
|
+
drop is reported: one `console.warn` per slug in development — never in
|
|
230
|
+
production, where the guard now asks "is this a dev build" rather than "is this
|
|
231
|
+
not production", because a browser bundle with no `process` shim answered the
|
|
232
|
+
second one wrong and shipped the warning to buyers.
|
|
221
233
|
|
|
222
234
|
## The chip row's order is the row's product
|
|
223
235
|
|
package/README.md
CHANGED
|
@@ -78,6 +78,30 @@ ordered candidate set; carried across a filter change it either gets refused or,
|
|
|
78
78
|
worse, honoured against a different set. `patchSearchState` drops it for every
|
|
79
79
|
change that is not itself a page move, so no call site has to remember.
|
|
80
80
|
|
|
81
|
+
**Short feature keys.** The importer's type suffix carries nothing a reader can
|
|
82
|
+
act on — `f.make_ref_select=toyota` says *make* once and *how the column is
|
|
83
|
+
stored* once — so the address uses the short form the ANSWER states:
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
/c/avtomobili?f.make=toyota&r.year=2015..2020
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
stapel-search 0.14.4+ derives it per request inside the queried category's
|
|
90
|
+
scope (`facet_labels[slug].url_key`: the slug minus its suffix where that stays
|
|
91
|
+
unambiguous, the slug itself otherwise) and accepts both forms. This pair
|
|
92
|
+
**writes** `url_key` and **reads either**, so an old link keeps working and a
|
|
93
|
+
collision keeps the slug on both sides. Nothing is renamed and nothing is
|
|
94
|
+
stored: the slug is still the feature's identity, and the request this pair
|
|
95
|
+
sends carries it.
|
|
96
|
+
|
|
97
|
+
The map travels with the answer — `useSearchQuery` publishes it up to
|
|
98
|
+
`SearchStateProvider` (`usePublishFacetKeys`, `useFacetKeys`), which re-parses
|
|
99
|
+
the URL with it and writes every later address through it. Before the first
|
|
100
|
+
answer, and against a server that states none, the address is spelled in slugs
|
|
101
|
+
exactly as it was. The codec itself stays pure: `parseSearchState(params,
|
|
102
|
+
{facetKeys})`, `writeSearchState(state, base, facetKeys)`, and
|
|
103
|
+
`buildFacetKeyMap` / `facetKeyMapFromLabels` to make one.
|
|
104
|
+
|
|
81
105
|
**Any router, or none.** `SearchStateProvider` takes a `SearchParamsAdapter` —
|
|
82
106
|
two members, shaped exactly like react-router's `useSearchParams()`. `./router`
|
|
83
107
|
ships that binding; a Next.js app, a hash router or a plain `URLSearchParams` in
|
|
@@ -188,20 +212,36 @@ one you came back for. The phone sheet passes `visibleGroups={null}`; a surface
|
|
|
188
212
|
devoted to filtering has the room.
|
|
189
213
|
|
|
190
214
|
`facetGroupIsDrawable(group)` is the one rule the rail and the chip row share
|
|
191
|
-
for "is there anything to draw here"
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
215
|
+
for "is there anything to draw here", and the question it asks is **evidence**:
|
|
216
|
+
at least one value some candidate in this answer actually carries. A live
|
|
217
|
+
laptops leaf drew six of six groups as accordions a person could open and
|
|
218
|
+
narrow nothing by — every counted bucket zero, and the axes the facet budget
|
|
219
|
+
skipped standing on their authored option tables with `count: null` on every
|
|
220
|
+
row. Three exemptions, and nothing else:
|
|
221
|
+
|
|
222
|
+
- an axis the reader has already **filtered on** — a constraint with no
|
|
223
|
+
control to remove it is worse than a bare heading;
|
|
224
|
+
- a **vocabulary-backed** axis: its control is a field over a dictionary the
|
|
225
|
+
answer never enumerated, and that box searches the dictionary rather than
|
|
226
|
+
the buckets — *make* on a cars leaf holding three cars, *vendor* on a
|
|
227
|
+
laptops leaf holding one. `mandatory` is deliberately not asked: on the live
|
|
228
|
+
laptops leaf not one of vendor/model/screen size carries it;
|
|
229
|
+
- an axis with evidence, obviously.
|
|
230
|
+
|
|
231
|
+
A dropped axis is **named** outside production: a `console.warn` says which
|
|
232
|
+
axis went, why, and whether the schema calls it required — the fault that took
|
|
233
|
+
*make* off a live cars rail while every `select`-typed comfort option drew its
|
|
234
|
+
own table and stayed. Note the consequence for a leaf whose plan was cut at
|
|
235
|
+
`MAX_FACET_FIELDS`: an axis the server never counted is not drawn unless it is
|
|
236
|
+
one of the two exemptions, so the way to put it back is to raise that budget
|
|
237
|
+
(stapel-search 0.14.5 spends it in schema order, required first).
|
|
199
238
|
|
|
200
239
|
## A vocabulary is a dictionary, not a checkbox list
|
|
201
240
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
241
|
+
A **vocabulary-backed** axis (`ref_select`/`ref_hierarchical_select`, whose
|
|
242
|
+
config is a pointer and never an option table — or an untyped group the answer
|
|
243
|
+
came back long for, the live case where no schema was threaded through) is
|
|
244
|
+
always a dictionary, **however many buckets came back**: the busiest values, a search box that filters them
|
|
205
245
|
locally, and the chosen values pinned above the box so a filter is never
|
|
206
246
|
invisible. The box matches **across alphabets** — `тойота` finds `Toyota`,
|
|
207
247
|
`тимберленд` finds `Timberland`, `ровер` finds `Land Rover` — by a prefix rule
|
|
@@ -213,6 +253,13 @@ answer — stapel-search caps a vocabulary-backed group at
|
|
|
213
253
|
this), so a 418-term make dictionary arrives whole and the box has everything
|
|
214
254
|
it filters.
|
|
215
255
|
|
|
256
|
+
The bucket count used to decide this, and on a leaf holding three cars the make
|
|
257
|
+
drew three checkboxes over a vocabulary of four hundred makes — "а если там
|
|
258
|
+
сотни вариантов" is a question about the DICTIONARY, and the dictionary is
|
|
259
|
+
large whether or not this leaf has stock. An **inline** option set is never a
|
|
260
|
+
dictionary, whatever its length: a `select` carries its own table, and a small
|
|
261
|
+
one is a list a person reads at a glance.
|
|
262
|
+
|
|
216
263
|
A dictionary outranks the pills, too: the live `make` axis is `maxSelected: 1`
|
|
217
264
|
over a 418-value vocabulary, so "pick one" used to win and the control it drew
|
|
218
265
|
was four hundred pills in a 280px rail.
|
|
@@ -225,10 +272,14 @@ Escape to close. The phone sheet keeps the list inline, because the sheet is
|
|
|
225
272
|
already the disclosure.
|
|
226
273
|
|
|
227
274
|
```tsx
|
|
228
|
-
facetGroupShape(group)
|
|
229
|
-
isDictionaryFacet(group)
|
|
275
|
+
facetGroupShape(group) // "segmented" | "nested" | "checkbox" | "dictionary"
|
|
276
|
+
isDictionaryFacet(group) // vocabulary-backed, or untyped and long
|
|
277
|
+
facetGroupIsVocabularyBacked(group) // the schema's type, else the answer's `vocabulary`
|
|
230
278
|
```
|
|
231
279
|
|
|
280
|
+
`<SearchPage dictionaryMode>` overrides the per-layout default (`"field"` in
|
|
281
|
+
the column, `"inline"` in the sheet).
|
|
282
|
+
|
|
232
283
|
## A bounded integer is a picker, not a bare number
|
|
233
284
|
|
|
234
285
|
A year is not a quantity a person computes, it is one of a hundred-odd values,
|
|
@@ -291,6 +342,49 @@ real width and every colour a `--stapel-*` custom property, so it is the
|
|
|
291
342
|
panel's own hairline in both themes. `railScrollbarCss()` and `RAIL_CLASS` are
|
|
292
343
|
exported for a host that lays out its own column.
|
|
293
344
|
|
|
345
|
+
The panel's footer — the live count, and the clear-all beside it — sits where
|
|
346
|
+
its frame wants it: `footerBar="static"` (what `<SearchPage>` passes in the
|
|
347
|
+
column layout) puts it after the last group, and `"sticky"` / `true` pins it to
|
|
348
|
+
the scroll port's floor, which is right in a sheet whose port IS the sheet. It
|
|
349
|
+
was pinned everywhere, and on the desktop rail an opaque bar over the last two
|
|
350
|
+
groups made them unreachable.
|
|
351
|
+
|
|
352
|
+
## The other sections are a line, and they come with the results
|
|
353
|
+
|
|
354
|
+
`<SearchPage otherCategories categoryName={...}>` draws
|
|
355
|
+
|
|
356
|
+
> Search in other categories: **Cars 12** · **Buses 3** · **Motorhomes 1** · 5 more
|
|
357
|
+
|
|
358
|
+
above the results, and every part of that sentence is already in the answer
|
|
359
|
+
that drew the cards. `/query` returns `facet_meta.categories` — `{path, count}`
|
|
360
|
+
for every section the candidate set contains — so the line renders in the SAME
|
|
361
|
+
commit as the first card. There is no second request to arrive late and push
|
|
362
|
+
the page, which is exactly what the shape it replaces did: a full-width block
|
|
363
|
+
of one row per section, fetched from `/suggest` after the page had settled.
|
|
364
|
+
|
|
365
|
+
One case still earns a request. An empty result set has no candidates, so the
|
|
366
|
+
answer names no sections, and that is the screen where "this word exists in
|
|
367
|
+
these sections" is worth the most — there `/suggest` is asked, into a slot
|
|
368
|
+
whose height is reserved from the first frame (`OTHER_CATEGORIES_SLOT_MIN_HEIGHT`)
|
|
369
|
+
so the answer lands without moving anything. `useOtherCategories()` says which
|
|
370
|
+
case a page is in (`source`, `reserving`, `pending`) for a host drawing its own.
|
|
371
|
+
|
|
372
|
+
Pressing an entry NARROWS the search on screen and keeps the query: the count
|
|
373
|
+
beside a name is the count for this query in that section, and a link to the
|
|
374
|
+
bare category feed would show a different number a click later.
|
|
375
|
+
|
|
376
|
+
`categoryName` is what makes the line useful on a catalogue addressed by ids.
|
|
377
|
+
The pair holds `"140/145"` and no tree — the same seam `categoryLabel` fills for
|
|
378
|
+
the chip. Without it the line still draws every row the server itself named (a
|
|
379
|
+
`/suggest` answer already in the cache names them for free) and every path whose
|
|
380
|
+
last segment is a slug; a row nothing can name is dropped rather than printed as
|
|
381
|
+
`163`.
|
|
382
|
+
|
|
383
|
+
On the phone surface the cap halves (8 → 4) and the collapsed line is clamped to
|
|
384
|
+
two rows besides, because it is name LENGTH and not entry count that turns a line
|
|
385
|
+
back into a block. `otherCategoriesCss()` and `OTHER_CATEGORIES_CLASS` are
|
|
386
|
+
exported for a host that hoists the sheet itself.
|
|
387
|
+
|
|
294
388
|
## Two browse surfaces the page places
|
|
295
389
|
|
|
296
390
|
Both are exported from `./default` and neither lays itself out — where they
|
|
@@ -372,8 +466,8 @@ the configured engine cannot evaluate.
|
|
|
372
466
|
| api | `createSearchApi`, `searchQueryParams`, `SEARCH_SORTS`, wire types |
|
|
373
467
|
| state (pure) | `parseSearchState`, `writeSearchState`, `patchSearchState`, `toggleFilterValue`, `setFilterValues`, `setRangeValue`, `clearFilters`, `activeFilterCount`, `parseDegradations`, `countIsEstimate`, `buildFacetGroups`, `orderFacetGroupsBySchema`, `facetGroupIsDrawable`, `facetGroupHasEvidence`, `facetOptionLabel`, `translitPrefixMatch`, `translitKey`, `consonantKey` |
|
|
374
468
|
| model | `createSearchRuntime`, `searchQueryKeys`, `useSearchQuery`, `useRankingDisclosure` |
|
|
375
|
-
| headless | `SearchProvider`, `SearchStateProvider`/`useSearchState`, `SearchResults`, `FacetPanel`, `RankingDisclosure` |
|
|
376
|
-
| `./default` | `SearchPage`, `SearchResultsPane`, `FacetPanelPane`, `RankingDisclosurePane`, `SearchBox`, `SortSelect`, `PageSizeSelect`, `LanguageSelect`, `SearchResultCard`, `RangeFilterRow`, `DegradationNotice`, `UrlIssueNotice`, `PopularValues`, `PartitionChips`, `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) |
|
|
469
|
+
| headless | `SearchProvider`, `SearchStateProvider`/`useSearchState`, `SearchResults`, `FacetPanel`, `RankingDisclosure`, `useOtherCategories` |
|
|
470
|
+
| `./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) |
|
|
377
471
|
| `./router` | `useRouterSearchParams` |
|
|
378
472
|
| i18n | `registerSearchI18n` (+ `./i18n/ru`, `./i18n/es`) |
|
|
379
473
|
| errors | `SEARCH_ERRORS`, `explainSearchError`, `SEARCH_WINDOW_EXCEEDED`, `SEARCH_BACKEND_UNAVAILABLE` |
|
|
@@ -145,6 +145,13 @@ export interface components {
|
|
|
145
145
|
*/
|
|
146
146
|
radius_km?: number;
|
|
147
147
|
};
|
|
148
|
+
/** @description The queried category in both forms an address can carry. */
|
|
149
|
+
CategoryResolved: {
|
|
150
|
+
/** @description The slash-joined ID path this answer actually filtered on — what to send back as `category`. `category=` accepts an id, an id path, a slug, a slug path and any mix, so the string the caller sent is not necessarily this one: `avtomobili` and `141/avtomobili` both answer `141/151`. */
|
|
151
|
+
path: string;
|
|
152
|
+
/** @description The same node as slug segments, root->leaf — what a readable URL is built from (`/c/avtomobili`). `null`, never partial, when any segment has no slug: half a slug path builds a wrong address and a client cannot see that by looking. `null` here with `category_names` in `degraded[]` means the names provider was unreachable, not that the node has no slug. */
|
|
153
|
+
slugs: string[] | null;
|
|
154
|
+
};
|
|
148
155
|
/** @description One destination in the dropdown, ready to render and ready to follow. */
|
|
149
156
|
CategorySuggestion: {
|
|
150
157
|
/** @description Category id. A `listings`-graded row derives it from the path's leaf segment. */
|
|
@@ -206,8 +213,14 @@ export interface components {
|
|
|
206
213
|
/** @description True when this filter actually narrowed the answer. A false one still contributed to each row's `match_count`. */
|
|
207
214
|
applied: boolean;
|
|
208
215
|
};
|
|
209
|
-
/** @description
|
|
216
|
+
/** @description The heading for one facet group, plus captions for its option codes. */
|
|
210
217
|
FacetLabels: {
|
|
218
|
+
/** @description The feature definition's own name — the HEADING above this group's buckets. `null` when the definition carries no name: a client renders the slug only as a dev-mode fallback, because a raw slug in a heading is not a caption, and this field is how it can tell that case from a name the server has. */
|
|
219
|
+
label: string | null;
|
|
220
|
+
/** @description True when `label` is a translation KEY (`FeatureDef.translate` is `all` or `title`), false when it is literal text. Same question as `translatable`, one level up. */
|
|
221
|
+
label_translatable: boolean;
|
|
222
|
+
/** @description What to call this group in the address: `f.<url_key>` and `r.<url_key>`. The slug without the importer type suffix (`_select`, `_ref_select`, `_int`, `_bool`, `_string`) where that stays unambiguous among the features of the category in scope, and the slug itself otherwise — and always when the query names no category. Derived per request, never stored: the slug remains the feature's identity, and both forms are accepted inside the scope. */
|
|
223
|
+
url_key: string;
|
|
211
224
|
/** @description True when `values` holds translation KEYS to run through the catalogue; false when it holds literal captions. The reader cannot tell by looking — `b.apple` and `Б/у` are both strings. */
|
|
212
225
|
translatable: boolean;
|
|
213
226
|
values: {
|
|
@@ -344,6 +357,8 @@ export interface components {
|
|
|
344
357
|
/** @description The query envelope: AnchorPagination's keys, plus what search owes. */
|
|
345
358
|
SearchResponse: {
|
|
346
359
|
items: components["schemas"]["SearchItem"][];
|
|
360
|
+
/** @description The category this answer filtered on, in both addressable forms. `null` when the query named no category. */
|
|
361
|
+
category_resolved: components["schemas"]["CategoryResolved"] | null;
|
|
347
362
|
/** @description Per-band counts in render order — `nearby` («Объявления поблизости») then `all` («Все объявления»). Present only under `geo_mode=rank`; empty when no centre was given. The rows themselves carry `band`; this is the summary a heading needs. The top-level `count` remains the WHOLE matching total, never the nearby one. */
|
|
348
363
|
bands?: components["schemas"]["BandSummary"][];
|
|
349
364
|
/** @description What the query's words became. Absent entirely while QUERY_UNDERSTANDING is off or `qu=off` was sent. */
|
|
@@ -354,7 +369,7 @@ export interface components {
|
|
|
354
369
|
[key: string]: number;
|
|
355
370
|
};
|
|
356
371
|
};
|
|
357
|
-
/** @description {slug: {translatable, values: {value: caption}}} for
|
|
372
|
+
/** @description {slug: {label, label_translatable, url_key, translatable, values: {value: caption}}} — one entry for EVERY group in `facets`. `url_key` is the group's key in the address. `label` is the group's heading and is null when the definition has no name; `values` is empty for a slug whose options are not inline in the category schema and whose vocabulary resolved nothing, because this module will not invent a caption it has not read. */
|
|
358
373
|
facet_labels: {
|
|
359
374
|
[key: string]: components["schemas"]["FacetLabels"];
|
|
360
375
|
};
|
|
@@ -425,7 +440,7 @@ export interface operations {
|
|
|
425
440
|
anchor?: string;
|
|
426
441
|
/** @description minLat,minLon,maxLat,maxLon. minLon > maxLon means the box crosses +/-180. For an anonymous caller the rectangle is grown OUTWARD to whole ~1.1km cells of the public geo grid, so it can only ever ask about the area a public card publishes: a box EXCLUDES rows, and halving one around a listing would otherwise converge on the seller's pin in a few dozen requests. */
|
|
427
442
|
bbox?: string;
|
|
428
|
-
/** @description root/leaf path; a prefix filter, so a parent finds its descendants. */
|
|
443
|
+
/** @description root/leaf path; a prefix filter, so a parent finds its descendants. Segments are node IDS or SLUGS, in any mix: a bare node id is resolved to that node's full path (`166` == `141/151/166`), and a slug is a whole address on its own because slugs are globally unique (`avtomobili` == `transport/avtomobili` == `141/151`). The form that answered is echoed in `category_resolved`. A segment no category has is a 400, never an empty answer. */
|
|
429
444
|
category?: string;
|
|
430
445
|
/** @description next | prev. */
|
|
431
446
|
direction?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/generated/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/generated/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/api/types.d.ts
CHANGED
|
@@ -22,11 +22,14 @@ export type Schemas = components["schemas"];
|
|
|
22
22
|
* slug either; ABSENT is a server too old to send one, and both read the same
|
|
23
23
|
* way here (fall through to the schema).
|
|
24
24
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
25
|
+
* WHY IT IS NOT THE GENERATED SHAPE: stapel-search 0.14.5's `schema.json`
|
|
26
|
+
* declares this field REQUIRED, but the contract this pair announces is
|
|
27
|
+
* `>=0.14 <0.15`, and a 0.14.0 server inside that range sends no `label` at
|
|
28
|
+
* all. The generated member is therefore `Omit`ted and re-declared here as
|
|
29
|
+
* optional-and-nullable — a type must not promise a field a server the pair
|
|
30
|
+
* says it supports does not send.
|
|
28
31
|
*/
|
|
29
|
-
export type FacetLabels = Schemas["FacetLabels"] & {
|
|
32
|
+
export type FacetLabels = Omit<Schemas["FacetLabels"], "label" | "label_translatable" | "url_key"> & {
|
|
30
33
|
readonly label?: string | null;
|
|
31
34
|
/**
|
|
32
35
|
* Whether {@link label} is a translation KEY rather than a caption, the way
|
|
@@ -41,6 +44,38 @@ export type FacetLabels = Schemas["FacetLabels"] & {
|
|
|
41
44
|
* fixture captured from the wire is not a type error.
|
|
42
45
|
*/
|
|
43
46
|
readonly label_translatable?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* What this group is called IN THE ADDRESS: `f.<url_key>`, `r.<url_key>`.
|
|
49
|
+
*
|
|
50
|
+
* The slug minus the type suffix an importer mints (`_select`,
|
|
51
|
+
* `_ref_select`, `_int`, `_bool`, `_string`) where dropping it stays
|
|
52
|
+
* unambiguous among the features of the category in scope, and the slug
|
|
53
|
+
* itself otherwise — and always when the query names no category
|
|
54
|
+
* (stapel-search 0.14.4+, `facets.url_keys`). Derived per request, never
|
|
55
|
+
* stored: the slug remains the feature's identity and both forms are
|
|
56
|
+
* accepted inside the scope, which is what lets a client write the short
|
|
57
|
+
* one without a migration behind it.
|
|
58
|
+
*
|
|
59
|
+
* WHY IT IS NOT THE GENERATED SHAPE: 0.14.5 declares it REQUIRED, and the
|
|
60
|
+
* announced contract is `>=0.14 <0.15` — a 0.14.0 server in that range
|
|
61
|
+
* states no `url_key`, and the codec's whole point is that such a link
|
|
62
|
+
* still works. `Omit`ted from the generated member and re-declared
|
|
63
|
+
* optional here. Measured on a live answer 2026-09-04:
|
|
64
|
+
* `make_ref_select` → `make`, `fuel_type_ref_select` → `fuel_type`,
|
|
65
|
+
* `model` → `model`.
|
|
66
|
+
*/
|
|
67
|
+
readonly url_key?: string | null;
|
|
68
|
+
/**
|
|
69
|
+
* The vocabulary this group's values are drawn from, when the server names
|
|
70
|
+
* one.
|
|
71
|
+
*
|
|
72
|
+
* The one fact that decides whether an axis is a DICTIONARY rather than a
|
|
73
|
+
* list, and the client's second-best source for it: the first is the
|
|
74
|
+
* category schema's own `optionsRef`, which a host that threaded no schema
|
|
75
|
+
* does not have. Absent on every server that does not state it — absence
|
|
76
|
+
* is not "inline", it is "unsaid", and the schema is asked next.
|
|
77
|
+
*/
|
|
78
|
+
readonly vocabulary?: string | null;
|
|
44
79
|
};
|
|
45
80
|
/** `facet_labels` as a whole: `{slug: {label, translatable, values}}`. */
|
|
46
81
|
export type FacetLabelsMap = Readonly<Record<string, FacetLabels>>;
|
package/dist/api/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,4EAA4E;AAC5E,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"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"}
|
package/dist/api/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAuOA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAiC;IAC5D,OAAO,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;AAC9C,CAAC;AAQD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,WAAW;IACX,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,UAAU;CACX,CAAC"}
|
|
@@ -24,14 +24,21 @@ export interface FacetOptionNode {
|
|
|
24
24
|
readonly depth: number;
|
|
25
25
|
}
|
|
26
26
|
/**
|
|
27
|
-
* Is this group a DICTIONARY —
|
|
27
|
+
* Is this group a DICTIONARY — an axis whose values live in a vocabulary?
|
|
28
28
|
*
|
|
29
|
-
* Two ways to be one,
|
|
30
|
-
* case is the one where it is empty:
|
|
29
|
+
* Two ways to be one, and only the second one counts anything:
|
|
31
30
|
*
|
|
32
|
-
* - the
|
|
33
|
-
*
|
|
34
|
-
* table to draw
|
|
31
|
+
* - the axis is VOCABULARY-BACKED (`facetGroupIsVocabularyBacked`): the def
|
|
32
|
+
* types it `ref_select`/`ref_hierarchical_select`, so its config is a
|
|
33
|
+
* POINTER and there was never an option table to draw — or there is no def
|
|
34
|
+
* and the answer named the vocabulary itself. **However many buckets came
|
|
35
|
+
* back.** This threshold used to be counted against the answer's evidence,
|
|
36
|
+
* and on a stand holding three cars the make axis has three buckets, drew
|
|
37
|
+
* three checkboxes, and hid the other four hundred makes behind nothing at
|
|
38
|
+
* all: the founder's "what if there are hundreds of options" is a question about the DICTIONARY,
|
|
39
|
+
* and the dictionary is large whether or not this leaf has stock. The
|
|
40
|
+
* field is also the only control that can search values the answer never
|
|
41
|
+
* enumerated, which is exactly the case a thin stand produces;
|
|
35
42
|
* - there is NO def at all and the answer came back with more values than a
|
|
36
43
|
* fold. At a live classified's cars branch the storefront passed an empty
|
|
37
44
|
* feature list, so the 418 makes arrived as an unnamed, untyped group of
|
|
@@ -39,10 +46,10 @@ export interface FacetOptionNode {
|
|
|
39
46
|
* answers that, and refusing to draw one because the schema is missing
|
|
40
47
|
* punishes the buyer for the wiring.
|
|
41
48
|
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
49
|
+
* An INLINE option set is never one, whatever its length: a `select` carries
|
|
50
|
+
* its own table, that table is the whole of the axis, and a small one
|
|
51
|
+
* (≤ {@link FACET_DICTIONARY_THRESHOLD} options) is a list a person reads at
|
|
52
|
+
* a glance rather than types into.
|
|
46
53
|
*/
|
|
47
54
|
export declare function isDictionaryFacet(group: FacetGroup): boolean;
|
|
48
55
|
/**
|
|
@@ -56,9 +63,9 @@ export declare function isDictionaryFacet(group: FacetGroup): boolean;
|
|
|
56
63
|
* `maxSelected: 1` over a 418-value vocabulary, so "pick one" won and the
|
|
57
64
|
* control it produced was four hundred pills in a 280px rail — a wall
|
|
58
65
|
* with a different border radius. Above the fold the shape a person needs
|
|
59
|
-
* is a search box, whether or not they may tick two
|
|
60
|
-
*
|
|
61
|
-
*
|
|
66
|
+
* is a search box, whether or not they may tick two. A single-choice axis
|
|
67
|
+
* with an INLINE option table still means pills, because a dictionary is
|
|
68
|
+
* now about where the values live and not about how many came back;
|
|
62
69
|
* - and a dictionary is a dictionary before it is a checkbox list, because
|
|
63
70
|
* the checkbox list is the shape it was drawn as when nobody could pick a
|
|
64
71
|
* make.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FacetGroupControl.d.ts","sourceRoot":"","sources":["../../src/default/FacetGroupControl.tsx"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FacetGroupControl.d.ts","sourceRoot":"","sources":["../../src/default/FacetGroupControl.tsx"],"names":[],"mappings":"AAiEA,OAAO,KAAK,EAAiB,YAAY,EAAE,MAAM,OAAO,CAAC;AAOzD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIlE;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAA8B,CAAC;AAExE,2CAA2C;AAC3C,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,QAAQ,GACR,UAAU,GACV,YAAY,CAAC;AAEjB,8EAA8E;AAC9E,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAwCD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAS5D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CAOlE;AAWD,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,eAAe,EAAE,CAkC9E;AA2XD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD;2EACuE;IACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;gFAC4E;IAC5E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;uEACmE;IACnE,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CA2I7E"}
|