ntq_excelsior 0.5.3 → 0.6.0

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.
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