mirror of
https://github.com/actions/setup-java.git
synced 2025-04-20 18:06:45 +00:00
Fix.
This commit is contained in:
parent
596a6da241
commit
c1a589c5b6
7078 changed files with 1882834 additions and 319 deletions
87
node_modules/prompts/dist/elements/confirm.js
generated
vendored
Normal file
87
node_modules/prompts/dist/elements/confirm.js
generated
vendored
Normal file
|
@ -0,0 +1,87 @@
|
|||
"use strict";
|
||||
|
||||
const color = require('kleur');
|
||||
|
||||
const Prompt = require('./prompt');
|
||||
|
||||
const _require = require('../util'),
|
||||
style = _require.style;
|
||||
|
||||
const _require2 = require('sisteransi'),
|
||||
erase = _require2.erase,
|
||||
cursor = _require2.cursor;
|
||||
/**
|
||||
* ConfirmPrompt Base Element
|
||||
* @param {Object} opts Options
|
||||
* @param {String} opts.message Message
|
||||
* @param {Boolean} [opts.initial] Default value (true/false)
|
||||
* @param {Stream} [opts.stdin] The Readable stream to listen to
|
||||
* @param {Stream} [opts.stdout] The Writable stream to write readline data to
|
||||
* @param {String} [opts.yes] The "Yes" label
|
||||
* @param {String} [opts.yesOption] The "Yes" option when choosing between yes/no
|
||||
* @param {String} [opts.no] The "No" label
|
||||
* @param {String} [opts.noOption] The "No" option when choosing between yes/no
|
||||
*/
|
||||
|
||||
|
||||
class ConfirmPrompt extends Prompt {
|
||||
constructor(opts = {}) {
|
||||
super(opts);
|
||||
this.msg = opts.message;
|
||||
this.value = opts.initial;
|
||||
this.initialValue = !!opts.initial;
|
||||
this.yesMsg = opts.yes || 'yes';
|
||||
this.yesOption = opts.yesOption || '(Y/n)';
|
||||
this.noMsg = opts.no || 'no';
|
||||
this.noOption = opts.noOption || '(y/N)';
|
||||
this.render();
|
||||
}
|
||||
|
||||
reset() {
|
||||
this.value = this.initialValue;
|
||||
this.fire();
|
||||
this.render();
|
||||
}
|
||||
|
||||
abort() {
|
||||
this.done = this.aborted = true;
|
||||
this.fire();
|
||||
this.render();
|
||||
this.out.write('\n');
|
||||
this.close();
|
||||
}
|
||||
|
||||
submit() {
|
||||
this.value = this.value || false;
|
||||
this.done = true;
|
||||
this.aborted = false;
|
||||
this.fire();
|
||||
this.render();
|
||||
this.out.write('\n');
|
||||
this.close();
|
||||
}
|
||||
|
||||
_(c, key) {
|
||||
if (c.toLowerCase() === 'y') {
|
||||
this.value = true;
|
||||
return this.submit();
|
||||
}
|
||||
|
||||
if (c.toLowerCase() === 'n') {
|
||||
this.value = false;
|
||||
return this.submit();
|
||||
}
|
||||
|
||||
return this.bell();
|
||||
}
|
||||
|
||||
render() {
|
||||
if (this.closed) return;
|
||||
if (this.firstRender) this.out.write(cursor.hide);
|
||||
super.render();
|
||||
this.out.write(erase.line + cursor.to(0) + [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(this.done), this.done ? this.value ? this.yesMsg : this.noMsg : color.gray(this.initialValue ? this.yesOption : this.noOption)].join(' '));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = ConfirmPrompt;
|
Loading…
Add table
Add a link
Reference in a new issue