From 72e6ba2705d807dbb1cc37f3ee50667cf5074004 Mon Sep 17 00:00:00 2001 From: Andrey Goncharov Date: Mon, 2 Oct 2023 08:27:37 -0700 Subject: [PATCH] Add dedicated operators to handle seriazable objects Reviewed By: lblasa Differential Revision: D49828114 fbshipit-source-id: 6846ce7360697806a6a770c1c6f864d162eee528 --- .../DataTableDefaultPowerSearchOperators.tsx | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx b/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx index e7760b343..3641c88b6 100644 --- a/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx +++ b/desktop/flipper-plugin/src/ui/data-table/DataTableDefaultPowerSearchOperators.tsx @@ -46,6 +46,16 @@ export const dataTablePowerSearchOperators = { valueType: 'STRING', handleUnknownValues, }), + searializable_object_contains: () => ({ + label: 'contains', + key: 'searializable_object_contains', + valueType: 'STRING', + }), + searializable_object_not_contains: () => ({ + label: 'does not contain', + key: 'searializable_object_not_contains', + valueType: 'STRING', + }), string_set_contains_any_of: () => ({ label: 'contains any of', key: 'string_set_contains_any_of', @@ -231,6 +241,16 @@ export const dataTablePowerSearchOperatorProcessorConfig = { ) ?.toLowerCase() .includes(searchValue.toLowerCase()), + searializable_object_contains: ( + _operator, + searchValue: string, + value: object, + ) => JSON.stringify(value).toLowerCase().includes(searchValue.toLowerCase()), + searializable_object_not_contains: ( + _operator, + searchValue: string, + value: object, + ) => !JSON.stringify(value).toLowerCase().includes(searchValue.toLowerCase()), string_matches_exactly: (operator, searchValue: string, value: string) => ((operator as StringOperatorConfig).handleUnknownValues && getFlipperLib().GK('flipper_power_search_auto_json_stringify')