From 43b2effdda204b5a77b87ec3b03ed0d9a36e1bcb Mon Sep 17 00:00:00 2001 From: Andrey Goncharov Date: Thu, 14 Sep 2023 04:48:12 -0700 Subject: [PATCH] Add string_set_contains_none_of operator Summary: Doc: https://docs.google.com/document/d/1miofxds9DJgWScj0zFyBbdpRH5Rj0T9FqiCapof5-vU/edit#heading=h.pg8svtdjlx7 Reviewed By: lblasa Differential Revision: D49230131 fbshipit-source-id: 9c4375e181b2ac20b5ab346c2e5f24c6d90c28ac --- .../ui/data-table/DataTableDefaultPowerSearchOperators.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx b/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx index 08ba6f668..44fbc6e9f 100644 --- a/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx +++ b/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx @@ -41,6 +41,11 @@ export const dataTablePowerSearchOperators = { key: 'string_set_contains_any_of', valueType: 'STRING_SET', }), + string_set_contains_none_of: () => ({ + label: 'contains none of', + key: 'string_set_contains_none_of', + valueType: 'STRING_SET', + }), } satisfies { [key: string]: (...args: any[]) => OperatorConfig; }; @@ -65,4 +70,6 @@ export const dataTablePowerSearchOperatorProcessorConfig = { // See PowerSearchStringSetTerm string_set_contains_any_of: (operator, searchValue: string[], value) => searchValue.some((item) => (value as string).toLowerCase().includes(item)), + string_set_contains_none_of: (operator, searchValue: string[], value) => + !searchValue.some((item) => (value as string).toLowerCase().includes(item)), } satisfies PowerSearchOperatorProcessorConfig;