[WEB-4951] [WEB-4884] feat: work item filters revamp (#7810)

This commit is contained in:
Prateek Shourya 2025-09-19 18:27:36 +05:30 committed by GitHub
parent e6a7ca4c72
commit 9aef5d4aa9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
160 changed files with 5879 additions and 4881 deletions

View file

@ -1 +1,2 @@
export * from "./rich-filter.helper";
export * from "./work-item-filters.helper";

View file

@ -0,0 +1,32 @@
// plane imports
import {
TBuildFilterExpressionParams,
TFilterConditionForBuild,
TFilterValue,
TWorkItemFilterExpression,
TWorkItemFilterProperty,
} from "@plane/types";
// local imports
import { workItemFiltersAdapter } from "../store/work-item-filters/adapter";
import { buildTempFilterExpressionFromConditions } from "./rich-filter.helper";
export type TWorkItemFilterCondition = TFilterConditionForBuild<TWorkItemFilterProperty, TFilterValue>;
/**
* Builds a work item filter expression from conditions.
* @param params.conditions - The conditions for building the filter expression.
* @returns The work item filter expression.
*/
export const buildWorkItemFilterExpressionFromConditions = (
params: Omit<
TBuildFilterExpressionParams<TWorkItemFilterProperty, TFilterValue, TWorkItemFilterExpression>,
"adapter"
>
): TWorkItemFilterExpression | undefined => {
const workItemFilterExpression = buildTempFilterExpressionFromConditions({
...params,
adapter: workItemFiltersAdapter,
});
if (!workItemFilterExpression) console.error("Failed to build work item filter expression from conditions");
return workItemFilterExpression;
};