Class: Nvoi::Cli::Onboard::Steps::AppName

Inherits:
Object
  • Object
show all
Includes:
Ui
Defined in:
lib/nvoi/cli/onboard/steps/app_name.rb

Overview

Collects application name

Constant Summary

Constants included from Ui

Ui::MAX_RETRIES

Instance Method Summary collapse

Methods included from Ui

#box, #error, #output, #prompt_with_retry, #section, #success, #table, #with_spinner

Constructor Details

#initialize(prompt, test_mode: false) ⇒ AppName

Returns a new instance of AppName.



11
12
13
14
# File 'lib/nvoi/cli/onboard/steps/app_name.rb', line 11

def initialize(prompt, test_mode: false)
  @prompt = prompt
  @test_mode = test_mode
end

Instance Method Details

#call(existing: nil) ⇒ Object



16
17
18
19
20
21
# File 'lib/nvoi/cli/onboard/steps/app_name.rb', line 16

def call(existing: nil)
  @prompt.ask("Application name:", default: existing) do |q|
    q.required true
    q.validate(/\A[a-z0-9_-]+\z/i, "Only letters, numbers, dashes, underscores")
  end
end