lunchmoney 1.4.0 → 1.4.1

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/build_and_publish_yard_docs.yml +2 -2
  4. data/.github/workflows/ci.yml +1 -1
  5. data/.ruby-version +1 -1
  6. data/.simplecov +1 -0
  7. data/Gemfile +2 -2
  8. data/Gemfile.lock +65 -57
  9. data/lib/lunchmoney/api.rb +1 -0
  10. data/lib/lunchmoney/calls/categories.rb +0 -2
  11. data/lib/lunchmoney/calls/transactions.rb +0 -1
  12. data/lib/lunchmoney/deprecate.rb +35 -0
  13. data/lib/lunchmoney/objects/asset.rb +6 -1
  14. data/lib/lunchmoney/objects/plaid_account.rb +6 -1
  15. data/lib/lunchmoney/version.rb +1 -1
  16. data/sorbet/rbi/annotations/activesupport.rbi +5 -0
  17. data/sorbet/rbi/gems/{activesupport@7.2.1.rbi → activesupport@7.2.2.1.rbi} +109 -86
  18. data/sorbet/rbi/gems/benchmark@0.4.0.rbi +618 -0
  19. data/sorbet/rbi/gems/{concurrent-ruby@1.3.4.rbi → concurrent-ruby@1.3.5.rbi} +44 -32
  20. data/sorbet/rbi/gems/{connection_pool@2.4.1.rbi → connection_pool@2.5.0.rbi} +1 -0
  21. data/sorbet/rbi/gems/{dotenv@3.1.2.rbi → dotenv@3.1.7.rbi} +21 -29
  22. data/sorbet/rbi/gems/{erubi@1.13.0.rbi → erubi@1.13.1.rbi} +14 -9
  23. data/sorbet/rbi/gems/{faraday-net_http@3.1.1.rbi → faraday-net_http@3.4.0.rbi} +34 -34
  24. data/sorbet/rbi/gems/{faraday@2.10.1.rbi → faraday@2.12.2.rbi} +43 -34
  25. data/sorbet/rbi/gems/{i18n@1.14.5.rbi → i18n@1.14.7.rbi} +80 -80
  26. data/sorbet/rbi/gems/{json@2.7.2.rbi → json@2.10.2.rbi} +697 -146
  27. data/sorbet/rbi/gems/language_server-protocol@3.17.0.4.rbi +9 -0
  28. data/sorbet/rbi/gems/{logger@1.6.0.rbi → logger@1.6.6.rbi} +109 -72
  29. data/sorbet/rbi/gems/{minitest@5.25.1.rbi → minitest@5.25.5.rbi} +227 -220
  30. data/sorbet/rbi/gems/{mocha@2.4.5.rbi → mocha@2.7.1.rbi} +154 -118
  31. data/sorbet/rbi/gems/{net-http@0.4.1.rbi → net-http@0.6.0.rbi} +360 -181
  32. data/sorbet/rbi/gems/{parser@3.3.4.2.rbi → parser@3.3.7.1.rbi} +23 -17
  33. data/sorbet/rbi/gems/{prism@0.30.0.rbi → prism@1.4.0.rbi} +12440 -9920
  34. data/sorbet/rbi/gems/{rack@3.1.7.rbi → rack@3.1.9.rbi} +91 -83
  35. data/sorbet/rbi/gems/rbi@0.3.1.rbi +6599 -0
  36. data/sorbet/rbi/gems/rbs@3.9.0.rbi +6978 -0
  37. data/sorbet/rbi/gems/{regexp_parser@2.9.2.rbi → regexp_parser@2.10.0.rbi} +193 -170
  38. data/sorbet/rbi/gems/{rexml@3.3.6.rbi → rexml@3.4.1.rbi} +541 -114
  39. data/sorbet/rbi/gems/{rubocop-ast@1.32.1.rbi → rubocop-ast@1.38.0.rbi} +1224 -622
  40. data/sorbet/rbi/gems/{rubocop-minitest@0.35.1.rbi → rubocop-minitest@0.36.0.rbi} +5 -5
  41. data/sorbet/rbi/gems/{rubocop-rails@2.26.0.rbi → rubocop-rails@2.29.1.rbi} +9412 -6480
  42. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.5.rbi → rubocop-sorbet@0.8.7.rbi} +44 -1
  43. data/sorbet/rbi/gems/{rubocop@1.65.1.rbi → rubocop@1.71.2.rbi} +5606 -3467
  44. data/sorbet/rbi/gems/{securerandom@0.3.1.rbi → securerandom@0.4.1.rbi} +7 -5
  45. data/sorbet/rbi/gems/{spoom@1.4.2.rbi → spoom@1.6.1.rbi} +3315 -973
  46. data/sorbet/rbi/gems/{tapioca@0.16.1.rbi → tapioca@0.16.11.rbi} +300 -234
  47. data/sorbet/rbi/gems/{thor@1.3.1.rbi → thor@1.3.2.rbi} +58 -31
  48. data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +132 -0
  49. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +251 -0
  50. data/sorbet/rbi/gems/{uri@0.13.0.rbi → uri@1.0.3.rbi} +278 -256
  51. data/sorbet/rbi/gems/{webmock@3.23.1.rbi → webmock@3.25.1.rbi} +101 -78
  52. data/sorbet/rbi/gems/{yard@0.9.36.rbi → yard@0.9.37.rbi} +394 -235
  53. metadata +42 -44
  54. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  55. data/sorbet/rbi/gems/rbi@0.1.14.rbi +0 -3305
  56. data/sorbet/rbi/gems/strscan@3.1.0.rbi +0 -9
  57. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  58. /data/sorbet/rbi/gems/{bigdecimal@3.1.8.rbi → bigdecimal@3.1.9.rbi} +0 -0
  59. /data/sorbet/rbi/gems/{hashdiff@1.1.1.rbi → hashdiff@1.1.2.rbi} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3bcd23a0d41ac030c6a7d3a99c6438d363cfe100d1c1349f8ff8ab07e9da5a1b
