Sha256: b83cfbb628c611f265c5f1f76f01bbfdf1de8bd3f8e121d3f46fd1538caf3268

Contents?: true

Size: 504 Bytes

Versions: 20

Compression:

Stored size: 504 Bytes

Contents

require "axlsx"

class Dorsale::Serializers::XLSX < Dorsale::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|
          types = [:string] * line.length
          sheet.add_row(line, types: types)
        end
      end

      p.use_shared_strings = true
    end
  end

end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
dorsale-3.1.7 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.6 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.5 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.4 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.3 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.2 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.1 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.1.0 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.0.3 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.0.2 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.0.1 app/serializers/dorsale/serializers/xlsx.rb
dorsale-3.0.0 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.7.3 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.7.2 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.7.1 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.7.0 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.6.8 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.6.7 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.6.6 app/serializers/dorsale/serializers/xlsx.rb
dorsale-2.6.5 app/serializers/dorsale/serializers/xlsx.rb