Module: LokaliseRails

Defined in:
lib/lokalise_rails.rb,
lib/lokalise_rails/error.rb,
lib/lokalise_rails/railtie.rb,
lib/lokalise_rails/version.rb,
lib/lokalise_rails/task_definition/base.rb,
lib/lokalise_rails/task_definition/exporter.rb,
lib/lokalise_rails/task_definition/importer.rb,
lib/generators/lokalise_rails/install_generator.rb

Defined Under Namespace

Modules: Generators, TaskDefinition Classes: Error, Railtie

Constant Summary collapse

VERSION =
'2.0.0'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.api_tokenObject

Returns the value of attribute api_token.



10
11
12
# File 'lib/lokalise_rails.rb', line 10

def api_token
  @api_token
end

.branchObject

Project branch to use



27
28
29
# File 'lib/lokalise_rails.rb', line 27

def branch
  @branch || 'master'
end

.export_optsObject

Options for export rake task



64
65
66
# File 'lib/lokalise_rails.rb', line 64

def export_opts
  @export_opts || {}
end

.file_ext_regexpObject

Regular expression used to select translation files with proper extensions



47
48
49
# File 'lib/lokalise_rails.rb', line 47

def file_ext_regexp
  @file_ext_regexp || /\.ya?ml\z/i
end

.import_optsObject

Options for import rake task



52
53
54
55
56
57
58
59
60
61
# File 'lib/lokalise_rails.rb', line 52

def import_opts
  @import_opts || {
    format: 'yaml',
    placeholder_format: :icu,
    yaml_include_root: true,
    original_filenames: true,
    directory_prefix: '',
    indentation: '2sp'
  }
end

.import_safe_modeObject

Enables safe mode for import. When enabled, will check whether the target folder is empty or not



69
70
71
# File 'lib/lokalise_rails.rb', line 69

def import_safe_mode
  @import_safe_mode.nil? ? false : @import_safe_mode
end

.lang_iso_infererObject

Infers lang ISO for the given translation file



88
89
90
# File 'lib/lokalise_rails.rb', line 88

def lang_iso_inferer
  @lang_iso_inferer || ->(data) { YAML.safe_load(data)&.keys&.first }
end

.locales_pathObject

Full path to directory with translation files



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

def locales_path
  @locales_path || "#{Rails.root}/config/locales"
end

.max_retries_exportObject

Maximum number of retries for file exporting



37
38
39
# File 'lib/lokalise_rails.rb', line 37

def max_retries_export
  @max_retries_export || 5
end

.max_retries_importObject

Maximum number of retries for file importing



42
43
44
# File 'lib/lokalise_rails.rb', line 42

def max_retries_import
  @max_retries_import || 5
end

.project_idObject

Returns the value of attribute project_id.



10
11
12
# File 'lib/lokalise_rails.rb', line 10

def project_id
  @project_id
end

.skip_file_exportObject

Additional file skip criteria to apply when performing export



74
75
76
# File 'lib/lokalise_rails.rb', line 74

def skip_file_export
  @skip_file_export || ->(_) { false }
end

.timeoutsObject

Set request timeouts for the Lokalise API client



32
33
34
# File 'lib/lokalise_rails.rb', line 32

def timeouts
  @timeouts || {}
end

.translations_converterObject

Converts translations data to the proper format



83
84
85
# File 'lib/lokalise_rails.rb', line 83

def translations_converter
  @translations_converter || ->(raw_data) { raw_data.to_yaml }
end

.translations_loaderObject



78
79
80
# File 'lib/lokalise_rails.rb', line 78

def translations_loader
  @translations_loader || ->(raw_data) { YAML.safe_load raw_data }
end

Class Method Details

.config {|_self| ... } ⇒ Object

Main interface to provide configuration options for rake tasks

Yields:

  • (_self)

Yield Parameters:

  • _self (LokaliseRails)

    the object that the method was called on



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

def config
  yield self
end