module RouteTranslator
def available_locales
def available_locales locales = config.available_locales if locales.empty? I18n.available_locales.dup else locales.map(&:to_sym) end end
def check_deprecations; end
def check_deprecations; end
def config
def config @config ||= Configuration.new DEFAULT_CONFIGURATION.each do |option, value| @config[option] ||= value end yield @config if block_given? resolve_host_locale_config_conflicts if @config.host_locales.present? check_deprecations @config end
def deprecator
def deprecator @deprecator ||= ActiveSupport::Deprecation.new(RouteTranslator::VERSION, 'RouteTranslator') end
def locale_from_params(params)
def locale_from_params(params) locale = params[config.locale_param_key]&.to_sym locale if I18n.available_locales.include?(locale) end
def locale_from_request(request)
def locale_from_request(request) locale_from_params(request.params) || Host.locale_from_host(request.host) end
def locale_param_key
def locale_param_key config.locale_param_key end
def reset_config
def reset_config @config = nil config end
def resolve_host_locale_config_conflicts
def resolve_host_locale_config_conflicts @config.force_locale = false @config.generate_unlocalized_routes = false @config.generate_unnamed_unlocalized_routes = false @config.hide_locale = true end