zitadel-client 1.6.0 → 1.7.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 34ccc80acdc510fb007c390fb7a0d19abd7b4a01e622f94d13201dab1d07ff65
4
- data.tar.gz: 62c121331140410cc7a642d1b1b63b37fc4b979e0644c4924cc6d68e2212bbbd
3
+ metadata.gz: c11b115f813e959f53d2a9bba7709eb2e00c4441aaefccef8f1c19c2cda43ff4
4
+ data.tar.gz: cba2d1fd0d379d3368e6ac0a79cb9f080f1d77cc65f73d3505dd95e5034d8481
5
5
  SHA512:
6
- metadata.gz: 5fb46aa89dc30a9e97562b6940ec3b649274f243eebeb176a1a1b3c36bca2a35f703e7cbd74bdf92ab6516d6c93d8b60535fba896fbeab15f68e31e2714d4d4c
7
- data.tar.gz: f64dbe976969937a96cd196d49ebfca4ff75c7b567f42060d4a0941e87c24270876365bdd9ece53a8c2b49e3f071e03b8e69dd96f3b656f349d3cca1ad42b73d
6
+ metadata.gz: 8d2fb00120ca50c151a2ba47b91c1274cfdff8fac82dbcb86471195c9d9075f9615702b0c7bdc2f4415c0a150b7e699129dde940165abb06ca3f4d51e551ff4e
7
+ data.tar.gz: a5af1eb7f146cb3a5bb98d765fb0d5e112e8ef050434a64d8e70c0d707c66cdb9efe85270e756ee682ef0d9a6c5d5614158e5cef003d563a1fbde0b9db1fb982
@@ -23,7 +23,7 @@ module Zitadel::Client::Models
23
23
  # The timestamp of the last change to the execution.
24
24
  attr_accessor :change_date
25
25
 
26
- # Ordered list of targets/includes called during the execution.
26
+ # Ordered list of targets called during the execution.
27
27
  attr_accessor :targets
28
28
 
29
29
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -52,7 +52,7 @@ module Zitadel::Client::Models
52
52
  :'condition' => :'ActionServiceBetaCondition',
53
53
  :'creation_date' => :'Time',
54
54
  :'change_date' => :'Time',
55
- :'targets' => :'Array<ActionServiceBetaExecutionTargetType>'
55
+ :'targets' => :'Array<String>'
56
56
  }
57
57
  end
58
58
 
@@ -17,7 +17,7 @@ module Zitadel::Client::Models
17
17
  class ActionServiceSetExecutionRequest
18
18
  attr_accessor :condition
19
19
 
20
- # Ordered list of targets/includes called during the execution.
20
+ # Ordered list of targets called during the execution.
21
21
  attr_accessor :targets
22
22
 
23
23
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -42,7 +42,7 @@ module Zitadel::Client::Models
42
42
  def self.openapi_types
43
43
  {
44
44
  :'condition' => :'ActionServiceBetaCondition',
45
- :'targets' => :'Array<ActionServiceBetaExecutionTargetType>'
45
+ :'targets' => :'Array<String>'
46
46
  }
47
47
  end
48
48
 
@@ -27,8 +27,6 @@ module Zitadel::Client::Models
27
27
 
28
28
  attr_accessor :oidc_token_exchange
29
29
 
30
- attr_accessor :actions
31
-
32
30
  attr_accessor :improved_performance
33
31
 
34
32
  attr_accessor :web_key
@@ -56,7 +54,6 @@ module Zitadel::Client::Models
56
54
  :'oidc_legacy_introspection' => :'oidcLegacyIntrospection',
57
55
  :'user_schema' => :'userSchema',
58
56
  :'oidc_token_exchange' => :'oidcTokenExchange',
59
- :'actions' => :'actions',
60
57
  :'improved_performance' => :'improvedPerformance',
61
58
  :'web_key' => :'webKey',
62
59
  :'debug_oidc_parent_error' => :'debugOidcParentError',
