From 1158623bcc3d67b64f1f5b3c828c5e399212f531 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Maneiro?= <583546+oandregal@users.noreply.github.com> Date: Mon, 18 Mar 2024 13:16:58 +0100 Subject: [PATCH] Add operators to filter summary --- packages/dataviews/src/filter-summary.js | 26 ++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/packages/dataviews/src/filter-summary.js b/packages/dataviews/src/filter-summary.js index f382efb32be804..a9224284672707 100644 --- a/packages/dataviews/src/filter-summary.js +++ b/packages/dataviews/src/filter-summary.js @@ -30,6 +30,8 @@ import { OPERATOR_IS_NOT, OPERATOR_IS_ANY, OPERATOR_IS_NONE, + OPERATOR_IS_ALL, + OPERATOR_IS_NOT_ALL, } from './constants'; const FilterText = ( { activeElements, filterInView, filter } ) => { @@ -66,6 +68,30 @@ const FilterText = ( { activeElements, filterInView, filter } ) => { ); } + if ( filterInView?.operator === OPERATOR_IS_ALL ) { + return createInterpolateElement( + sprintf( + /* translators: 1: Filter name. 3: Filter value. e.g.: "Author is all: Admin, Editor". */ + __( '%1$s is all: %2$s' ), + filter.name, + activeElements.map( ( element ) => element.label ).join( ', ' ) + ), + filterTextWrappers + ); + } + + if ( filterInView?.operator === OPERATOR_IS_NOT_ALL ) { + return createInterpolateElement( + sprintf( + /* translators: 1: Filter name. 3: Filter value. e.g.: "Author is not all: Admin, Editor". */ + __( '%1$s is not all: %2$s' ), + filter.name, + activeElements.map( ( element ) => element.label ).join( ', ' ) + ), + filterTextWrappers + ); + } + if ( filterInView?.operator === OPERATOR_IS ) { return createInterpolateElement( sprintf(