iif-parser 2.0.1 → 2.0.2

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: 656936d865f1ccbdc36401d0e952f202cbd9c9319e6056aff64500caefd50a5d
4
- data.tar.gz: 791300cf9f0a83c477d4f7e2a843d20e51419a2e3415c4ee5cab8e101a3ff6a1
3
+ metadata.gz: ebf93f08ba013e95d2a6bf5d79cdf479d1182e2952a08aaaf8c740cd425a03f4
4
+ data.tar.gz: 76e734f908ea3e659800a3fb883d77c7c50beb7d0094a763afc014c2159545cc
5
5
  SHA512:
6
- metadata.gz: c06a42a202982534a58ea24c5b6d877ab0f0583115e2fed0b7dea87129dd6072a0fc35c6009cbcb6291f956250f4820ba205a95ba4e52658b59ccb4b81331226
7
- data.tar.gz: 8565ae63a6b57849af3c9a0287301e16bc7342cf69d489f65645359bfbef8dd37b251adf9e495e7f9d53878f717966993c6716c99ea2d95a3fb626d23c387d80
6
+ metadata.gz: 1f201c8b90403b0d3b0ceb19f1b90fd16d5350efd54968a89750e642a27db17d1c29b8e8acfce3c3b3423c3eb45acd085a284c5deab007d003a79e03208fd24d
7
+ data.tar.gz: 945a5a3d2a88a751d00b71549c7b6bda8bbc479925e1f5fe8e038e407fcec655752206b1aad5d9c1353f06f04a55f124c195aff173451981bf291817798edaf0
data/.gitignore CHANGED
@@ -11,3 +11,4 @@
11
11
  .ruby-version
12
12
  *.gem
13
13
  *.sess
14
+ .tool-versions
data/README.md CHANGED
@@ -44,7 +44,7 @@ puts i.transactions.first.entries
44
44
  ```
45
45
  #### See the [specs](https://github.com/minimul/iif-parser/blob/master/spec/iif/parser_spec.rb) for more examples
46
46
 
47
- #### Ruby support is >= 2.4
47
+ #### Ruby support is >= 2.7
48
48
 
49
49
  ## Installation
50
50
  Add this line to your application's Gemfile:
@@ -1,5 +1,5 @@
1
1
  module Iif
2
2
  class Parser
3
- VERSION = "2.0.1"
3
+ VERSION = "2.0.2"
4
4
  end
5
5
  end
data/lib/iif/parser.rb CHANGED
@@ -70,7 +70,7 @@ module Iif
70
70
  next unless definition and definition[idx]
71
71
  entry.send(definition[idx] + "=", field)
72
72
  end
73
- entry.amount = BigDecimal(entry.amount.gsub(/(,)/,'')) unless entry.amount.to_s == ""
73
+ entry.amount = convert_amount(entry.amount) unless entry.amount.to_s == ""
74
74
  entry.date = convert_date(entry.date) if entry.date and not entry.date == ""
75
75
  @entries.push(entry)
76
76
  end
@@ -88,6 +88,17 @@ module Iif
88
88
  Date.new(year.to_i, ar[0], ar[1])
89
89
  end
90
90
 
91
+ def convert_amount(amount)
92
+ amount.gsub!(/(,)/,'')
93
+ if amount =~ /^--/
94
+ amount.slice!(0)
95
+ elsif amount =~ /^\(.*\)$/
96
+ amount.gsub!(/[()]/,'')
97
+ amount.prepend("-")
98
+ end
99
+ BigDecimal(amount)
100
+ end
101
+
91
102
  def create_transactions
92
103
  transaction = nil
93
104
  in_transaction = false
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iif-parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Pelczarski
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-05 00:00:00.000000000 Z
11
+ date: 2022-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rchardet
@@ -105,7 +105,7 @@ homepage: https://github.com/minimul/iif-parser
105
105
  licenses:
106
106
  - MIT
107
107
  metadata: {}
108
- post_install_message:
108
+ post_install_message:
109
109
  rdoc_options: []
110
110
  require_paths:
111
111
  - lib
@@ -120,8 +120,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  - !ruby/object:Gem::Version
121
121
  version: '0'
122
122
  requirements: []
123
- rubygems_version: 3.0.4
124
- signing_key:
123
+ rubygems_version: 3.1.6
124
+ signing_key:
125
125
  specification_version: 4
126
126
  summary: Basic IIF parser written in Ruby
127
127
  test_files: []