svix 1.38.0 → 1.40.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (219) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +5 -5
  3. data/README.md +8 -1
  4. data/lib/svix/api/application_api.rb +23 -14
  5. data/lib/svix/api/authentication_api.rb +23 -11
  6. data/lib/svix/api/background_tasks_api.rb +3 -3
  7. data/lib/svix/api/broadcast_api.rb +6 -3
  8. data/lib/svix/api/endpoint_api.rb +86 -44
  9. data/lib/svix/api/environment_api.rb +8 -5
  10. data/lib/svix/api/environment_settings_api.rb +2 -2
  11. data/lib/svix/api/event_type_api.rb +39 -21
  12. data/lib/svix/api/events_api.rb +2 -2
  13. data/lib/svix/api/health_api.rb +2 -2
  14. data/lib/svix/api/inbound_api.rb +7 -4
  15. data/lib/svix/api/integration_api.rb +16 -10
  16. data/lib/svix/api/message_api.rb +21 -15
  17. data/lib/svix/api/message_attempt_api.rb +25 -25
  18. data/lib/svix/api/statistics_api.rb +9 -6
  19. data/lib/svix/api/stream_api.rb +176 -10
  20. data/lib/svix/api/stream_event_types_api.rb +486 -0
  21. data/lib/svix/api/transformation_template_api.rb +49 -22
  22. data/lib/svix/api/webhook_endpoint_api.rb +572 -0
  23. data/lib/svix/api_client.rb +45 -28
  24. data/lib/svix/api_error.rb +2 -1
  25. data/lib/svix/configuration.rb +42 -12
  26. data/lib/svix/models/aggregate_event_types_out.rb +43 -19
  27. data/lib/svix/models/app_portal_access_in.rb +19 -19
  28. data/lib/svix/models/app_portal_access_out.rb +19 -19
  29. data/lib/svix/models/app_usage_stats_in.rb +19 -19
  30. data/lib/svix/models/app_usage_stats_out.rb +43 -19
  31. data/lib/svix/models/application_in.rb +17 -19
  32. data/lib/svix/models/application_out.rb +25 -19
  33. data/lib/svix/models/application_patch.rb +15 -19
  34. data/lib/svix/models/application_stats.rb +19 -19
  35. data/lib/svix/models/application_token_expire_in.rb +15 -19
  36. data/lib/svix/models/attempt_statistics_data.rb +15 -19
  37. data/lib/svix/models/attempt_statistics_response.rb +45 -19
  38. data/lib/svix/models/auth_token_out.rb +21 -19
  39. data/lib/svix/models/azure_blob_storage_config.rb +21 -19
  40. data/lib/svix/models/background_task_out.rb +45 -19
  41. data/lib/svix/models/background_task_status.rb +7 -4
  42. data/lib/svix/models/background_task_type.rb +7 -4
  43. data/lib/svix/models/big_query_config.rb +271 -0
  44. data/lib/svix/models/border_radius_config.rb +37 -19
  45. data/lib/svix/models/border_radius_enum.rb +7 -4
  46. data/lib/svix/models/client_secret_jwt_params_in.rb +41 -19
  47. data/lib/svix/models/completion_choice.rb +21 -19
  48. data/lib/svix/models/completion_message.rb +19 -19
  49. data/lib/svix/models/create_message_token_in.rb +17 -19
  50. data/lib/svix/models/create_stream_in.rb +30 -23
  51. data/lib/svix/models/custom_color_palette.rb +15 -19
  52. data/lib/svix/models/custom_strings_override.rb +15 -19
  53. data/lib/svix/models/custom_theme_override.rb +15 -19
  54. data/lib/svix/models/dashboard_access_out.rb +19 -19
  55. data/lib/svix/models/duration.rb +19 -19
  56. data/lib/svix/models/endpoint_created_event.rb +17 -19
  57. data/lib/svix/models/endpoint_created_event_data.rb +19 -19
  58. data/lib/svix/models/endpoint_deleted_event.rb +17 -19
  59. data/lib/svix/models/endpoint_deleted_event_data.rb +19 -19
  60. data/lib/svix/models/endpoint_disabled_event.rb +17 -19
  61. data/lib/svix/models/endpoint_disabled_event_data.rb +21 -19
  62. data/lib/svix/models/endpoint_headers_in.rb +17 -19
  63. data/lib/svix/models/endpoint_headers_out.rb +19 -19
  64. data/lib/svix/models/endpoint_headers_patch_in.rb +17 -19
  65. data/lib/svix/models/endpoint_in.rb +17 -19
  66. data/lib/svix/models/endpoint_message_out.rb +47 -19
  67. data/lib/svix/models/endpoint_mtls_config_in.rb +17 -19
  68. data/lib/svix/models/endpoint_oauth_config_in.rb +45 -19
  69. data/lib/svix/models/endpoint_out.rb +29 -19
  70. data/lib/svix/models/endpoint_patch.rb +20 -20
  71. data/lib/svix/models/endpoint_secret_out.rb +17 -19
  72. data/lib/svix/models/endpoint_secret_rotate_in.rb +15 -21
  73. data/lib/svix/models/endpoint_stats.rb +23 -19
  74. data/lib/svix/models/endpoint_transformation_in.rb +15 -19
  75. data/lib/svix/models/endpoint_transformation_out.rb +15 -19
  76. data/lib/svix/models/endpoint_transformation_simulate_in.rb +21 -19
  77. data/lib/svix/models/endpoint_transformation_simulate_out.rb +41 -19
  78. data/lib/svix/models/endpoint_update.rb +17 -19
  79. data/lib/svix/models/endpoint_updated_event.rb +17 -19
  80. data/lib/svix/models/endpoint_updated_event_data.rb +19 -19
  81. data/lib/svix/models/environment_in.rb +19 -19
  82. data/lib/svix/models/environment_out.rb +21 -19
  83. data/lib/svix/models/environment_settings_out.rb +15 -19
  84. data/lib/svix/models/event_example_in.rb +52 -23
  85. data/lib/svix/models/event_in.rb +55 -20
  86. data/lib/svix/models/event_out.rb +57 -20
  87. data/lib/svix/models/event_stream_out.rb +21 -19
  88. data/lib/svix/models/event_type_example_out.rb +17 -19
  89. data/lib/svix/models/event_type_from_open_api.rb +95 -20
  90. data/lib/svix/models/event_type_import_open_api_in.rb +15 -19
  91. data/lib/svix/models/event_type_import_open_api_out.rb +17 -19
  92. data/lib/svix/models/event_type_import_open_api_out_data.rb +17 -19
  93. data/lib/svix/models/event_type_in.rb +19 -19
  94. data/lib/svix/models/event_type_out.rb +25 -19
  95. data/lib/svix/models/event_type_patch.rb +15 -19
  96. data/lib/svix/models/event_type_schema_in.rb +17 -19
  97. data/lib/svix/models/event_type_update.rb +17 -19
  98. data/lib/svix/models/export_event_type_out.rb +43 -19
  99. data/lib/svix/models/font_size_config.rb +15 -19
  100. data/lib/svix/models/generate_in.rb +17 -19
  101. data/lib/svix/models/generate_out.rb +25 -19
  102. data/lib/svix/models/google_cloud_storage_config.rb +19 -19
  103. data/lib/svix/models/http_error_out.rb +19 -19
  104. data/lib/svix/models/http_validation_error.rb +17 -19
  105. data/lib/svix/models/hubspot_oauth_config_in.rb +17 -19
  106. data/lib/svix/models/inbound_path_params.rb +19 -19
  107. data/lib/svix/models/incoming_webhook_payload_out.rb +15 -19
  108. data/lib/svix/models/integration_in.rb +17 -19
  109. data/lib/svix/models/integration_key_out.rb +17 -19
  110. data/lib/svix/models/integration_out.rb +23 -19
  111. data/lib/svix/models/integration_update.rb +17 -19
  112. data/lib/svix/models/kafka_security_protocol_type.rb +7 -4
  113. data/lib/svix/models/list_response_application_out.rb +19 -19
  114. data/lib/svix/models/list_response_application_stats.rb +19 -19
  115. data/lib/svix/models/list_response_background_task_out.rb +19 -19
  116. data/lib/svix/models/list_response_endpoint_message_out.rb +19 -19
  117. data/lib/svix/models/list_response_endpoint_out.rb +19 -19
  118. data/lib/svix/models/list_response_event_type_out.rb +19 -19
  119. data/lib/svix/models/list_response_integration_out.rb +19 -19
  120. data/lib/svix/models/list_response_message_attempt_endpoint_out.rb +19 -19
  121. data/lib/svix/models/list_response_message_attempt_out.rb +19 -19
  122. data/lib/svix/models/list_response_message_endpoint_out.rb +19 -19
  123. data/lib/svix/models/list_response_message_out.rb +19 -19
  124. data/lib/svix/models/list_response_operational_webhook_endpoint_out.rb +259 -0
  125. data/lib/svix/models/list_response_sink_out.rb +19 -19
  126. data/lib/svix/models/list_response_stream_event_type_out.rb +259 -0
  127. data/lib/svix/models/list_response_stream_out.rb +19 -19
  128. data/lib/svix/models/list_response_stream_sink_out.rb +19 -19
  129. data/lib/svix/models/list_response_template_out.rb +19 -19
  130. data/lib/svix/models/message_attempt_endpoint_out.rb +57 -19
  131. data/lib/svix/models/message_attempt_exhausted_event.rb +17 -19
  132. data/lib/svix/models/message_attempt_exhausted_event_data.rb +23 -19
  133. data/lib/svix/models/message_attempt_failed_data.rb +21 -19
  134. data/lib/svix/models/message_attempt_failing_event.rb +17 -19
  135. data/lib/svix/models/message_attempt_failing_event_data.rb +23 -19
  136. data/lib/svix/models/message_attempt_headers_out.rb +19 -19
  137. data/lib/svix/models/message_attempt_out.rb +57 -19
  138. data/lib/svix/models/message_attempt_recovered_event.rb +17 -19
  139. data/lib/svix/models/message_attempt_recovered_event_data.rb +23 -19
  140. data/lib/svix/models/message_attempt_trigger_type.rb +7 -4
  141. data/lib/svix/models/message_broadcast_in.rb +19 -19
  142. data/lib/svix/models/message_broadcast_out.rb +43 -19
  143. data/lib/svix/models/message_endpoint_out.rb +51 -19
  144. data/lib/svix/models/message_events_out.rb +21 -19
  145. data/lib/svix/models/message_in.rb +19 -19
  146. data/lib/svix/models/message_out.rb +23 -19
  147. data/lib/svix/models/message_raw_payload_out.rb +17 -19
  148. data/lib/svix/models/message_status.rb +7 -4
  149. data/lib/svix/models/message_subscriber_auth_token_out.rb +19 -19
  150. data/lib/svix/models/o_auth_payload_in.rb +19 -19
  151. data/lib/svix/models/o_auth_payload_out.rb +15 -19
  152. data/lib/svix/models/oauth2_auth_method_in.rb +7 -4
  153. data/lib/svix/models/oauth2_grant_type_in.rb +7 -4
  154. data/lib/svix/models/oauth_jws_signing_algorithm.rb +7 -4
  155. data/lib/svix/models/one_time_token_in.rb +17 -19
  156. data/lib/svix/models/one_time_token_out.rb +17 -19
  157. data/lib/svix/models/operational_webhook_endpoint_in.rb +408 -0
  158. data/lib/svix/models/operational_webhook_endpoint_out.rb +442 -0
  159. data/lib/svix/models/operational_webhook_endpoint_secret_in.rb +233 -0
  160. data/lib/svix/models/operational_webhook_endpoint_secret_out.rb +243 -0
  161. data/lib/svix/models/operational_webhook_endpoint_update.rb +380 -0
  162. data/lib/svix/models/ordering.rb +7 -4
  163. data/lib/svix/models/recover_in.rb +17 -19
  164. data/lib/svix/models/recover_out.rb +43 -19
  165. data/lib/svix/models/redshift_config.rb +25 -19
  166. data/lib/svix/models/replay_in.rb +17 -19
  167. data/lib/svix/models/replay_out.rb +43 -19
  168. data/lib/svix/models/retry_schedule_in_out.rb +15 -19
  169. data/lib/svix/models/rotated_url_out.rb +17 -19
  170. data/lib/svix/models/s3_config.rb +23 -19
  171. data/lib/svix/models/settings_in.rb +15 -19
  172. data/lib/svix/models/settings_out.rb +15 -19
  173. data/lib/svix/models/sink_http_config.rb +17 -19
  174. data/lib/svix/models/sink_in.rb +4 -4
  175. data/lib/svix/models/sink_in_one_of.rb +21 -19
  176. data/lib/svix/models/sink_in_one_of1.rb +25 -19
  177. data/lib/svix/models/sink_in_one_of2.rb +23 -19
  178. data/lib/svix/models/sink_in_one_of3.rb +19 -19
  179. data/lib/svix/models/sink_otel_v1_config.rb +17 -19
  180. data/lib/svix/models/sink_out.rb +4 -4
  181. data/lib/svix/models/sink_payload_format.rb +7 -4
  182. data/lib/svix/models/sink_status.rb +7 -4
  183. data/lib/svix/models/sink_status_in.rb +7 -4
  184. data/lib/svix/models/sink_transform_in.rb +15 -19
  185. data/lib/svix/models/sink_transformation_out.rb +15 -19
  186. data/lib/svix/models/snowflake_config.rb +21 -19
  187. data/lib/svix/models/statistics_period.rb +7 -4
  188. data/lib/svix/models/status_code_class.rb +7 -4
  189. data/lib/svix/models/stream_event_type_in.rb +262 -0
  190. data/lib/svix/models/stream_event_type_out.rb +294 -0
  191. data/lib/svix/models/stream_event_type_patch.rb +254 -0
  192. data/lib/svix/models/stream_in.rb +24 -22
  193. data/lib/svix/models/stream_out.rb +28 -22
  194. data/lib/svix/models/stream_patch.rb +22 -22
  195. data/lib/svix/models/stream_sink_in.rb +6 -5
  196. data/lib/svix/models/stream_sink_in_one_of.rb +19 -19
  197. data/lib/svix/models/stream_sink_in_one_of1.rb +19 -19
  198. data/lib/svix/models/stream_sink_in_one_of2.rb +19 -19
  199. data/lib/svix/models/stream_sink_in_one_of3.rb +19 -19
  200. data/lib/svix/models/stream_sink_in_one_of4.rb +19 -19
  201. data/lib/svix/models/stream_sink_in_one_of5.rb +19 -19
  202. data/lib/svix/models/stream_sink_in_one_of6.rb +19 -19
  203. data/lib/svix/models/stream_sink_in_one_of7.rb +271 -0
  204. data/lib/svix/models/stream_sink_out.rb +6 -5
  205. data/lib/svix/models/stream_sink_patch.rb +6 -5
  206. data/lib/svix/models/template_in.rb +43 -21
  207. data/lib/svix/models/template_out.rb +57 -19
  208. data/lib/svix/models/template_patch.rb +43 -21
  209. data/lib/svix/models/template_update.rb +41 -19
  210. data/lib/svix/models/transformation_http_method.rb +7 -4
  211. data/lib/svix/models/transformation_simulate_in.rb +21 -19
  212. data/lib/svix/models/transformation_simulate_out.rb +41 -19
  213. data/lib/svix/models/transformation_template_kind.rb +7 -4
  214. data/lib/svix/models/validation_error.rb +21 -19
  215. data/lib/svix/operational_webhook_endpoint_api.rb +37 -0
  216. data/lib/svix/version.rb +1 -1
  217. data/svix.gemspec +12 -2
  218. metadata +45 -22
  219. data/lib/svix/api/sink_api.rb +0 -176
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -77,6 +77,8 @@ module Svix
77
77
 
