Sha256: 02e4495a7be66f562f67bef0daab43f6770921d0854e53582ee645cbec64f444

Contents?: true

Size: 1.06 KB

Versions: 2

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

require_relative "localer/version"
require_relative "localer/service"
require_relative "localer/parser"
require_relative "localer/checker"
require_relative "localer/config"
require_relative "localer/missing_translations"

module Localer # :nodoc:
  class << self
    def parcer
      @parcer ||= begin
        require File.expand_path("config/environment", Dir.pwd)
        I18n.backend.send(:init_translations)
        Parser.call(I18n.backend.send(:translations))
      end
    end

    # returns array of available locales
    def locales
      parcer.locales
    end

    def data
      parcer.data
    end

    # checks missing translations
    def complete?
      Checker.call(locales, data)
    end

    # returns array of missing translations
    def missing_translations
      MissingTranslations.call(locales, data)
    end

    def config
      @config ||= Config.call
    end

    def each_data
      data.each do |key, value|
        locales.each do |locale|
          yield locale, key, value[locale]
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
localer-0.0.2 lib/localer.rb
localer-0.0.1 lib/localer.rb