lunchmoney 1.1.0 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +7 -0
  3. data/.github/workflows/check_pipeline.yml +24 -0
  4. data/.github/workflows/ci.yml +11 -6
  5. data/.github/workflows/dependabot-rbi-updater.yml +3 -6
  6. data/.github/workflows/release_pipeline.yml +36 -0
  7. data/.mdlrc +4 -0
  8. data/.rubocop.yml +6 -2
  9. data/.simplecov +30 -0
  10. data/.toys/.toys.rb +1 -0
  11. data/.toys/coverage.rb +5 -0
  12. data/.toys/mdl.rb +5 -0
  13. data/Gemfile +4 -1
  14. data/Gemfile.lock +47 -18
  15. data/LICENSE +1 -1
  16. data/README.md +5 -3
  17. data/Rakefile +27 -0
  18. data/lib/lunchmoney/api.rb +126 -1
  19. data/lib/lunchmoney/calls/base.rb +8 -2
  20. data/lib/lunchmoney/errors.rb +17 -1
  21. data/lib/lunchmoney/objects/asset.rb +1 -0
  22. data/lib/lunchmoney/objects/object.rb +3 -1
  23. data/lib/lunchmoney/version.rb +1 -1
  24. data/lunchmoney.gemspec +3 -4
  25. data/sorbet/rbi/gems/chef-utils@18.4.2.rbi +8 -0
  26. data/sorbet/rbi/gems/docile@1.4.0.rbi +376 -0
  27. data/sorbet/rbi/gems/kramdown-parser-gfm@1.1.0.rbi +127 -0
  28. data/sorbet/rbi/gems/kramdown@2.4.0.rbi +3271 -0
  29. data/sorbet/rbi/gems/mdl@0.13.0.rbi +444 -0
  30. data/sorbet/rbi/gems/{minitest@5.21.2.rbi → minitest@5.22.2.rbi} +147 -144
  31. data/sorbet/rbi/gems/mixlib-cli@2.1.8.rbi +313 -0
  32. data/sorbet/rbi/gems/mixlib-config@3.0.27.rbi +580 -0
  33. data/sorbet/rbi/gems/mixlib-shellout@3.2.7.rbi +628 -0
  34. data/sorbet/rbi/gems/{rubocop-sorbet@0.7.6.rbi → rubocop-sorbet@0.7.7.rbi} +53 -6
  35. data/sorbet/rbi/gems/{rubocop@1.60.1.rbi → rubocop@1.60.2.rbi} +51 -30
  36. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +216 -0
  37. data/sorbet/rbi/gems/simplecov@0.22.0.rbi +2148 -0
  38. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +238 -0
  39. data/sorbet/rbi/gems/tomlrb@2.0.3.rbi +8 -0
  40. data/sorbet/rbi/gems/{toys@0.15.4.rbi → toys@0.15.5.rbi} +3 -3
  41. data/sorbet/rbi/gems/{webmock@3.19.1.rbi → webmock@3.20.0.rbi} +10 -10
  42. metadata +36 -18
  43. data/.DS_Store +0 -0
  44. data/.github/workflows/publish_gem.yml +0 -32
  45. /data/sorbet/rbi/gems/{crack@0.4.5.rbi → crack@1.0.0.rbi} +0 -0
  46. /data/sorbet/rbi/gems/{toys-core@0.15.4.rbi → toys-core@0.15.5.rbi} +0 -0
@@ -2,7 +2,23 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module LunchMoney
5
- # This class is used to represent errors returned directly from the LunchMoney API
5
+ # This class is used to represent errors returned directly from the LunchMoney API. This class has been set up to act
6
+ # like an array, delegating a lot of common array getter methods directly to messages for you.
7
+ # @example
8
+ # api = LunchMoney::Api.new
9
+ # response = api.categories
10
+ #
11
+ # response.class
12
+ # => LunchMoney::Errors
13
+ #
14
+ # response.first
15
+ # => "Some error returned by the API"
16
+ #
17
+ # response.empty?
18
+ # => false
19
+ #
20
+ # response[0]
21
+ # => "Some error returned by the API"
6
22
  class Errors
7
23
  sig { returns(T::Array[String]) }
8
24
  attr_accessor :messages
@@ -35,6 +35,7 @@ module LunchMoney
35
35
  "employee compensation",
36
36
  "other liability",
37
37
  "other asset",
38
+ "depository",
38
39
  ],
39
40
  T::Array[String],
40
41
  )