@@ -88,7 +85,6 @@ module Zitadel::Client::Models
88
85
  :'oidc_legacy_introspection' => :'FeatureServiceFeatureFlag',
89
86
  :'user_schema' => :'FeatureServiceFeatureFlag',
90
87
  :'oidc_token_exchange' => :'FeatureServiceFeatureFlag',
91
- :'actions' => :'FeatureServiceFeatureFlag',
92
88
  :'improved_performance' => :'FeatureServiceImprovedPerformanceFeatureFlag',
93
89
  :'web_key' => :'FeatureServiceFeatureFlag',
94
90
  :'debug_oidc_parent_error' => :'FeatureServiceFeatureFlag',
@@ -149,10 +145,6 @@ module Zitadel::Client::Models
149
145
  self.oidc_token_exchange = attributes[:'oidc_token_exchange']
150
146
  end
151
147
 
152
- if attributes.key?(:'actions')
153
- self.actions = attributes[:'actions']
154
- end
155
-
156
148
  if attributes.key?(:'improved_performance')
157
149
  self.improved_performance = attributes[:'improved_performance']
158
150
  end
@@ -216,7 +208,6 @@ module Zitadel::Client::Models
216
208
  oidc_legacy_introspection == o.oidc_legacy_introspection &&
217
209
  user_schema == o.user_schema &&
218
210
  oidc_token_exchange == o.oidc_token_exchange &&
219
- actions == o.actions &&
220
211
  improved_performance == o.improved_performance &&
221
212
  web_key == o.web_key &&
222
213
  debug_oidc_parent_error == o.debug_oidc_parent_error &&
@@ -237,7 +228,7 @@ module Zitadel::Client::Models
237
228
  # Calculates hash code according to all attributes.
238
229
  # @return [Integer] Hash code
239
230
  def hash
240
- [details, login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, actions, improved_performance, web_key, debug_oidc_parent_error, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2, console_use_v2_user_api].hash
231
+ [details, login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, improved_performance, web_key, debug_oidc_parent_error, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2, console_use_v2_user_api].hash
241
232
  end
242
233
 
243
234
  # Builds the object from hash
@@ -27,8 +27,6 @@ module Zitadel::Client::Models
27
27
 
28
28
  attr_accessor :oidc_token_exchange
29
29
 
30
- attr_accessor :actions
31
-
32
30
  attr_accessor :improved_performance
33
31
 
34
32
  attr_accessor :oidc_single_v1_session_termination
@@ -50,7 +48,6 @@ module Zitadel::Client::Models
50
48
  :'oidc_legacy_introspection' => :'oidcLegacyIntrospection',
51
49
  :'user_schema' => :'userSchema',
52
50
  :'oidc_token_exchange' => :'oidcTokenExchange',
53
- :'actions' => :'actions',
54
51
  :'improved_performance' => :'improvedPerformance',
55
52
  :'oidc_single_v1_session_termination' => :'oidcSingleV1SessionTermination',
56
53
  :'disable_user_token_event' => :'disableUserTokenEvent',
@@ -79,7 +76,6 @@ module Zitadel::Client::Models
79
76
  :'oidc_legacy_introspection' => :'FeatureServiceFeatureFlag',
80
77
  :'user_schema' => :'FeatureServiceFeatureFlag',
81
78
  :'oidc_token_exchange' => :'FeatureServiceFeatureFlag',
82
- :'actions' => :'FeatureServiceFeatureFlag',
83
79
  :'improved_performance' => :'FeatureServiceImprovedPerformanceFeatureFlag',
84
80
  :'oidc_single_v1_session_termination' => :'FeatureServiceFeatureFlag',
85
81
  :'disable_user_token_event' => :'FeatureServiceFeatureFlag',
@@ -137,10 +133,6 @@ module Zitadel::Client::Models
137
133
  self.oidc_token_exchange = attributes[:'oidc_token_exchange']
138
134
  end
139
135
 
