UxColumnPicker

components/ux/ColumnPicker.vue

Checkbox popover that shows/hides table columns — full catalog in, visible keys out via v-model in catalog order; locked columns and the last visible column cannot be unchecked.

Devices
Owner
Team
Sessions · 7d
Coverage
mbp-aliceAlice NgPlatform142Full
thinkpad-choDana ChoData231Partial
ci-runner-07—Platform1204Full
mbp-raviRavi MenonApps19Blocked
visible: name, owner, team, sessions, coverage
Scenarios
minimal — 3 columns, none locked
guard — only the locked column visible
overflow — 16 columns, list scrolls
#trigger slot — a text link built from the slot's counts
components/ux/ColumnPicker.vue

Usage

<UxColumnPicker :columns = "—" :modelValue = "[]" label = "Columns" align = "right" side = "below" :minVisible = "1" />

Props

PropTypeDefaultDescription
columnsArray—Full catalog: { key, label, locked? }
modelValueString[][]Visible column keys (v-model), emitted in catalog order
labelString'Columns'Trigger text and panel heading
alignString'right'Panel alignment passed to UxPopover
sideString'below''above' opens the list over the title area so the columns being toggled stay in view
minVisibleNumber1The visible set never drops below this many

Events

EventDescription
update:modelValueWhen a column is toggled or Show all is pressed

Slots

SlotDescription
triggerReplaces the default bordered trigger button so a host can draw it in its own chrome (DataListingBar draws a bar segment); scope { open, label, visibleCount, hiddenCount, total }

Related

Qpoint Brand Style Guide