JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 9180
  • Score
    100M100P100Q138223F
  • License MIT

Multi select input component for Ink

Package Exports

  • ink-multi-select

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (ink-multi-select) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

ink-multi-select Build Status

Multi-Select input component for Ink

Based on ink-select-input

Install

$ npm install ink-multi-select

Usage

import React from 'react';
import {render} from 'ink';
import MultiSelect from 'ink-multi-select';

const Demo = () => {
    const handleSubmit = items => {
        // `items` = [{ label: 'First', value: 'first' }, { label: 'Third', value: 'third' }]
    };

    const items = [{
        label: 'First',
        value: 'first'
    }, {
        label: 'Second',
        value: 'second'
    }, {
        label: 'Third',
        value: 'third'
    }];

    return <MultiSelect items={items} onSubmit={handleSubmit}/>
};

render(<Demo/>);

Props

items

Type: array
Default: []

Items to display in a list. Each item must be an object and have label and value props, it may also optionally have a key prop. If no key prop is provided, value will be used as the item key.

selected

Type: array
Default: undefined

List of the selected items. If undefined, the component will be uncontrolled and will store internally selected items.

defaultSelected

Type: array
Default: []

List of initial selected items (this works only when selected is undefined).

focus

Type: boolean
Default: true

Listen to user's input. Useful in case there are multiple input components at the same time and input must be "routed" to a specific component.

initialIndex

Type: number Default: 0

Index of initially-selected item in items array.

onSelect

Type: function

Function to call when user selects an item. Item object is passed to that function as an argument.

onUnselect

Type: function

Function to call when user unselects an item. Item object is passed to that function as an argument.

onHighlight

Type: function

Function to call when user highlights an item. Item object is passed to that function as an argument.

onSubmit

Type: function

Function to call when user submits the selected list. Array of Item objects is passed to that function as an argument.

indicatorComponent

Type: Component

Custom component to override the default indicator component.

checkboxComponent

Type: Component

Custom component to override the default check-box component.

itemComponent

Type: Component

Custom component to override the default item component.

limit

Type: number

Number of items to display.

License

MIT © George Karagkiaouris