4
- data.tar.gz: a1021db38ff1305b39733d80d69681b74c05190521e1c38fe6b47afce0fc7f6d
3
+ metadata.gz: 50f3573ce7923a9282be65ac6fba693be82c2c51b8be11c268e23112fd06337c
4
+ data.tar.gz: 7be51f4d39ed969199ab04e36dda18acc8203b10c149cf3410d447bfc4794019
5
5
  SHA512:
6
- metadata.gz: 1dd9b667746978ea1033cba76a0f23082f040da1de55122aa45a7114eb572fb0580140f7bac48c53fb3ad52e560babb8e13bbb2f6766f8ca61a8fcc99308b721
7
- data.tar.gz: 4e84da79f6ae55f67c6f388c470346e541541553abf764a3365509990d2c6bce62ea96f66e9f0e960d4f1c394e1d67a969eecfefcc668942b954798eb278cdaf
6
+ metadata.gz: b3686c260fd902ca41f82f4ffc00064ed39b3828e86a648c9b5e5720ad87256778e96617447b7880aba7733e953a88341f7f9426f068f855afb7b62c35559dd8
7
+ data.tar.gz: bcbf7d9ff45a32f0339df95660de9c5911ba556ef77becb44b21cdced5492b67bc6c3f764829bec6f87850e87269ee50326a97b3dbb4d9bad90f90ae1f259e52
@@ -11,6 +11,13 @@ updates:
11
11
  open-pull-requests-limit: 100
12
12
  schedule:
13
13
  interval: weekly
14
+ groups:
15
+ minor_updates:
16
+ update-types:
17
+ - "minor"
18
+ patch_updates:
19
+ update-types:
20
+ - "patch"
14
21
  - package-ecosystem: github-actions
15
22
  directory: "/"
16
23
  open-pull-requests-limit: 100
@@ -23,9 +23,9 @@ jobs:
23
23
  - uses: actions/checkout@v4
24
24
 
25
25
  - name: Set up Ruby
