Class: LabelSelector
Instance Method Summary collapse
- #choose ⇒ Object
- #clear_screen ⇒ Object
-
#initialize(list) ⇒ LabelSelector
constructor
A new instance of LabelSelector.
- #selecta(keys, values) ⇒ Object
Constructor Details
#initialize(list) ⇒ LabelSelector
Returns a new instance of LabelSelector.
6 7 8 9 |
# File 'lib/label_selector.rb', line 6 def initialize(list) @keys = list.map(&:name) @values = list.map { |e| ListColorizer.call(e.to_s(detail: true)) } end |
Instance Method Details
#choose ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/label_selector.rb', line 11 def choose view = selecta(@keys, @values) print view STDIN.gets rescue Interrupt => e clear_screen exit 0 end |
#clear_screen ⇒ Object
25 26 27 |
# File 'lib/label_selector.rb', line 25 def clear_screen print "\e[2J\e[H" end |
#selecta(keys, values) ⇒ Object
20 21 22 23 |
# File 'lib/label_selector.rb', line 20 def selecta(keys, values) clear_screen Selecta.new.main_api(keys: keys, values: values, options: { height: "full" }).tap { clear_screen } end |