MultipleValuesInput

How to get MultipleValuesInput

import { MultipleValuesInput } from 'fds/components';

Type: Component

Wraps a form field to allow adding multiple values with that same component. Renders a button allowing the user to add new values, which will cause another row to appear with the provided form component. Eventually input of all values is aggregated into a single array and is passed to the onChange prop.

Props

# Name Type Description
1. [addButtonLabel] String

The human readable label which should be presented inside the "add" button.


  Default value
"Add"
2. [initialValue] *

The initial value of the component when adding it using the "add" button.


  Default value
null
3. [isDisabled] Boolean

Whether or not the component should be rendered in a disabled state.

  Default value
false
4. [name] String

The name of this component to identify it (and its value) when used inside an intelligent container component which aggregates its children (and/or their values), like a Form.

  Default value
null
5. [onChange] Function

A callback that is called whenever a component's value changes.

This callback is called just before the "validate" prop is called.

Use this callback to update local state which in turn should update the value prop of the component whose callback just fired.


  Arguments
# Name Type Description
1. value Value | Array<ItemWithLabelAndValueValue>

A single value or an array of values, depending on the component that is changing.


  Value

Type: *

The current value of the component. This value will be visualized in the component, often using a human readable label, sometimes using another visual indication (e.g. Checkbox).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

  ItemWithLabelAndValueValue

Type: *

The value of an ItemWithLabelAndValue.

This value is used to compare items, eg. when determining the selected item(s).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

6. [placeholder] String

The placeholder text displayed in component when it is empty, i.e. has no values.

  Default value
"Click \"Add\" to enter a new value."
7. [removeButtonTooltipContent] React:node

The content of the tooltip that is displayed when hovering over the thrash can icon.

You can use either a string or a ReactElement for the tooltip contents:

  • string: the textual content of the tooltip

  • ReactElement: a React Element (instance of a React Component, usually created with JSX)


  Default value
"Remove this value from the list."
8. renderFormField Function

A callback that is called for each value in the values array, which should return a form field instance.


  Arguments
# Name Type Description
1. parameters Object
  Members

Members

Name Type Description
isDisabled Boolean

Whether or not the component should be rendered in a disabled state.

onChange Function

,

A callback that is called whenever a component's value changes.

This callback is called just before the "validate" prop is called.

Use this callback to update local state which in turn should update the value prop of the component whose callback just fired.


  Arguments
# Name Type Description
1. value Value | Array<ItemWithLabelAndValueValue>

A single value or an array of values, depending on the component that is changing.


  Value

Type: *

The current value of the component. This value will be visualized in the component, often using a human readable label, sometimes using another visual indication (e.g. Checkbox).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

  ItemWithLabelAndValueValue

Type: *

The value of an ItemWithLabelAndValue.

This value is used to compare items, eg. when determining the selected item(s).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

onFocusableRef Function

A callback that is called whenever the form field's(or part of the form field) ref changes. Use this callback to get the ref (or the domNode) of the form field (or part of the form field) so it can be focused when the MultipleValuesInput is focused.

value *

The current value of the component. This value will be visualized in the component, often using a human readable label, sometimes using another visual indication (e.g. Checkbox).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

9. [tooltipContent] String | ReactElement

The content of the tooltip that is displayed when hovering over the whole component.

  • string: the textual content of the tooltip

  • ReactElement: a React Element (instance of a React Component, usually created with JSX)

  Default value
null
10. [validate] Function

A callback that is called directly after the value(s) of a form component change(s).

Use this callback to check the selected value(s) against business rules and to set any feedback for the user based on this.


  Arguments
# Name Type Description
1. value Value | Array<ItemWithLabelAndValueValue>

A single value or an array of values, depending on the component being validated.


  Value

Type: *

The current value of the component. This value will be visualized in the component, often using a human readable label, sometimes using another visual indication (e.g. Checkbox).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

  ItemWithLabelAndValueValue

Type: *

The value of an ItemWithLabelAndValue.

This value is used to compare items, eg. when determining the selected item(s).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

  Returns

Type: Object

The result of validating form input.

Properties

Name Type Description
connotation String

Determines the text/border color of the feedback message.

Specifies the meaning and/or severity of the given feedback. The possible values are: (from least to most severe)

  • 'success'

  • 'info'

  • 'warning'

  • 'error'

message String

The textual content of the feedback message shown near the form component whose validate callback yielded this result.

  Default value
null
11. values Array<Value>
  Default value
[]

  Value

Type: *

The current value of the component. This value will be visualized in the component, often using a human readable label, sometimes using another visual indication (e.g. Checkbox).

Depending on the component, the data type in JavaScript might be restricted further: eg: a TimeSelect might expect a Date, a TextInput a string etc. These restrictions are implemented with React PropTypes console warnings.

Was this page helpful?