From 55e147423e8d3c3deaa9bbe7dd776803299247bf Mon Sep 17 00:00:00 2001 From: soupette Date: Thu, 17 Dec 2020 11:19:56 +0100 Subject: [PATCH] Add property to sort and filter events Signed-off-by: soupette --- .../admin/src/components/CustomTable/Headers/Header.js | 4 +++- .../admin/src/components/FilterPicker/index.js | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/strapi-plugin-content-manager/admin/src/components/CustomTable/Headers/Header.js b/packages/strapi-plugin-content-manager/admin/src/components/CustomTable/Headers/Header.js index 3f8bdf359f..ff04df7f3e 100644 --- a/packages/strapi-plugin-content-manager/admin/src/components/CustomTable/Headers/Header.js +++ b/packages/strapi-plugin-content-manager/admin/src/components/CustomTable/Headers/Header.js @@ -9,14 +9,16 @@ const Header = ({ fieldSchema: { type }, metadatas: { label, sortable, mainField const [sortBy, sortOrder] = _sort.split(':'); let sortField = name; + let useRelation = false; if (type === 'relation') { + useRelation = true; sortField = `${name}.${mainField.name}`; } const handleClick = () => { if (sortable) { - emitEvent('didSortEntries'); + emitEvent('didSortEntries', { useRelation }); const isCurrentSort = sortField === sortBy; const nextOrder = isCurrentSort && sortOrder === 'ASC' ? 'DESC' : 'ASC'; diff --git a/packages/strapi-plugin-content-manager/admin/src/components/FilterPicker/index.js b/packages/strapi-plugin-content-manager/admin/src/components/FilterPicker/index.js index ba9a1d5ff9..934aae4071 100644 --- a/packages/strapi-plugin-content-manager/admin/src/components/FilterPicker/index.js +++ b/packages/strapi-plugin-content-manager/admin/src/components/FilterPicker/index.js @@ -165,8 +165,9 @@ function FilterPicker({ e => { e.preventDefault(); const nextFilters = formatFiltersToQuery(modifiedData, metadatas); + const useRelation = nextFilters._where.some(obj => Object.keys(obj)[0].includes('.')); - emitEventRef.current('didFilterEntries'); + emitEventRef.current('didFilterEntries', { useRelation }); setQuery(nextFilters); toggleFilterPickerState(); },