turnkey_client 0.0.15 → 0.0.18

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 (171) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +39 -0
  3. data/.rspec +2 -0
  4. data/.swagger-codegen/VERSION +1 -0
  5. data/.swagger-codegen-ignore +23 -0
  6. data/lib/turnkey_client/api/app_proof_api.rb +4 -4
  7. data/lib/turnkey_client/api/broadcasting_api.rb +251 -0
  8. data/lib/turnkey_client/api/on_ramp_api.rb +290 -0
  9. data/lib/turnkey_client/api/policies_api.rb +58 -0
  10. data/lib/turnkey_client/api/send_transactions_api.rb +77 -0
  11. data/lib/turnkey_client/api/wallets_api.rb +174 -0
  12. data/lib/turnkey_client/models/activity.rb +1 -1
  13. data/lib/turnkey_client/models/activity_type.rb +16 -0
  14. data/lib/turnkey_client/models/approve_activity_request.rb +14 -4
  15. data/lib/turnkey_client/models/asset_balance.rb +255 -0
  16. data/lib/turnkey_client/models/asset_balance_display.rb +216 -0
  17. data/lib/turnkey_client/models/asset_metadata.rb +246 -0
  18. data/lib/turnkey_client/models/client_signature.rb +255 -0
  19. data/lib/turnkey_client/models/client_signature_scheme.rb +26 -0
  20. data/lib/turnkey_client/models/create_api_keys_request.rb +14 -4
  21. data/lib/turnkey_client/models/create_authenticators_request.rb +14 -4
  22. data/lib/turnkey_client/models/create_fiat_on_ramp_credential_intent.rb +272 -0
  23. data/lib/turnkey_client/models/create_fiat_on_ramp_credential_request.rb +298 -0
  24. data/lib/turnkey_client/models/create_fiat_on_ramp_credential_result.rb +211 -0
  25. data/lib/turnkey_client/models/create_invitations_request.rb +14 -4
  26. data/lib/turnkey_client/models/create_oauth2_credential_request.rb +14 -4
  27. data/lib/turnkey_client/models/create_oauth_providers_request.rb +14 -4
  28. data/lib/turnkey_client/models/create_policies_request.rb +14 -4
  29. data/lib/turnkey_client/models/create_policy_intent_v3.rb +6 -0
  30. data/lib/turnkey_client/models/create_policy_request.rb +14 -4
  31. data/lib/turnkey_client/models/create_private_key_tag_request.rb +14 -4
  32. data/lib/turnkey_client/models/create_private_keys_request.rb +14 -4
  33. data/lib/turnkey_client/models/create_read_only_session_request.rb +14 -4
  34. data/lib/turnkey_client/models/create_read_write_session_request.rb +14 -4
  35. data/lib/turnkey_client/models/create_smart_contract_interface_intent.rb +1 -1
  36. data/lib/turnkey_client/models/create_smart_contract_interface_request.rb +14 -4
  37. data/lib/turnkey_client/models/create_sub_organization_intent_v7.rb +14 -5
  38. data/lib/turnkey_client/models/create_sub_organization_request.rb +14 -4
  39. data/lib/turnkey_client/models/create_tvc_app_intent.rb +277 -0
  40. data/lib/turnkey_client/models/create_tvc_app_result.rb +258 -0
  41. data/lib/turnkey_client/models/create_tvc_deployment_intent.rb +368 -0
  42. data/lib/turnkey_client/models/create_tvc_deployment_result.rb +226 -0
  43. data/lib/turnkey_client/models/create_tvc_manifest_approvals_intent.rb +228 -0
  44. data/lib/turnkey_client/models/create_tvc_manifest_approvals_result.rb +213 -0
  45. data/lib/turnkey_client/models/create_user_tag_request.rb +14 -4
  46. data/lib/turnkey_client/models/create_users_request.rb +14 -4
  47. data/lib/turnkey_client/models/create_wallet_accounts_intent.rb +15 -4
  48. data/lib/turnkey_client/models/create_wallet_accounts_request.rb +14 -4
  49. data/lib/turnkey_client/models/create_wallet_request.rb +14 -4
  50. data/lib/turnkey_client/models/curve.rb +1 -0
  51. data/lib/turnkey_client/models/custom_revert_error.rb +218 -0
  52. data/lib/turnkey_client/models/data_v1_signature_scheme.rb +26 -0
  53. data/lib/turnkey_client/models/delete_api_keys_request.rb +14 -4
  54. data/lib/turnkey_client/models/delete_authenticators_request.rb +14 -4
  55. data/lib/turnkey_client/models/delete_fiat_on_ramp_credential_intent.rb +211 -0
  56. data/lib/turnkey_client/models/delete_fiat_on_ramp_credential_request.rb +298 -0
  57. data/lib/turnkey_client/models/delete_fiat_on_ramp_credential_result.rb +211 -0
  58. data/lib/turnkey_client/models/delete_invitation_request.rb +14 -4
  59. data/lib/turnkey_client/models/delete_oauth2_credential_request.rb +14 -4
  60. data/lib/turnkey_client/models/delete_oauth_providers_request.rb +14 -4
  61. data/lib/turnkey_client/models/delete_policies_intent.rb +213 -0
  62. data/lib/turnkey_client/models/delete_policies_request.rb +298 -0
  63. data/lib/turnkey_client/models/delete_policies_result.rb +213 -0
  64. data/lib/turnkey_client/models/delete_policy_request.rb +14 -4
  65. data/lib/turnkey_client/models/delete_private_key_tags_request.rb +14 -4
  66. data/lib/turnkey_client/models/delete_private_keys_request.rb +14 -4
  67. data/lib/turnkey_client/models/delete_smart_contract_interface_request.rb +14 -4
  68. data/lib/turnkey_client/models/delete_sub_organization_request.rb +14 -4
  69. data/lib/turnkey_client/models/delete_user_tags_request.rb +14 -4
  70. data/lib/turnkey_client/models/delete_users_request.rb +14 -4
  71. data/lib/turnkey_client/models/delete_wallet_accounts_intent.rb +224 -0
  72. data/lib/turnkey_client/models/delete_wallet_accounts_request.rb +298 -0
  73. data/lib/turnkey_client/models/delete_wallet_accounts_result.rb +213 -0
  74. data/lib/turnkey_client/models/delete_wallets_request.rb +14 -4
  75. data/lib/turnkey_client/models/email_auth_customization_params.rb +255 -0
  76. data/lib/turnkey_client/models/email_auth_intent_v3.rb +306 -0
  77. data/lib/turnkey_client/models/email_auth_request.rb +16 -6
  78. data/lib/turnkey_client/models/email_customization_params_v2.rb +240 -0
  79. data/lib/turnkey_client/models/eth_send_raw_transaction_intent.rb +260 -0
  80. data/lib/turnkey_client/models/eth_send_raw_transaction_result.rb +211 -0
  81. data/lib/turnkey_client/models/eth_send_transaction_intent.rb +363 -0
  82. data/lib/turnkey_client/models/eth_send_transaction_request.rb +298 -0
  83. data/lib/turnkey_client/models/eth_send_transaction_result.rb +211 -0
  84. data/lib/turnkey_client/models/eth_send_transaction_status.rb +207 -0
  85. data/lib/turnkey_client/models/export_private_key_request.rb +14 -4
  86. data/lib/turnkey_client/models/export_wallet_account_request.rb +14 -4
  87. data/lib/turnkey_client/models/export_wallet_request.rb +14 -4
  88. data/lib/turnkey_client/models/fiat_on_ramp_credential.rb +330 -0
  89. data/lib/turnkey_client/models/get_gas_usage_request.rb +211 -0
  90. data/lib/turnkey_client/models/get_gas_usage_response.rb +241 -0
  91. data/lib/turnkey_client/models/get_nonces_request.rb +295 -0
  92. data/lib/turnkey_client/models/get_nonces_response.rb +218 -0
  93. data/lib/turnkey_client/models/get_on_ramp_transaction_status_request.rb +237 -0
  94. data/lib/turnkey_client/models/get_on_ramp_transaction_status_response.rb +211 -0
  95. data/lib/turnkey_client/models/get_send_transaction_status_request.rb +226 -0
  96. data/lib/turnkey_client/models/get_send_transaction_status_response.rb +240 -0
  97. data/lib/turnkey_client/models/get_wallet_address_balances_request.rb +275 -0
  98. data/lib/turnkey_client/models/get_wallet_address_balances_response.rb +208 -0
  99. data/lib/turnkey_client/models/import_private_key_request.rb +14 -4
  100. data/lib/turnkey_client/models/import_wallet_request.rb +14 -4
  101. data/lib/turnkey_client/models/init_fiat_on_ramp_request.rb +14 -4
  102. data/lib/turnkey_client/models/init_import_private_key_request.rb +14 -4
  103. data/lib/turnkey_client/models/init_import_wallet_request.rb +14 -4
  104. data/lib/turnkey_client/models/init_otp_auth_intent_v3.rb +336 -0
  105. data/lib/turnkey_client/models/init_otp_auth_request.rb +16 -6
  106. data/lib/turnkey_client/models/init_otp_intent_v2.rb +336 -0
  107. data/lib/turnkey_client/models/init_otp_request.rb +16 -6
  108. data/lib/turnkey_client/models/init_user_email_recovery_intent.rb +37 -4
  109. data/lib/turnkey_client/models/init_user_email_recovery_intent_v2.rb +284 -0
  110. data/lib/turnkey_client/models/init_user_email_recovery_request.rb +16 -6
  111. data/lib/turnkey_client/models/intent.rb +148 -4
  112. data/lib/turnkey_client/models/list_fiat_on_ramp_credentials_request.rb +211 -0
  113. data/lib/turnkey_client/models/list_fiat_on_ramp_credentials_response.rb +212 -0
  114. data/lib/turnkey_client/models/list_supported_assets_request.rb +260 -0
  115. data/lib/turnkey_client/models/list_supported_assets_response.rb +208 -0
  116. data/lib/turnkey_client/models/native_revert_error.rb +229 -0
  117. data/lib/turnkey_client/models/oauth2_authenticate_request.rb +14 -4
  118. data/lib/turnkey_client/models/oauth_login_request.rb +14 -4
  119. data/lib/turnkey_client/models/oauth_request.rb +14 -4
  120. data/lib/turnkey_client/models/otp_auth_request.rb +14 -4
  121. data/lib/turnkey_client/models/otp_login_intent.rb +0 -2
  122. data/lib/turnkey_client/models/otp_login_request.rb +14 -4
  123. data/lib/turnkey_client/models/recover_user_request.rb +14 -4
  124. data/lib/turnkey_client/models/reject_activity_request.rb +14 -4
  125. data/lib/turnkey_client/models/remove_organization_feature_request.rb +14 -4
  126. data/lib/turnkey_client/models/result.rb +112 -4
  127. data/lib/turnkey_client/models/revert_chain_entry.rb +253 -0
  128. data/lib/turnkey_client/models/set_organization_feature_request.rb +14 -4
  129. data/lib/turnkey_client/models/sign_raw_payload_request.rb +14 -4
  130. data/lib/turnkey_client/models/sign_raw_payloads_request.rb +14 -4
  131. data/lib/turnkey_client/models/sign_transaction_request.rb +14 -4
  132. data/lib/turnkey_client/models/sol_send_transaction_intent.rb +297 -0
  133. data/lib/turnkey_client/models/sol_send_transaction_request.rb +298 -0
  134. data/lib/turnkey_client/models/sol_send_transaction_result.rb +211 -0
  135. data/lib/turnkey_client/models/stamp_login_request.rb +14 -4
  136. data/lib/turnkey_client/models/transaction_type.rb +2 -0
  137. data/lib/turnkey_client/models/tvc_manifest_approval.rb +226 -0
  138. data/lib/turnkey_client/models/tvc_operator_params.rb +226 -0
  139. data/lib/turnkey_client/models/tvc_operator_set_params.rb +250 -0
  140. data/lib/turnkey_client/models/tx_error.rb +218 -0
  141. data/lib/turnkey_client/models/unknown_revert_error.rb +218 -0
  142. data/lib/turnkey_client/models/update_auth_proxy_config_intent.rb +27 -5
  143. data/lib/turnkey_client/models/update_fiat_on_ramp_credential_intent.rb +277 -0
  144. data/lib/turnkey_client/models/update_fiat_on_ramp_credential_request.rb +298 -0
  145. data/lib/turnkey_client/models/update_fiat_on_ramp_credential_result.rb +211 -0
  146. data/lib/turnkey_client/models/update_oauth2_credential_request.rb +14 -4
  147. data/lib/turnkey_client/models/update_policy_request.rb +14 -4
  148. data/lib/turnkey_client/models/update_private_key_tag_request.rb +14 -4
  149. data/lib/turnkey_client/models/update_root_quorum_request.rb +14 -4
  150. data/lib/turnkey_client/models/update_user_email_request.rb +14 -4
  151. data/lib/turnkey_client/models/update_user_name_request.rb +14 -4
  152. data/lib/turnkey_client/models/update_user_phone_number_request.rb +14 -4
  153. data/lib/turnkey_client/models/update_user_request.rb +14 -4
  154. data/lib/turnkey_client/models/update_user_tag_request.rb +14 -4
  155. data/lib/turnkey_client/models/update_wallet_request.rb +14 -4
  156. data/lib/turnkey_client/models/upsert_gas_usage_config_intent.rb +252 -0
  157. data/lib/turnkey_client/models/upsert_gas_usage_config_result.rb +211 -0
  158. data/lib/turnkey_client/models/verify_otp_request.rb +14 -4
  159. data/lib/turnkey_client/version.rb +1 -1
  160. data/lib/turnkey_client.rb +70 -2
  161. data/turnkey_client.gemspec +1 -1
  162. metadata +76 -12
  163. data/turnkey_client-0.0.12.gem +0 -0
  164. data/turnkey_client-0.0.13.gem +0 -0
  165. data/turnkey_client-0.0.14.gem +0 -0
  166. data/turnkey_client-0.0.2.gem +0 -0
  167. data/turnkey_client-0.0.3.gem +0 -0
  168. data/turnkey_client-0.0.4.gem +0 -0
  169. data/turnkey_client-0.0.7.gem +0 -0
  170. data/turnkey_client-0.0.8.gem +0 -0
  171. data/turnkey_client-0.0.9.gem +0 -0