26
- uses: ruby/setup-ruby@v1.165.1
26
+ uses: ruby/setup-ruby@v1.218.0
27
27
  with:
28
- ruby-version: 3.3.0
28
+ ruby-version: head
29
29
  bundler-cache: true
30
30
 
31
31
  - name: Install YARD
@@ -51,7 +51,7 @@ jobs:
51
51
  -
52
52
  name: Run Tests (With Remote Calls & Coverage Report)
53
53
  if: ${{ endsWith(matrix.ruby-version, '3.3') }}
54
- uses: paambaati/codeclimate-action@v8.0.0
54
+ uses: paambaati/codeclimate-action@v9.0.0
55
55
  env:
56
56
  CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
57
57
  REMOTE_TESTS_ENABLED: ${{ vars.REMOTE_TESTS_ENABLED }}
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.3.0
1
+ 3.4.2
data/.simplecov CHANGED
@@ -21,6 +21,7 @@ SimpleCov.start do
21
21
  "lib/lunchmoney.rb",
22
22
  "lib/lunchmoney/api.rb",
23
23
  "lib/lunchmoney/configuration.rb",
24
+ "lib/lunchmoney/deprecate.rb",
24
25
  "lib/lunchmoney/errors.rb",
25
26
  "lib/lunchmoney/exceptions.rb",
26
27
  "lib/lunchmoney/validators.rb",
data/Gemfile CHANGED
@@ -7,8 +7,8 @@ gemspec
7
7
 
8
8
  # Specify development dependencies here
9
9
  gem "toys"
10
- gem "minitest", "~> 5.24", require: false
11
- gem "mocha", "~> 2.4.0", require: false
10
+ gem "minitest", "~> 5.25", require: false
11
+ gem "mocha", "~> 2.7.1", require: false
12
12
  gem "webmock", require: false
13
13
  gem "vcr", require: false
14
14
  gem "rubocop-shopify", require: false
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lunchmoney (1.4.0)
4
+ lunchmoney (1.4.1)
5
5
  activesupport (>= 6.1)
6
6
  faraday (>= 1.0.0)
7
7
  sorbet-runtime (>= 0.5)
@@ -9,8 +9,9 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (7.2.1)
12
+ activesupport (7.2.2.1)
13
13
  base64
14
+ benchmark (>= 0.3)
14
15
  bigdecimal
15
16
  concurrent-ruby (~> 1.0, >= 1.3.1)
16
17
  connection_pool (>= 2.2.5)
@@ -28,139 +29,145 @@ GEM
28
29
  thor (>= 0.14.0)
29
30
  ast (2.4.2)
30
31
  base64 (0.2.0)
31
- bigdecimal (3.1.8)
32
+ benchmark (0.4.0)
33
+ bigdecimal (3.1.9)
32
34
  chef-utils (18.5.0)
33
35
  concurrent-ruby
34
- concurrent-ruby (1.3.4)
35
- connection_pool (2.4.1)
36
+ concurrent-ruby (1.3.5)
37
+ connection_pool (2.5.0)
36
38
  crack (1.0.0)
37
39
  bigdecimal
38
40
  rexml
39
41
  docile (1.4.1)
40
- dotenv (3.1.2)
42
+ dotenv (3.1.7)
41
43
  drb (2.2.1)
42
- erubi (1.13.0)
43
- faraday (2.10.1)
44
- faraday-net_http (>= 2.0, < 3.2)
44
+ erubi (1.13.1)
45
+ faraday (2.12.2)
46
+ faraday-net_http (>= 2.0, < 3.5)
47
+ json
45
48
  logger
46
- faraday-net_http (3.1.1)
47
- net-http
48
- hashdiff (1.1.1)
49
- i18n (1.14.5)
49
+ faraday-net_http (3.4.0)
50
+ net-http (>= 0.5.0)
51
+ hashdiff (1.1.2)
52
+ i18n (1.14.7)
50
53
  concurrent-ruby (~> 1.0)
