Class: AdLocalize::Mappers::ValueRangeToWording

Inherits:
Object
  • Object
show all
Defined in:
lib/ad_localize/mappers/value_range_to_wording.rb

Instance Method Summary collapse

Instance Method Details

#map(value_range:) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/ad_localize/mappers/value_range_to_wording.rb', line 4

def map(value_range:)
  values = value_range.values
  analyze_header(first_row: values.first)
  return unless valid_header?

  translations = map_rows(values: values)
  locale_wordings = translations.group_by(&:locale).map do |locale, group|
    Entities::LocaleWording.new(locale: locale, translations: group)
  end
  Entities::Wording.new(locale_wordings: locale_wordings, default_locale: @locale_mapping.keys.first)
end