mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-3496] Grouped facet queries (#4209)
* [ADF-3496] search query format v2 response parser - replacer for the parseFacetFields * [ADF-3496] format v2 search facetQueries parser * [ADF-3496] cleanup * [ADF-3496] Grouped facet queries - selection working - needs code cleanup * [ADF-3496] code cleanup * [ADF-3496] code refactoring - renaming * [ADF-3496] update tests * [ADF-3496] update tests part2 * [ADF-3496] preserve order * [ADF-3496] fix facet queries expand * [ADF-3496] code cleanup & fixes * [ADF-3496] reorder methods * [ADF-3496] update test * fix unrelated failing test * [ADF-3496] fix config snippet * [ADF-3496] facet queries mincount * [ADF-3496] documentation updated * [ADF-3496] small fix * [ADF-3496] e2e testing * [ADF-3496] added TestRail ids * [ADF-3496] import from right api
This commit is contained in:
committed by
Eugenio Romano
parent
c91c3f5a81
commit
bf718d905f
@@ -76,7 +76,7 @@ A typical configuration is shown below:
|
||||
"pageSize": 4,
|
||||
"queries": [
|
||||
{ "query": "created:2018", "label": "Created This Year" },
|
||||
{ "query": "content.mimetype", "label": "Type" },
|
||||
{ "query": "content.mimetype:text/html", "label": "Type: HTML" },
|
||||
{ "query": "content.size:[0 TO 10240]", "label": "Size: xtra small"},
|
||||
{ "query": "content.size:[10240 TO 102400]", "label": "Size: small"},
|
||||
{ "query": "content.size:[102400 TO 1048576]", "label": "Size: medium" },
|
||||
@@ -298,7 +298,7 @@ These provide custom categories based on admin-defined facet queries.
|
||||
"expanded": true,
|
||||
"queries": [
|
||||
{ "query": "created:2018", "label": "Created This Year" },
|
||||
{ "query": "content.mimetype", "label": "Type" },
|
||||
{ "query": "content.mimetype:text/html", "label": "Type: HTML" },
|
||||
{ "query": "content.size:[0 TO 10240]", "label": "Size: xtra small"},
|
||||
{ "query": "content.size:[10240 TO 102400]", "label": "Size: small"},
|
||||
{ "query": "content.size:[102400 TO 1048576]", "label": "Size: medium" },
|
||||
@@ -311,12 +311,40 @@ These provide custom categories based on admin-defined facet queries.
|
||||
}
|
||||
```
|
||||
|
||||
The queries declared in the `facetQueries` are collected into a single collapsible category.
|
||||
Only the queries that have 1 or more response entries are displayed at runtime.
|
||||
By default, the queries declared in the `facetQueries` are collected into a single collapsible category.
|
||||
The `mincount` property allows setting the minimum count required for a facet field to be displayed. By default, only the queries that have 1 or more response entries are displayed at runtime.
|
||||
The component provides a `Show more` button to display more items if the number of items
|
||||
exceeds the `pageSize` value.
|
||||
|
||||
You can also provide a custom `label` (or i18n resource key) for the resulting collapsible category.
|
||||
You can also provide a custom `label` (or i18n resource key) for the default resulting collapsible category.
|
||||
If you need to display more resulting collapsible categories, you can group different facet queries under custom labels by using the `group` property on those facet queries:
|
||||
```json
|
||||
{
|
||||
"search": {
|
||||
"facetQueries": {
|
||||
"label": "Facet queries",
|
||||
"pageSize": 5,
|
||||
"expanded": true,
|
||||
"mincount": 0,
|
||||
"queries": [
|
||||
{ "query": "created:2018", "label": "Created This Year" },
|
||||
{ "query": "modifier:admin", "label": "Admin modifier" },
|
||||
{ "query": "content.mimetype:text/html", "label": "Type: HTML", "group":"Type facet queries" },
|
||||
{ "query": "content.mimetype:image/png", "label": "Type: PNG", "group":"Type facet queries" },
|
||||
{ "query": "content.size:[0 TO 10240]", "label": "Size: xtra small", "group":"Size facet queries"},
|
||||
{ "query": "content.size:[10240 TO 102400]", "label": "Size: small", "group":"Size facet queries"},
|
||||
{ "query": "content.size:[102400 TO 1048576]", "label": "Size: medium", "group":"Size facet queries" },
|
||||
{ "query": "content.size:[1048576 TO 16777216]", "label": "Size: large", "group":"Size facet queries" },
|
||||
{ "query": "content.size:[16777216 TO 134217728]", "label": "Size: xtra large", "group":"Size facet queries" },
|
||||
{ "query": "content.size:[134217728 TO MAX]", "label": "Size: XX large", "group":"Size facet queries" }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
This will result in the following display of the grouped facet queries:
|
||||
|
||||

|
||||
|
||||
The `pageSize` property allows you to define the number of results to display.
|
||||
Users will see `Show more` or `Show less` buttons as appropriate for the result set.
|
||||
|
@@ -20,9 +20,6 @@ Stores information from all the custom search and faceted search widgets, compil
|
||||
Adds a facet bucket to a field.
|
||||
- _field:_ [`FacetField`](../../content-services/search/facet-field.interface.ts) - The target field
|
||||
- _bucket:_ [`FacetFieldBucket`](../../content-services/search/facet-field-bucket.interface.ts) - Bucket to add
|
||||
- **addUserFacetQuery**(query: [`FacetQuery`](../../content-services/search/facet-query.interface.ts))<br/>
|
||||
Adds a facet query.
|
||||
- _query:_ [`FacetQuery`](../../content-services/search/facet-query.interface.ts) - Query to add
|
||||
- **buildQuery**(): `QueryBody`<br/>
|
||||
Builds the current query.
|
||||
- **Returns** `QueryBody` - The finished query
|
||||
@@ -53,9 +50,6 @@ Stores information from all the custom search and faceted search widgets, compil
|
||||
Removes an existing bucket from a field.
|
||||
- _field:_ [`FacetField`](../../content-services/search/facet-field.interface.ts) - The target field
|
||||
- _bucket:_ [`FacetFieldBucket`](../../content-services/search/facet-field-bucket.interface.ts) - Bucket to remove
|
||||
- **removeUserFacetQuery**(query: [`FacetQuery`](../../content-services/search/facet-query.interface.ts))<br/>
|
||||
Removes an existing facet query.
|
||||
- _query:_ [`FacetQuery`](../../content-services/search/facet-query.interface.ts) - Query to remove
|
||||
- **resetToDefaults**()<br/>
|
||||
Resets the query to the defaults specified in the app config.
|
||||
- **update**()<br/>
|
||||
@@ -92,6 +86,7 @@ constructor(queryBuilder: SearchQueryBuilderService) {
|
||||
|
||||
}
|
||||
```
|
||||
> **Note:** Since ADF 3.0.0, the query contains the `"facetFormat": "V2"` parameter so that all the responses have the same structure even if coming from search queries containing facetFields, facetQueries, grouped facetQueries or facetIntervals.
|
||||
|
||||
## See also
|
||||
|
||||
|
Reference in New Issue
Block a user