import type { components } from '$lib/generated/api'; type NlQueryInterpretation = components['schemas']['NlQueryInterpretation']; export function buildThemeRemovalUrl( interp: NlQueryInterpretation, removedTagName: string ): string { const remaining = interp.resolvedTags.filter((t) => t.name !== removedTagName); const params = new URLSearchParams(); const resolved = interp.resolvedPersons; if (resolved.length >= 1) params.set('senderId', resolved[0].id); if (resolved.length >= 2) params.set('receiverId', resolved[1].id); if (interp.dateFrom) params.set('from', interp.dateFrom); if (interp.dateTo) params.set('to', interp.dateTo); if (interp.keywordsApplied && interp.keywords.length > 0) { params.set('q', interp.keywords.join(' ')); } remaining.forEach((tag) => params.append('tag', tag.name)); if (remaining.length > 0) params.set('tagOp', 'OR'); const qs = params.toString(); return qs ? `/documents?${qs}` : '/documents'; }