AccordionSlots | An accordion: sections whose headings each show and hide their panel, as the APG accordion pattern has it. Each trigger is a button in a heading, with… |
AlertSlots | An alert publishes its regions as slots; it owns no state, messages, or bundles. The tone comes from the recipe, the urgency from assertive: an assertive… |
AspectRatioSlots | A fixed-ratio frame publishes one slot; it owns no state, messages, or bundles. The ratio is the recipe's, so a stylist can change it. |
AvatarSlots | An avatar publishes its regions as slots; it owns no state, messages, or bundles. The picture stacks over the fallback initials: a loaded image covers them,… |
BadgeSlots | A status pill publishes one slot; it owns no state, messages, or bundles. The pill reads its tone from data-tone, which the Badge recipe maps to a family;… |
BannerSlots | A banner: a full-width notice across the top of a page or a section, with an optional action and an optional dismiss button. Alert is a notice inside the… |
BreadcrumbSlots | A breadcrumb trail publishes its regions as slots; it owns no state, messages, or bundles. The trail is a navigation landmark with an ordered list; the… |
ButtonGroupSlots | A button group publishes one slot; it owns no state, messages, or bundles. The buttons stay the caller's (their labels, styles, and Messages), drawn as the… |
ButtonSlots | The button publishes one slot. click is owned by the base OnClick when the button is interactive, so a Behavior that adds its own click handler is a… |
CalendarSlots | Calendar is a nested Submodel whose shape depends on model.viewMode. The top-level groups (root, grid, the navigation buttons) and per-item groups… |
CardGroupSlots | A card group publishes its frame, the list of cards, each card's place in it, and the one highlight that moves between the cards. The list carries the… |
CardSlots | A card publishes its regions as slots; it owns no state. Draw the parts the card has and skip the rest: a bare card is a root with content, a full one adds… |
CarouselSlots | A carousel, the APG's: a group with aria-roledescription="carousel" named by its label, each slide a group with aria-roledescription="slide" named "2 of 5",… |
CheckboxGroupSlots | A group of checkboxes for one question, as Zag's checkbox group: a fieldset named by its legend, and a row per option with the APG's checkbox (a button with… |
CheckboxSlots | Both the control and its label carry the base toggle handlers, so both own click. hiddenInput exists only when a form name is configured; its base bundle is… |
CodeBlockSlots | A code block publishes its regions as slots, down to each line and each highlighted token; it owns no state. Highlighting is the caller's: pass the tokens a… |
ColorPickerSlots | An OKLCH color picker, Zag's color picker cut to the channels this repo's palette is written in: a group named by its label, one native range per channel… |
ComboboxSlots | Combobox is a nested Submodel: an input/inputWrapper pair with an optional toggleButton, plus a backdrop/items group with an item per entry (and… |
CommandSlots | A command menu, shadcn's Command and Fluid Functionalism's CommandMenu: a search field that keeps focus while the keys move through the rows and points at… |
DatePickerSlots | DatePicker is a small composed Submodel: a trigger button plus a panel/backdrop pair around the embedded calendar. The resolver runs once per bundle and… |
DialogSlots | Dialog is a Submodel: each published bundle is a ChildAttribute group that carries the dialog boundary's dispatcher. The resolver treats those as opaque and… |
DisclosureSlots | |
EmptySlots | An empty state publishes its regions as slots; it owns no state, messages, or bundles. It says what is not here, why that is fine, and what creates the… |
FieldsetSlots | |
FileDropSlots | FileDrop is a small Submodel: a root drop zone plus its hidden file input. The root owns the drag handlers (dragenter/dragleave/drop have no Event tokens,… |
HoverIntentSlots | HoverIntent is a Submodel: open and close delays with intent, for a hover card or a menu that should not flicker. Both bundles are ChildAttribute groups:… |
IconSlots | An icon publishes one slot; it owns no state, messages, or bundles. A label makes it an image. Without one it is decorative and hidden from the… |
InputCopySlots | A read-only field showing a value beside a copy button, Zag's clipboard. The view holds no state: the button sends onCopy, the application's update returns… |
InputSlots | |
ItemSlots | An item publishes its regions as slots; it owns no state, messages, or bundles. It is the common visual language for a row of anything: a menu option, a… |
KbdSlots | A keyboard key publishes one slot; it owns no state, messages, or bundles. It names the key to press, never an action: pair it with words. |
LabelSlots | A form label publishes one slot; it owns no state, messages, or bundles. It names a control through for: pass the id FieldAssociation derived, never a… |
ListboxSlots | Listbox is a nested Submodel: one button/backdrop/items group plus an item per entry (and group/heading/separator where the caller groups), so the resolver… |
MenubarSlots | A menu bar, shadcn's and the APG's: a row of @foldkit/ui Menus, so each menu's keys, typeahead, rows and dismissal stay the Menu's, and the bar adds what a… |
MenuSlots | Menu is a nested Submodel: one button/backdrop/items group plus an item per entry (and group/heading/separator where the caller groups), so the resolver… |
MeterSlots | @foldkit/ui's Meter, a meter: a measurement within a known range, such as storage used or a battery's charge, where Progress is work going on. The root says… |
NavSlots | @foldkit/ui's Nav, a navigation landmark of links with the current one marked, as shadcn's navigation menu draws it: links in a row, their keys the… |
NestedMenuSlots | A menu whose rows may open submenus, shadcn's DropdownMenuSub and the APG's: @foldkit/ui Menus, one for the menu and one per submenu, so each keeps its own… |
NumberFieldSlots | A number field, the APG's editable spinbutton and Zag's number input: a text field with role="spinbutton" that the arrows step, PageUp and PageDown step by… |
OtpFieldSlots | A one-time code, as shadcn's input-otp: one real <input> laid over cells that only show its characters. The browser keeps everything a code field needs… |
PaginationSlots | Page navigation publishes its regions as slots; it owns no state, only the controlled page it is given. The application moves the page in onPage; this draws… |
PasswordInputSlots | A password field with a toggle that shows the password as text, Zag's password input: the toggle is a button outside the form's submission, named for what… |
PopoverSlots | Popover is a Submodel; every bundle is a ChildAttribute group. button owns click (and its pointer/keyboard handlers) while open; panel owns blur; backdrop… |
ProgressSlots | @foldkit/ui's Progress, a progressbar with its value, drawn as a bar or, with the recipe's shape: 'ring', as Circular Progress. A value of none is… |
RadioGroupSlots | RadioGroup is a Submodel: each published bundle is a ChildAttribute group that carries the boundary's dispatcher. The resolver treats those as opaque and… |
RangeSliderSlots | A range slider, the APG's multi-thumb slider: a root group named by its label, and two native input type="range" thumbs over one track, each a real slider… |
RatingSlots | A star rating, the APG's radio group of native radios: a root with role="radiogroup" named by its label, and a star per value, an input type="radio" sharing… |
ResizableSlots | Two panels with a handle between them, shadcn's Resizable and the APG's window splitter: the handle is a separator with its value, a tab stop the arrows… |
ScrollAreaSlots | A scroll area publishes one slot; it owns no state, messages, or bundles. The browser owns scrolling; this owns the box: which axes may scroll and how the… |
SegmentedSlots | A segmented control: one group of pressed-button options. Plain buttons, not tabs: the group is role="group", each option carries aria-pressed, and there… |
SelectSlots | The base bundle installs OnChange only when onChange is configured and the control is enabled, so a Behavior that adds its own handler is a conflict rather… |
SeparatorSlots | A separator publishes one slot; it owns no state, messages, or bundles. Vertical separators need their container to constrain the cross axis: a bare div… |
SidebarSlots | An application's sidebar, shadcn's: a navigation landmark of sections, each a heading button that shows and hides its links, as an accordion's sections do… |
SkeletonSlots | A loading placeholder publishes one slot; it owns no state, messages, or bundles. Stack several for multi-line content; each bar pulses on its own. The bar… |
SliderSlots | Slider is a Submodel: each published bundle is a ChildAttribute group that carries the boundary's dispatcher. The resolver treats those as opaque and… |
SpinnerSlots | A loading spinner publishes one slot; it owns no state, messages, or bundles. It says work is ongoing where a bar would mislead about progress; pair it with… |
StepsSlots | A stepper, Zag's steps and Mantine's Stepper: a named ordered list of steps, each a numbered marker with a title and a description, a connector between each… |
SwitchSlots | Mirrors the checkbox contract: both the control and its label own click. |
TableSlots | A data table publishes its regions as slots; it owns no state, messages, or bundles. Sorting, selection, and paging stay where the data lives (see… |
TabsSlots | Tabs is a nested Submodel: one tablist group plus a tab/panel pair per item, so the resolver runs once per group and each base ChildAttribute bundle passes… |
TagsInputSlots | A field of tags, Zag's tags input: the tags as a list of chips, each with a remove button, and a text input for the next one. Enter or the delimiter adds… |
TextareaSlots | |
ToastSlots | Toast is a nested Submodel: one live-region container plus an entry per toast. The resolver runs once per bundle and each base attribute passes through by… |
TooltipSlots | Tooltip is a Submodel; both bundles are ChildAttribute groups. trigger owns focus, blur and pointerdown (the hover/keyboard entry points); panel carries the… |
TreeViewSlots | A tree view, the APG's and Zag's: nested rows that open and shut, one tab stop, Up and Down through the rows showing, Right to open a row or step into it,… |
TypographySlots | Set type publishes one slot; it owns no state, messages, or bundles. The level chooses the element: headings stay headings, body copy stays a paragraph, and… |
VirtualListSlots | @foldkit/ui's virtual list, which draws only the rows in view and spacers for the rest, so a list of thousands scrolls as one of thirty. The list's Model is… |