telegram-bot-ruby 2.7.0 → 2.8.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 (130) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +6 -9
  4. data/lib/telegram/bot/api/endpoints.rb +16 -1
  5. data/lib/telegram/bot/api.rb +1 -1
  6. data/lib/telegram/bot/types/bot_access_settings.rb +12 -0
  7. data/lib/telegram/bot/types/bot_command.rb +1 -0
  8. data/lib/telegram/bot/types/bot_subscription_updated.rb +13 -0
  9. data/lib/telegram/bot/types/chat_full_info.rb +2 -0
  10. data/lib/telegram/bot/types/chat_join_request.rb +1 -0
  11. data/lib/telegram/bot/types/chat_member_restricted.rb +1 -0
  12. data/lib/telegram/bot/types/chat_permissions.rb +1 -0
  13. data/lib/telegram/bot/types/community.rb +12 -0
  14. data/lib/telegram/bot/types/community_chat_added.rb +11 -0
  15. data/lib/telegram/bot/types/community_chat_removed.rb +10 -0
  16. data/lib/telegram/bot/types/external_reply_info.rb +1 -0
  17. data/lib/telegram/bot/types/inline_query_result_location.rb +1 -1
  18. data/lib/telegram/bot/types/input_location_message_content.rb +1 -1
  19. data/lib/telegram/bot/types/input_media.rb +2 -1
  20. data/lib/telegram/bot/types/input_media_link.rb +12 -0
  21. data/lib/telegram/bot/types/input_media_live_photo.rb +18 -0
  22. data/lib/telegram/bot/types/input_media_location.rb +14 -0
  23. data/lib/telegram/bot/types/input_media_sticker.rb +13 -0
  24. data/lib/telegram/bot/types/input_media_venue.rb +19 -0
  25. data/lib/telegram/bot/types/input_media_voice_note.rb +16 -0
  26. data/lib/telegram/bot/types/input_message_content.rb +1 -0
  27. data/lib/telegram/bot/types/input_paid_media.rb +1 -0
  28. data/lib/telegram/bot/types/input_paid_media_live_photo.rb +13 -0
  29. data/lib/telegram/bot/types/input_poll_media.rb +21 -0
  30. data/lib/telegram/bot/types/input_poll_option.rb +1 -0
  31. data/lib/telegram/bot/types/input_poll_option_media.rb +21 -0
  32. data/lib/telegram/bot/types/input_rich_block.rb +34 -0
  33. data/lib/telegram/bot/types/input_rich_block_anchor.rb +12 -0
  34. data/lib/telegram/bot/types/input_rich_block_animation.rb +13 -0
  35. data/lib/telegram/bot/types/input_rich_block_audio.rb +13 -0
  36. data/lib/telegram/bot/types/input_rich_block_block_quotation.rb +13 -0
  37. data/lib/telegram/bot/types/input_rich_block_collage.rb +13 -0
  38. data/lib/telegram/bot/types/input_rich_block_details.rb +14 -0
  39. data/lib/telegram/bot/types/input_rich_block_divider.rb +11 -0
  40. data/lib/telegram/bot/types/input_rich_block_footer.rb +12 -0
  41. data/lib/telegram/bot/types/input_rich_block_list.rb +12 -0
  42. data/lib/telegram/bot/types/input_rich_block_list_item.rb +15 -0
  43. data/lib/telegram/bot/types/input_rich_block_map.rb +16 -0
  44. data/lib/telegram/bot/types/input_rich_block_mathematical_expression.rb +12 -0
  45. data/lib/telegram/bot/types/input_rich_block_paragraph.rb +12 -0
  46. data/lib/telegram/bot/types/input_rich_block_photo.rb +13 -0
  47. data/lib/telegram/bot/types/input_rich_block_preformatted.rb +13 -0
  48. data/lib/telegram/bot/types/input_rich_block_pull_quotation.rb +13 -0
  49. data/lib/telegram/bot/types/input_rich_block_section_heading.rb +13 -0
  50. data/lib/telegram/bot/types/input_rich_block_slideshow.rb +13 -0
  51. data/lib/telegram/bot/types/input_rich_block_table.rb +15 -0
  52. data/lib/telegram/bot/types/input_rich_block_thinking.rb +12 -0
  53. data/lib/telegram/bot/types/input_rich_block_video.rb +13 -0
  54. data/lib/telegram/bot/types/input_rich_block_voice_note.rb +13 -0
  55. data/lib/telegram/bot/types/input_rich_message.rb +16 -0
  56. data/lib/telegram/bot/types/input_rich_message_content.rb +11 -0
  57. data/lib/telegram/bot/types/input_rich_message_media.rb +13 -0
  58. data/lib/telegram/bot/types/link.rb +11 -0
  59. data/lib/telegram/bot/types/live_photo.rb +18 -0
  60. data/lib/telegram/bot/types/message.rb +10 -1
  61. data/lib/telegram/bot/types/paid_media.rb +2 -1
  62. data/lib/telegram/bot/types/paid_media_live_photo.rb +12 -0
  63. data/lib/telegram/bot/types/poll.rb +4 -0
  64. data/lib/telegram/bot/types/poll_media.rb +20 -0
  65. data/lib/telegram/bot/types/poll_option.rb +1 -0
  66. data/lib/telegram/bot/types/poll_option_added.rb +1 -1
  67. data/lib/telegram/bot/types/poll_option_deleted.rb +1 -1
  68. data/lib/telegram/bot/types/reply_parameters.rb +2 -1
  69. data/lib/telegram/bot/types/rich_block.rb +34 -0
  70. data/lib/telegram/bot/types/rich_block_anchor.rb +12 -0
  71. data/lib/telegram/bot/types/rich_block_animation.rb +14 -0
  72. data/lib/telegram/bot/types/rich_block_audio.rb +13 -0
  73. data/lib/telegram/bot/types/rich_block_block_quotation.rb +13 -0
  74. data/lib/telegram/bot/types/rich_block_caption.rb +12 -0
  75. data/lib/telegram/bot/types/rich_block_collage.rb +13 -0
  76. data/lib/telegram/bot/types/rich_block_details.rb +14 -0
  77. data/lib/telegram/bot/types/rich_block_divider.rb +11 -0
  78. data/lib/telegram/bot/types/rich_block_footer.rb +12 -0
  79. data/lib/telegram/bot/types/rich_block_list.rb +12 -0
  80. data/lib/telegram/bot/types/rich_block_list_item.rb +16 -0
  81. data/lib/telegram/bot/types/rich_block_map.rb +16 -0
  82. data/lib/telegram/bot/types/rich_block_mathematical_expression.rb +12 -0
  83. data/lib/telegram/bot/types/rich_block_paragraph.rb +12 -0
  84. data/lib/telegram/bot/types/rich_block_photo.rb +14 -0
  85. data/lib/telegram/bot/types/rich_block_preformatted.rb +13 -0
  86. data/lib/telegram/bot/types/rich_block_pull_quotation.rb +13 -0
  87. data/lib/telegram/bot/types/rich_block_section_heading.rb +13 -0
  88. data/lib/telegram/bot/types/rich_block_slideshow.rb +13 -0
  89. data/lib/telegram/bot/types/rich_block_table.rb +15 -0
  90. data/lib/telegram/bot/types/rich_block_table_cell.rb +16 -0
  91. data/lib/telegram/bot/types/rich_block_thinking.rb +12 -0
  92. data/lib/telegram/bot/types/rich_block_video.rb +14 -0
  93. data/lib/telegram/bot/types/rich_block_voice_note.rb +13 -0
  94. data/lib/telegram/bot/types/rich_message.rb +12 -0
  95. data/lib/telegram/bot/types/rich_text.rb +40 -0
  96. data/lib/telegram/bot/types/rich_text_anchor.rb +12 -0
  97. data/lib/telegram/bot/types/rich_text_anchor_link.rb +13 -0
  98. data/lib/telegram/bot/types/rich_text_bank_card_number.rb +13 -0
  99. data/lib/telegram/bot/types/rich_text_bold.rb +12 -0
  100. data/lib/telegram/bot/types/rich_text_bot_command.rb +13 -0
  101. data/lib/telegram/bot/types/rich_text_cashtag.rb +13 -0
  102. data/lib/telegram/bot/types/rich_text_code.rb +12 -0
  103. data/lib/telegram/bot/types/rich_text_custom_emoji.rb +13 -0
  104. data/lib/telegram/bot/types/rich_text_date_time.rb +14 -0
  105. data/lib/telegram/bot/types/rich_text_email_address.rb +13 -0
  106. data/lib/telegram/bot/types/rich_text_hashtag.rb +13 -0
  107. data/lib/telegram/bot/types/rich_text_italic.rb +12 -0
  108. data/lib/telegram/bot/types/rich_text_marked.rb +12 -0
  109. data/lib/telegram/bot/types/rich_text_mathematical_expression.rb +12 -0
  110. data/lib/telegram/bot/types/rich_text_mention.rb +13 -0
  111. data/lib/telegram/bot/types/rich_text_phone_number.rb +13 -0
  112. data/lib/telegram/bot/types/rich_text_reference.rb +13 -0
  113. data/lib/telegram/bot/types/rich_text_reference_link.rb +13 -0
  114. data/lib/telegram/bot/types/rich_text_spoiler.rb +12 -0
  115. data/lib/telegram/bot/types/rich_text_strikethrough.rb +12 -0
  116. data/lib/telegram/bot/types/rich_text_subscript.rb +12 -0
  117. data/lib/telegram/bot/types/rich_text_superscript.rb +12 -0
  118. data/lib/telegram/bot/types/rich_text_text_mention.rb +13 -0
  119. data/lib/telegram/bot/types/rich_text_underline.rb +12 -0
  120. data/lib/telegram/bot/types/rich_text_url.rb +13 -0
  121. data/lib/telegram/bot/types/sent_guest_message.rb +11 -0
  122. data/lib/telegram/bot/types/update.rb +2 -0
  123. data/lib/telegram/bot/types/user.rb +2 -0
  124. data/lib/telegram/bot/types.rb +6 -0
  125. data/lib/telegram/bot/version.rb +1 -1
  126. data/rakelib/builders/type_builder.rb +13 -3
  127. data/rakelib/builders/type_dependencies.rb +45 -0
  128. data/rakelib/parsers/types_parser.rb +15 -5
  129. data/rakelib/rebuild.rake +4 -1
  130. metadata +100 -2
