Concorde documentation · same URL (interactive) · llms.txt

Concorde UI component — Group. sonic-group lays out sonic-button · sonic-input and sonic-select controls in one row with a shared corner radius: only the outer corners of the first and last items stay rounded. Use it for button gro Doc ID: core/components/ui/group/group. Keywords: Concorde, supersoniks, core/components/ui/group/group, group, Group, UI component, sonic-group, web component, sonic-button, sonic-input, sonic-select, label, description, radio, name, value. URL: https://concorde.supersoniks.org/core/components/ui/group.

Group

sonic-group lays out sonic-button · sonic-input and sonic-select controls in one row with a shared corner radius: only the outer corners of the first and last items stay rounded. Use it for button groups, radio rows or a field with an attached action. Optional label and description follow form field styling.

Radio group

Give each sonic-button the radio attribute and a shared name. The selected value is written to the formDataProvider set on the group (inherited by the buttons).

<sonic-group formDataProvider="groupPlanDemo">
      <sonic-button radio name="plan" value="free" type="default">Free</sonic-button>
      <sonic-button radio checked name="plan" value="pro" type="default">Pro</sonic-button>
      <sonic-button radio name="plan" value="team" type="default">Team</sonic-button>
    </sonic-group>

Button group

Adjacent action buttons that stay independent controls.

<sonic-group>
      <sonic-button type="default">
        <sonic-icon library="iconoir" name="align-left"></sonic-icon>
      </sonic-button>
      <sonic-button type="default">
        <sonic-icon library="iconoir" name="align-center"></sonic-icon>
      </sonic-button>
      <sonic-button type="default">
        <sonic-icon library="iconoir" name="align-right"></sonic-icon>
      </sonic-button>
    </sonic-group>

Field with action

Put the action before or after the field. label and description annotate the whole row.

<div class="grid gap-4 max-w-md">
      <sonic-group label="Search" description="Type a flight number, then confirm.">
        <sonic-input placeholder="CN 001"></sonic-input>
        <sonic-button type="primary" shape="square">
          <sonic-icon library="iconoir" name="search"></sonic-icon>
        </sonic-button>
      </sonic-group>
      <sonic-group label="Extra baggage">
        <sonic-button type="default" shape="square">
          <sonic-icon library="iconoir" name="minus"></sonic-icon>
        </sonic-button>
        <sonic-input type="number" value="1"></sonic-input>
        <sonic-button type="default" shape="square">
          <sonic-icon library="iconoir" name="plus"></sonic-icon>
        </sonic-button>
      </sonic-group>
    </div>

API reference

Attribute Values Description
label string (HTML) Label above the row; content of slot="label" is appended
description string (HTML) Help text below the row; content of slot="description" replaces it
alignItems CSS align-items value (default center) Cross-axis alignment of the row
Slot Description
(default) sonic-button · sonic-input · sonic-select in visual order
label Custom label markup
description Custom description markup