@@ -0,0 +1,213 @@
1
+ =begin
2
+ #API Reference
3
+
4
+ #Review our [API Introduction](../api-introduction) to get started.
5
+
6
+ OpenAPI spec version: 1.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ =end
10
+
11
+ require 'date'
12
+
13
+ module TurnkeyClient
14
+ class DeleteWalletAccountsResult
15
+ # A list of wallet account unique identifiers that were removed
16
+ attr_accessor :wallet_account_ids
17
+
18
+ # Attribute mapping from ruby-style variable name to JSON key.
19
+ def self.attribute_map
20
+ {
21
+ :'wallet_account_ids' => :'walletAccountIds'
22
+ }
23
+ end
24
+
25
+ # Attribute type mapping.
26
+ def self.openapi_types
27
+ {
28
+ :'wallet_account_ids' => :'Object'
29
+ }
30
+ end
31
+
32
+ # List of attributes with nullable: true
33
+ def self.openapi_nullable
34
+ Set.new([
35
+ ])
36
+ end
37
+
38
+ # Initializes the object
39
+ # @param [Hash] attributes Model attributes in the form of hash
40
+ def initialize(attributes = {})
41
+ if (!attributes.is_a?(Hash))
42
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TurnkeyClient::DeleteWalletAccountsResult` initialize method"
43
+ end
44
+
45
+ # check to see if the attribute exists and convert string to symbol for hash key
46
+ attributes = attributes.each_with_object({}) { |(k, v), h|
47
+ if (!self.class.attribute_map.key?(k.to_sym))
48
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TurnkeyClient::DeleteWalletAccountsResult`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
49
+ end
50
+ h[k.to_sym] = v
51
+ }
52
+
53
+ if attributes.key?(:'wallet_account_ids')
54
+ if (value = attributes[:'wallet_account_ids']).is_a?(Array)
55
+ self.wallet_account_ids = value
56
+ end
57
+ end
58
+ end
59
+
60
+ # Show invalid properties with the reasons. Usually used together with valid?
61
+ # @return Array for valid properties with the reasons
62
+ def list_invalid_properties
63
+ invalid_properties = Array.new
64
+ if @wallet_account_ids.nil?
65
+ invalid_properties.push('invalid value for "wallet_account_ids", wallet_account_ids cannot be nil.')
66
+ end
67
+
68
+ invalid_properties
69
+ end
70
+
71
+ # Check to see if the all the properties in the model are valid
72
+ # @return true if the model is valid
73
+ def valid?
74
+ return false if @wallet_account_ids.nil?
75
+ true
76
+ end
77
+
78
+ # Checks equality by comparing each attribute.
79
+ # @param [Object] Object to be compared
80
+ def ==(o)
81
+ return true if self.equal?(o)
82
+ self.class == o.class &&
83
+ wallet_account_ids == o.wallet_account_ids
84
+ end
85
+
86
+ # @see the `==` method
87
+ # @param [Object] Object to be compared
88
+ def eql?(o)
89
+ self == o
90
+ end
91
+
92
+ # Calculates hash code according to all attributes.
93
+ # @return [Integer] Hash code
94
+ def hash
95
+ [wallet_account_ids].hash
96
+ end
97
+
98
+ # Builds the object from hash
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ # @return [Object] Returns the model itself
101
+ def self.build_from_hash(attributes)
102
+ new.build_from_hash(attributes)
103
+ end
104
+
105
+ # Builds the object from hash
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ # @return [Object] Returns the model itself
108
+ def build_from_hash(attributes)
109
+ return nil unless attributes.is_a?(Hash)
110
+ self.class.openapi_types.each_pair do |key, type|
111
+ if type =~ /\AArray<(.*)>/i
112
+ # check to ensure the input is an array given that the attribute
113
+ # is documented as an array but the input is not
114
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
115
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
116
+ end
117
+ elsif !attributes[self.class.attribute_map[key]].nil?
118
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
119
+ elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
120
+ self.send("#{key}=", nil)
121
+ end
122
+ end
123
+
124
+ self
125
+ end
126
+
127
+ # Deserializes the data based on type
128
+ # @param string type Data type
129
+ # @param string value Value to be deserialized
130
+ # @return [Object] Deserialized data
131
+ def _deserialize(type, value)
132
+ case type.to_sym
133
+ when :DateTime
134
+ DateTime.parse(value)
135
+ when :Date
136
+ Date.parse(value)
137
+ when :String
138
+ value.to_s
139
+ when :Integer
140
+ value.to_i
141
+ when :Float
142
+ value.to_f
143
+ when :Boolean
144
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
145
+ true
146
+ else
147
+ false
148
+ end
149
+ when :Object
150
+ # generic object (usually a Hash), return directly
151
+ value
152
+ when /\AArray<(?<inner_type>.+)>\z/
153
+ inner_type = Regexp.last_match[:inner_type]
154
+ value.map { |v| _deserialize(inner_type, v) }
155
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
156
+ k_type = Regexp.last_match[:k_type]
157
+ v_type = Regexp.last_match[:v_type]
158
+ {}.tap do |hash|
159
+ value.each do |k, v|
160
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
161
+ end
162
+ end
163
+ else # model
164
+ TurnkeyClient.const_get(type).build_from_hash(value)
165
+ end
166
+ end
167
+
168
+ # Returns the string representation of the object
169
+ # @return [String] String presentation of the object
170
+ def to_s
171
+ to_hash.to_s
172
+ end
173
+
174
+ # to_body is an alias to to_hash (backward compatibility)
175
+ # @return [Hash] Returns the object in the form of hash
176
+ def to_body
177
+ to_hash
178
+ end
179
+
180
+ # Returns the object in the form of hash
181
+ # @return [Hash] Returns the object in the form of hash
182
+ def to_hash
183
+ hash = {}
184
+ self.class.attribute_map.each_pair do |attr, param|
185
+ value = self.send(attr)
186
+ if value.nil?
187
+ is_nullable = self.class.openapi_nullable.include?(attr)
188
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
189
+ end
190
+
191
+ hash[param] = _to_hash(value)
192
+ end
193
+ hash
194
+ end
195
+
196
+ # Outputs non-array value in the form of hash
197
+ # For object, use to_hash. Otherwise, just return the value
198
+ # @param [Object] value Any valid value
199
+ # @return [Hash] Returns the value in the form of hash
200
+ def _to_hash(value)
201
+ if value.is_a?(Array)
202
+ value.compact.map { |v| _to_hash(v) }
203
+ elsif value.is_a?(Hash)
204
+ {}.tap do |hash|
205
+ value.each { |k, v| hash[k] = _to_hash(v) }
206
+ end
207
+ elsif value.respond_to? :to_hash
208
+ value.to_hash
209
+ else
210
+ value
211
+ end
212
+ end end
213
+ end
@@ -22,6 +22,8 @@ module TurnkeyClient
22
22
 
