Skip to main content

MultinairePickerButton

Dropdown trigger button that displays a selected value and opens a picker.

Basic Usage

import { MultinairePickerButton } from '@multinaire/multinaire-design';

<MultinairePickerButton
placeholder="Select option"
value={selectedLabel}
onPress={() => setPickerVisible(true)}
/>

Props

PropTypeDefaultDescription
placeholderstring-Placeholder text when no value
valuestring-Selected value to display
titlestring-Label above the picker
requiredbooleanfalseShow required indicator
allowClearbooleanfalseShow clear button when has value
leadingMultinaireIcons | ReactElement-Leading icon or element
trailingMultinaireIcons | ReactElement-Trailing icon or element
extraReactElement-Extra content beside title
errorTextstring-Error message to display
flexnumber-Flex value
marginSpacingProps-Margin spacing
onPress() => void-Press handler to open picker
onClear() => void-Clear handler

Examples

Basic Picker

<MultinairePickerButton
title="Country"
placeholder="Select a country"
value={selectedCountry?.name}
onPress={() => setCountryPickerVisible(true)}
/>

With Clear Button

<MultinairePickerButton
title="Category"
placeholder="Select category"
value={category}
allowClear
onPress={() => setCategoryPickerVisible(true)}
onClear={() => setCategory(null)}
/>

With Leading Icon

<MultinairePickerButton
leading="Calendar"
placeholder="Select date"
value={formattedDate}
onPress={() => setDatePickerVisible(true)}
/>

With Error

<MultinairePickerButton
title="Required Field"
required
placeholder="Please select"
value={value}
errorText={!value ? 'This field is required' : undefined}
onPress={openPicker}
/>

With ListPicker

<MultinairePickerButton
title="Country"
placeholder="Select country"
value={country?.name}
onPress={() => setVisible(true)}
/>

<MultinaireListPicker
type="dropdown"
visible={visible}
items={countries}
selectedItem={country}
onChange={(item) => {
setCountry(item);
setVisible(false);
}}
/>