diff --git a/packages/inquirer/examples/terminal-link.js b/packages/inquirer/examples/terminal-link.js new file mode 100644 index 0000000000..e487b68bce --- /dev/null +++ b/packages/inquirer/examples/terminal-link.js @@ -0,0 +1,26 @@ +/** + * terminal-link example. We expect no odd line breaks. + */ + +'use strict'; +const inquirer = require('..'); +const terminalLink = require('terminal-link') + +/** Note: you will need a compatible terminal to see the rendered links. https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda */ +/** For screenshots of the expected behavior, see https://github.com/SBoudrias/Inquirer.js/pull/1106 */ + +inquirer + .prompt([ + { + type: 'list', + name: 'size', + message: 'What size do you need?', + choices: ['Jumbo', 'Large', 'Standard', 'Medium', 'Small', 'Micro which is truly and surely the ' + terminalLink('very very very very very very smallest', 'https://www.google.com/search?q=very+very+very+very+very+very+very+very+very+very+long')], + filter(val) { + return val.toLowerCase(); + }, + }, + ]) + .then((answers) => { + console.log(JSON.stringify(answers, null, ' ')); + }); diff --git a/packages/inquirer/package.json b/packages/inquirer/package.json index 63a9cea15d..3d9884ab7b 100644 --- a/packages/inquirer/package.json +++ b/packages/inquirer/package.json @@ -26,7 +26,8 @@ "mocha": "^9.2.2", "mockery": "^2.1.0", "nyc": "^15.0.0", - "sinon": "^13.0.1" + "sinon": "^13.0.1", + "terminal-link": "^2.1.1" }, "scripts": { "test": "nyc mocha test/**/* -r ./test/before",