ink-confirm-input

2.0.0 • Public • Published

ink-confirm-input Build Status

Confirmation input component for Ink

Install

$ npm install ink-confirm-input

Usage

import React, {useCallback, useState} from 'react';
import {render, Box} from 'ink';
import ConfirmInput from 'ink-confirm-input';
 
const UnicornQuestion = () => {
    const [answer, setAnswer] = useState();
    const [value, setValue] = useState('');
    const handleSubmit = useCallback(submitValue => {
        if (submitValue === false) {
            setAnswer({answer: 'You are heartless…'});
            return;
        }
 
        setAnswer({answer: 'You love unicorns!'});
    }, [setAnswer]);
 
    return (
        <Box>
            Do you like unicorns? (Y/n)
 
            <ConfirmInput
                isChecked
                value={value}
                onChange={setValue}
                onSubmit={handleSubmit}
            />
 
            {answer && answer}
        </Box>
    );
};
 
render(<UnicornQuestion/>);

API

<ConfirmInput/>

Props

<ConfirmInput/> accepts the same props as <TextInput/> in addition to the ones below.

isChecked

Type: boolean

Whether to return true or false by default.

value

Type: string

Value to display in a text input.

placeholder

Type: string

Text to display when value is empty.

onChange

Type: Function

Function to call when value updates. Returns a string with the input.

onSubmit

Type: Function

Function to call when user press Enter. Returns a boolean for the answer.

Package Sidebar

Install

npm i ink-confirm-input

Weekly Downloads

105

Version

2.0.0

License

MIT

Unpacked Size

6.57 kB

Total Files

4

Last publish

Collaborators

  • kevva