ntq_excelsior 0.5.3 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c83e96aa4574d61fab90bd411335709ee1bfc7553866b9a622921d1e8a9d23df
4
- data.tar.gz: 45ed1db546080412b594bb3e2af1d5ec0f15df57bb80c65f7d51d6a86ca1627b
3
+ metadata.gz: 30e1baadc2da0aac67e885c5e4c1a3db870b0701b8cd22b74a396d62b8ad75f0
4
+ data.tar.gz: c186e0afb0b554b220678415dc228a88c1a7157066238d1453c92352657166bc
5
5
  SHA512:
6
- metadata.gz: c5a6cde69fea2f857b25090b68fdd3b7055646a341a4be7b9a53428ca2f318234c708199da2e678a65d2703c6dc28384eb51416eeba611a4efae12e829dff8cc
7
- data.tar.gz: 99be33b0725e28427bc973a293429a19cd4d89669f397bd96ae74a209233e6e0529f2cf1c249c6936a8c14d5648abf400fdf4e762d5faee9838144a431e0518e
6
+ metadata.gz: 271686e925552310034a81b8b5e91234a4832189075a08813d79cba53481afaddb8906e40ff765363868e78b81db432c19824c6b44bf7f38d4655bfa4359aa3a
7
+ data.tar.gz: 5790ae3ee05cb1b71f03c880c937b66ac35c33cfa23615e351ff935904338db2532535294d107001a1063fa1f507d3b4bcdcdccd93fc841e9c18a93aad7a8f15
data/Gemfile.lock ADDED
@@ -0,0 +1,75 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ ntq_excelsior (0.6.0)
5
+ caxlsx (< 4)
6
+ roo (< 3)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ ast (2.4.2)
12
+ caxlsx (3.3.0)
13
+ htmlentities (~> 4.3, >= 4.3.4)
14
+ marcel (~> 1.0)
15
+ nokogiri (~> 1.10, >= 1.10.4)
16
+ rubyzip (>= 1.3.0, < 3)
17
+ diff-lcs (1.5.0)
18
+ htmlentities (4.3.4)
19
+ json (2.6.3)
20
+ marcel (1.0.2)
21
+ nokogiri (1.15.2-arm64-darwin)
22
+ racc (~> 1.4)
23
+ parallel (1.23.0)
24
+ parser (3.2.2.3)
25
+ ast (~> 2.4.1)
26
+ racc
27
+ racc (1.7.1)
28
+ rainbow (3.1.1)
29
+ rake (13.0.6)
30
+ regexp_parser (2.8.1)
31
+ rexml (3.2.5)
32
+ roo (2.10.0)
33
+ nokogiri (~> 1)
34
+ rubyzip (>= 1.3.0, < 3.0.0)
35
+ rspec (3.11.0)
36
+ rspec-core (~> 3.11.0)
37
+ rspec-expectations (~> 3.11.0)
38
+ rspec-mocks (~> 3.11.0)
39
+ rspec-core (3.11.0)
40
+ rspec-support (~> 3.11.0)
41
+ rspec-expectations (3.11.1)
42
+ diff-lcs (>= 1.2.0, < 2.0)
43
+ rspec-support (~> 3.11.0)
44
+ rspec-mocks (3.11.1)
45
+ diff-lcs (>= 1.2.0, < 2.0)
46
+ rspec-support (~> 3.11.0)
47
+ rspec-support (3.11.1)
48
+ rubocop (1.52.1)
49
+ json (~> 2.3)
50
+ parallel (~> 1.10)
51
+ parser (>= 3.2.2.3)
52
+ rainbow (>= 2.2.2, < 4.0)
53
+ regexp_parser (>= 1.8, < 3.0)
54
+ rexml (>= 3.2.5, < 4.0)
55
+ rubocop-ast (>= 1.28.0, < 2.0)
56
+ ruby-progressbar (~> 1.7)
57
+ unicode-display_width (>= 2.4.0, < 3.0)
58
+ rubocop-ast (1.29.0)
59
+ parser (>= 3.2.1.0)
60
+ ruby-progressbar (1.13.0)
61
+ rubyzip (2.3.2)
62
+ unicode-display_width (2.4.2)
63
+
64
+ PLATFORMS
65
+ arm64-darwin-21
66
+
67
+ DEPENDENCIES
68
+ caxlsx (~> 3.2)
69
+ ntq_excelsior!
70
+ rake (~> 13.0)
71
+ rspec (~> 3.0)
72
+ rubocop (~> 1.21)
73
+
74
+ BUNDLED WITH
75
+ 2.4.14
@@ -53,7 +53,7 @@ module NtqExcelsior
53
53
  letters << index % 26
54
54
 
55
55
  while index >= 26 do
56
- index = index / 26 - 1
56
+ index = (index / 26) - 1
57
57
  letters << index % 26
58
58
  end
59
59
 
@@ -131,6 +131,9 @@ module NtqExcelsior
131
131
  accessors = accessors.split(".") if accessors.is_a?(String)
132
132
  value = dig_value(record, accessors)
133
133
  end
134
+ if value.is_a?(String)
135
+ type = :string
136
+ end
134
137
  if value.is_a?(Date)
135
138
  value = value.strftime("%Y-%m-%d")
136
139
  styles << :date_format
@@ -57,7 +57,7 @@ module NtqExcelsior
57
57
 
58
58
  @required_columns = self.class.schema.select { |field, column_config| !column_config.is_a?(Hash) || !column_config.has_key?(:required) || column_config[:required] }
59
59
  @required_line_keys = @required_columns.map{ |k, v| k }
60
- @required_headers = @required_columns.map{ |k, column_config| column_config.is_a?(Hash) ? column_config[:header] : column_config }.map{|header| header.is_a?(String) ? Regexp.new(header, "i") : header}
60
+ @required_headers = @required_columns.map{ |k, column_config| column_config.is_a?(Hash) ? column_config[:header] : column_config }.map{|header| header.is_a?(String) ? Regexp.new("^#{header}$", "i") : header}
61
61
  if self.class.primary_key && !@required_line_keys.include?(self.class.primary_key)
62
62
  @required_line_keys = @required_line_keys.unshift(self.class.primary_key)
63
63
  @required_headers = @required_headers.unshift(Regexp.new(self.class.primary_key.to_s, "i"))
@@ -78,7 +78,7 @@ module NtqExcelsior
78
78
  header = column_config.is_a?(Hash) ? column_config[:header] : column_config
79
79
 
80
80
  l.each do |parsed_header, _value|
81
- next unless header.is_a?(Regexp) && parsed_header.match?(header) || header.is_a?(String) && parsed_header == header
81
+ next unless (header.is_a?(Regexp) && parsed_header && parsed_header.match?(header)) || header.is_a?(String) && parsed_header == header
82
82
 
83
83
  l.delete(parsed_header)
84
84
  @header_scheme[parsed_header] = field
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NtqExcelsior
4
- VERSION = "0.5.3"
4
+ VERSION = "0.6.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ntq_excelsior
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-03-30 00:00:00.000000000 Z
11
+ date: 2023-07-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: caxlsx
@@ -50,6 +50,7 @@ files:
50
50
  - CHANGELOG.md
51
51
  - CODE_OF_CONDUCT.md
52
52
  - Gemfile
53
+ - Gemfile.lock
53
54
  - LICENSE.txt
54
55
  - README.md
55
56
  - Rakefile