MCPcopy
hub / github.com/msgbyte/tianji / getTelemetryFilterQuery

Function getTelemetryFilterQuery

src/server/utils/prisma.ts:178–197  ·  view source on GitHub ↗
(
  filters: BaseQueryFilters = {},
  options: QueryOptions = {}
)

Source from the content-addressed store, hash-verified

176}
177
178export function getTelemetryFilterQuery(
179 filters: BaseQueryFilters = {},
180 options: QueryOptions = {}
181) {
182 const query = Object.keys(filters).reduce<string[]>((arr, name) => {
183 const value: any = filters[name as keyof BaseQueryFilters];
184 const operator = value?.filter ?? OPERATORS.equals;
185 const column = get(FILTER_COLUMNS, name, options?.columns?.[name]);
186
187 // TODO
188
189 if (value !== undefined && column) {
190 arr.push(`AND ${mapFilter(column, operator, name)}`);
191 }
192
193 return arr;
194 }, []);
195
196 return Prisma.sql([query.join('\n')]);
197}
198
199function mapFilter(
200 column: string,

Callers 1

parseTelemetryFiltersFunction · 0.85

Calls 2

getFunction · 0.85
mapFilterFunction · 0.85

Tested by

no test coverage detected