78
78
  if attributes.key?(:'created_at')
79
79
  self.created_at = attributes[:'created_at']
80
+ else
81
+ self.created_at = nil
80
82
  end
81
83
 
82
84
  if attributes.key?(:'event_types')
@@ -97,12 +99,15 @@ module Svix
97
99
 
98
100
  if attributes.key?(:'version')
99
101
  self.version = attributes[:'version']
102
+ else
103
+ self.version = nil
100
104
  end
101
105
  end
102
106
 
103
107
  # Show invalid properties with the reasons. Usually used together with valid?
104
108
  # @return Array for valid properties with the reasons
105
109
  def list_invalid_properties
110
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
106
111
  invalid_properties = Array.new
107
112
  if @created_at.nil?
108
113
  invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
@@ -118,6 +123,7 @@ module Svix
118
123
  # Check to see if the all the properties in the model are valid
119
124
  # @return true if the model is valid
120
125
  def valid?
126
+ warn '[DEPRECATED] the `valid?` method is obsolete'
121
127
  return false if @created_at.nil?
122
128
  return false if @version.nil?
123
129
  true
@@ -151,36 +157,30 @@ module Svix
151
157
  # @param [Hash] attributes Model attributes in the form of hash
152
158
  # @return [Object] Returns the model itself
