Class: Soapstone::UI::Menus::AISettings

Inherits:
Object
  • Object
show all
Defined in:
lib/soapstone/ui/menus/ai_settings.rb

Constant Summary collapse

PROVIDER_OPTIONS =
{
  "open_ai" => "OpenAI",
  "anthropic" => "Anthropic"
}.freeze

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config:) ⇒ AISettings

Returns a new instance of AISettings.



11
12
13
14
# File 'lib/soapstone/ui/menus/ai_settings.rb', line 11

def initialize(config:)
  @config = config
  @pastel = Pastel.new
end

Class Method Details

.call(config:) ⇒ Object



7
8
9
# File 'lib/soapstone/ui/menus/ai_settings.rb', line 7

def self.call(config:)
  new(config: config).call
end

Instance Method Details

#callObject



16
17
18
19
20
21
22
23
24
25
# File 'lib/soapstone/ui/menus/ai_settings.rb', line 16

def call
  Soapstone::UI::Screens::Utils.clear
  enabled = ask_for_ai_enabled

  return unless enabled

  setup_ai_providers
  set_default_ai_provider
  show_success_message
end