Module: Roda::Project::Helpers::InteractiveInput

Included in:
CLI
Defined in:
lib/roda/project/helpers/interactive_input.rb

Instance Method Summary collapse

Instance Method Details

#pastelObject



26
27
28
# File 'lib/roda/project/helpers/interactive_input.rb', line 26

def pastel
  @pastel ||= Pastel.new
end

#read_line(prompt, default) ⇒ Object



5
6
7
8
9
10
11
12
# File 'lib/roda/project/helpers/interactive_input.rb', line 5

def read_line(prompt, default)
  val = reader.read_line(prompt).chomp
  return default if val == ""
  return false if val == "n"
  return true if val == "Y" || val == "y"

  val
end

#readerObject



14
15
16
# File 'lib/roda/project/helpers/interactive_input.rb', line 14

def reader
  @reader ||= TTY::Reader.new
end

#retry_on_errorObject



18
19
20
21
22
23
24
# File 'lib/roda/project/helpers/interactive_input.rb', line 18

def retry_on_error
  yield
rescue Roda::Project::Error => e
  puts "\n #{pastel.red(e.message)} \n\n"

  yield
end