140
- if attributes.key?(:'actions')
141
- self.actions = attributes[:'actions']
142
- end
143
-
144
136
  if attributes.key?(:'improved_performance')
145
137
  self.improved_performance = attributes[:'improved_performance']
146
138
  end
@@ -192,7 +184,6 @@ module Zitadel::Client::Models
192
184
  oidc_legacy_introspection == o.oidc_legacy_introspection &&
193
185
  user_schema == o.user_schema &&
194
186
  oidc_token_exchange == o.oidc_token_exchange &&
195
- actions == o.actions &&
196
187
  improved_performance == o.improved_performance &&
197
188
  oidc_single_v1_session_termination == o.oidc_single_v1_session_termination &&
198
189
  disable_user_token_event == o.disable_user_token_event &&
@@ -210,7 +201,7 @@ module Zitadel::Client::Models
210
201
  # Calculates hash code according to all attributes.
211
202
  # @return [Integer] Hash code
212
203
  def hash
213
- [details, login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, actions, improved_performance, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2].hash
204
+ [details, login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, improved_performance, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2].hash
214
205
  end
215
206
 
216
207
  # Builds the object from hash
@@ -30,9 +30,6 @@ module Zitadel::Client::Models
30
30
  # Enable the experimental `urn:ietf:params:oauth:grant-type:token-exchange` grant type for the OIDC token endpoint. Token exchange can be used to request tokens with a lesser scope or impersonate other users. See the security policy to allow impersonation on an instance.
31
31
  attr_accessor :oidc_token_exchange
32
32
 
33
- # Actions allow to manage data executions and targets. If the flag is enabled, you'll be able to use the new API and its features. Note that it is still in an early stage.
34
- attr_accessor :actions
35
-
36
33
  # Improves performance of specified execution paths.
37
34
  attr_accessor :improved_performance
38
35
 
@@ -67,7 +64,6 @@ module Zitadel::Client::Models
67
64
  :'oidc_legacy_introspection' => :'oidcLegacyIntrospection',
68
65
  :'user_schema' => :'userSchema',
69
66
  :'oidc_token_exchange' => :'oidcTokenExchange',
70
- :'actions' => :'actions',
71
67
  :'improved_performance' => :'improvedPerformance',
72
68
  :'web_key' => :'webKey',
73
69
  :'debug_oidc_parent_error' => :'debugOidcParentError',
@@ -98,7 +94,6 @@ module Zitadel::Client::Models
98
94
  :'oidc_legacy_introspection' => :'Boolean',
99
95
  :'user_schema' => :'Boolean',
100
96
  :'oidc_token_exchange' => :'Boolean',
101
- :'actions' => :'Boolean',
102
97
  :'improved_performance' => :'Array<FeatureServiceImprovedPerformance>',
103
98
  :'web_key' => :'Boolean',
104
99
  :'debug_oidc_parent_error' => :'Boolean',
@@ -155,10 +150,6 @@ module Zitadel::Client::Models
155
150
  self.oidc_token_exchange = attributes[:'oidc_token_exchange']
156
151
  end
157
152
 
158
- if attributes.key?(:'actions')
159
- self.actions = attributes[:'actions']
160
- end
161
-
162
153
  if attributes.key?(:'improved_performance')
163
154
  if (value = attributes[:'improved_performance']).is_a?(Array)
164
155
  self.improved_performance = value
@@ -223,7 +214,6 @@ module Zitadel::Client::Models
223
214
  oidc_legacy_introspection == o.oidc_legacy_introspection &&
224
215
  user_schema == o.user_schema &&
225
216
  oidc_token_exchange == o.oidc_token_exchange &&
226
- actions == o.actions &&
227
217
  improved_performance == o.improved_performance &&
228
218
  web_key == o.web_key &&
229
219
  debug_oidc_parent_error == o.debug_oidc_parent_error &&
@@ -244,7 +234,7 @@ module Zitadel::Client::Models
244
234
  # Calculates hash code according to all attributes.
245
235
  # @return [Integer] Hash code
