Components/Form

Dropdown

Dropdowns let a reader pick one value from a list that stays out of the way until it is needed, or several when it is set up for that. The trigger shows the current choice and the list appears only when asked for, which is what suits them to sets of options too long for a page to show all at once.

import { Dropdown } from '@growth-protocol-ai/alpha';

On this page

emphasis
size
state
Dropdown.tsxtsx
1import { Dropdown } from '@growth-protocol-ai/alpha';
2
3const STATUSES = [
9];
10
11<Dropdown
12 emphasis="solidFlat"
13 size="regular"
14 disabled={false}
15 options={STATUSES}
16 placeholder="Any status"
17 searchPlaceholder="Search statuses"
18/>

When to use

Reach for a dropdown when the answer is one of a set the product already knows and the reader’s job is only to say which one — a market, a period, an owner. It reads best with the field named beside it and the trigger left to say what is currently chosen, which is also the arrangement that survives the list growing.

When not to use

Do not hide a handful of options behind a trigger: choices a reader should be able to compare at a glance belong in a radio group, which shows them all and costs no click. A value the reader has to type is a text input, and a question the page is expected to answer is a search field. A dropdown also holds one value, so a filter that accepts several answers is a set of checkboxes rather than a longer panel.

emphasis2 values

The same axis the button calls emphasis, and what picks it is how much chrome the surrounding UI can carry rather than how important the choice is. Neither changes the panel: it is its own surface, with its own border, either way.

solidFlat
ghost
emphasisWhen to use
solidFlatThe default — the button’s Outlined Solid Flat, with a chevron. It shares the neutral surface, border and height of a button, so it sits in a form or a filter bar without a visual mismatch.
ghostEmpty at rest, filling on interaction. For a selector inside a toolbar, a table footer or a line of text, where a border would be more chrome than the choice deserves.

size2 values

Size is geometry only — it never changes what the control means. Both heights are the button’s and the text input’s, so a filter bar that mixes the three lines up control by control.

regular
large
sizeWhen to use
regular36px. Forms, filter bars and toolbars.
large52px. Hero filters and touch-first surfaces.