UNPKG

alwaysai

Version:

The alwaysAI command-line interface (CLI)

35 lines 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const prompts = require("prompts"); const alwayscli_1 = require("@alwaysai/alwayscli"); function getNonInteractiveStreamName() { for (const streamName of ['stdin', 'stdout']) { if (!process[streamName].isTTY) { return streamName; } } return undefined; } exports.getNonInteractiveStreamName = getNonInteractiveStreamName; function checkTerminalIsInteractive() { const streamName = getNonInteractiveStreamName(); if (streamName) { throw new alwayscli_1.TerseError(`This feature is disabled when standard ${streamName === 'stdin' ? 'input' : 'output'} (${streamName}) is not a TTY`); } } exports.checkTerminalIsInteractive = checkTerminalIsInteractive; async function prompt(questions) { checkTerminalIsInteractive(); let canceled = false; const answers = await prompts(questions, { onCancel() { canceled = true; }, }); if (canceled) { throw new alwayscli_1.TerseError('Operation canceled by user'); } return answers; } exports.prompt = prompt; //# sourceMappingURL=prompt.js.map