153
159
  def self.build_from_hash(attributes)
154
- new.build_from_hash(attributes)
155
- end
156
-
157
- # Builds the object from hash
158
- # @param [Hash] attributes Model attributes in the form of hash
159
- # @return [Object] Returns the model itself
160
- def build_from_hash(attributes)
161
160
  return nil unless attributes.is_a?(Hash)
162
- self.class.openapi_types.each_pair do |key, type|
163
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
164
- self.send("#{key}=", nil)
161
+ attributes = attributes.transform_keys(&:to_sym)
162
+ transformed_hash = {}
163
+ openapi_types.each_pair do |key, type|
164
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
165
+ transformed_hash["#{key}"] = nil
165
166
  elsif type =~ /\AArray<(.*)>/i
166
167
  # check to ensure the input is an array given that the attribute
167
168
  # is documented as an array but the input is not
168
- if attributes[self.class.attribute_map[key]].is_a?(Array)
169
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
169
+ if attributes[attribute_map[key]].is_a?(Array)
170
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
170
171
  end
171
- elsif !attributes[self.class.attribute_map[key]].nil?
172
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
172
+ elsif !attributes[attribute_map[key]].nil?
173
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
173
174
  end
174
175
  end
175
-
176
- self
176
+ new(transformed_hash)
177
177
  end