@@ -8,10 +8,11 @@ module Builders
8
8
 
9
9
  attr_reader :name, :attributes, :templates_dir
10
10
 
11
- def initialize(name, attributes, templates_dir:)
11
+ def initialize(name, attributes, templates_dir:, dependencies:)
12
12
  @name = name
13
13
  @attributes = deep_dup(attributes)
14
14
  @templates_dir = templates_dir
15
+ @dependencies = dependencies
15
16
  end
16
17
 
17
18
  def build
@@ -37,10 +38,17 @@ module Builders
37
38
  end
38
39
 
39
40
  def build_empty_type
40
- attrs = attributes[:type].join(" |\n ")
41
+ attrs = attributes[:type].map { |member| empty_type_member(member.to_s) }
42
+ .join(" |\n ")
41
43
  render_template('empty_type.erb', name: name, attributes: attrs)
42
44
  end
43
45
 
46
+ def empty_type_member(member)
47
+ return "Types::Array.of(#{add_module_types(member.delete_prefix('array:'))})" if member.start_with?('array:')
48
+
49
+ add_module_types(member)
50
+ end
51
+
44
52
  def build_full_type
45
53
  process_attributes!
46
54
  render_template('type.erb', name: name, attributes: attributes)
@@ -81,7 +89,8 @@ module Builders
81
89
  if properties[:items].is_a?(String)
