Defined in: packages/core/src/transformers/FilterableItemCollector.ts:46
Collects filterable items (columns and parameters) from SQL queries for use in DynamicQueryBuilder filtering functionality.
This class combines:
- Table columns (from SelectableColumnCollector with FullName duplicate detection)
- SQL parameters (from ParameterDetector)
Features:
- FullName mode preserves columns with same names from different tables (u.id vs p.id)
- Upstream collection (default) provides comprehensive column discovery for maximum filtering
- Qualified mode option for table.column naming in complex JOINs
This allows DynamicQueryBuilder to filter on both actual table columns and fixed parameters defined in the SQL with full JOIN table support.
Constructors
Constructor
new FilterableItemCollector(
tableColumnResolver?
,options?
):FilterableItemCollector
Defined in: packages/core/src/transformers/FilterableItemCollector.ts:57
Creates a new FilterableItemCollector
Parameters
tableColumnResolver?
Optional resolver for wildcard column expansion
options?
FilterableItemCollectorOptions
Optional configuration options
- qualified: If true, return table.column names; if false, return column names only
- upstream: If true (default), collect all available columns from upstream sources for maximum filtering capability
Returns
FilterableItemCollector
Methods
collect()
collect(
query
):FilterableItem
[]
Defined in: packages/core/src/transformers/FilterableItemCollector.ts:67
Collects all filterable items (columns and parameters) from a SQL query
Parameters
query
The parsed SQL query to analyze
Returns
Array of FilterableItem objects representing columns and parameters