178
178
 
179
179
  # Deserializes the data based on type
180
180
  # @param string type Data type
181
181
  # @param string value Value to be deserialized
182
182
  # @return [Object] Deserialized data
183
- def _deserialize(type, value)
183
+ def self._deserialize(type, value)
184
184
  case type.to_sym
185
185
  when :Time
186
186
  Time.parse(value)
@@ -215,7 +215,7 @@ module Svix
215
215
  else # model
216
216
  # models (e.g. Pet) or oneOf
217
217
  klass = Svix.const_get(type)
218
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
218
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
219
219
  end
220
220
  end
221
221
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -75,12 +75,16 @@ module Svix
75
75
 
76
76
  if attributes.key?(:'created_at')
77
77
  self.created_at = attributes[:'created_at']
78
+ else
79
+ self.created_at = nil
78
80
  end
79
81
 
80
82
  if attributes.key?(:'event_types')
81
83
  if (value = attributes[:'event_types']).is_a?(Array)
82
84
  self.event_types = value
83
85
  end
86
+ else
87
+ self.event_types = nil
84
88
  end
85
89
 
86
90
  if attributes.key?(:'settings')
@@ -91,6 +95,8 @@ module Svix
91
95
  if (value = attributes[:'transformation_templates']).is_a?(Array)
