Sha256: 79cbb0276a5cc24c36560551494ba603d5aa3d1ac2f8a8ab4e5ca10e8da69397
Contents?: true
Size: 784 Bytes
Versions: 1
Compression:
Stored size: 784 Bytes
Contents
require "axlsx" class Agilibox::Serializers::XLSX < Agilibox::Serializers::Base def render_inline xlsx.to_stream.read.force_encoding("BINARY") end def render_file(file_path) xlsx.serialize(file_path) end def xlsx @xlsx ||= Axlsx::Package.new do |p| p.workbook.add_worksheet do |sheet| data.each do |line| values = line.map do |value| if value.is_a?(Integer) value elsif value.is_a?(Numeric) value.to_f # Fix BigDecimal elsif value == true || value == false I18n.t(value.to_s) else value.to_s end end sheet.add_row(values) end end p.use_shared_strings = true end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
agilibox-1.0.0 | app/serializers/agilibox/serializers/xlsx.rb |