Method: MultiapiCli::CLI#generate

Defined in:
lib/multiapi_cli.rb

#generate(directory = nil) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/multiapi_cli.rb', line 13

def generate(directory = nil)
  @working_directory = directory == '.' ? Dir.pwd : nil
  prompt = TTY::Prompt.new
  
  type = prompt.select("O que você deseja criar?") do |menu|
    menu.choice "Recurso Completo (API + Frontend)", :full_resource
    menu.choice "Apenas API", :api_only
    menu.choice "Apenas Frontend", :frontend_only
  end
  
  name = prompt.ask("Nome do recurso:", required: true)
  
  scope = prompt.select("Qual o escopo do recurso?") do |menu|
    menu.choice "Admin - Área Administrativa", :admin
    menu.choice "User - Área do Usuário", :user
  end
  
  case type
  when :full_resource
    generate_full_resource(name, scope)
  when :api_only
    generate_api_resource(name, scope)
  when :frontend_only
    generate_frontend_resource(name, scope)
  end
end