51
- json (2.7.2)
54
+ json (2.10.2)
52
55
  kramdown (2.4.0)
53
56
  rexml
54
57
  kramdown-parser-gfm (1.1.0)
55
58
  kramdown (~> 2.0)
56
- language_server-protocol (3.17.0.3)
57
- logger (1.6.0)
59
+ language_server-protocol (3.17.0.4)
60
+ logger (1.6.6)
58
61
  mdl (0.13.0)
59
62
  kramdown (~> 2.3)
60
63
  kramdown-parser-gfm (~> 1.1)
61
64
  mixlib-cli (~> 2.1, >= 2.1.1)
62
65
  mixlib-config (>= 2.2.1, < 4)
63
66
  mixlib-shellout
64
- minitest (5.25.1)
67
+ minitest (5.25.5)
65
68
  mixlib-cli (2.1.8)
66
69
  mixlib-config (3.0.27)
67
70
  tomlrb
68
71
  mixlib-shellout (3.2.8)
69
72
  chef-utils
70
- mocha (2.4.5)
73
+ mocha (2.7.1)
71
74
  ruby2_keywords (>= 0.0.5)
72
- net-http (0.4.1)
75
+ net-http (0.6.0)
73
76
  uri
74
77
  netrc (0.11.0)
75
78
  parallel (1.26.3)
76
- parser (3.3.4.2)
79
+ parser (3.3.7.1)
77
80
  ast (~> 2.4.1)
78
81
  racc
79
- prism (0.30.0)
82
+ prism (1.4.0)
80
83
  public_suffix (6.0.1)
81
84
  racc (1.8.1)
82
- rack (3.1.7)
85
+ rack (3.1.9)
83
86
  rainbow (3.1.1)
84
87
  rake (13.2.1)
85
- rbi (0.1.14)
86
- prism (>= 0.18.0, < 1.0.0)
88
+ rbi (0.3.1)
89
+ prism (~> 1.0)
90
+ rbs (>= 3.4.4)
87
91
  sorbet-runtime (>= 0.5.9204)
88
- regexp_parser (2.9.2)
89
- rexml (3.3.6)
90
- strscan
91
- rubocop (1.65.1)
92
+ rbs (3.9.0)
93
+ logger
94
+ regexp_parser (2.10.0)
95
+ rexml (3.4.1)
96
+ rubocop (1.71.2)
92
97
  json (~> 2.3)
93
98
  language_server-protocol (>= 3.17.0)
94
99
  parallel (~> 1.10)
95
100
  parser (>= 3.3.0.2)
96
101
  rainbow (>= 2.2.2, < 4.0)
97
- regexp_parser (>= 2.4, < 3.0)
98
- rexml (>= 3.2.5, < 4.0)
99
- rubocop-ast (>= 1.31.1, < 2.0)
102
+ regexp_parser (>= 2.9.3, < 3.0)
103
+ rubocop-ast (>= 1.38.0, < 2.0)
100
104
  ruby-progressbar (~> 1.7)
101
- unicode-display_width (>= 2.4.0, < 3.0)
102
- rubocop-ast (1.32.1)
105
+ unicode-display_width (>= 2.4.0, < 4.0)
106
+ rubocop-ast (1.38.0)
103
107
  parser (>= 3.3.1.0)
104
- rubocop-minitest (0.35.1)
108
+ rubocop-minitest (0.36.0)
105
109
  rubocop (>= 1.61, < 2.0)
106
110
  rubocop-ast (>= 1.31.1, < 2.0)
107
- rubocop-rails (2.26.0)
111
+ rubocop-rails (2.29.1)
108
112
  activesupport (>= 4.2.0)
109
113
  rack (>= 1.1)
110
114
  rubocop (>= 1.52.0, < 2.0)
111
115
  rubocop-ast (>= 1.31.1, < 2.0)
112
116
  rubocop-shopify (2.15.1)
113
117
  rubocop (~> 1.51)
114
- rubocop-sorbet (0.8.5)
118
+ rubocop-sorbet (0.8.7)
115
119
  rubocop (>= 1)
