Skip to content

Commit

Permalink
Merge branch 'main' into prefix_path_router
Browse files Browse the repository at this point in the history
  • Loading branch information
wesleybl authored Mar 13, 2024
2 parents 294a090 + 2db7d97 commit ad3a147
Show file tree
Hide file tree
Showing 8 changed files with 79 additions and 5 deletions.
1 change: 1 addition & 0 deletions apps/nextjs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ To start, from the root of the monorepo:

```shell
pnpm install
pnpm build:deps && pnpm build:components
pnpm --filter plone-nextjs run dev
```

Expand Down
5 changes: 4 additions & 1 deletion docs/source/client/future-improvements.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,10 @@ The steps for this approach are as follows:
3. Render the component to string on the server
4. Pass the data from collected queries to TanStack Query cache hydration

Refer to official docs for more information: https://tanstack.com/query/v4/docs/framework/react/guides/ssr
```{seealso}
[TanStack Query Server Rendering & Hydration documentation](https://tanstack.com/query/latest/docs/framework/react/guides/ssr)
```


### Automatic caching approach

Expand Down
61 changes: 61 additions & 0 deletions packages/volto/cypress/tests/core/blocks/blocks-search.js
Original file line number Diff line number Diff line change
Expand Up @@ -497,4 +497,65 @@ describe('Search Block Tests', () => {
`Search results: ${results_number}`,
);
});

it('Search block - test on edit sort on and sort order', () => {
cy.visit('/');
cy.get('#toolbar-add > .icon').click();
cy.get('#toolbar-add-document').click();
cy.getSlateTitle().focus().click().type('My Search Page');

// Add Search listing block
cy.addNewBlock('search');

// Add search query criteria
cy.get('#default-query-0-query .react-select__value-container').click();
cy.get('#default-query-0-query .react-select__option')
.contains('Type')
.click();

cy.get('#default-query-0-query .fields:first-of-type > .field').click();
cy.get(
'#default-query-0-query .fields:first-of-type > .field .react-select__option',
)
.contains('Page')
.click();

cy.get('#default-query-0-query .fields:first-of-type > .field').click();
cy.get(
'#default-query-0-query .fields:first-of-type > .field .react-select__option',
)
.contains('Folder')
.click();

cy.get('#default-query-0-query .fields:first-of-type > .field').click();
cy.get(
'#default-query-0-query .fields:first-of-type > .field .react-select__option',
)
.contains('Event')
.click();

// uncheck showSearchButton
cy.get('label[for=field-showSearchButton]').click();
cy.get('.search-wrapper .ui.button').should('contain', 'Search');
// reverse order
cy.get('label[for=field-sort_order_boolean-2-query]').click();
//check if the sorting order is working
cy.get('.listing-item').first().contains('My Event');
cy.get('#select-listingblock-sort-on').click();
cy.get('.react-select__menu .react-select__group')
.first()
.children()
.first()
.next()
.children()
.first()
.next()
.click();
cy.wait(5000);

cy.get('.listing-item').first().contains('My page');
//save page
cy.get('#toolbar-save > .icon').click();
cy.wait(500);
});
});
1 change: 1 addition & 0 deletions packages/volto/news/5262.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
(fix): make search block sort and facets work on edit @dobri1408
1 change: 1 addition & 0 deletions packages/volto/news/5857.documentation
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add missing nextjs install step. @gomez
1 change: 1 addition & 0 deletions packages/volto/news/5871.documentation
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix broken link to TanStack Query. @stevepiercy
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,15 @@ const SearchBlockEdit = (props) => {
const { query = {} } = data || {};
// We don't need deep compare here, as this is just json serializable data.
const deepQuery = JSON.stringify(query);

useEffect(() => {
onTriggerSearch();
}, [deepQuery, onTriggerSearch]);
onTriggerSearch(
'',
data?.facets,
data?.query?.sort_on,
data?.query?.sort_order,
);
}, [deepQuery, onTriggerSearch, data]);

return (
<>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -404,12 +404,12 @@ const withSearch = (options) => (WrappedComponent) => {
query: data.query || {},
facets: toSearchFacets || facets,
searchText: toSearchText ? toSearchText.trim() : '',
sortOn: toSortOn || sortOn,
sortOn: toSortOn || undefined,
sortOrder: toSortOrder || sortOrder,
facetSettings,
});
if (toSearchFacets) setFacets(toSearchFacets);
if (toSortOn) setSortOn(toSortOn);
if (toSortOn) setSortOn(toSortOn || undefined);
if (toSortOrder) setSortOrder(toSortOrder);
setSearchData(newSearchData);
setLocationSearchData(getSearchFields(newSearchData));
Expand Down

0 comments on commit ad3a147

Please sign in to comment.