@@ -6,7 +6,7 @@ module LunchMoney
6
6
  module Objects
7
7
  # Base data object for the objects returned and used when calling the LunchMoney API
8
8
  class Object
9
- sig { params(symbolize_keys: T::Boolean).returns(T::Hash[String, T.untyped]) }
9
+ sig { params(symbolize_keys: T::Boolean).returns(T::Hash[T.any(String, Symbol), T.untyped]) }
10
10
  def serialize(symbolize_keys: false)
11
11
  ivars = instance_variables
12
12
 
@@ -23,6 +23,8 @@ module LunchMoney
23
23
 
24
24
  output
25
25
  end
26
+
27
+ delegate :to_h, to: :serialize
26
28
  end
27
29
  end
28
30
  end
@@ -3,5 +3,5 @@
3
3
 
4
4
  module LunchMoney
5
5
  # Current version of the gem
6
- VERSION = "1.1.0"
6
+ VERSION = "1.1.2"
7
7
  end
data/lunchmoney.gemspec CHANGED
@@ -5,18 +5,17 @@ require_relative "lib/lunchmoney/version"
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "lunchmoney"
7
7
  spec.version = LunchMoney::VERSION
8
- spec.author = "@halorrr"
9
- spec.email = "halorrr@gmail.com"
8
+ spec.author = "@mmenanno"
10
9
 
11
10
  spec.summary = "LunchMoney API client library."
12
- spec.homepage = "https://github.com/halorrr/lunchmoney"
11
+ spec.homepage = "https://github.com/mmenanno/lunchmoney"
13
12
  spec.required_ruby_version = ">= 3.1"
14
13
  spec.license = "MIT"
15
14
 
16
15
  spec.metadata["allowed_push_host"] = "https://rubygems.org"
17
16
  spec.metadata["homepage_uri"] = spec.homepage
18
17
  spec.metadata["source_code_uri"] = spec.homepage
19
- spec.metadata["documentation_uri"] = "https://halorrr.github.io/lunchmoney/"
18
+ spec.metadata["documentation_uri"] = "https://mmenanno.github.io/lunchmoney/"
20
19
  spec.metadata["changelog_uri"] = "#{spec.homepage}/releases"
21
20
 
22
21
  # Specify which files should be added to the gem when it is released.
