From 86dcc90e1ddd42450cfb76fd0ebef6f224ebb163 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Mon, 14 Jul 2025 15:54:25 -0500 Subject: [PATCH] Support passing possibleValueSourceFilter through to backend, specifically for the "standalone" use-case, where the field doesn't come from a table or process --- package.json | 4 ++-- src/qqq/components/forms/DynamicFormUtils.ts | 5 +++++ src/qqq/components/forms/DynamicSelect.tsx | 11 ++++++++++- src/qqq/models/fields/FieldPossibleValueProps.ts | 2 ++ 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 52e83eb..7abab28 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "@auth0/auth0-react": "1.10.2", "@emotion/react": "11.7.1", "@emotion/styled": "11.6.0", - "@kingsrook/qqq-frontend-core": "1.0.123", + "@kingsrook/qqq-frontend-core": "1.0.124", "@mui/icons-material": "5.4.1", "@mui/material": "5.11.1", "@mui/styles": "5.11.1", @@ -35,8 +35,8 @@ "html-react-parser": "1.4.8", "html-to-text": "^9.0.5", "http-proxy-middleware": "2.0.6", - "lodash": "4.17.21", "jwt-decode": "3.1.2", + "lodash": "4.17.21", "oidc-client-ts": "2.4.1", "rapidoc": "9.3.4", "react": "18.0.0", diff --git a/src/qqq/components/forms/DynamicFormUtils.ts b/src/qqq/components/forms/DynamicFormUtils.ts index e94e4b6..7179106 100644 --- a/src/qqq/components/forms/DynamicFormUtils.ts +++ b/src/qqq/components/forms/DynamicFormUtils.ts @@ -191,6 +191,11 @@ class DynamicFormUtils props.possibleValueSourceName = field.possibleValueSourceName; } + if(field.possibleValueSourceFilter) + { + props.possibleValueSourceFilter = field.possibleValueSourceFilter; + } + dynamicFormFields[field.name].possibleValueProps = props; } } diff --git a/src/qqq/components/forms/DynamicSelect.tsx b/src/qqq/components/forms/DynamicSelect.tsx index 31391d9..fbe8002 100644 --- a/src/qqq/components/forms/DynamicSelect.tsx +++ b/src/qqq/components/forms/DynamicSelect.tsx @@ -188,7 +188,16 @@ function DynamicSelect({fieldPossibleValueProps, overrideId, name, fieldLabel, i } else { - return await qController.possibleValues(tableName, processName, possibleValueSourceName ?? fieldName, searchTerm ?? "", null, null, otherValues, useCase); + return await qController.possibleValues( + { + tableName, + processName, + fieldNameOrPossibleValueSourceName: possibleValueSourceName ?? fieldName, + searchTerm: searchTerm ?? "", + values: otherValues, + useCase, + possibleValueSourceFilter: fieldPossibleValueProps.possibleValueSourceFilter + }); } }; diff --git a/src/qqq/models/fields/FieldPossibleValueProps.ts b/src/qqq/models/fields/FieldPossibleValueProps.ts index 34b300f..8f06e22 100644 --- a/src/qqq/models/fields/FieldPossibleValueProps.ts +++ b/src/qqq/models/fields/FieldPossibleValueProps.ts @@ -20,6 +20,7 @@ */ import {QPossibleValue} from "@kingsrook/qqq-frontend-core/lib/model/QPossibleValue"; +import {QQueryFilter} from "@kingsrook/qqq-frontend-core/lib/model/query/QQueryFilter"; /******************************************************************************* ** Properties attached to a (formik?) form field, to denote how it behaves as @@ -34,5 +35,6 @@ export interface FieldPossibleValueProps tableName?: string; processName?: string; possibleValueSourceName?: string; + possibleValueSourceFilter?: QQueryFilter; }