PATH:
usr
/
local
/
lib
/
node_modules
/
pm2
/
node_modules
/
enquirer
/
lib
/
prompts
'use strict'; const Prompt = require('../types/string'); const completer = require('../completer'); class Input extends Prompt { constructor(options) { super(options); let history = this.options.history; if (history && history.store) { let initial = history.values || this.initial; this.autosave = !!history.autosave; this.store = history.store; this.data = this.store.get('values') || { past: [], present: initial }; this.initial = this.data.present || this.data.past[this.data.past.length - 1]; } } completion(action) { if (!this.store) return this.alert(); this.data = completer(action, this.data, this.input); if (!this.data.present) return this.alert(); this.input = this.data.present; this.cursor = this.input.length; return this.render(); } altUp() { return this.completion('prev'); } altDown() { return this.completion('next'); } prev() { this.save(); return super.prev(); } save() { if (!this.store) return; this.data = completer('save', this.data, this.input); this.store.set('values', this.data); } submit() { if (this.store && this.autosave === true) { this.save(); } return super.submit(); } } module.exports = Input;
[-] numeral.js
[edit]
[-] survey.js
[edit]
[-] basicauth.js
[edit]
[-] select.js
[edit]
[+]
..
[-] text.js
[edit]
[-] invisible.js
[edit]
[-] confirm.js
[edit]
[-] autocomplete.js
[edit]
[-] snippet.js
[edit]
[-] input.js
[edit]
[-] multiselect.js
[edit]
[-] toggle.js
[edit]
[-] list.js
[edit]
[-] index.js
[edit]
[-] editable.js
[edit]
[-] password.js
[edit]
[-] form.js
[edit]
[-] sort.js
[edit]
[-] scale.js
[edit]
[-] quiz.js
[edit]