82
90
  attributes[attr_name][:type] += ".of(#{add_module_types(properties[:items])})"
83
91
  elsif properties[:items] && properties[:items][:type] == 'array'
84
- attributes[attr_name][:type] += ".of(Types::Array.of(#{properties[:items][:items]}))"
92
+ item_type = add_module_types(properties[:items][:items])
93
+ attributes[attr_name][:type] += ".of(Types::Array.of(#{item_type}))"
85
94
  end
86
95
  end
87
96
 
@@ -108,6 +117,7 @@ module Builders
108
117
 
109
118
  def add_module_types(type)
110
119
  return 'Types::Float' if type == 'number'
120
+ return "Types.deferred(:#{type})" if @dependencies.deferred?(owner: name, target: type)
111
121
 
112
122
  DRY_TYPES.include?(type) ? "Types::#{type.capitalize}" : type
113
123
  end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'set'
4
+
5
+ module Builders
6
+ # Decides which generated type references must be wrapped in Types.deferred:
7
+ # referencing a union that can reach back to the referencing type would
8
+ # evaluate the union constant mid-definition and fail to load.
9
+ class TypeDependencies
10
+ EMPTY = [].freeze
11
+
12
+ def initialize(types)
13
+ @known_types = types.keys.to_set(&:to_s)
14
+ @dependencies = types.to_h { |name, definition| [name.to_s, references_in(definition)] }
15
+ unions = types.select { |_, definition| definition[:type].is_a?(Array) }.keys
16
+ @reachable_from_union = unions.to_h { |name| [name.to_s, reachable_from(name.to_s)] }
17
+ end
18
+
19
+ def deferred?(owner:, target:)
20
+ @reachable_from_union[target.to_s]&.include?(owner.to_s) || false
21
+ end
22
+
23
+ private
24
+
25
+ def references_in(value)
26
+ case value
27
+ when Hash
28
+ value.values.flat_map { |item| references_in(item) }
29
+ when Array
30
+ value.flat_map { |item| references_in(item) }
31
+ when String
32
+ @known_types.include?(value) ? [value] : EMPTY
33
+ else
34
+ EMPTY
35
+ end
36
+ end
37
+
38
+ def reachable_from(node, visited = Set.new)
39
+ return visited unless visited.add?(node)
40
+
41
+ @dependencies.fetch(node, EMPTY).each { |dependency| reachable_from(dependency, visited) }
42
+ visited
43
+ end
44
+ end
45
+ end
@@ -51,17 +51,23 @@ module Parsers
51
51
  name