92
96
  self.transformation_templates = value
93
97
  end
98
+ else
99
+ self.transformation_templates = nil
94
100
  end
95
101
 
96
102
  if attributes.key?(:'version')
@@ -103,6 +109,7 @@ module Svix
103
109
  # Show invalid properties with the reasons. Usually used together with valid?
104
110
  # @return Array for valid properties with the reasons
105
111
  def list_invalid_properties
112
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
106
113
  invalid_properties = Array.new
107
114
  if @created_at.nil?
108
115
  invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
@@ -122,6 +129,7 @@ module Svix
122
129
  # Check to see if the all the properties in the model are valid
123
130
  # @return true if the model is valid
124
131
  def valid?
132
+ warn '[DEPRECATED] the `valid?` method is obsolete'
125
133
  return false if @created_at.nil?
126
134
  return false if @event_types.nil?
127
135
  return false if @transformation_templates.nil?
@@ -156,36 +164,30 @@ module Svix
156
164
  # @param [Hash] attributes Model attributes in the form of hash
157
165
  # @return [Object] Returns the model itself
158
166
  def self.build_from_hash(attributes)
159
- new.build_from_hash(attributes)
160
- end
161
-
162
- # Builds the object from hash
163
- # @param [Hash] attributes Model attributes in the form of hash
164
- # @return [Object] Returns the model itself
165
- def build_from_hash(attributes)
166
167
  return nil unless attributes.is_a?(Hash)
167
- self.class.openapi_types.each_pair do |key, type|
168
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
169
- self.send("#{key}=", nil)
168
+ attributes = attributes.transform_keys(&:to_sym)
169
+ transformed_hash = {}
170
+ openapi_types.each_pair do |key, type|
171
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
172
+ transformed_hash["#{key}"] = nil
170
173
  elsif type =~ /\AArray<(.*)>/i
171
174
  # check to ensure the input is an array given that the attribute
172
175
  # is documented as an array but the input is not
173
- if attributes[self.class.attribute_map[key]].is_a?(Array)
174
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
176
+ if attributes[attribute_map[key]].is_a?(Array)
177
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
175
178
  end
176
- elsif !attributes[self.class.attribute_map[key]].nil?
177
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
179
+ elsif !attributes[attribute_map[key]].nil?
180
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
178
181
  end
179
182
  end
180
-
181
- self
183
+ new(transformed_hash)
182
184
  end
183
185
 
184
186
  # Deserializes the data based on type
185
187
  # @param string type Data type
186
188
  # @param string value Value to be deserialized
187
189
  # @return [Object] Deserialized data
188
- def _deserialize(type, value)
190
+ def self._deserialize(type, value)
189
191
  case type.to_sym
190
192
  when :Time
191
193
  Time.parse(value)
@@ -220,7 +222,7 @@ module Svix
220
222
  else # model
221
223
  # models (e.g. Pet) or oneOf
222
224
  klass = Svix.const_get(type)
223
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
225
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
224
226
  end
225
227
  end
226
228
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -194,6 +194,7 @@ module Svix
194
194
  # Show invalid properties with the reasons. Usually used together with valid?
195
195
  # @return Array for valid properties with the reasons
196
196
  def list_invalid_properties
197
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
197
198
  invalid_properties = Array.new
198
199
  pattern = Regexp.new(/^[a-zA-Z0-9\-_ ]+$/)
199
200
  if !@custom_font_family.nil? && @custom_font_family !~ pattern
@@ -222,6 +223,7 @@ module Svix
222
223
  # Check to see if the all the properties in the model are valid
223
224
  # @return true if the model is valid
224
225
  def valid?
226
+ warn '[DEPRECATED] the `valid?` method is obsolete'
225
227
  return false if !@custom_font_family.nil? && @custom_font_family !~ Regexp.new(/^[a-zA-Z0-9\-_ ]+$/)
