feat(overview): rework filter builder with editable chips and native date ranges

Editable filter chips, uniformly-sized value controls, working field-picker
search, and native date-range inputs with relative presets in place of the
vendored calendar — native inputs give year-jump, manual entry and keyboard
accessibility for free.
This commit is contained in:
Simon 2026-07-10 16:27:15 +02:00
parent c0d1550401
commit 8303a39041
23 changed files with 1905 additions and 565 deletions

View file

@ -22,6 +22,8 @@ import {Socket} from "phoenix"
import {LiveSocket} from "phoenix_live_view"
import topbar from "../vendor/topbar"
import Sortable from "../vendor/sortable"
import FilterComboboxSearch from "./hooks/filter_combobox_search"
import HoverPopover from "./hooks/hover_popover"
let csrfToken = document.querySelector("meta[name='csrf-token']").getAttribute("content")
@ -36,6 +38,11 @@ function getBrowserTimezone() {
// Hooks for LiveView components
let Hooks = {}
// Add-filter builder hooks (member overview field-picker search).
Hooks.FilterComboboxSearch = FilterComboboxSearch
// Top-layer hover/focus popover (member overview payment badge tooltip).
Hooks.HoverPopover = HoverPopover
// IndeterminateCheckbox: the `indeterminate` state of a checkbox is a JS
// property, not an HTML attribute, so it cannot be set from the server render.
// Mirror it from the data-indeterminate attribute on mount and every update