Module: AppConfig

Defined in:
lib/config.rb

Constant Summary collapse

CONFIG_FILE =
File.join(Dir.home, '.gpterminal', 'config.yml').freeze

Class Method Summary collapse

Class Method Details

.add_openapi_key(config, openapi_key) ⇒ Object



21
22
23
24
# File 'lib/config.rb', line 21

def self.add_openapi_key(config, openapi_key)
  config['openapi_key'] = openapi_key
  save_config(config)
end

.add_preset(config, preset_name, preset_prompt) ⇒ Object



26
27
28
29
30
31
# File 'lib/config.rb', line 26

def self.add_preset(config, preset_name, preset_prompt)
  # This is a YAML file so we need to make sure the presets key exists
  config['presets'] ||= {}
  config['presets'][preset_name] = preset_prompt
  save_config(config)
end

.default_config ⇒ Object



33
34
35
36
37
# File 'lib/config.rb', line 33

def self.default_config
  {
    'openapi_key' => ''
  }
end

.load_config ⇒ Object



11
12
13
14
15
# File 'lib/config.rb', line 11

def self.load_config
  YAML.load_file(CONFIG_FILE)
rescue Errno::ENOENT
  default_config
end

.save_config(config) ⇒ Object



17
18
19
# File 'lib/config.rb', line 17

def self.save_config(config)
  File.write(CONFIG_FILE, config.to_yaml)
end