23
23
  attr_accessor :parameters
24
24
 
25
+ attr_accessor :generate_app_proofs
26
+
25
27
  class EnumAttributeValidator
26
28
  attr_reader :datatype
27
29
  attr_reader :allowable_values
@@ -50,7 +52,8 @@ module TurnkeyClient
50
52
  :'type' => :'type',
51
53
  :'timestamp_ms' => :'timestampMs',
52
54
  :'organization_id' => :'organizationId',
53
- :'parameters' => :'parameters'
55
+ :'parameters' => :'parameters',
56
+ :'generate_app_proofs' => :'generateAppProofs'
54
57
  }
55
58
  end
56
59
 
@@ -60,13 +63,15 @@ module TurnkeyClient
60
63
  :'type' => :'Object',
61
64
  :'timestamp_ms' => :'Object',
62
65
  :'organization_id' => :'Object',
63
- :'parameters' => :'Object'
66
+ :'parameters' => :'Object',
67
+ :'generate_app_proofs' => :'Object'
64
68
  }
65
69
  end
66
70
 
67
71
  # List of attributes with nullable: true
68
72
  def self.openapi_nullable
69
73
  Set.new([
74
+ :'generate_app_proofs'
70
75
  ])
71
76
  end
72
77
 
@@ -100,6 +105,10 @@ module TurnkeyClient
100
105
  if attributes.key?(:'parameters')