226
228
  return false if !@custom_font_family_url.nil? && @custom_font_family_url.to_s.length > 65536
227
229
  return false if !@custom_font_family_url.nil? && @custom_font_family_url.to_s.length < 1
@@ -307,36 +309,30 @@ module Svix
307
309
  # @param [Hash] attributes Model attributes in the form of hash
308
310
  # @return [Object] Returns the model itself
309
311
  def self.build_from_hash(attributes)
310
- new.build_from_hash(attributes)
311
- end
312
-
313
- # Builds the object from hash
314
- # @param [Hash] attributes Model attributes in the form of hash
315
- # @return [Object] Returns the model itself
316
- def build_from_hash(attributes)
317
312
  return nil unless attributes.is_a?(Hash)
318
- self.class.openapi_types.each_pair do |key, type|
319
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
320
- self.send("#{key}=", nil)
313
+ attributes = attributes.transform_keys(&:to_sym)
314
+ transformed_hash = {}
315
+ openapi_types.each_pair do |key, type|
316
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
317
+ transformed_hash["#{key}"] = nil
321
318
  elsif type =~ /\AArray<(.*)>/i
322
319
  # check to ensure the input is an array given that the attribute
323
320
  # is documented as an array but the input is not
324
- if attributes[self.class.attribute_map[key]].is_a?(Array)
325
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
321
+ if attributes[attribute_map[key]].is_a?(Array)
322
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
326
323
  end
327
- elsif !attributes[self.class.attribute_map[key]].nil?
328
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
324
+ elsif !attributes[attribute_map[key]].nil?
325
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
329
326
  end
330
327
  end
331
-
332
- self
328
+ new(transformed_hash)
333
329
  end
334
330
 
335
331
  # Deserializes the data based on type
336
332
  # @param string type Data type
337
333
  # @param string value Value to be deserialized
338
334
  # @return [Object] Deserialized data
339
- def _deserialize(type, value)
335
+ def self._deserialize(type, value)
340
336
  case type.to_sym
341
337
  when :Time
342
338
  Time.parse(value)
@@ -371,7 +367,7 @@ module Svix
371
367
  else # model
372
368
  # models (e.g. Pet) or oneOf
373
369
  klass = Svix.const_get(type)
374
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
370
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
375
371
  end
376
372
  end
377
373
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -18,10 +18,14 @@ module Svix
18
18
  # The event type's name
19
19
  attr_accessor :event_type
20
20
 
21
+ # If the event type schema contains an array of examples, chooses which one to send. Defaults to the first example. Ignored if the schema doesn't contain an array of examples.
22
+ attr_accessor :example_index
23
+
21
24
  # Attribute mapping from ruby-style variable name to JSON key.
22
25
  def self.attribute_map
23
26
  {
24
- :'event_type' => :'eventType'
27
+ :'event_type' => :'eventType',
28
+ :'example_index' => :'exampleIndex'
25
29
  }
26
30
  end
27
31
 
@@ -33,7 +37,8 @@ module Svix
33
37
  # Attribute type mapping.
34
38
  def self.openapi_types
35
39
  {
36
- :'event_type' => :'String'
40
+ :'event_type' => :'String',
41
+ :'example_index' => :'Integer'
37
42
  }
38
43
  end
39
44
 
@@ -60,12 +65,21 @@ module Svix
60
65
 
61
66
  if attributes.key?(:'event_type')
62
67
  self.event_type = attributes[:'event_type']
68
+ else
69
+ self.event_type = nil
70
+ end
71
+
72
+ if attributes.key?(:'example_index')
73
+ self.example_index = attributes[:'example_index']
74
+ else
75
+ self.example_index = 0
63
76
  end
64
77
  end
65
78
 
66
79
  # Show invalid properties with the reasons. Usually used together with valid?
67
80
  # @return Array for valid properties with the reasons
68
81
  def list_invalid_properties
82
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
69
83
  invalid_properties = Array.new
70
84
  if @event_type.nil?
71
85
  invalid_properties.push('invalid value for "event_type", event_type cannot be nil.')
@@ -80,15 +94,21 @@ module Svix
80
94
  invalid_properties.push("invalid value for \"event_type\", must conform to the pattern #{pattern}.")
81
95
  end
82
96
 
97
+ if !@example_index.nil? && @example_index < 0
98
+ invalid_properties.push('invalid value for "example_index", must be greater than or equal to 0.')
99
+ end
100
+
83
101
  invalid_properties
84
102
  end
85
103
 
86
104
  # Check to see if the all the properties in the model are valid
87
105
  # @return true if the model is valid
88
106
  def valid?
107
+ warn '[DEPRECATED] the `valid?` method is obsolete'
89
108
  return false if @event_type.nil?
90
109
  return false if @event_type.to_s.length > 256
91
110
  return false if @event_type !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
