lib/eco/assets.rb
module Eco class Assets attr_reader :active_config def initialize @active_config = :default @cli = Eco::CLI.new @cli_init = false end def session(key: active_config, update_active: true) config(key: key, update_active: update_active).session.tap do |session| yield(session) if block_given? end end def config(key: active_config, update_active: true) configs[:default] ||= Eco::API::Session::Config.new(key) unless configs.key?(key) @active_config = key unless !update_active configs[key] = configs[:default].clone(key) end configs[key].tap do |config| config.active_api(key) if config.apis.defined?(key) yield(config) if block_given? end end def configs @configs ||= {} end def cli unless @cli_init @cli_init = true #pp "going to load default cli config..." require_relative('cli/config/default') end @cli end end end require_relative 'assets/language' ASSETS = Eco::Assets.new