class Tolq::Parsers::XLSX::Unparser
Unparses a tolq response to XLSX
suitable
Public Instance Methods
from_hash(translations, original:, **args)
click to toggle source
Unparses a translations hash of key => translation
@param translations [Hash] A hash of translations with key => translation @return [String] A xlsx formatted string
# File lib/xlsx/unparser.rb, line 17 def from_hash(translations, original:, **args) translate_xlsx(translations, original: original).stream.read end
from_tolq_response(tolq_response, original:, **args)
click to toggle source
Unparses the tolq response
@param tolq_response [Hash] A parsed response from our api @return [String] A xlsx formatted string
# File lib/xlsx/unparser.rb, line 8 def from_tolq_response(tolq_response, original:, **args) translations = tolq_response['translations'].values.first translate_xlsx(translations, original: original).stream.read end
Private Instance Methods
translate_xlsx(translations, original:)
click to toggle source
# File lib/xlsx/unparser.rb, line 23 def translate_xlsx(translations, original:) workbook = RubyXL::Parser.parse_buffer(original) worksheet = workbook.worksheets.first translations.each do |k,v| row, col = ColumnHelper.from_char_notation(k) worksheet[row][col].change_contents(v) end workbook end