111
+ return false if !@example_index.nil? && @example_index < 0
92
112
  true
93
113
  end
94
114
 
@@ -111,12 +131,27 @@ module Svix
111
131
  @event_type = event_type
112
132
  end
113
133
 
134
+ # Custom attribute writer method with validation
135
+ # @param [Object] example_index Value to be assigned
136
+ def example_index=(example_index)
137
+ if example_index.nil?
138
+ fail ArgumentError, 'example_index cannot be nil'
139
+ end
140
+
141
+ if example_index < 0
142
+ fail ArgumentError, 'invalid value for "example_index", must be greater than or equal to 0.'
143
+ end
144
+
145
+ @example_index = example_index
146
+ end
147
+
114
148
  # Checks equality by comparing each attribute.
115
149
  # @param [Object] Object to be compared
116
150
  def ==(o)
117
151
  return true if self.equal?(o)
118
152
  self.class == o.class &&
119
- event_type == o.event_type
153
+ event_type == o.event_type &&
154
+ example_index == o.example_index
120
155
  end
121
156
 
122
157
  # @see the `==` method
@@ -128,43 +163,37 @@ module Svix
128
163
  # Calculates hash code according to all attributes.
129
164
  # @return [Integer] Hash code
130
165
  def hash
131
- [event_type].hash
166
+ [event_type, example_index].hash
132
167
  end
133
168
 
134
169
  # Builds the object from hash
135
170
  # @param [Hash] attributes Model attributes in the form of hash
136
171
  # @return [Object] Returns the model itself
137
172
  def self.build_from_hash(attributes)
138
- new.build_from_hash(attributes)
139
- end
140
-
141
- # Builds the object from hash
142
- # @param [Hash] attributes Model attributes in the form of hash
143
- # @return [Object] Returns the model itself
144
- def build_from_hash(attributes)
145
173
  return nil unless attributes.is_a?(Hash)
146
- self.class.openapi_types.each_pair do |key, type|
147
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
148
- self.send("#{key}=", nil)
174
+ attributes = attributes.transform_keys(&:to_sym)
175
+ transformed_hash = {}
176
+ openapi_types.each_pair do |key, type|
177
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
178
+ transformed_hash["#{key}"] = nil
149
179
  elsif type =~ /\AArray<(.*)>/i
150
180
  # check to ensure the input is an array given that the attribute
151
181
  # is documented as an array but the input is not
152
- if attributes[self.class.attribute_map[key]].is_a?(Array)
153
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
182
+ if attributes[attribute_map[key]].is_a?(Array)
183
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
154
184
  end
155
- elsif !attributes[self.class.attribute_map[key]].nil?
156
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
185
+ elsif !attributes[attribute_map[key]].nil?
186
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
157
187
  end
158
188
  end
159
-
160
- self
189
+ new(transformed_hash)
161
190
  end
162
191
 
163
192
  # Deserializes the data based on type
164
193
  # @param string type Data type
165
194
  # @param string value Value to be deserialized
166
195
  # @return [Object] Deserialized data
167
- def _deserialize(type, value)
196
+ def self._deserialize(type, value)
168
197
  case type.to_sym
169
198
  when :Time
170
199
  Time.parse(value)
@@ -199,7 +228,7 @@ module Svix
199
228
  else # model
200
229
  # models (e.g. Pet) or oneOf
201
230
  klass = Svix.const_get(type)
202
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
231
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
203
232
  end
204
233
  end
205
234
 
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.2.0
9
+ Generator version: 7.9.0
10
10
 
11
11
  =end
12
12
 
@@ -15,11 +15,15 @@ require 'time'
15
15
 
16
16
  module Svix
17
17
  class EventIn
18
+ # The event type's name
19
+ attr_accessor :event_type
20
+
18
21
  attr_accessor :payload
19
22
 
20
23
  # Attribute mapping from ruby-style variable name to JSON key.
21
24
  def self.attribute_map
22
25
  {
26
+ :'event_type' => :'eventType',
23
27
  :'payload' => :'payload'
24
28
  }
25
29
  end
@@ -32,6 +36,7 @@ module Svix
32
36
  # Attribute type mapping.
33
37
  def self.openapi_types
34
38
  {
39
+ :'event_type' => :'String',
35
40
  :'payload' => :'String'
36
41
  }
37
42
  end
@@ -39,6 +44,7 @@ module Svix
39
44
  # List of attributes with nullable: true
40
45
  def self.openapi_nullable
41
46
  Set.new([
47
+ :'event_type',
42
48
  ])
43
49
  end
44
50
 
@@ -57,15 +63,31 @@ module Svix
57
63
  h[k.to_sym] = v
58
64
  }
59
65
 
66
+ if attributes.key?(:'event_type')
67
+ self.event_type = attributes[:'event_type']
68
+ end
69
+
60
70
  if attributes.key?(:'payload')
