Class: Aidp::Interfaces::TtySpinnerWrapper

Inherits:
Object
  • Object
show all
Includes:
SpinnerInterface
Defined in:
lib/aidp/interfaces/ui_interface.rb

Overview

TtySpinnerWrapper wraps TTY::Spinner to implement SpinnerInterface.

Instance Method Summary collapse

Constructor Details

#initialize(title:) ⇒ TtySpinnerWrapper

Returns a new instance of TtySpinnerWrapper.



231
232
233
234
235
# File 'lib/aidp/interfaces/ui_interface.rb', line 231

def initialize(title:)
  require "tty-spinner"
  @spinner = TTY::Spinner.new("[:spinner] :title", format: :dots, hide_cursor: true)
  @spinner.update(title: title)
end

Instance Method Details

#auto_spinObject



237
238
239
# File 'lib/aidp/interfaces/ui_interface.rb', line 237

def auto_spin
  @spinner.auto_spin
end

#error(message = nil) ⇒ Object



245
246
247
# File 'lib/aidp/interfaces/ui_interface.rb', line 245

def error(message = nil)
  @spinner.error(message || "failed")
end

#success(message = nil) ⇒ Object



241
242
243
# File 'lib/aidp/interfaces/ui_interface.rb', line 241

def success(message = nil)
  @spinner.success(message || "done")
end

#update_title(title) ⇒ Object



249
250
251
# File 'lib/aidp/interfaces/ui_interface.rb', line 249

def update_title(title)
  @spinner.update(title: title)
end