Convert filter_bar.js to TypeScript (issue #17)

- Add ts/filter_bar.ts: typed port of the filter bar. Criterion / PillEntry /
  RangeField / DeselectableRadio interfaces replace the loose objects and the
  radio.wasChecked custom property; var → const/let throughout
- Window entry points (applyFilterBar/clearFilterBar/toggleStringFilterInput/
  showPresetNameInput/savePreset) declared in ts/globals.d.ts; readSearchSelect
  now called as window.readSearchSelect
- Drop the dead selectValue helper; factor the repeated path→mode mapping into
  presetMode()
- Point the FilterBar component Media and every e2e/test reference at the
  compiled dist/filter_bar.js

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-19 13:38:20 +02:00
parent 541fb550ab
commit cd17053860
11 changed files with 518 additions and 489 deletions
+5
View File
@@ -4,5 +4,10 @@ declare global {
interface Window {
fetchWithHtmxTriggers(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
readSearchSelect(form: HTMLElement): void;
applyFilterBar(event: Event): boolean;
clearFilterBar(formId: string, filterInputId: string): void;
toggleStringFilterInput(radio: HTMLInputElement): void;
showPresetNameInput(): void;
savePreset(formId: string, filterInputId: string, saveUrl: string): void;
}
}