246
236
  def hash
247
- [login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, actions, improved_performance, web_key, debug_oidc_parent_error, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2, console_use_v2_user_api].hash
237
+ [login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, improved_performance, web_key, debug_oidc_parent_error, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2, console_use_v2_user_api].hash
248
238
  end
249
239
 
250
240
  # Builds the object from hash
@@ -30,9 +30,6 @@ module Zitadel::Client::Models
30
30
  # Enable the experimental `urn:ietf:params:oauth:grant-type:token-exchange` grant type for the OIDC token endpoint. Token exchange can be used to request tokens with a lesser scope or impersonate other users. See the security policy to allow impersonation on an instance.
31
31
  attr_accessor :oidc_token_exchange
32
32
 
33
- # Actions allow to manage data executions and targets. If the flag is enabled, you'll be able to use the new API and its features. Note that it is still in an early stage.
34
- attr_accessor :actions
35
-
36
33
  # Improves performance of specified execution paths.
37
34
  attr_accessor :improved_performance
38
35
 
@@ -58,7 +55,6 @@ module Zitadel::Client::Models
58
55
  :'oidc_legacy_introspection' => :'oidcLegacyIntrospection',
59
56
  :'user_schema' => :'userSchema',
60
57
  :'oidc_token_exchange' => :'oidcTokenExchange',
61
- :'actions' => :'actions',
62
58
  :'improved_performance' => :'improvedPerformance',
63
59
  :'oidc_single_v1_session_termination' => :'oidcSingleV1SessionTermination',
64
60
  :'disable_user_token_event' => :'disableUserTokenEvent',
@@ -86,7 +82,6 @@ module Zitadel::Client::Models
86
82
  :'oidc_legacy_introspection' => :'Boolean',
87
83
  :'user_schema' => :'Boolean',
88
84
  :'oidc_token_exchange' => :'Boolean',
89
- :'actions' => :'Boolean',
90
85
  :'improved_performance' => :'Array<FeatureServiceImprovedPerformance>',
91
86
  :'oidc_single_v1_session_termination' => :'Boolean',
92
87
  :'disable_user_token_event' => :'Boolean',
@@ -140,10 +135,6 @@ module Zitadel::Client::Models
140
135
  self.oidc_token_exchange = attributes[:'oidc_token_exchange']
141
136
  end
142
137
 
143
- if attributes.key?(:'actions')
144
- self.actions = attributes[:'actions']
145
- end
146
-
147
138
  if attributes.key?(:'improved_performance')
148
139
  if (value = attributes[:'improved_performance']).is_a?(Array)
149
140
  self.improved_performance = value
@@ -196,7 +187,6 @@ module Zitadel::Client::Models
196
187
  oidc_legacy_introspection == o.oidc_legacy_introspection &&
197
188
  user_schema == o.user_schema &&
198
189
  oidc_token_exchange == o.oidc_token_exchange &&
199
- actions == o.actions &&
200
190
  improved_performance == o.improved_performance &&
201
191
  oidc_single_v1_session_termination == o.oidc_single_v1_session_termination &&
202
192
  disable_user_token_event == o.disable_user_token_event &&
@@ -214,7 +204,7 @@ module Zitadel::Client::Models
214
204
  # Calculates hash code according to all attributes.
215
205
  # @return [Integer] Hash code
216
206
  def hash
217
- [login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, actions, improved_performance, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2].hash
207
+ [login_default_org, oidc_trigger_introspection_projections, oidc_legacy_introspection, user_schema, oidc_token_exchange, improved_performance, oidc_single_v1_session_termination, disable_user_token_event, enable_back_channel_logout, login_v2, permission_check_v2].hash
218
208
  end
219
209
 
220
210
  # Builds the object from hash
@@ -28,6 +28,9 @@ module Zitadel::Client::Models
28
28
  # Optional name of the attribute, which will be used to map the user in case the nameid-format returned is `urn:oasis:names:tc:SAML:2.0:nameid-format:transient`.