116
120
  ruby-progressbar (1.13.0)
117
121
  ruby2_keywords (0.0.5)
118
- securerandom (0.3.1)
122
+ securerandom (0.4.1)
119
123
  simplecov (0.22.0)
120
124
  docile (~> 1.1)
121
125
  simplecov-html (~> 0.11)
122
126
  simplecov_json_formatter (~> 0.1)
123
127
  simplecov-html (0.12.3)
124
128
  simplecov_json_formatter (0.1.4)
125
- sorbet (0.5.11545)
126
- sorbet-static (= 0.5.11545)
127
- sorbet-runtime (0.5.11545)
128
- sorbet-static (0.5.11545-universal-darwin)
129
- sorbet-static (0.5.11545-x86_64-linux)
130
- sorbet-static-and-runtime (0.5.11545)
131
- sorbet (= 0.5.11545)
132
- sorbet-runtime (= 0.5.11545)
133
- spoom (1.4.2)
129
+ sorbet (0.5.11953)
130
+ sorbet-static (= 0.5.11953)
131
+ sorbet-runtime (0.5.11953)
132
+ sorbet-static (0.5.11953-universal-darwin)
133
+ sorbet-static (0.5.11953-x86_64-linux)
134
+ sorbet-static-and-runtime (0.5.11953)
135
+ sorbet (= 0.5.11953)
136
+ sorbet-runtime (= 0.5.11953)
137
+ spoom (1.6.1)
134
138
  erubi (>= 1.10.0)
135
139
  prism (>= 0.28.0)
140
+ rbi (>= 0.2.3)
136
141
  sorbet-static-and-runtime (>= 0.5.10187)
137
142
  thor (>= 0.19.2)
138
- strscan (3.1.0)
139
- tapioca (0.16.1)
143
+ tapioca (0.16.11)
144
+ benchmark
140
145
  bundler (>= 2.2.25)
141
146
  netrc (>= 0.11.0)
142
147
  parallel (>= 1.21.0)
143
- rbi (>= 0.1.14, < 0.2)
148
+ rbi (~> 0.2)
144
149
  sorbet-static-and-runtime (>= 0.5.11087)
145
150
  spoom (>= 1.2.0)
146
151
  thor (>= 1.2.0)
147
152
  yard-sorbet
148
- thor (1.3.1)
153
+ thor (1.3.2)
149
154
  tomlrb (2.0.3)
150
155
  toys (0.15.6)
151
156
  toys-core (= 0.15.6)
152
157
  toys-core (0.15.6)
153
158
  tzinfo (2.0.6)
154
159
  concurrent-ruby (~> 1.0)
155
- unicode-display_width (2.5.0)
156
- uri (0.13.0)
160
+ unicode-display_width (3.1.4)
161
+ unicode-emoji (~> 4.0, >= 4.0.4)
162
+ unicode-emoji (4.0.4)
163
+ uri (1.0.3)
157
164
  vcr (6.3.1)
158
165
  base64
159
- webmock (3.23.1)
166
+ webmock (3.25.1)
160
167
  addressable (>= 2.8.0)
161
168
  crack (>= 0.3.2)
162
169
  hashdiff (>= 0.4.0, < 2.0.0)
163
- yard (0.9.36)
170
+ yard (0.9.37)
164
171
  yard-sorbet (0.9.0)
165
172
  sorbet-runtime
166
173
  yard
@@ -168,6 +175,7 @@ GEM
168
175
  PLATFORMS
169
176
  arm64-darwin-22
170
177
  arm64-darwin-23
178
+ arm64-darwin-24
171
179
  x86_64-darwin-20
172
180
  x86_64-linux
173
181
 
@@ -176,8 +184,8 @@ DEPENDENCIES
176
184
  dotenv
177
185
  lunchmoney!
178
186
  mdl
179
- minitest (~> 5.24)
180
- mocha (~> 2.4.0)
187
+ minitest (~> 5.25)
188
+ mocha (~> 2.7.1)
181
189
  rubocop-minitest
