Class: Ace::Idea::CLI::Commands::List

Inherits:
Support::Cli::Command
  • Object
show all
Includes:
Support::Cli::Base
Defined in:
lib/ace/idea/cli/commands/list.rb

Overview

ace-support-cli Command class for ace-idea list

Constant Summary collapse

C =
Ace::Support::Items::Atoms::AnsiColors

Instance Method Summary collapse

Instance Method Details

#call(**options) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/ace/idea/cli/commands/list.rb', line 40

def call(**options)
  status = options[:status]
  in_folder = options[:in]
  root = options[:root]
  tags_str = options[:tags]
  tags = tags_str ? tags_str.split(",").map(&:strip).reject(&:empty?) : []
  filters = options[:filter]

  manager = Ace::Idea::Organisms::IdeaManager.new
  list_opts = {status: status, tags: tags, root: root, filters: filters}
  list_opts[:in_folder] = in_folder if in_folder
  ideas = manager.list(**list_opts)

  puts Ace::Idea::Molecules::IdeaDisplayFormatter.format_list(
    ideas, total_count: manager.last_list_total,
    global_folder_stats: manager.last_folder_counts
  )
end