ods 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ods/sheet.rb +12 -7
  3. data/lib/ods/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e3092cd80dc623e6dbb6f5453599f35317df4645
4
- data.tar.gz: 79257948ca0817a19657211a49e4eb62384d7914
3
+ metadata.gz: 8a64a5dc8d8afbc4abd9dfba87f348264b92bd07
4
+ data.tar.gz: ddc61bcd66a6dacf0ff9932313da11b7ecf54cdb
5
5
  SHA512:
6
- metadata.gz: fe3cb1a0c987139386abff1b122baa7d3d96280ee0700b76d3cff53c9589abbaff059311125236d3e702060319b9d70c9bce1bfbc2dd59c476a3f14c63ff69b9
7
- data.tar.gz: e3b811dd85ef473a88d50edd51cb8a5a30879ec290c5d2ced1f3e9a50b8a6986dde769500467801d4a097756073f0baf00782b6913acc1da320e2395d842d488
6
+ metadata.gz: 1b2161b104695195910fdb87fdb6fe399d94a78ea31fa83bbeadc3a18443cda717702d919612bdb0348b9d42a9ba94bd03ef25dfc57bf9088b75782ca8f64b9b
7
+ data.tar.gz: b4ea9fb9745bebb41b92c4a417a7ea739145926c2b8a58b436b54d74a6829cad27876b649e351e7ff860e768399df1ee0027e23d2e1d2c18af7995c919e70420
@@ -19,20 +19,25 @@ module Ods
19
19
  def rows
20
20
  return @rows if @rows
21
21
  @rows = []
22
- content.xpath('descendant::table:table-row').each do |node|
22
+ src_rows = content.xpath('descendant::table:table-row')
23
+
24
+ # ignore trailing empty rows
25
+ while (last_row = src_rows.last) && (Row.new(last_row, self).data.length == 0)
26
+ src_rows.pop
27
+ end
28
+
29
+ src_rows.each do |node|
23
30
  a_row = Row.new(node, self)
24
- if a_row.data.length > 0
25
- repeat = node['table:number-rows-repeated'] || 1
26
- repeat.to_i.times do
27
- @rows << a_row
28
- end
31
+ repeat = node['table:number-rows-repeated'] || 1
32
+ repeat.to_i.times do
33
+ @rows << a_row
29
34
  end
30
35
  end
31
36
  @rows
32
37
  end
33
38
 
34
39
  def data
35
- @data ||= rows.map(&:data).reject { |row| row.length == 0 }
40
+ @data ||= rows.map(&:data)
36
41
  end
37
42
 
38
43
  def csv
@@ -1,3 +1,3 @@
1
1
  module Ods
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ods
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Park