ink-search-select

1.1.0 • Public • Published

ink-search-select

mpm node

incremental search and select component for ink

DEMO

Usage

import SearchSelect from "ink-search-select";
import React from 'react';
import { render } from 'ink';
 
let app;
const languages = [
    "JavaScript", "Java", "Python", "Ruby",
    "TypeScript", "ECMAScript", "AppleScript",
    "Swift", "Perl", "Lua", "Clojure", "C++", "C",
    "Go", "Haskell", "Scala", "Scheme", "BrainFu*k"
];
const items = languages.map(lang => {
    return { label: lang.toLowerCase(), value: lang };
});
const onSelect = (item) => {
    console.log(`You selected: '${item.value}'`);
    app.unmount();
};
 
app = render(
    <SearchSelect
        items={items}
        label="Query: "
        desc="Search any languages"
        onSelect={onSelect}
    />
);

Dependencies

Installation

npm install ink-search-select

or

yarn add ink-search-select

Props

label

Type Default
string "Search query: "

A label string in front of text input.

desc

Type Default
string "Search anything"

A description string of search. It displays between until text inputted after rendered.

placeholder

Type Default
string "..."

A placeholder string of text input.

items (from ink-select-input)

Type Default
array []

An items array 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, the value will be used as the item key.

itemComponent (from ink-select-input)

Type Default
Component Item

A custom ink component to override the default item component.

onSelect (from ink-select-input)

Type Default
func () => {}

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

Readme

Keywords

Package Sidebar

Install

npm i ink-search-select

Weekly Downloads

0

Version

1.1.0

License

MIT

Unpacked Size

59.6 kB

Total Files

8

Last publish

Collaborators

  • alice1017