ktx/packages/context/src/search/query.ts
2026-05-10 23:12:26 +02:00

19 lines
479 B
TypeScript

import type { NormalizedSearchQuery } from './types.js';
export function normalizeSearchQuery(queryText: string): NormalizedSearchQuery {
const terms = queryText
.toLowerCase()
.split(/[^a-z0-9_]+/u)
.map((term) => term.trim())
.filter(Boolean);
return {
raw: queryText,
normalized: terms.join(' '),
terms,
};
}
export function defaultLaneCandidatePoolLimit(finalLimit: number): number {
return Math.max(25, Math.max(1, finalLimit) * 3);
}