Module: Commiti::MessagePresenter
- Defined in:
- lib/services/message_presenter.rb
Class Method Summary collapse
- .maybe_copy_to_clipboard(message, no_copy:, run_stage:) ⇒ Object
- .print_message(message) ⇒ Object
- .print_summarization_notice(summarized_result) ⇒ Object
- .select_message(candidates) ⇒ Object
Class Method Details
.maybe_copy_to_clipboard(message, no_copy:, run_stage:) ⇒ Object
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/services/message_presenter.rb', line 27 def self.maybe_copy_to_clipboard(, no_copy:, run_stage:) return if no_copy copied = run_stage.call('Copying output to clipboard') { Commiti::Clipboard.copy() } if copied puts "#{Commiti::TerminalUI.status(:success, 'Copied output to clipboard!')}\n\n" else puts "#{Commiti::TerminalUI.status(:warn, 'Clipboard unavailable. Install xclip: sudo apt install xclip')}\n\n" end end |
.print_message(message) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/services/message_presenter.rb', line 38 def self.() puts "\n#{Commiti::TerminalUI.separator}" puts Commiti::TerminalUI.header('Generated output') puts Commiti::TerminalUI.separator puts puts "#{Commiti::TerminalUI.separator}\n" end |
.print_summarization_notice(summarized_result) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/services/message_presenter.rb', line 5 def self.print_summarization_notice(summarized_result) if summarized_result[:fallback_reason] puts "\n#{Commiti::TerminalUI.status(:warn, summarized_result[:fallback_reason])}\n" elsif summarized_result[:summarized] puts "\n#{Commiti::TerminalUI.status(:info, 'Diff is large — summarizing first to preserve prompt focus.')}\n" end end |
.select_message(candidates) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/services/message_presenter.rb', line 13 def self.(candidates) if candidates.length == 1 (candidates.first) return candidates.first end print_candidates(candidates) selected_index = Commiti::InteractivePrompt.ask_candidate_selection(candidates.length) = candidates[selected_index] puts "\n#{Commiti::TerminalUI.status(:info, "Using candidate #{selected_index + 1}.")}" () end |