This package has been deprecated

Author message:

🚚 @vangware/prompts is now @lou.codes/prompts

@vangware/prompts
TypeScript icon, indicating that this package has built-in type declarations

2.2.16 • Public • Published

Coverage License NPM Version Open Issues Size

⁉️ CLI interactive prompts. Can be used to wrap anything that matches the interface of node:readline/promises.

Usage

📦 Node

Install @vangware/prompts as a dependency:

pnpm add @vangware/prompts
# or
npm install @vangware/prompts
# or
yarn add @vangware/prompts

Import it and use it:

import { question } from "@vangware/prompts";
import { createInterface } from "node:readline/promises";

const exampleQuestion = question(
	createInterface({
		input: process.stdin,
		output: process.stdout,
	}),
);

exampleQuestion({
	format: value => parseInt(value, 18),
	query: "How old are you?",
	validate: value => (value < 18 ? "You must be at least 18 years old." : ""),
})
	.then(console.log)
	.catch(console.error)
	.finally(() => readlineInterface.close());

🦕 Deno

Import @vangware/prompts using the npm: prefix, and use it directly with the native prompt:

import { question } from "npm:@vangware/prompts";

const exampleQuestion = question({
	question: query => Promise.resolve(prompt(query)),
});

exampleQuestion({
	format: value => parseInt(value, 18),
	query: "How old are you?",
	validate: value => (value < 18 ? "You must be at least 18 years old." : ""),
})
	.then(console.log)
	.catch(console.error);

🌎 Browser

Import @vangware/prompts using esm.sh, and use it directly with the native prompt:

import { question } from "https://esm.sh/@vangware/prompts";

const exampleQuestion = question({
	question: query => Promise.resolve(prompt(query)),
});

exampleQuestion({
	format: value => parseInt(value, 18),
	query: "How old are you?",
	validate: value => (value < 18 ? "You must be at least 18 years old." : ""),
})
	.then(console.log)
	.catch(console.error);

Package Sidebar

Install

npm i @vangware/prompts

Weekly Downloads

2

Version

2.2.16

License

MIT

Unpacked Size

10.1 kB

Total Files

11

Last publish

Collaborators

  • loucyx