From 65106203f4bceb9d349fd0d8feeb67ac22cdbd2e Mon Sep 17 00:00:00 2001 From: Patryk Andrzejewski Date: Tue, 22 Aug 2023 09:43:49 +0200 Subject: [PATCH] Fix reset button, maximum rows, filtering by booleans in filters (#4100) * Support boolean static values * Max rows, reset button * Max rows, reset button --- locale/defaultMessages.json | 8 ++++---- src/components/ConditionalFilter/FiltersArea.tsx | 7 ++++++- src/components/ConditionalFilter/constants.ts | 2 +- src/components/ConditionalFilter/messages.tsx | 4 ++-- src/components/ConditionalFilter/queryVariables.ts | 4 ++++ 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/locale/defaultMessages.json b/locale/defaultMessages.json index 9b5ee5d06..edc7ef638 100644 --- a/locale/defaultMessages.json +++ b/locale/defaultMessages.json @@ -1762,10 +1762,6 @@ "AyQkmp": { "string": "Sorting by this column is not available" }, - "AyW1j6": { - "context": "Clear filters button text", - "string": "Clear all fields" - }, "AzMSmb": { "context": "caption", "string": "If enabled this attribute can be used as a column in product table." @@ -7182,6 +7178,10 @@ "nLML8Y": { "string": "Default Shipping Address" }, + "nMojhT": { + "context": "Clear filters button text", + "string": "Reset" + }, "nNeWAx": { "context": "dialog header", "string": "Delete Shipping Method" diff --git a/src/components/ConditionalFilter/FiltersArea.tsx b/src/components/ConditionalFilter/FiltersArea.tsx index 7c9712fdc..9a3337bca 100644 --- a/src/components/ConditionalFilter/FiltersArea.tsx +++ b/src/components/ConditionalFilter/FiltersArea.tsx @@ -19,6 +19,8 @@ interface FiltersAreaProps { onCancel?: () => void; } +const MAX_VALUE_ITEMS = 12; + export const FiltersArea: FC = ({ onConfirm, onCancel, @@ -84,7 +86,10 @@ export const FiltersArea: FC = ({ locale={translations.locale} > <_ExperimentalFilters.Footer> - <_ExperimentalFilters.AddRowButton variant="tertiary"> + <_ExperimentalFilters.AddRowButton + variant="tertiary" + disabled={value.length > MAX_VALUE_ITEMS} + > {translations.addFilter} diff --git a/src/components/ConditionalFilter/constants.ts b/src/components/ConditionalFilter/constants.ts index dac787914..092e8c69b 100644 --- a/src/components/ConditionalFilter/constants.ts +++ b/src/components/ConditionalFilter/constants.ts @@ -76,7 +76,7 @@ export const STATIC_OPTIONS: LeftOperand[] = [ }, { value: "giftCard", - label: "Has giftcard", + label: "Is giftcard", type: "giftCard", slug: "giftCard", }, diff --git a/src/components/ConditionalFilter/messages.tsx b/src/components/ConditionalFilter/messages.tsx index e2c1f5509..3c3e746eb 100644 --- a/src/components/ConditionalFilter/messages.tsx +++ b/src/components/ConditionalFilter/messages.tsx @@ -17,8 +17,8 @@ export const conditionalFilterMessages = defineMessages({ description: "Add filter button text", }, clearFilters: { - defaultMessage: "Clear all fields", - id: "AyW1j6", + defaultMessage: "Reset", + id: "nMojhT", description: "Clear filters button text", }, saveFilters: { diff --git a/src/components/ConditionalFilter/queryVariables.ts b/src/components/ConditionalFilter/queryVariables.ts index c5f8a5968..d620b56cb 100644 --- a/src/components/ConditionalFilter/queryVariables.ts +++ b/src/components/ConditionalFilter/queryVariables.ts @@ -39,6 +39,10 @@ const createStaticQueryPart = ( return { range: { lte, gte } }; } + if (isItemOption(value) && ["true", "false"].includes(value.value)) { + return value.value === "true"; + } + if (isItemOption(value)) { return { eq: value.value }; }