PhoenixKitProjects. Web. Components. AssigneeFilterPanel
(PhoenixKitProjects v0.18.0)
Copy Markdown
View Source
<.assignee_filter_panel> — the Filters funnel button (badged with the
active-filter count) plus its client-side popup panel: person typeahead,
Me/Unassigned quick-adders, active chips, Personal-only and Overdue-only
refinements, and Clear.
Pure UI over Web.AssigneeFilter's assigns/events: the events land on the
parent LiveView, which forwards them through AssigneeFilter.update/3 (see
that module's usage note). The panel opens/closes entirely client-side —
JS.toggle on the button (LV JS commands stick across patches, so toggling
a control inside doesn't collapse it) with phx-click-away on the shared
wrapper for outside-click dismiss. Pass a unique id per page so two
panels (e.g. the Overview and an embedded project calendar) can't collide.
Summary
Functions
Attributes
id(:string) (required) - unique prefix for the panel/picker DOM ids.picker_target(:string) - CSS selector of a PARENT-LV-owned element the person picker's events should route to. Required when the panel renders INSIDE another LiveComponent's DOM (e.g. the calendar's toolbar slot): the SearchPicker hook auto-targets its enclosing component, which would swallow the search/pick events. Plain phx-click events are unaffected — they always reach the LV.Defaults to
nil.assignee_selected(:list) (required)include_unassigned?(:boolean) (required)unassigned_count(:integer) (required)assignee_direct_only?(:boolean) (required)overdue_only?(:boolean) (required)me_scope(:any) (required)