29
29
  attr_accessor :transient_mapping_attribute_name
30
30
 
31
+ # Boolean weather federated logout is enabled. If enabled, ZITADEL will send a logout request to the identity provider, if the user terminates the session in ZITADEL. Be sure to provide a SLO endpoint as part of the metadata.
32
+ attr_accessor :federated_logout_enabled
33
+
31
34
  class EnumAttributeValidator
32
35
  attr_reader :datatype
33
36
  attr_reader :allowable_values
@@ -57,7 +60,8 @@ module Zitadel::Client::Models
57
60
  :'binding' => :'binding',
58
61
  :'with_signed_request' => :'withSignedRequest',
59
62
  :'name_id_format' => :'nameIdFormat',
60
- :'transient_mapping_attribute_name' => :'transientMappingAttributeName'
63
+ :'transient_mapping_attribute_name' => :'transientMappingAttributeName',
64
+ :'federated_logout_enabled' => :'federatedLogoutEnabled'
61
65
  }
62
66
  end
63
67
 
@@ -78,7 +82,8 @@ module Zitadel::Client::Models
78
82
  :'binding' => :'IdentityProviderServiceSAMLBinding',
79
83
  :'with_signed_request' => :'Boolean',
80
84
  :'name_id_format' => :'IdentityProviderServiceSAMLNameIDFormat',
81
- :'transient_mapping_attribute_name' => :'String'
85
+ :'transient_mapping_attribute_name' => :'String',
86
+ :'federated_logout_enabled' => :'Boolean'
82
87
  }
83
88
  end
84
89
 
@@ -129,6 +134,10 @@ module Zitadel::Client::Models
129
134
  if attributes.key?(:'transient_mapping_attribute_name')
130
135
  self.transient_mapping_attribute_name = attributes[:'transient_mapping_attribute_name']
131
136
  end
137
+
138
+ if attributes.key?(:'federated_logout_enabled')
139
+ self.federated_logout_enabled = attributes[:'federated_logout_enabled']
140
+ end
132
141
  end
133
142
 
134
143
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -155,7 +164,8 @@ module Zitadel::Client::Models
155
164
  binding == o.binding &&
156
165
  with_signed_request == o.with_signed_request &&
157
166
  name_id_format == o.name_id_format &&
158
- transient_mapping_attribute_name == o.transient_mapping_attribute_name
167
+ transient_mapping_attribute_name == o.transient_mapping_attribute_name &&
168
+ federated_logout_enabled == o.federated_logout_enabled
159
169
  end
160
170
 
161
171
  # @see the `==` method
@@ -167,7 +177,7 @@ module Zitadel::Client::Models
167
177
  # Calculates hash code according to all attributes.
168
178
  # @return [Integer] Hash code
169
179
  def hash
170
- [metadata_xml, binding, with_signed_request, name_id_format, transient_mapping_attribute_name].hash
180
+ [metadata_xml, binding, with_signed_request, name_id_format, transient_mapping_attribute_name, federated_logout_enabled].hash
171
181
  end
172
182
 
173
183
  # Builds the object from hash
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Zitadel
4
4
  module Client
5
- VERSION = '1.6.0'
5
+ VERSION = '1.7.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zitadel-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zitadel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-25 00:00:00.000000000 Z
11
+ date: 2025-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: oauth2
@@ -110,7 +110,6 @@ files:
110
110
  - lib/zitadel/client/models/action_service_beta_delete_target_response.rb
111
111
  - lib/zitadel/client/models/action_service_beta_event_execution.rb
112
112
  - lib/zitadel/client/models/action_service_beta_execution.rb
113
- - lib/zitadel/client/models/action_service_beta_execution_target_type.rb
114
113
  - lib/zitadel/client/models/action_service_beta_function_execution.rb
115
114
  - lib/zitadel/client/models/action_service_beta_get_target_response.rb
116
115
  - lib/zitadel/client/models/action_service_beta_in_target_i_ds_filter.rb