101
106
  self.parameters = attributes[:'parameters']
102
107
  end
108
+
109
+ if attributes.key?(:'generate_app_proofs')
110
+ self.generate_app_proofs = attributes[:'generate_app_proofs']
111
+ end
103
112
  end
104
113
 
105
114
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -155,7 +164,8 @@ module TurnkeyClient
155
164
  type == o.type &&
156
165
  timestamp_ms == o.timestamp_ms &&
157
166
  organization_id == o.organization_id &&
158
- parameters == o.parameters
167
+ parameters == o.parameters &&
168
+ generate_app_proofs == o.generate_app_proofs
159
169
  end
160
170
 
161
171
  # @see the `==` method
@@ -167,7 +177,7 @@ module TurnkeyClient
167
177
  # Calculates hash code according to all attributes.
168
178
  # @return [Integer] Hash code
169
179
  def hash
170
- [type, timestamp_ms, organization_id, parameters].hash
180
+ [type, timestamp_ms, organization_id, parameters, generate_app_proofs].hash
171
181
  end
172
182
 
173
183
  # Builds the object from hash
@@ -0,0 +1,255 @@
1
+ =begin
2
+ #API Reference
3
+
4
+ #Review our [API Introduction](../api-introduction) to get started.
5
+
6
+ OpenAPI spec version: 1.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ =end
10
+
11
+ require 'date'
12
+
13
+ module TurnkeyClient
14
+ class EmailAuthCustomizationParams
15
+ # The name of the application. This field is required and will be used in email notifications if an email template is not provided.
16
+ attr_accessor :app_name
17
+
18
+ # A URL pointing to a logo in PNG format. Note this logo will be resized to fit into 340px x 124px.
19
+ attr_accessor :logo_url
20
+
21
+ # A template for the URL to be used in a magic link button, e.g. `https://dapp.xyz/%s`. The auth bundle will be interpolated into the `%s`.
22
+ attr_accessor :magic_link_template
23
+
24
+ # JSON object containing key/value pairs to be used with custom templates.
25
+ attr_accessor :template_variables
26
+
27
+ # Unique identifier for a given Email Template. If not specified, the default is the most recent Email Template.
28
+ attr_accessor :template_id
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'app_name' => :'appName',
34
+ :'logo_url' => :'logoUrl',
35
+ :'magic_link_template' => :'magicLinkTemplate',
36
+ :'template_variables' => :'templateVariables',
37
+ :'template_id' => :'templateId'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ def self.openapi_types
43
+ {
44
+ :'app_name' => :'Object',
45
+ :'logo_url' => :'Object',
46
+ :'magic_link_template' => :'Object',
47
+ :'template_variables' => :'Object',
48
+ :'template_id' => :'Object'
49
+ }
50
+ end
51
+
52
+ # List of attributes with nullable: true
53
+ def self.openapi_nullable
54
+ Set.new([
55
+ :'logo_url',
56
+ :'magic_link_template',
57
+ :'template_variables',
58
+ :'template_id'
59
+ ])
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ if (!attributes.is_a?(Hash))
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TurnkeyClient::EmailAuthCustomizationParams` initialize method"
67
+ end
68
+
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TurnkeyClient::EmailAuthCustomizationParams`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
73
+ end
74
+ h[k.to_sym] = v
75
+ }
76
+
77
+ if attributes.key?(:'app_name')
78
+ self.app_name = attributes[:'app_name']
79
+ end
80
+
81
+ if attributes.key?(:'logo_url')
82
+ self.logo_url = attributes[:'logo_url']
83
+ end
84
+
85
+ if attributes.key?(:'magic_link_template')
86
+ self.magic_link_template = attributes[:'magic_link_template']
87
+ end
88
+
89
+ if attributes.key?(:'template_variables')
90
+ self.template_variables = attributes[:'template_variables']
91
+ end
92
+
93
+ if attributes.key?(:'template_id')
94
+ self.template_id = attributes[:'template_id']
95
+ end
96
+ end
97
+
98
+ # Show invalid properties with the reasons. Usually used together with valid?
99
+ # @return Array for valid properties with the reasons
100
+ def list_invalid_properties
101
+ invalid_properties = Array.new
102
+ if @app_name.nil?
103
+ invalid_properties.push('invalid value for "app_name", app_name cannot be nil.')
104
+ end
105
+
106
+ invalid_properties
107
+ end
108
+
109
+ # Check to see if the all the properties in the model are valid
110
+ # @return true if the model is valid
111
+ def valid?
112
+ return false if @app_name.nil?
113
+ true
114
+ end
115
+
116
+ # Checks equality by comparing each attribute.
117
+ # @param [Object] Object to be compared
118
+ def ==(o)
119
+ return true if self.equal?(o)
120
+ self.class == o.class &&
121
+ app_name == o.app_name &&
122
+ logo_url == o.logo_url &&
123
+ magic_link_template == o.magic_link_template &&
124
+ template_variables == o.template_variables &&
125
+ template_id == o.template_id
126
+ end
127
+
128
+ # @see the `==` method
129
+ # @param [Object] Object to be compared
130
+ def eql?(o)
131
+ self == o
132
+ end
133
+
134
+ # Calculates hash code according to all attributes.
135
+ # @return [Integer] Hash code
136
+ def hash
137
+ [app_name, logo_url, magic_link_template, template_variables, template_id].hash
138
+ end
139
+
140
+ # Builds the object from hash
141
+ # @param [Hash] attributes Model attributes in the form of hash
142
+ # @return [Object] Returns the model itself
143
+ def self.build_from_hash(attributes)
144
+ new.build_from_hash(attributes)
145
+ end
146
+
147
+ # Builds the object from hash
148
+ # @param [Hash] attributes Model attributes in the form of hash
149
+ # @return [Object] Returns the model itself
150
+ def build_from_hash(attributes)
151
+ return nil unless attributes.is_a?(Hash)
152
+ self.class.openapi_types.each_pair do |key, type|
153
+ if type =~ /\AArray<(.*)>/i
154
+ # check to ensure the input is an array given that the attribute
155
+ # is documented as an array but the input is not
156
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
157
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
158
+ end
159
+ elsif !attributes[self.class.attribute_map[key]].nil?
160
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
161
+ elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
162
+ self.send("#{key}=", nil)
163
+ end
164
+ end
165
+
166
+ self
167
+ end
168
+
169
+ # Deserializes the data based on type
170
+ # @param string type Data type
171
+ # @param string value Value to be deserialized
172
+ # @return [Object] Deserialized data
173
+ def _deserialize(type, value)
174
+ case type.to_sym
175
+ when :DateTime
176
+ DateTime.parse(value)
177
+ when :Date
178
+ Date.parse(value)
179
+ when :String
180
+ value.to_s
181
+ when :Integer
182
+ value.to_i
183
+ when :Float
184
+ value.to_f
185
+ when :Boolean
186
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
187
+ true
188
+ else
189
+ false
190
+ end
191
+ when :Object
192
+ # generic object (usually a Hash), return directly
193
+ value
194
+ when /\AArray<(?<inner_type>.+)>\z/
195
+ inner_type = Regexp.last_match[:inner_type]
196
+ value.map { |v| _deserialize(inner_type, v) }
197
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
198
+ k_type = Regexp.last_match[:k_type]
199
+ v_type = Regexp.last_match[:v_type]
200
+ {}.tap do |hash|
201
+ value.each do |k, v|
202
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
203
+ end
204
+ end
205
+ else # model
206
+ TurnkeyClient.const_get(type).build_from_hash(value)
207
+ end
208
+ end
209
+
210
+ # Returns the string representation of the object
211
+ # @return [String] String presentation of the object
212
+ def to_s
213
+ to_hash.to_s
214
+ end
215
+
216
+ # to_body is an alias to to_hash (backward compatibility)
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_body
219
+ to_hash
220
+ end
221
+
222
+ # Returns the object in the form of hash
223
+ # @return [Hash] Returns the object in the form of hash
224
+ def to_hash
225
+ hash = {}
226
+ self.class.attribute_map.each_pair do |attr, param|
227
+ value = self.send(attr)
228
+ if value.nil?
229
+ is_nullable = self.class.openapi_nullable.include?(attr)
230
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
231
+ end
232
+
233
+ hash[param] = _to_hash(value)
234
+ end
235
+ hash
236
+ end
237
+
238
+ # Outputs non-array value in the form of hash
239
+ # For object, use to_hash. Otherwise, just return the value
240
+ # @param [Object] value Any valid value
241
+ # @return [Hash] Returns the value in the form of hash
242
+ def _to_hash(value)
243
+ if value.is_a?(Array)
244
+ value.compact.map { |v| _to_hash(v) }
245
+ elsif value.is_a?(Hash)
246
+ {}.tap do |hash|
247
+ value.each { |k, v| hash[k] = _to_hash(v) }
248
+ end
249
+ elsif value.respond_to? :to_hash
250
+ value.to_hash
251
+ else
252
+ value
253
+ end
254
+ end end
255
+ end