iif-parser 2.0.1 → 2.0.2

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: 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: []