@@ -0,0 +1,8 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `chef-utils` gem.
5
+ # Please instead update this file by running `bin/tapioca gem chef-utils`.
6
+
7
+ # THIS IS AN EMPTY RBI FILE.
8
+ # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
@@ -0,0 +1,376 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `docile` gem.
5
+ # Please instead update this file by running `bin/tapioca gem docile`.
6
+
7
+ # Docile keeps your Ruby DSLs tame and well-behaved.
8
+ #
9
+ # source://docile//lib/docile/version.rb#3
10
+ module Docile
11
+ extend ::Docile::Execution
12
+
13
+ private
14
+
15
+ # Execute a block in the context of an object whose methods represent the
16
+ # commands in a DSL.
17
+ #
18
+ # Use this method to execute an *imperative* DSL, which means that:
19
+ #
20
+ # 1. Each command mutates the state of the DSL context object
21
+ # 2. The return value of each command is ignored
22
+ # 3. The final return value is the original context object
23
+ #
24
+ # @example Use a String as a DSL
25
+ # Docile.dsl_eval("Hello, world!") do
26
+ # reverse!
27
+ # upcase!
28
+ # end
29
+ # #=> "!DLROW ,OLLEH"
30
+ # @example Use an Array as a DSL
31
+ # Docile.dsl_eval([]) do
32
+ # push 1
33
+ # push 2
34
+ # pop
35
+ # push 3
36
+ # end
37
+ # #=> [1, 3]
38
+ # @note Use with an *imperative* DSL (commands modify the context object)
39
+ # @param dsl [Object] context object whose methods make up the DSL
40
+ # @param args [Array] arguments to be passed to the block
41
+ # @param block [Proc] the block of DSL commands to be executed against the
42
+ # `dsl` context object
43
+ # @return [Object] the `dsl` context object after executing the block
44
+ #
45
+ # source://docile//lib/docile.rb#45
46
+ def dsl_eval(dsl, *args, **_arg2, &block); end
47
+
48
+ # Execute a block in the context of an immutable object whose methods,
49
+ # and the methods of their return values, represent the commands in a DSL.
50
+ #
51
+ # Use this method to execute a *functional* DSL, which means that:
52
+ #
53
+ # 1. The original DSL context object is never mutated
54
+ # 2. Each command returns the next DSL context object
55
+ # 3. The final return value is the value returned by the last command
56
+ #
57
+ # @example Use a frozen String as a DSL
58
+ # Docile.dsl_eval_immutable("I'm immutable!".freeze) do
59
+ # reverse
60
+ # upcase
61
+ # end
62
+ # #=> "!ELBATUMMI M'I"
63
+ # @example Use a Float as a DSL
64
+ # Docile.dsl_eval_immutable(84.5) do
65
+ # fdiv(2)
66
+ # floor
67
+ # end
68
+ # #=> 42
69
+ # @note Use with a *functional* DSL (commands return successor
70
+ # context objects)
71
+ # @param dsl [Object] immutable context object whose methods make up the
72
+ # initial DSL
73
+ # @param args [Array] arguments to be passed to the block
74
+ # @param block [Proc] the block of DSL commands to be executed against the
75
+ # `dsl` context object and successor return values
76
+ # @return [Object] the return value of the final command in the block
77
+ #
78
+ # source://docile//lib/docile.rb#128
79
+ def dsl_eval_immutable(dsl, *args, **_arg2, &block); end
80
+
81
+ # Execute a block in the context of an object whose methods represent the
82
+ # commands in a DSL, and return *the block's return value*.
83
+ #
84
+ # Use this method to execute an *imperative* DSL, which means that:
85
+ #
86
+ # 1. Each command mutates the state of the DSL context object
87
+ # 2. The return value of each command is ignored
88
+ # 3. The final return value is the original context object
89
+ #
90
+ # @example Use a String as a DSL
91
+ # Docile.dsl_eval_with_block_return("Hello, world!") do
92
+ # reverse!
93
+ # upcase!
94
+ # first
95
+ # end
96
+ # #=> "!"
97
+ # @example Use an Array as a DSL
98
+ # Docile.dsl_eval_with_block_return([]) do
99
+ # push "a"
100
+ # push "b"
101
+ # pop
102
+ # push "c"
103
+ # length
104
+ # end
105
+ # #=> 2
106
+ # @note Use with an *imperative* DSL (commands modify the context object)
107
+ # @param dsl [Object] context object whose methods make up the DSL
108
+ # @param args [Array] arguments to be passed to the block
109
+ # @param block [Proc] the block of DSL commands to be executed against the
110
+ # `dsl` context object
111
+ # @return [Object] the return value from executing the block
112
+ #
113
+ # source://docile//lib/docile.rb#87
114
+ def dsl_eval_with_block_return(dsl, *args, **_arg2, &block); end
115
+
116
+ class << self
117
+ # Execute a block in the context of an object whose methods represent the
118
+ # commands in a DSL.
119
+ #
120
+ # Use this method to execute an *imperative* DSL, which means that:
121
+ #
122
+ # 1. Each command mutates the state of the DSL context object
123
+ # 2. The return value of each command is ignored
124
+ # 3. The final return value is the original context object
125
+ #
126
+ # @example Use a String as a DSL
127
+ # Docile.dsl_eval("Hello, world!") do
128
+ # reverse!
129
+ # upcase!
130
+ # end
131
+ # #=> "!DLROW ,OLLEH"
132
+ # @example Use an Array as a DSL
133
+ # Docile.dsl_eval([]) do
134
+ # push 1
135
+ # push 2
136
+ # pop
137
+ # push 3
138
+ # end
139
+ # #=> [1, 3]
140
+ # @note Use with an *imperative* DSL (commands modify the context object)
141
+ # @param dsl [Object] context object whose methods make up the DSL
142
+ # @param args [Array] arguments to be passed to the block
143
+ # @param block [Proc] the block of DSL commands to be executed against the
144
+ # `dsl` context object
145
+ # @return [Object] the `dsl` context object after executing the block
146
+ #
147
+ # source://docile//lib/docile.rb#45
148
+ def dsl_eval(dsl, *args, **_arg2, &block); end
149
+
150
+ # Execute a block in the context of an immutable object whose methods,
151
+ # and the methods of their return values, represent the commands in a DSL.
152
+ #
153
+ # Use this method to execute a *functional* DSL, which means that:
154
+ #
155
+ # 1. The original DSL context object is never mutated
156
+ # 2. Each command returns the next DSL context object
157
+ # 3. The final return value is the value returned by the last command
158
+ #
159
+ # @example Use a frozen String as a DSL
160
+ # Docile.dsl_eval_immutable("I'm immutable!".freeze) do
161
+ # reverse
162
+ # upcase
163
+ # end
164
+ # #=> "!ELBATUMMI M'I"
165
+ # @example Use a Float as a DSL
166
+ # Docile.dsl_eval_immutable(84.5) do
167
+ # fdiv(2)
168
+ # floor
169
+ # end
170
+ # #=> 42
171
+ # @note Use with a *functional* DSL (commands return successor
172
+ # context objects)
173
+ # @param dsl [Object] immutable context object whose methods make up the
174
+ # initial DSL
175
+ # @param args [Array] arguments to be passed to the block
176
+ # @param block [Proc] the block of DSL commands to be executed against the
177
+ # `dsl` context object and successor return values
178
+ # @return [Object] the return value of the final command in the block
179
+ #
180
+ # source://docile//lib/docile.rb#128
181
+ def dsl_eval_immutable(dsl, *args, **_arg2, &block); end
182
+
183
+ # Execute a block in the context of an object whose methods represent the
184
+ # commands in a DSL, and return *the block's return value*.
185
+ #
186
+ # Use this method to execute an *imperative* DSL, which means that:
187
+ #
188
+ # 1. Each command mutates the state of the DSL context object
189
+ # 2. The return value of each command is ignored
190
+ # 3. The final return value is the original context object
191
+ #
192
+ # @example Use a String as a DSL
193
+ # Docile.dsl_eval_with_block_return("Hello, world!") do
194
+ # reverse!
195
+ # upcase!
196
+ # first
197
+ # end
198
+ # #=> "!"
199
+ # @example Use an Array as a DSL
200
+ # Docile.dsl_eval_with_block_return([]) do
201
+ # push "a"
202
+ # push "b"
203
+ # pop
204
+ # push "c"
205
+ # length
206
+ # end
207
+ # #=> 2
208
+ # @note Use with an *imperative* DSL (commands modify the context object)
209
+ # @param dsl [Object] context object whose methods make up the DSL
210
+ # @param args [Array] arguments to be passed to the block
211
+ # @param block [Proc] the block of DSL commands to be executed against the
212
+ # `dsl` context object
213
+ # @return [Object] the return value from executing the block
214
+ #
215
+ # source://docile//lib/docile.rb#87
216
+ def dsl_eval_with_block_return(dsl, *args, **_arg2, &block); end
217
+ end
218
+ end
219
+
220
+ # This is used to remove entries pointing to Docile's source files
221
+ # from {Exception#backtrace} and {Exception#backtrace_locations}.
222
+ #
223
+ # If {NoMethodError} is caught then the exception object will be extended
224
+ # by this module to add filter functionalities.
225
+ #
226
+ # @api private
227
+ #
228
+ # source://docile//lib/docile/backtrace_filter.rb#11
229
+ module Docile::BacktraceFilter
230
+ # @api private
231
+ #
232
+ # source://docile//lib/docile/backtrace_filter.rb#14
233
+ def backtrace; end
234
+
235
+ # @api private
236
+ #
237
+ # source://docile//lib/docile/backtrace_filter.rb#19
238
+ def backtrace_locations; end
239
+ end
240
+
241
+ # @api private
242
+ #
243
+ # source://docile//lib/docile/backtrace_filter.rb#12
244
+ Docile::BacktraceFilter::FILTER_PATTERN = T.let(T.unsafe(nil), Regexp)
245
+
246
+ # Operates in the same manner as {FallbackContextProxy}, but replacing
247
+ # the primary `receiver` object with the result of each proxied method.
248
+ #
249
+ # This is useful for implementing DSL evaluation for immutable context
250
+ # objects.
251
+ #
252
+ #
253
+ # @api private
254
+ # @see Docile.dsl_eval_immutable
255
+ #
256
+ # source://docile//lib/docile/chaining_fallback_context_proxy.rb#17
257
+ class Docile::ChainingFallbackContextProxy < ::Docile::FallbackContextProxy
258
+ # Proxy methods as in {FallbackContextProxy#method_missing}, replacing
259
+ # `receiver` with the returned value.
260
+ #
261
+ # @api private
262
+ #
263
+ # source://docile//lib/docile/chaining_fallback_context_proxy.rb#20
264
+ def method_missing(method, *args, **_arg2, &block); end
265
+ end
266
+
267
+ # A namespace for functions relating to the execution of a block against a
268
+ # proxy object.
269
+ #
270
+ # @api private
271
+ #
272
+ # source://docile//lib/docile/execution.rb#8
273
+ module Docile::Execution
274
+ private
275
+
276
+ # Execute a block in the context of an object whose methods represent the
277
+ # commands in a DSL, using a specific proxy class.
278
+ #
279
+ # @api private
280
+ # @param dsl [Object] context object whose methods make up the
281
+ # (initial) DSL
282
+ # @param proxy_type [FallbackContextProxy, ChainingFallbackContextProxy] which class to instantiate as proxy context
283
+ # @param args [Array] arguments to be passed to the block
284
+ # @param block [Proc] the block of DSL commands to be executed
285
+ # @return [Object] the return value of the block
286
+ #
287
+ # source://docile//lib/docile/execution.rb#19
288
+ def exec_in_proxy_context(dsl, proxy_type, *args, **_arg3, &block); end
289
+
290
+ class << self
291
+ # Execute a block in the context of an object whose methods represent the
292
+ # commands in a DSL, using a specific proxy class.
293
+ #
294
+ # @api private
295
+ # @param dsl [Object] context object whose methods make up the
296
+ # (initial) DSL
297
+ # @param proxy_type [FallbackContextProxy, ChainingFallbackContextProxy] which class to instantiate as proxy context
298
+ # @param args [Array] arguments to be passed to the block
299
+ # @param block [Proc] the block of DSL commands to be executed
300
+ # @return [Object] the return value of the block
301
+ #
302
+ # source://docile//lib/docile/execution.rb#19
303
+ def exec_in_proxy_context(dsl, proxy_type, *args, **_arg3, &block); end
304
+ end
305
+ end
306
+
307
+ # A proxy object with a primary receiver as well as a secondary
308
+ # fallback receiver.
309
+ #
310
+ # Will attempt to forward all method calls first to the primary receiver,
311
+ # and then to the fallback receiver if the primary does not handle that
312
+ # method.
313
+ #
314
+ # This is useful for implementing DSL evaluation in the context of an object.
315
+ #
316
+ #
317
+ # @api private
318
+ # @see Docile.dsl_eval
319
+ #
320
+ # source://docile//lib/docile/fallback_context_proxy.rb#20
321
+ class Docile::FallbackContextProxy
322
+ # @api private
323
+ # @param receiver [Object] the primary proxy target to which all methods
324
+ # initially will be forwarded
325
+ # @param fallback [Object] the fallback proxy target to which any methods
326
+ # not handled by `receiver` will be forwarded
327
+ # @return [FallbackContextProxy] a new instance of FallbackContextProxy
328
+ #
329
+ # source://docile//lib/docile/fallback_context_proxy.rb#46
330
+ def initialize(receiver, fallback); end
331
+
332
+ # @api private
333
+ # @return [Array<Symbol>] Instance variable names, excluding
334
+ # {NON_PROXIED_INSTANCE_VARIABLES}
335
+ #
336
+ # source://docile//lib/docile/fallback_context_proxy.rb#85
337
+ def instance_variables; end
338
+
339
+ # Proxy all methods, excluding {NON_PROXIED_METHODS}, first to `receiver`
340
+ # and then to `fallback` if not found.
341
+ #
342
+ # @api private
343
+ #
344
+ # source://docile//lib/docile/fallback_context_proxy.rb#91
345
+ def method_missing(method, *args, **_arg2, &block); end
346
+ end
347
+
348
+ # The set of methods which will **not** fallback from the block's context
349
+ # to the dsl object.
350
+ #
351
+ # @api private
352
+ #
353
+ # source://docile//lib/docile/fallback_context_proxy.rb#30
354
+ Docile::FallbackContextProxy::NON_FALLBACK_METHODS = T.let(T.unsafe(nil), Set)
355
+
356
+ # The set of instance variables which are local to this object and hidden.
357
+ # All other instance variables will be copied in and out of this object
358
+ # from the scope in which this proxy was created.
359
+ #
360
+ # @api private
361
+ #
362
+ # source://docile//lib/docile/fallback_context_proxy.rb#35
363
+ Docile::FallbackContextProxy::NON_PROXIED_INSTANCE_VARIABLES = T.let(T.unsafe(nil), Set)
364
+
365
+ # The set of methods which will **not** be proxied, but instead answered
366
+ # by this object directly.
367
+ #
368
+ # @api private
369
+ #
370
+ # source://docile//lib/docile/fallback_context_proxy.rb#23
371
+ Docile::FallbackContextProxy::NON_PROXIED_METHODS = T.let(T.unsafe(nil), Set)
372
+
373
+ # The current version of this library
374
+ #
375
+ # source://docile//lib/docile/version.rb#5
376
+ Docile::VERSION = T.let(T.unsafe(nil), String)
@@ -0,0 +1,127 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `kramdown-parser-gfm` gem.
5
+ # Please instead update this file by running `bin/tapioca gem kramdown-parser-gfm`.
6
+
7
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm/options.rb#10
8
+ module Kramdown
9
+ class << self
10
+ # source://kramdown/2.4.0/lib/kramdown/document.rb#49
11
+ def data_dir; end
12
+ end
13
+ end
14
+
15
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm/options.rb#11
16
+ module Kramdown::Options
17
+ class << self
18
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#72
19
+ def defaults; end
20
+
21
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#51
22
+ def define(name, type, default, desc, &block); end
23
+
24
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#67
25
+ def defined?(name); end
26
+
27
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#62
28
+ def definitions; end
29
+
30
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#82
31
+ def merge(hash); end
32
+
33
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#96
34
+ def parse(name, data); end
35
+
36
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#141
37
+ def simple_array_validator(val, name, size = T.unsafe(nil)); end
38
+
39
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#158
40
+ def simple_hash_validator(val, name); end
41
+
42
+ # source://kramdown/2.4.0/lib/kramdown/options.rb#122
43
+ def str_to_sym(data); end
44
+ end
45
+ end
46
+
47
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#16
48
+ module Kramdown::Parser; end
49
+
50
+ # This class provides a parser implementation for the GFM dialect of Markdown.
51
+ #
52
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#19
53
+ class Kramdown::Parser::GFM < ::Kramdown::Parser::Kramdown
54
+ # @return [GFM] a new instance of GFM
55
+ #
56
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#25
57
+ def initialize(source, options); end
58
+
59
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#108
60
+ def generate_gfm_header_id(text); end
61
+
62
+ # Returns the value of attribute paragraph_end.
63
+ #
64
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#23
65
+ def paragraph_end; end
66
+
67
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#55
68
+ def parse; end
69
+
70
+ # Copied from kramdown/parser/kramdown/header.rb, removed the first line
71
+ #
72
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#125
73
+ def parse_atx_header_gfm_quirk; end
74
+
75
+ # To handle task-lists we override the parse method for lists, converting matching text into
76
+ # checkbox input elements where necessary (as well as applying classes to the ul/ol and li
77
+ # elements).
78
+ #
79
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#163
80
+ def parse_list; end
81
+
82
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#142
83
+ def parse_strikethrough_gfm; end
84
+
85
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#60
86
+ def update_elements(element); end
87
+
88
+ # Update the raw text for automatic ID generation.
89
+ #
90
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#77
91
+ def update_raw_text(item); end
92
+
93
+ private
94
+
95
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#200
96
+ def update_text_type(element, child); end
97
+ end
98
+
99
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#120
100
+ Kramdown::Parser::GFM::ATX_HEADER_START = T.let(T.unsafe(nil), Regexp)
101
+
102
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#190
103
+ Kramdown::Parser::GFM::ESCAPED_CHARS_GFM = T.let(T.unsafe(nil), Regexp)
104
+
105
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#135
106
+ Kramdown::Parser::GFM::FENCED_CODEBLOCK_MATCH = T.let(T.unsafe(nil), Regexp)
107
+
108
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#134
109
+ Kramdown::Parser::GFM::FENCED_CODEBLOCK_START = T.let(T.unsafe(nil), Regexp)
110
+
111
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#158
112
+ Kramdown::Parser::GFM::LIST_TYPES = T.let(T.unsafe(nil), Array)
113
+
114
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#106
115
+ Kramdown::Parser::GFM::NON_WORD_RE = T.let(T.unsafe(nil), Regexp)
116
+
117
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#193
118
+ Kramdown::Parser::GFM::PARAGRAPH_END_GFM = T.let(T.unsafe(nil), Regexp)
119
+
120
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#138
121
+ Kramdown::Parser::GFM::STRIKETHROUGH_DELIM = T.let(T.unsafe(nil), Regexp)
122
+
123
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#139
124
+ Kramdown::Parser::GFM::STRIKETHROUGH_MATCH = T.let(T.unsafe(nil), Regexp)
125
+
126
+ # source://kramdown-parser-gfm//lib/kramdown/parser/gfm.rb#21
127
+ Kramdown::Parser::GFM::VERSION = T.let(T.unsafe(nil), String)