182
190
  rubocop-rails
183
191
  rubocop-shopify
@@ -194,4 +202,4 @@ DEPENDENCIES
194
202
  yard-sorbet
195
203
 
196
204
  BUNDLED WITH
197
- 2.5.3
205
+ 2.6.6
@@ -3,6 +3,7 @@
3
3
 
4
4
  require_relative "exceptions"
5
5
  require_relative "configuration"
6
+ require_relative "deprecate"
6
7
 
7
8
  require_relative "calls/base"
8
9
  require_relative "objects/object"
@@ -89,7 +89,6 @@ module LunchMoney
89
89
  end
90
90
  def create_category_group(name:, description: nil, is_income: false, exclude_from_budget: false,
91
91
  exclude_from_totals: false, category_ids: [], new_categories: [])
92
-
93
92
  params = {
94
93
  name:,
95
94
  description:,
@@ -122,7 +121,6 @@ module LunchMoney
122
121
  end
123
122
  def update_category(category_id, name: nil, description: nil, is_income: nil, exclude_from_budget: nil,
124
123
  exclude_from_totals: nil, archived: nil, group_id: nil)
125
-
126
124
  params = clean_params({
127
125
  name:,
128
126
  description:,
@@ -42,7 +42,6 @@ module LunchMoney
42
42
  offset: nil,
43
43
  limit: nil
44
44
  )
45
-
46
45
  params = clean_params({
47
46
  tag_id:,
48
47
  recurring_id:,
@@ -0,0 +1,35 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ module LunchMoney
5
+ module Deprecate
6
+ cattr_accessor :endpoint_deprecation_warnings, default: true
7
+
8
+ sig { params(replacement: T.nilable(String)).void }
9
+ def deprecate_endpoint(replacement = nil)
10
+ return unless endpoint_deprecation_warnings
11
+
12
+ replacement = if replacement.nil?
13
+ "There is currently no replacement for this endpoint"
14
+ else
15
+ "Please use #{replacement} instead"
16
+ end
17
+
18
+ message = "#{deprecated_endpoint} is deprecated and may be removed from LunchMoney | #{replacement}"
19
+ Kernel.warn(message)
20
+ end
21
+
22
+ private
23
+
24
+ sig { returns(String) }
25
+ def deprecated_endpoint
26
+ endpoint_call = Kernel.caller_locations.find { |call| call.to_s.include?("lunchmoney/calls") }
27
+
28
+ if endpoint_call.nil?
29
+ ""
30
+ else
31
+ "LunchMoney::Api##{endpoint_call.label}"
32
+ end
33
+ end
34
+ end
35
+ end
@@ -22,6 +22,9 @@ module LunchMoney
22
22
  sig { returns(T::Boolean) }
23
23
  attr_accessor :exclude_transactions
24
24
 
25
+ sig { returns(T.nilable(Number)) }
26
+ attr_accessor :to_base
27
+
25
28
  # Valid asset type names
26
29
  VALID_TYPE_NAMES = T.let(
27
30
  [
@@ -54,10 +57,11 @@ module LunchMoney
54
57
  display_name: T.nilable(String),
55
58
  closed_on: T.nilable(String),
56
59
  institution_name: T.nilable(String),
60
+ to_base: T.nilable(Number),
57
61
  ).void
58
62
  end
59
63
  def initialize(created_at:, type_name:, name:, balance:, balance_as_of:, currency:, exclude_transactions:, id:,
60
- subtype_name: nil, display_name: nil, closed_on: nil, institution_name: nil)
64
+ subtype_name: nil, display_name: nil, closed_on: nil, institution_name: nil, to_base: nil)
61
65
  super()
62
66
  @created_at = T.let(validate_iso8601!(created_at), String)
63
67
  @type_name = T.let(validate_one_of!(type_name, VALID_TYPE_NAMES), String)
@@ -71,6 +75,7 @@ module LunchMoney
71
75
  @display_name = display_name
72
76
  @closed_on = closed_on
73
77
  @institution_name = institution_name
78
+ @to_base = to_base
74
79
  end
75
80
 
76
81
  sig { params(name: String).void }
@@ -27,6 +27,9 @@ module LunchMoney
27
27
  sig { returns(T.nilable(Integer)) }
28
28
  attr_accessor :limit
29
29
 
30
+ sig { returns(T.nilable(Number)) }
31
+ attr_accessor :to_base
32
+
30
33
  sig do
31
34
  params(
32
35
  date_linked: String,
@@ -46,11 +49,12 @@ module LunchMoney
46
49
  subtype: T.nilable(String),
47
50
  import_start_date: T.nilable(String),
48
51
  last_fetch: T.nilable(String),
52
+ to_base: T.nilable(Number),
49
53
  ).void
50
54
  end
51
55
  def initialize(date_linked:, name:, type:, mask:, institution_name:, status:, balance:, currency:,
52
56
  balance_last_update:, display_name:, id:, plaid_last_successful_update:, last_import: nil, limit: nil,
53
- subtype: nil, import_start_date: nil, last_fetch: nil)
57
+ subtype: nil, import_start_date: nil, last_fetch: nil, to_base: nil)
54
58
  super()
55
59
  @id = id
56
60
  @date_linked = date_linked
@@ -69,6 +73,7 @@ module LunchMoney
69
73
  @last_import = last_import
70
74
  @last_fetch = last_fetch
71
75
  @plaid_last_successful_update = plaid_last_successful_update
76
+ @to_base = to_base
72
77
  end
73
78
  end
74
79
  end
@@ -3,5 +3,5 @@
3
3
 
4
4
  module LunchMoney
5
5
  # Current version of the gem
6
- VERSION = "1.4.0"
6
+ VERSION = "1.4.1"
7
7
  end
@@ -287,6 +287,8 @@ class String
287
287
  sig { returns(TrueClass) }
288
288
  def acts_like_string?; end
289
289
 
290
+ # This is the subset of `#[]` sigs that have just 1 parameter.
291
+ # https://github.com/sorbet/sorbet/blob/40ad87b4dc7be23fa00c1369ac9f927053c68907/rbi/core/string.rbi#L270-L303
290
292
  sig { params(position: Integer).returns(T.nilable(String)) }
291
293
  sig { params(position: T.any(T::Range[Integer], Regexp)).returns(T.nilable(String)) }
292
294
  sig { params(position: String).returns(T.nilable(String)) }
@@ -437,12 +439,15 @@ class String
437
439
  end
438
440
 
439
441
  class ActiveSupport::ErrorReporter
442
+ # @version >= 7.1.0.beta1
440
443
  sig { type_parameters(:Block, :Fallback).params(error_classes: T.class_of(Exception), severity: T.nilable(Symbol), context: T.nilable(T::Hash[Symbol, T.untyped]), fallback: T.nilable(T.proc.returns(T.type_parameter(:Fallback))), source: T.nilable(String), blk: T.proc.returns(T.type_parameter(:Block))).returns(T.any(T.type_parameter(:Block), T.type_parameter(:Fallback))) }
441
444
  def handle(*error_classes, severity: T.unsafe(nil), context: T.unsafe(nil), fallback: T.unsafe(nil), source: T.unsafe(nil), &blk); end
442
445
 
446
+ # @version >= 7.1.0.beta1
443
447
  sig { type_parameters(:Block).params(error_classes: T.class_of(Exception), severity: T.nilable(Symbol), context: T.nilable(T::Hash[Symbol, T.untyped]), source: T.nilable(String), blk: T.proc.returns(T.type_parameter(:Block))).returns(T.type_parameter(:Block)) }
444
448
  def record(*error_classes, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil), &blk); end
445
449
 
450
+ # @version >= 7.1.0.beta1
446
451
  sig { params(error: Exception, handled: T::Boolean, severity: T.nilable(Symbol), context: T::Hash[Symbol, T.untyped], source: T.nilable(String)).void }
447
452
  def report(error, handled: true, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil)); end
448
453