61
71
  self.payload = attributes[:'payload']
72
+ else
73
+ self.payload = nil
62
74
  end
63
75
  end
64
76
 
65
77
  # Show invalid properties with the reasons. Usually used together with valid?
66
78
  # @return Array for valid properties with the reasons
67
79
  def list_invalid_properties
80
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
68
81
  invalid_properties = Array.new
82
+ if !@event_type.nil? && @event_type.to_s.length > 256
83
+ invalid_properties.push('invalid value for "event_type", the character length must be smaller than or equal to 256.')
84
+ end
85
+
86
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
87
+ if !@event_type.nil? && @event_type !~ pattern
88
+ invalid_properties.push("invalid value for \"event_type\", must conform to the pattern #{pattern}.")
89
+ end
90
+
69
91
  if @payload.nil?
70
92
  invalid_properties.push('invalid value for "payload", payload cannot be nil.')
71
93
  end
@@ -76,15 +98,34 @@ module Svix
76
98
  # Check to see if the all the properties in the model are valid
77
99
  # @return true if the model is valid
78
100
  def valid?
101
+ warn '[DEPRECATED] the `valid?` method is obsolete'
102
+ return false if !@event_type.nil? && @event_type.to_s.length > 256
103
+ return false if !@event_type.nil? && @event_type !~ Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
79
104
  return false if @payload.nil?
80
105
  true
81
106
  end
82
107
 
108
+ # Custom attribute writer method with validation
109
+ # @param [Object] event_type Value to be assigned
110
+ def event_type=(event_type)
111
+ if !event_type.nil? && event_type.to_s.length > 256
112
+ fail ArgumentError, 'invalid value for "event_type", the character length must be smaller than or equal to 256.'
113
+ end
114
+
115
+ pattern = Regexp.new(/^[a-zA-Z0-9\-_.]+$/)
116
+ if !event_type.nil? && event_type !~ pattern
117
+ fail ArgumentError, "invalid value for \"event_type\", must conform to the pattern #{pattern}."
118
+ end
119
+
120
+ @event_type = event_type
121
+ end
122
+
83
123
  # Checks equality by comparing each attribute.
84
124
  # @param [Object] Object to be compared
85
125
  def ==(o)
86
126
  return true if self.equal?(o)
87
127
  self.class == o.class &&
128
+ event_type == o.event_type &&
88
129
  payload == o.payload
89
130
  end
90
131
 
@@ -97,43 +138,37 @@ module Svix
97
138
  # Calculates hash code according to all attributes.
98
139
  # @return [Integer] Hash code
99
140
  def hash
100
- [payload].hash
141
+ [event_type, payload].hash
101
142
  end
102
143
 
103
144
  # Builds the object from hash
104
145
  # @param [Hash] attributes Model attributes in the form of hash
105
146
  # @return [Object] Returns the model itself
106
147
  def self.build_from_hash(attributes)
107
- new.build_from_hash(attributes)
108
- end
109
-
110
- # Builds the object from hash
111
- # @param [Hash] attributes Model attributes in the form of hash
112
- # @return [Object] Returns the model itself
113
- def build_from_hash(attributes)
114
148
  return nil unless attributes.is_a?(Hash)
115
- self.class.openapi_types.each_pair do |key, type|
116
- if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
117
- self.send("#{key}=", nil)
149
+ attributes = attributes.transform_keys(&:to_sym)
150
+ transformed_hash = {}
151
+ openapi_types.each_pair do |key, type|
152
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
153
+ transformed_hash["#{key}"] = nil
118
154
  elsif type =~ /\AArray<(.*)>/i
119
155
  # check to ensure the input is an array given that the attribute
120
156
  # is documented as an array but the input is not
121
- if attributes[self.class.attribute_map[key]].is_a?(Array)
122
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
157
+ if attributes[attribute_map[key]].is_a?(Array)
158
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
123
159
  end
124
- elsif !attributes[self.class.attribute_map[key]].nil?
125
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
160
+ elsif !attributes[attribute_map[key]].nil?
161
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
126
162
  end
127
163
  end
128
-
129
- self
164
+ new(transformed_hash)
130
165
  end
131
166
 
132
167
  # Deserializes the data based on type
133
168
  # @param string type Data type
134
169
  # @param string value Value to be deserialized
135
170
  # @return [Object] Deserialized data
136
- def _deserialize(type, value)
171
+ def self._deserialize(type, value)
137
172
  case type.to_sym
138
173
  when :Time
139
174
  Time.parse(value)
@@ -168,7 +203,7 @@ module Svix
168
203
  else # model
169
204
  # models (e.g. Pet) or oneOf
170
205
  klass = Svix.const_get(type)
171
- klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
206
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
207
  end
173
208
  end
174
209