drizzle-cube
Version:
Drizzle ORM-first semantic layer with Cube.js compatibility. Type-safe analytics and dashboards with SQL injection protection.
20 lines (19 loc) • 918 B
TypeScript
import { Filter } from '../../../types';
/**
* Find date filter for a specific time dimension field
* Recursively searches filters (including nested and/or groups)
* Handles both UI format ({type: 'and'/'or', filters: [...]}) and simple filters
*/
export declare function findDateFilterForField(filters: Filter[], field: string): {
dateRange: string | string[];
} | undefined;
/**
* Build compareDateRange for a time dimension based on its date filter
* When comparison is enabled, returns [[currentStart, currentEnd], [priorStart, priorEnd]]
*/
export declare function buildCompareDateRangeFromFilter(timeDimensionField: string, filters: Filter[]): [string, string][] | undefined;
/**
* Remove date filter for a specific field from filters array
* Returns a new array with the filter removed (immutable)
*/
export declare function removeComparisonDateFilter(filters: Filter[], field: string): Filter[];