Switch
Notification Channel Matrix
A notification table: rows are events, columns are delivery channels, and the switch in a column header turns the channel on for every event at once.
What you can change
- rows and columns — any set of events and delivery channels, not only notifications
- title and rowsLabel — the block heading and the corner-cell caption
- the initial defaultValue built from "rowId:colId" keys
A link for your AI agent: preview, code and instructions.
Preview
Use it with AI
- 1. Copy the link.
- 2. Write to your agent in your own words and drop the link into the sentence.
- 3. The agent opens the link and installs the component from the registry.
put this on the home page as the hero:
https://vibeui.ru/c/switch-015?lang=en&theme=dark
Not sure where to paste it? Step-by-step guide
Show the full instructions
What the link says, spelled out. Use it when your agent cannot open links — paste this text instead.
Loading…
For developers
The install command lives in the “Component source” block below — a signed link that stays valid for 24 hours.
Technical notes
The component is self-contained: one file, no dependencies, its own palette in the local --vibeui-switch-015-* variables. A client component: "use client". The markup is a semantic <table>: <th scope="row"> names the event, and a <th scope="col"> with a switch names the channel and drives the whole column. Every cell is a native checkbox with role="switch". The column master's indeterminate is set through an effect on every value change, because React does not pass that DOM property through props. A cell key is "rowId:colId", so value serialises to a plain string array as is. On narrow screens the table gets its own horizontal scroll through a wrapper with overflow-x instead of widening the page. The theme comes from the surrounding color-scheme through light-dark().
Tags
- switch
- matrix
- notifications
- table
- indeterminate
Component source
The same file your agent installs. Here in case you would rather copy it by hand.
Loading…