ChatiumFor developersPlaygroundPricing
Sign in

MultiSelectorInput

Properties

  • id (string):
    Unique identifier for the component.
  • name (string):
    Name for the input field used in forms.
  • class (string):
    Additional CSS classes for the component.
  • classList (JSX.HTMLAttributes<HTMLDivElement>['classList']):
    Additional CSS classes as an object that supports dynamic class assignment.
  • style (JSX.CSSProperties):
    Inline styles for the component.
  • formId (string):
    Identifier of the form to which the component is bound.
  • placeholder (string):
    Placeholder text displayed when no items are selected.
  • clearable (boolean):
    Determines whether selected values can be cleared. If true, a clear icon is displayed.
  • wrappable (boolean):
    Determines whether lines in the value list can wrap. This is useful for long lists that may take up multiple lines.
  • disabled (boolean):
    Disables the component, making it unavailable for interaction.
  • forceLoading (boolean):
    Forces the loading mode on, displaying a loading indicator.
  • store ([get: any, set: (field: string, value: (string | number)[]) => void]):
    Optional store for managing selection state. Supports management through an array of identifiers.
  • items (SelectorItem[]):
    Local array of selectable items.
  • itemsUrl (string):
    URL for loading items from a remote server. Supports dynamic data loading as filtering occurs.
  • value (SelectorItem[] | SelectorItem['id'][]):
    Current selection value. Can be an array of item objects or an array of their identifiers.
  • valueUrl (string):
    URL for fetching data by identifier if value is passed as an array of identifiers.
  • itemComponent (string):
    Component for rendering each item in the dropdown list.
  • valueComponent (string):
    Component for rendering selected values.
  • onSelect (function(items: SelectorItem[])):
    Handler function called when one or more items are selected. Returns an array of selected items.
  • onInput (function(items: SelectorItem['id'][])):
    Handler function called when selected values change. Returns an array of selected item identifiers.
  • onKeyDown (function(event: KeyboardEvent)):
    Handler function for key press events when focused on the element.

Important Points

  • Dropdown:
    The component supports displaying a dropdown list with items that appears when clicking on the field or typing text for filtering.
  • Debounce:
    Used to optimize data filtering, triggering only after a specified time (700 ms) following the last input.
  • Spinner:
    A loading indicator is displayed when data is being loaded or when the forceLoading flag is enabled.
  • Filtering Items:
    The component supports both local and remote filtering through the filterItems method.