52
52
  end
53
53
 
54
- def parse_type(header, _type_name)
54
+ def parse_type(header, type_name)
55
55
  # Check if this is a union type (list of types without a table)
56
+ description = first_description_paragraph(header)
56
57
  next_sibling = find_next_significant_sibling(header)
57
58
 
58
59
  if union_type?(next_sibling)
59
- parse_union_type(next_sibling)
60
+ parse_union_type(next_sibling, description, type_name)
60
61
  else
61
62
  parse_table_type(header)
62
63
  end
63
64
  end
64
65
 
66
+ def first_description_paragraph(header)
67
+ sibling = header.next_element
68
+ sibling if sibling&.name == 'p'
69
+ end
70
+
65
71
  def find_next_significant_sibling(header)
66
72
  sibling = header.next_element
67
73
  # Skip description paragraphs
@@ -73,9 +79,13 @@ module Parsers
73
79
  element&.name == 'ul'
74
80
  end
75
81
 
76
- def parse_union_type(ul_element)
77
- types = ul_element.css('li a').map { |a| a.text.strip }
78
- { 'type' => types }
82
+ def parse_union_type(ul_element, description, type_name)
83
+ types = []
84
+ desc_text = description&.text.to_s
85
+ types << 'string' if desc_text.match?(/String for plain text/i)
86
+ types << "array:#{type_name}" if desc_text.match?(/an Array of #{type_name}/i)
87
+ types.concat(ul_element.css('li a').map { |a| a.text.strip })
88
+ { 'type' => types.uniq }
79
89
  end
80
90
 
81
91
  def parse_table_type(header)
data/rakelib/rebuild.rake CHANGED
@@ -2,16 +2,19 @@
2
2
 
3
3
  require 'json'
4
4
  require_relative 'builders/type_builder'
5
+ require_relative 'builders/type_dependencies'
5
6
  require_relative 'builders/endpoints_builder'
6
7
 
7
8
  namespace :rebuild do
8
9
  desc 'Rebuild types from type_attributes.json'
9
10
  task :types do
10
11
  types = JSON.parse(File.read("#{__dir__}/../data/types.json"), symbolize_names: true)
12
+ dependencies = Builders::TypeDependencies.new(types)
11
13
  templates_dir = "#{__dir__}/templates"
12
14
 
13
15
  types.each_pair do |name, attributes|
14
- builder = Builders::TypeBuilder.new(name.to_s, attributes, templates_dir: templates_dir)
16
+ builder = Builders::TypeBuilder.new(name.to_s, attributes,
17
+ templates_dir: templates_dir, dependencies: dependencies)
15
18
  output_path = "#{__dir__}/../lib/telegram/bot/types/#{Builders::TypeBuilder.underscore(name)}.rb"
16
19
 
17
20
  File.write(output_path, builder.build)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: telegram-bot-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.0
4
+ version: 2.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Tipugin
@@ -111,6 +111,7 @@ files:
111
111
  - lib/telegram/bot/types/background_type_wallpaper.rb
112
112
  - lib/telegram/bot/types/base.rb
113
113
  - lib/telegram/bot/types/birthdate.rb
114
+ - lib/telegram/bot/types/bot_access_settings.rb
114
115
  - lib/telegram/bot/types/bot_command.rb
115
116
  - lib/telegram/bot/types/bot_command_scope.rb
116
117
  - lib/telegram/bot/types/bot_command_scope_all_chat_administrators.rb
@@ -123,6 +124,7 @@ files:
123
124
  - lib/telegram/bot/types/bot_description.rb
124
125
  - lib/telegram/bot/types/bot_name.rb
125
126
  - lib/telegram/bot/types/bot_short_description.rb
127
+ - lib/telegram/bot/types/bot_subscription_updated.rb
126
128
  - lib/telegram/bot/types/business_bot_rights.rb
127
129
  - lib/telegram/bot/types/business_connection.rb
128
130
  - lib/telegram/bot/types/business_intro.rb
@@ -165,6 +167,9 @@ files:
165
167
  - lib/telegram/bot/types/checklist_tasks_added.rb
166
168
  - lib/telegram/bot/types/checklist_tasks_done.rb
167
169
  - lib/telegram/bot/types/chosen_inline_result.rb
170
+ - lib/telegram/bot/types/community.rb
171
+ - lib/telegram/bot/types/community_chat_added.rb
172
+ - lib/telegram/bot/types/community_chat_removed.rb
168
173
  - lib/telegram/bot/types/compactable.rb
169
174
  - lib/telegram/bot/types/contact.rb
170
175
  - lib/telegram/bot/types/copy_text_button.rb
@@ -231,16 +236,51 @@ files:
231
236
  - lib/telegram/bot/types/input_media_animation.rb
232
237
  - lib/telegram/bot/types/input_media_audio.rb
233
238
  - lib/telegram/bot/types/input_media_document.rb
239
+ - lib/telegram/bot/types/input_media_link.rb
240
+ - lib/telegram/bot/types/input_media_live_photo.rb
241
+ - lib/telegram/bot/types/input_media_location.rb
234
242
  - lib/telegram/bot/types/input_media_photo.rb
243
+ - lib/telegram/bot/types/input_media_sticker.rb
244
+ - lib/telegram/bot/types/input_media_venue.rb
235
245
  - lib/telegram/bot/types/input_media_video.rb
246
+ - lib/telegram/bot/types/input_media_voice_note.rb
236
247
  - lib/telegram/bot/types/input_message_content.rb
237
248
  - lib/telegram/bot/types/input_paid_media.rb
249
+ - lib/telegram/bot/types/input_paid_media_live_photo.rb
238
250
  - lib/telegram/bot/types/input_paid_media_photo.rb
239
251
  - lib/telegram/bot/types/input_paid_media_video.rb
252
+ - lib/telegram/bot/types/input_poll_media.rb
240
253
  - lib/telegram/bot/types/input_poll_option.rb
254
+ - lib/telegram/bot/types/input_poll_option_media.rb
241
255
  - lib/telegram/bot/types/input_profile_photo.rb
242
256
  - lib/telegram/bot/types/input_profile_photo_animated.rb
243
257
  - lib/telegram/bot/types/input_profile_photo_static.rb
258
+ - lib/telegram/bot/types/input_rich_block.rb
259
+ - lib/telegram/bot/types/input_rich_block_anchor.rb
260
+ - lib/telegram/bot/types/input_rich_block_animation.rb
261
+ - lib/telegram/bot/types/input_rich_block_audio.rb
262
+ - lib/telegram/bot/types/input_rich_block_block_quotation.rb
263
+ - lib/telegram/bot/types/input_rich_block_collage.rb
264
+ - lib/telegram/bot/types/input_rich_block_details.rb
265
+ - lib/telegram/bot/types/input_rich_block_divider.rb
266
+ - lib/telegram/bot/types/input_rich_block_footer.rb
267
+ - lib/telegram/bot/types/input_rich_block_list.rb
268
+ - lib/telegram/bot/types/input_rich_block_list_item.rb
269
+ - lib/telegram/bot/types/input_rich_block_map.rb
270
+ - lib/telegram/bot/types/input_rich_block_mathematical_expression.rb
271
+ - lib/telegram/bot/types/input_rich_block_paragraph.rb
272
+ - lib/telegram/bot/types/input_rich_block_photo.rb
273
+ - lib/telegram/bot/types/input_rich_block_preformatted.rb
274
+ - lib/telegram/bot/types/input_rich_block_pull_quotation.rb
275
+ - lib/telegram/bot/types/input_rich_block_section_heading.rb
276
+ - lib/telegram/bot/types/input_rich_block_slideshow.rb
277
+ - lib/telegram/bot/types/input_rich_block_table.rb
278
+ - lib/telegram/bot/types/input_rich_block_thinking.rb
279
+ - lib/telegram/bot/types/input_rich_block_video.rb
280
+ - lib/telegram/bot/types/input_rich_block_voice_note.rb
281
+ - lib/telegram/bot/types/input_rich_message.rb
282
+ - lib/telegram/bot/types/input_rich_message_content.rb
283
+ - lib/telegram/bot/types/input_rich_message_media.rb
244
284
  - lib/telegram/bot/types/input_sticker.rb
245
285
  - lib/telegram/bot/types/input_story_content.rb
246
286
  - lib/telegram/bot/types/input_story_content_photo.rb
@@ -254,7 +294,9 @@ files:
254
294
  - lib/telegram/bot/types/keyboard_button_request_managed_bot.rb
255
295
  - lib/telegram/bot/types/keyboard_button_request_users.rb
256
296
  - lib/telegram/bot/types/labeled_price.rb
297
+ - lib/telegram/bot/types/link.rb
257
298
  - lib/telegram/bot/types/link_preview_options.rb
299
+ - lib/telegram/bot/types/live_photo.rb
258
300
  - lib/telegram/bot/types/location.rb
259
301
  - lib/telegram/bot/types/location_address.rb
260
302
  - lib/telegram/bot/types/login_url.rb
@@ -284,6 +326,7 @@ files:
284
326
  - lib/telegram/bot/types/owned_gifts.rb
285
327
  - lib/telegram/bot/types/paid_media.rb
286
328
  - lib/telegram/bot/types/paid_media_info.rb
329
+ - lib/telegram/bot/types/paid_media_live_photo.rb
287
330
  - lib/telegram/bot/types/paid_media_photo.rb
288
331
  - lib/telegram/bot/types/paid_media_preview.rb
289
332
  - lib/telegram/bot/types/paid_media_purchased.rb
@@ -305,6 +348,7 @@ files:
305
348
  - lib/telegram/bot/types/photo_size.rb
306
349
  - lib/telegram/bot/types/poll.rb
307
350
  - lib/telegram/bot/types/poll_answer.rb
351
+ - lib/telegram/bot/types/poll_media.rb
308
352
  - lib/telegram/bot/types/poll_option.rb
309
353
  - lib/telegram/bot/types/poll_option_added.rb
310
354
  - lib/telegram/bot/types/poll_option_deleted.rb
@@ -326,6 +370,59 @@ files:
326
370
  - lib/telegram/bot/types/revenue_withdrawal_state_failed.rb
327
371
  - lib/telegram/bot/types/revenue_withdrawal_state_pending.rb
328
372
  - lib/telegram/bot/types/revenue_withdrawal_state_succeeded.rb
373
+ - lib/telegram/bot/types/rich_block.rb
374
+ - lib/telegram/bot/types/rich_block_anchor.rb
375
+ - lib/telegram/bot/types/rich_block_animation.rb
376
+ - lib/telegram/bot/types/rich_block_audio.rb
377
+ - lib/telegram/bot/types/rich_block_block_quotation.rb
378
+ - lib/telegram/bot/types/rich_block_caption.rb
379
+ - lib/telegram/bot/types/rich_block_collage.rb
380
+ - lib/telegram/bot/types/rich_block_details.rb
381
+ - lib/telegram/bot/types/rich_block_divider.rb
382
+ - lib/telegram/bot/types/rich_block_footer.rb
383
+ - lib/telegram/bot/types/rich_block_list.rb
384
+ - lib/telegram/bot/types/rich_block_list_item.rb
385
+ - lib/telegram/bot/types/rich_block_map.rb
386
+ - lib/telegram/bot/types/rich_block_mathematical_expression.rb
387
+ - lib/telegram/bot/types/rich_block_paragraph.rb
388
+ - lib/telegram/bot/types/rich_block_photo.rb
389
+ - lib/telegram/bot/types/rich_block_preformatted.rb
390
+ - lib/telegram/bot/types/rich_block_pull_quotation.rb
391
+ - lib/telegram/bot/types/rich_block_section_heading.rb
392
+ - lib/telegram/bot/types/rich_block_slideshow.rb
393
+ - lib/telegram/bot/types/rich_block_table.rb
394
+ - lib/telegram/bot/types/rich_block_table_cell.rb
395
+ - lib/telegram/bot/types/rich_block_thinking.rb
396
+ - lib/telegram/bot/types/rich_block_video.rb
397
+ - lib/telegram/bot/types/rich_block_voice_note.rb
398
+ - lib/telegram/bot/types/rich_message.rb
399
+ - lib/telegram/bot/types/rich_text.rb
400
+ - lib/telegram/bot/types/rich_text_anchor.rb
401
+ - lib/telegram/bot/types/rich_text_anchor_link.rb
402
+ - lib/telegram/bot/types/rich_text_bank_card_number.rb
403
+ - lib/telegram/bot/types/rich_text_bold.rb
404
+ - lib/telegram/bot/types/rich_text_bot_command.rb
405
+ - lib/telegram/bot/types/rich_text_cashtag.rb
406
+ - lib/telegram/bot/types/rich_text_code.rb
407
+ - lib/telegram/bot/types/rich_text_custom_emoji.rb
408
+ - lib/telegram/bot/types/rich_text_date_time.rb
409
+ - lib/telegram/bot/types/rich_text_email_address.rb
410
+ - lib/telegram/bot/types/rich_text_hashtag.rb
411
+ - lib/telegram/bot/types/rich_text_italic.rb
412
+ - lib/telegram/bot/types/rich_text_marked.rb
413
+ - lib/telegram/bot/types/rich_text_mathematical_expression.rb
414
+ - lib/telegram/bot/types/rich_text_mention.rb
415
+ - lib/telegram/bot/types/rich_text_phone_number.rb
416
+ - lib/telegram/bot/types/rich_text_reference.rb
417
+ - lib/telegram/bot/types/rich_text_reference_link.rb
418
+ - lib/telegram/bot/types/rich_text_spoiler.rb
419
+ - lib/telegram/bot/types/rich_text_strikethrough.rb
420
+ - lib/telegram/bot/types/rich_text_subscript.rb
421
+ - lib/telegram/bot/types/rich_text_superscript.rb
422
+ - lib/telegram/bot/types/rich_text_text_mention.rb
423
+ - lib/telegram/bot/types/rich_text_underline.rb
424
+ - lib/telegram/bot/types/rich_text_url.rb
425
+ - lib/telegram/bot/types/sent_guest_message.rb
329
426
  - lib/telegram/bot/types/sent_web_app_message.rb
330
427
  - lib/telegram/bot/types/shared_user.rb
331
428
  - lib/telegram/bot/types/shipping_address.rb
@@ -395,6 +492,7 @@ files:
395
492
  - mise.toml
396
493
  - rakelib/builders/endpoints_builder.rb
397
494
  - rakelib/builders/type_builder.rb
495
+ - rakelib/builders/type_dependencies.rb
398
496
  - rakelib/parse.rake
399
497
  - rakelib/parsers/methods_parser.rb
400
498
  - rakelib/parsers/types_parser.rb
@@ -421,7 +519,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
421
519
  - !ruby/object:Gem::Version
422
520
  version: '0'
423
521
  requirements: []
424
- rubygems_version: 4.0.3
522
+ rubygems_version: 4.0.16
425
523
  specification_version: 4
426
524
  summary: Ruby wrapper for Telegram's Bot API
427
525
  test_files: []