@@ -1,240 +0,0 @@
1
- =begin
2
- #Zitadel SDK
3
-
4
- #The Zitadel SDK is a convenience wrapper around the Zitadel APIs to assist you in integrating with your Zitadel environment. This SDK enables you to handle resources, settings, and configurations within the Zitadel platform.
5
-
6
- The version of the OpenAPI document: 1.0.0
7
-
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.12.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Zitadel::Client::Models
17
- class ActionServiceBetaExecutionTargetType
18
- # Unique identifier of existing target to call.
19
- attr_accessor :target
20
-
21
- attr_accessor :include
22
-
23
- # Attribute mapping from ruby-style variable name to JSON key.
24
- def self.attribute_map
25
- {
26
- :'target' => :'target',
27
- :'include' => :'include'
28
- }
29
- end
30
-
31
- # Returns attribute mapping this model knows about
32
- def self.acceptable_attribute_map
33
- attribute_map
34
- end
35
-
36
- # Returns all the JSON keys this model knows about
37
- def self.acceptable_attributes
38
- acceptable_attribute_map.values
39
- end
40
-
41
- # Attribute type mapping.
42
- def self.openapi_types
43
- {
44
- :'target' => :'String',
45
- :'include' => :'ActionServiceBetaCondition'
46
- }
47
- end
48
-
49
- # List of attributes with nullable: true
50
- def self.openapi_nullable
51
- Set.new([
52
- ])
53
- end
54
-
55
- # Initializes the object
56
- # @param [Hash] attributes Models attributes in the form of hash
57
- def initialize(attributes = {})
58
- if (!attributes.is_a?(Hash))
59
- # MODIFIED: Updated class name in error message
60
- fail ArgumentError, "The input argument (attributes) must be a hash in `Zitadel::Client::Models::ActionServiceBetaExecutionTargetType` initialize method"
61
- end
62
-
63
- # check to see if the attribute exists and convert string to symbol for hash key
64
- acceptable_attribute_map = self.class.acceptable_attribute_map
65
- attributes = attributes.each_with_object({}) { |(k, v), h|
66
- if (!acceptable_attribute_map.key?(k.to_sym))
67
- # MODIFIED: Updated class name in error message
68
- fail ArgumentError, "`#{k}` is not a valid attribute in `Zitadel::Client::Models::ActionServiceBetaExecutionTargetType`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
69
- end
70
- h[k.to_sym] = v
71
- }
72
-
73
- if attributes.key?(:'target')
74
- self.target = attributes[:'target']
75
- end
76
-
77
- if attributes.key?(:'include')
78
- self.include = attributes[:'include']
79
- end
80
- end
81
-
82
- # Show invalid properties with the reasons. Usually used together with valid?
83
- # @return Array for valid properties with the reasons
84
- def list_invalid_properties
85
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
86
- invalid_properties = Array.new
87
- invalid_properties
88
- end
89
-
90
- # Check to see if the all the properties in the model are valid
91
- # @return true if the model is valid
92
- def valid?
93
- warn '[DEPRECATED] the `valid?` method is obsolete'
94
- true
95
- end
96
-
97
- # Checks equality by comparing each attribute.
98
- # @param [Object] Object to be compared
99
- def ==(o)
100
- return true if self.equal?(o)
101
- self.class == o.class &&
102
- target == o.target &&
103
- include == o.include
104
- end
105
-
106
- # @see the `==` method
107
- # @param [Object] Object to be compared
108
- def eql?(o)
109
- self == o
110
- end
111
-
112
- # Calculates hash code according to all attributes.
113
- # @return [Integer] Hash code
114
- def hash
115
- [target, include].hash
116
- end
117
-
118
- # Builds the object from hash
119
- # @param [Hash] attributes Models attributes in the form of hash
120
- # @return [Object] Returns the model itself
121
- def self.build_from_hash(attributes)
122
- return nil unless attributes.is_a?(Hash)
123
- attributes = attributes.transform_keys(&:to_sym)
124
- transformed_hash = {}
125
- openapi_types.each_pair do |key, type|
126
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
127
- transformed_hash["#{key}"] = nil
128
- elsif type =~ /\AArray<(.*)>/i
129
- # check to ensure the input is an array given that the attribute
130
- # is documented as an array but the input is not
131
- if attributes[attribute_map[key]].is_a?(Array)
132
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
133
- end
134
- elsif !attributes[attribute_map[key]].nil?
135
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
136
- end
137
- end
138
- new(transformed_hash) # `new` will call the initialize method of the specific model class.
139
- end
140
-
141
- # Deserializes the data based on type
142
- # @param string type Data type
143
- # @param string value Value to be deserialized
144
- # @return [Object] Deserialized data
145
- def self._deserialize(type, value)
146
- case type.to_sym
147
- when :Time
148
- Time.parse(value)
149
- when :Date
150
- Date.parse(value)
151
- when :String
152
- value.to_s
153
- when :Integer
154
- value.to_i
155
- when :Float
156
- value.to_f
157
- when :Boolean
158
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
159
- true
160
- else
161
- false
162
- end
163
- when :Object
164
- # generic object (usually a Hash), return directly
165
- value
166
- when /\AArray<(?<inner_type>.+)>\z/
167
- inner_type = Regexp.last_match[:inner_type]
168
- value.map { |v| _deserialize(inner_type, v) }
169
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
170
- k_type = Regexp.last_match[:k_type]
171
- v_type = Regexp.last_match[:v_type]
172
- {}.tap do |hash|
173
- value.each do |k, v|
174
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
175
- end
176
- end
177
- else # model
178
- # models (e.g. Pet) or oneOf/anyOf constructs that resolve to a model name
179
- # MODIFIED: Ensure model is looked up in the Models namespace
180
- # 'type' here is expected to be the simple class name (e.g., "User", "OrderDetails")
181
- klass = Zitadel::Client::Models.const_get(type)
182
- # The `klass.build` method is for oneOf/anyOf types (defined in partial_oneof_module.mustache / partial_anyof_module.mustache)
183
- # The `klass.build_from_hash` is for regular model types (defined in this base_object.mustache itself)
184
- if klass.respond_to?(:openapi_one_of) || klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_allOf)
185
- klass.build(value) # For oneOf/anyOf/allOf, delegate to their specific build method
186
- else
187
- klass.build_from_hash(value) # For regular models
188
- end
189
- end
190
- end
191
-
192
- # Returns the string representation of the object
193
- # @return [String] String presentation of the object
194
- def to_s
195
- to_hash.to_s
196
- end
197
-
198
- # to_body is an alias to to_hash (backward compatibility)
199
- # @return [Hash] Returns the object in the form of hash
200
- def to_body
201
- to_hash
202
- end
203
-
204
- # Returns the object in the form of hash
205
- # @return [Hash] Returns the object in the form of hash
206
- def to_hash
207
- hash = {} # Calls super.to_hash if parent exists
208
- self.class.attribute_map.each_pair do |attr, param|
209
- value = self.send(attr)
210
- if value.nil?
211
- is_nullable = self.class.openapi_nullable.include?(attr)
212
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
213
- end
214
-
215
- hash[param] = _to_hash(value)
216
- end
217
- hash
218
- end
219
-
220
- # Outputs non-array value in the form of hash
221
- # For object, use to_hash. Otherwise, just return the value
222
- # @param [Object] value Any valid value
223
- # @return [Hash] Returns the value in the form of hash
224
- def _to_hash(value)
225
- if value.is_a?(Array)
226
- value.compact.map { |v| _to_hash(v) }
227
- elsif value.is_a?(Hash)
228
- {}.tap do |hash|
229
- value.each { |k, v| hash[k] = _to_hash(v) }
230
- end
231
- elsif value.respond_to? :to_hash
232
- value.to_hash
233
- else
234
- value
235
- end
236
- end
237
-
238
- end
239
-
240
- end