class GettextI18nRailsJs::Config

Attributes

handlebars_function[RW]
javascript_function[RW]
jed_options[RW]
output_path[RW]

Public Class Methods

new(&block) click to toggle source
# File lib/gettext_i18n_rails_js/config.rb, line 32
def initialize(&block)
  @output_path = defaults[:output_path]
  @handlebars_function = defaults[:handlebars_function]
  @javascript_function = defaults[:javascript_function]
  @jed_options = defaults[:jed_options].symbolize_keys

  instance_eval(&block) if block_given?
end

Protected Instance Methods

defaults() click to toggle source
# File lib/gettext_i18n_rails_js/config.rb, line 43
def defaults
  file = ::Rails.root.join(
    "config",
    "gettext_i18n_rails_js.yml"
  )

  values = {
    output_path: File.join(
      "app",
      "assets",
      "javascripts",
      "locale"
    ),
    handlebars_function: "__",
    javascript_function: "__",
    jed_options: {
      pretty: false
    }
  }

  if file.exist?
    yaml = YAML.load_file(file) || {}

    values.deep_merge(
      yaml
    ).with_indifferent_access
  else
    values.with_indifferent_access
  end
end