ory-kratos-client 0.6.2.alpha1 → 0.7.1.alpha2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (255) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +135 -147
  3. data/docs/AdminApi.md +15 -13
  4. data/docs/AdminCreateIdentityBody.md +20 -0
  5. data/docs/AdminCreateSelfServiceRecoveryLinkBody.md +20 -0
  6. data/docs/AdminUpdateIdentityBody.md +22 -0
  7. data/docs/AuthenticateOKBody.md +2 -2
  8. data/docs/ContainerChangeResponseItem.md +2 -2
  9. data/docs/ContainerCreateCreatedBody.md +2 -2
  10. data/docs/ContainerTopOKBody.md +2 -2
  11. data/docs/ContainerUpdateOKBody.md +2 -2
  12. data/docs/ContainerWaitOKBody.md +2 -2
  13. data/docs/ContainerWaitOKBodyError.md +2 -2
  14. data/docs/ErrorResponse.md +2 -2
  15. data/docs/GenericError.md +16 -4
  16. data/docs/GraphDriverData.md +2 -2
  17. data/docs/HealthNotReadyStatus.md +2 -2
  18. data/docs/HealthStatus.md +2 -2
  19. data/docs/IdResponse.md +2 -2
  20. data/docs/Identity.md +14 -4
  21. data/docs/IdentityCredentials.md +7 -3
  22. data/docs/IdentityState.md +15 -0
  23. data/docs/ImageDeleteResponseItem.md +2 -2
  24. data/docs/ImageSummary.md +2 -2
  25. data/docs/InlineResponse200.md +2 -2
  26. data/docs/InlineResponse2001.md +2 -2
  27. data/docs/InlineResponse503.md +2 -2
  28. data/docs/JsonError.md +18 -0
  29. data/docs/LoginFlow.md +5 -1
  30. data/docs/Meta.md +2 -2
  31. data/docs/MetadataApi.md +254 -0
  32. data/docs/Plugin.md +2 -2
  33. data/docs/PluginConfig.md +2 -2
  34. data/docs/PluginConfigArgs.md +2 -2
  35. data/docs/PluginConfigInterface.md +2 -2
  36. data/docs/PluginConfigLinux.md +2 -2
  37. data/docs/PluginConfigNetwork.md +2 -2
  38. data/docs/PluginConfigRootfs.md +2 -2
  39. data/docs/PluginConfigUser.md +2 -2
  40. data/docs/PluginDevice.md +2 -2
  41. data/docs/PluginEnv.md +2 -2
  42. data/docs/PluginInterfaceType.md +2 -2
  43. data/docs/PluginMount.md +2 -2
  44. data/docs/PluginSettings.md +2 -2
  45. data/docs/Port.md +2 -2
  46. data/docs/PublicApi.md +216 -210
  47. data/docs/RecoveryAddress.md +6 -2
  48. data/docs/SelfServiceError.md +24 -0
  49. data/docs/SelfServiceErrorContainer.md +24 -0
  50. data/docs/SelfServiceLoginFlow.md +36 -0
  51. data/docs/SelfServiceLogoutUrl.md +18 -0
  52. data/docs/SelfServiceRecoveryFlow.md +32 -0
  53. data/docs/SelfServiceRecoveryFlowState.md +15 -0
  54. data/docs/SelfServiceRecoveryLink.md +20 -0
  55. data/docs/SelfServiceRegistrationFlow.md +30 -0
  56. data/docs/SelfServiceSettingsFlow.md +34 -0
  57. data/docs/SelfServiceSettingsFlowState.md +15 -0
  58. data/docs/SelfServiceVerificationFlow.md +32 -0
  59. data/docs/SelfServiceVerificationFlowState.md +15 -0
  60. data/docs/ServiceUpdateResponse.md +2 -2
  61. data/docs/Session.md +6 -6
  62. data/docs/SettingsProfileFormConfig.md +2 -2
  63. data/docs/SubmitSelfServiceLoginFlowBody.md +76 -0
  64. data/docs/SubmitSelfServiceLoginFlowWithOidcMethodBody.md +22 -0
  65. data/docs/SubmitSelfServiceLoginFlowWithPasswordMethodBody.md +24 -0
  66. data/docs/SubmitSelfServiceLogoutFlowWithoutBrowserBody.md +18 -0
  67. data/docs/SubmitSelfServiceRecoveryFlowBody.md +75 -0
  68. data/docs/SubmitSelfServiceRecoveryFlowWithLinkMethodBody.md +22 -0
  69. data/docs/SubmitSelfServiceRegistrationFlowBody.md +76 -0
  70. data/docs/SubmitSelfServiceRegistrationFlowWithOidcMethodBody.md +22 -0
  71. data/docs/SubmitSelfServiceRegistrationFlowWithPasswordMethodBody.md +24 -0
  72. data/docs/SubmitSelfServiceSettingsFlowBody.md +79 -0
  73. data/docs/SubmitSelfServiceSettingsFlowWithOidcMethodBody.md +24 -0
  74. data/docs/SubmitSelfServiceSettingsFlowWithPasswordMethodBody.md +22 -0
  75. data/docs/SubmitSelfServiceSettingsFlowWithProfileMethodBody.md +22 -0
  76. data/docs/SubmitSelfServiceVerificationFlowBody.md +75 -0
  77. data/docs/SubmitSelfServiceVerificationFlowWithLinkMethodBody.md +22 -0
  78. data/docs/SuccessfulSelfServiceLoginWithoutBrowser.md +20 -0
  79. data/docs/SuccessfulSelfServiceRegistrationWithoutBrowser.md +22 -0
  80. data/docs/SuccessfulSelfServiceSettingsWithoutBrowser.md +20 -0
  81. data/docs/UiContainer.md +2 -2
  82. data/docs/UiNode.md +2 -2
  83. data/docs/UiNodeAnchorAttributes.md +2 -2
  84. data/docs/UiNodeAttributes.md +4 -4
  85. data/docs/UiNodeImageAttributes.md +2 -2
  86. data/docs/UiNodeInputAttributes.md +3 -3
  87. data/docs/UiNodeTextAttributes.md +2 -2
  88. data/docs/UiText.md +2 -2
  89. data/docs/V0alpha1Api.md +2167 -0
  90. data/docs/VerifiableIdentityAddress.md +32 -0
  91. data/docs/Version.md +2 -2
  92. data/docs/Volume.md +2 -2
  93. data/docs/VolumeUsageData.md +2 -2
  94. data/lib/ory-kratos-client/api/admin_api.rb +7 -4
  95. data/lib/ory-kratos-client/api/metadata_api.rb +248 -0
  96. data/lib/ory-kratos-client/api/public_api.rb +171 -162
  97. data/lib/ory-kratos-client/api/v0alpha1_api.rb +2054 -0
  98. data/lib/ory-kratos-client/api_client.rb +4 -4
  99. data/lib/ory-kratos-client/api_error.rb +3 -3
  100. data/lib/ory-kratos-client/configuration.rb +11 -32
  101. data/lib/ory-kratos-client/models/admin_create_identity_body.rb +239 -0
  102. data/lib/ory-kratos-client/models/admin_create_self_service_recovery_link_body.rb +250 -0
  103. data/lib/ory-kratos-client/models/admin_update_identity_body.rb +248 -0
  104. data/lib/ory-kratos-client/models/authenticate_ok_body.rb +6 -6
  105. data/lib/ory-kratos-client/models/container_change_response_item.rb +6 -6
  106. data/lib/ory-kratos-client/models/container_create_created_body.rb +6 -6
  107. data/lib/ory-kratos-client/models/container_top_ok_body.rb +6 -6
  108. data/lib/ory-kratos-client/models/container_update_ok_body.rb +6 -6
  109. data/lib/ory-kratos-client/models/container_wait_ok_body.rb +6 -6
  110. data/lib/ory-kratos-client/models/container_wait_ok_body_error.rb +6 -6
  111. data/lib/ory-kratos-client/models/create_identity.rb +1 -1
  112. data/lib/ory-kratos-client/models/create_recovery_link.rb +1 -1
  113. data/lib/ory-kratos-client/models/error_response.rb +6 -6
  114. data/lib/ory-kratos-client/models/generic_error.rb +81 -14
  115. data/lib/ory-kratos-client/models/graph_driver_data.rb +6 -6
  116. data/lib/ory-kratos-client/models/health_not_ready_status.rb +6 -6
  117. data/lib/ory-kratos-client/models/health_status.rb +6 -6
  118. data/lib/ory-kratos-client/models/id_response.rb +6 -6
  119. data/lib/ory-kratos-client/models/identity.rb +62 -14
  120. data/lib/ory-kratos-client/models/identity_credentials.rb +30 -10
  121. data/lib/ory-kratos-client/models/identity_state.rb +37 -0
  122. data/lib/ory-kratos-client/models/image_delete_response_item.rb +6 -6
  123. data/lib/ory-kratos-client/models/image_summary.rb +6 -6
  124. data/lib/ory-kratos-client/models/inline_response200.rb +6 -6
  125. data/lib/ory-kratos-client/models/inline_response2001.rb +6 -6
  126. data/lib/ory-kratos-client/models/inline_response503.rb +6 -6
  127. data/lib/ory-kratos-client/models/json_error.rb +224 -0
  128. data/lib/ory-kratos-client/models/login_flow.rb +25 -5
  129. data/lib/ory-kratos-client/models/login_via_api_response.rb +1 -1
  130. data/lib/ory-kratos-client/models/meta.rb +6 -6
  131. data/lib/ory-kratos-client/models/plugin.rb +6 -6
  132. data/lib/ory-kratos-client/models/plugin_config.rb +6 -6
  133. data/lib/ory-kratos-client/models/plugin_config_args.rb +6 -6
  134. data/lib/ory-kratos-client/models/plugin_config_interface.rb +6 -6
  135. data/lib/ory-kratos-client/models/plugin_config_linux.rb +6 -6
  136. data/lib/ory-kratos-client/models/plugin_config_network.rb +6 -6
  137. data/lib/ory-kratos-client/models/plugin_config_rootfs.rb +6 -6
  138. data/lib/ory-kratos-client/models/plugin_config_user.rb +6 -6
  139. data/lib/ory-kratos-client/models/plugin_device.rb +6 -6
  140. data/lib/ory-kratos-client/models/plugin_env.rb +6 -6
  141. data/lib/ory-kratos-client/models/plugin_interface_type.rb +6 -6
  142. data/lib/ory-kratos-client/models/plugin_mount.rb +6 -6
  143. data/lib/ory-kratos-client/models/plugin_settings.rb +6 -6
  144. data/lib/ory-kratos-client/models/port.rb +6 -6
  145. data/lib/ory-kratos-client/models/recovery_address.rb +27 -7
  146. data/lib/ory-kratos-client/models/recovery_flow.rb +1 -1
  147. data/lib/ory-kratos-client/models/recovery_link.rb +1 -1
  148. data/lib/ory-kratos-client/models/registration_flow.rb +1 -1
  149. data/lib/ory-kratos-client/models/registration_via_api_response.rb +1 -1
  150. data/lib/ory-kratos-client/models/revoke_session.rb +1 -1
  151. data/lib/ory-kratos-client/models/self_service_error.rb +252 -0
  152. data/lib/ory-kratos-client/models/self_service_error_container.rb +260 -0
  153. data/lib/ory-kratos-client/models/self_service_login_flow.rb +338 -0
  154. data/lib/ory-kratos-client/models/self_service_logout_url.rb +219 -0
  155. data/lib/ory-kratos-client/models/self_service_recovery_flow.rb +317 -0
  156. data/lib/ory-kratos-client/models/self_service_recovery_flow_state.rb +38 -0
  157. data/lib/ory-kratos-client/models/self_service_recovery_link.rb +234 -0
  158. data/lib/ory-kratos-client/models/self_service_registration_flow.rb +302 -0
  159. data/lib/ory-kratos-client/models/self_service_settings_flow.rb +331 -0
  160. data/lib/ory-kratos-client/models/self_service_settings_flow_state.rb +37 -0
  161. data/lib/ory-kratos-client/models/self_service_verification_flow.rb +307 -0
  162. data/lib/ory-kratos-client/models/self_service_verification_flow_state.rb +38 -0
  163. data/lib/ory-kratos-client/models/service_update_response.rb +6 -6
  164. data/lib/ory-kratos-client/models/session.rb +11 -21
  165. data/lib/ory-kratos-client/models/settings_flow.rb +1 -1
  166. data/lib/ory-kratos-client/models/settings_profile_form_config.rb +6 -6
  167. data/lib/ory-kratos-client/models/settings_via_api_response.rb +1 -1
  168. data/lib/ory-kratos-client/models/submit_self_service_browser_settings_oidc_flow_payload.rb +1 -1
  169. data/lib/ory-kratos-client/models/submit_self_service_login_flow.rb +1 -1
  170. data/lib/ory-kratos-client/models/submit_self_service_login_flow_body.rb +54 -0
  171. data/lib/ory-kratos-client/models/submit_self_service_login_flow_with_oidc_method_body.rb +250 -0
  172. data/lib/ory-kratos-client/models/submit_self_service_login_flow_with_password_method.rb +1 -1
  173. data/lib/ory-kratos-client/models/submit_self_service_login_flow_with_password_method_body.rb +298 -0
  174. data/lib/ory-kratos-client/models/submit_self_service_logout_flow_without_browser_body.rb +225 -0
  175. data/lib/ory-kratos-client/models/submit_self_service_recovery_flow_body.rb +53 -0
  176. data/lib/ory-kratos-client/models/submit_self_service_recovery_flow_with_link_method.rb +1 -1
  177. data/lib/ory-kratos-client/models/submit_self_service_recovery_flow_with_link_method_body.rb +283 -0
  178. data/lib/ory-kratos-client/models/submit_self_service_registration_flow.rb +1 -1
  179. data/lib/ory-kratos-client/models/submit_self_service_registration_flow_body.rb +54 -0
  180. data/lib/ory-kratos-client/models/submit_self_service_registration_flow_with_oidc_method_body.rb +250 -0
  181. data/lib/ory-kratos-client/models/submit_self_service_registration_flow_with_password_method.rb +22 -1
  182. data/lib/ory-kratos-client/models/submit_self_service_registration_flow_with_password_method_body.rb +299 -0
  183. data/lib/ory-kratos-client/models/submit_self_service_settings_flow.rb +1 -1
  184. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_body.rb +56 -0
  185. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_with_oidc_method_body.rb +255 -0
  186. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_with_password_method.rb +1 -1
  187. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_with_password_method_body.rb +283 -0
  188. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_with_profile_method.rb +1 -1
  189. data/lib/ory-kratos-client/models/submit_self_service_settings_flow_with_profile_method_body.rb +250 -0
  190. data/lib/ory-kratos-client/models/submit_self_service_verification_flow_body.rb +54 -0
  191. data/lib/ory-kratos-client/models/submit_self_service_verification_flow_with_link_method.rb +1 -1
  192. data/lib/ory-kratos-client/models/submit_self_service_verification_flow_with_link_method_body.rb +283 -0
  193. data/lib/ory-kratos-client/models/successful_self_service_login_without_browser.rb +234 -0
  194. data/lib/ory-kratos-client/models/successful_self_service_registration_without_browser.rb +243 -0
  195. data/lib/ory-kratos-client/models/successful_self_service_settings_without_browser.rb +238 -0
  196. data/lib/ory-kratos-client/models/ui_container.rb +6 -6
  197. data/lib/ory-kratos-client/models/ui_node.rb +6 -6
  198. data/lib/ory-kratos-client/models/ui_node_anchor_attributes.rb +6 -6
  199. data/lib/ory-kratos-client/models/ui_node_attributes.rb +4 -4
  200. data/lib/ory-kratos-client/models/ui_node_image_attributes.rb +6 -6
  201. data/lib/ory-kratos-client/models/ui_node_input_attributes.rb +9 -7
  202. data/lib/ory-kratos-client/models/ui_node_input_attributes_value.rb +1 -1
  203. data/lib/ory-kratos-client/models/ui_node_text_attributes.rb +6 -6
  204. data/lib/ory-kratos-client/models/ui_text.rb +6 -6
  205. data/lib/ory-kratos-client/models/update_identity.rb +1 -1
  206. data/lib/ory-kratos-client/models/verifiable_identity_address.rb +313 -0
  207. data/lib/ory-kratos-client/models/verification_flow.rb +1 -1
  208. data/lib/ory-kratos-client/models/version.rb +6 -6
  209. data/lib/ory-kratos-client/models/volume.rb +6 -6
  210. data/lib/ory-kratos-client/models/volume_usage_data.rb +6 -6
  211. data/lib/ory-kratos-client/version.rb +4 -4
  212. data/lib/ory-kratos-client.rb +41 -33
  213. data/ory-kratos-client.gemspec +3 -3
  214. data/spec/api/metadata_api_spec.rb +79 -0
  215. data/spec/api/v0alpha1_api_spec.rb +429 -0
  216. data/spec/api_client_spec.rb +31 -31
  217. data/spec/configuration_spec.rb +8 -8
  218. data/spec/models/admin_create_identity_body_spec.rb +40 -0
  219. data/spec/models/admin_create_self_service_recovery_link_body_spec.rb +40 -0
  220. data/spec/models/admin_update_identity_body_spec.rb +46 -0
  221. data/spec/models/identity_state_spec.rb +28 -0
  222. data/spec/models/json_error_spec.rb +34 -0
  223. data/spec/models/self_service_error_container_spec.rb +52 -0
  224. data/spec/models/self_service_error_spec.rb +52 -0
  225. data/spec/models/self_service_login_flow_spec.rb +88 -0
  226. data/spec/models/self_service_logout_url_spec.rb +34 -0
  227. data/spec/models/self_service_recovery_flow_spec.rb +76 -0
  228. data/spec/models/self_service_recovery_flow_state_spec.rb +28 -0
  229. data/spec/models/self_service_recovery_link_spec.rb +40 -0
  230. data/spec/models/self_service_registration_flow_spec.rb +70 -0
  231. data/spec/models/self_service_settings_flow_spec.rb +82 -0
  232. data/spec/models/self_service_settings_flow_state_spec.rb +28 -0
  233. data/spec/models/self_service_verification_flow_spec.rb +76 -0
  234. data/spec/models/self_service_verification_flow_state_spec.rb +28 -0
  235. data/spec/models/submit_self_service_login_flow_body_spec.rb +43 -0
  236. data/spec/models/submit_self_service_login_flow_with_oidc_method_body_spec.rb +46 -0
  237. data/spec/models/submit_self_service_login_flow_with_password_method_body_spec.rb +56 -0
  238. data/spec/models/submit_self_service_logout_flow_without_browser_body_spec.rb +34 -0
  239. data/spec/models/submit_self_service_recovery_flow_body_spec.rb +43 -0
  240. data/spec/models/submit_self_service_recovery_flow_with_link_method_body_spec.rb +50 -0
  241. data/spec/models/submit_self_service_registration_flow_body_spec.rb +43 -0
  242. data/spec/models/submit_self_service_registration_flow_with_oidc_method_body_spec.rb +46 -0
  243. data/spec/models/submit_self_service_registration_flow_with_password_method_body_spec.rb +56 -0
  244. data/spec/models/submit_self_service_settings_flow_body_spec.rb +43 -0
  245. data/spec/models/submit_self_service_settings_flow_with_oidc_method_body_spec.rb +52 -0
  246. data/spec/models/submit_self_service_settings_flow_with_password_method_body_spec.rb +50 -0
  247. data/spec/models/submit_self_service_settings_flow_with_profile_method_body_spec.rb +46 -0
  248. data/spec/models/submit_self_service_verification_flow_body_spec.rb +43 -0
  249. data/spec/models/submit_self_service_verification_flow_with_link_method_body_spec.rb +50 -0
  250. data/spec/models/successful_self_service_login_without_browser_spec.rb +40 -0
  251. data/spec/models/successful_self_service_registration_without_browser_spec.rb +46 -0
  252. data/spec/models/successful_self_service_settings_without_browser_spec.rb +40 -0
  253. data/spec/models/verifiable_identity_address_spec.rb +76 -0
  254. data/spec/spec_helper.rb +2 -2
  255. metadata +154 -2
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  # Container represents a HTML Form. The container can work with both HTTP Form and JSON requests
18
18
  class UiContainer
19
19
  # Action should be used as the form action URL `<form action=\"{{ .Action }}\" method=\"post\">`.
@@ -61,13 +61,13 @@ module OryHydraClient
61
61
  # @param [Hash] attributes Model attributes in the form of hash
62
62
  def initialize(attributes = {})
63
63
  if (!attributes.is_a?(Hash))
64
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiContainer` initialize method"
64
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiContainer` initialize method"
65
65
  end
66
66
 
67
67
  # check to see if the attribute exists and convert string to symbol for hash key
68
68
  attributes = attributes.each_with_object({}) { |(k, v), h|
69
69
  if (!self.class.attribute_map.key?(k.to_sym))
70
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiContainer`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
70
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiContainer`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
71
71
  end
72
72
  h[k.to_sym] = v
73
73
  }
@@ -211,7 +211,7 @@ module OryHydraClient
211
211
  end
212
212
  else # model
213
213
  # models (e.g. Pet) or oneOf
214
- klass = OryHydraClient.const_get(type)
214
+ klass = OryKratosClient.const_get(type)
215
215
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
216
216
  end
217
217
  end
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  # Nodes are represented as HTML elements or their native UI equivalents. For example, a node can be an `<img>` tag, or an `<input element>` but also `some plain text`.
18
18
  class UiNode
19
19
  attr_accessor :attributes
@@ -63,13 +63,13 @@ module OryHydraClient
63
63
  # @param [Hash] attributes Model attributes in the form of hash
64
64
  def initialize(attributes = {})
65
65
  if (!attributes.is_a?(Hash))
66
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiNode` initialize method"
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiNode` initialize method"
67
67
  end
68
68
 
69
69
  # check to see if the attribute exists and convert string to symbol for hash key
70
70
  attributes = attributes.each_with_object({}) { |(k, v), h|
71
71
  if (!self.class.attribute_map.key?(k.to_sym))
72
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiNode`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiNode`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
73
73
  end
74
74
  h[k.to_sym] = v
75
75
  }
@@ -226,7 +226,7 @@ module OryHydraClient
226
226
  end
227
227
  else # model
228
228
  # models (e.g. Pet) or oneOf
229
- klass = OryHydraClient.const_get(type)
229
+ klass = OryKratosClient.const_get(type)
230
230
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
231
231
  end
232
232
  end
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  class UiNodeAnchorAttributes
18
18
  # The link's href (destination) URL. format: uri
19
19
  attr_accessor :href
@@ -51,13 +51,13 @@ module OryHydraClient
51
51
  # @param [Hash] attributes Model attributes in the form of hash
52
52
  def initialize(attributes = {})
53
53
  if (!attributes.is_a?(Hash))
54
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiNodeAnchorAttributes` initialize method"
54
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiNodeAnchorAttributes` initialize method"
55
55
  end
56
56
 
57
57
  # check to see if the attribute exists and convert string to symbol for hash key
58
58
  attributes = attributes.each_with_object({}) { |(k, v), h|
59
59
  if (!self.class.attribute_map.key?(k.to_sym))
60
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiNodeAnchorAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiNodeAnchorAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
61
61
  end
62
62
  h[k.to_sym] = v
63
63
  }
@@ -182,7 +182,7 @@ module OryHydraClient
182
182
  end
183
183
  else # model
184
184
  # models (e.g. Pet) or oneOf
185
- klass = OryHydraClient.const_get(type)
185
+ klass = OryKratosClient.const_get(type)
186
186
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
187
187
  end
188
188
  end
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  module UiNodeAttributes
18
18
  class << self
19
19
  # List of class defined in oneOf (OpenAPI v3)
@@ -83,7 +83,7 @@ module OryHydraClient
83
83
  return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
84
84
  end
85
85
  else # model
86
- const = OryHydraClient.const_get(klass)
86
+ const = OryKratosClient.const_get(klass)
87
87
  if const
88
88
  if const.respond_to?(:openapi_one_of) # nested oneOf model
89
89
  model = const.build(data)
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  class UiNodeImageAttributes
18
18
  # The image's source URL. format: uri
19
19
  attr_accessor :src
@@ -47,13 +47,13 @@ module OryHydraClient
47
47
  # @param [Hash] attributes Model attributes in the form of hash
48
48
  def initialize(attributes = {})
49
49
  if (!attributes.is_a?(Hash))
50
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiNodeImageAttributes` initialize method"
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiNodeImageAttributes` initialize method"
51
51
  end
52
52
 
53
53
  # check to see if the attribute exists and convert string to symbol for hash key
54
54
  attributes = attributes.each_with_object({}) { |(k, v), h|
55
55
  if (!self.class.attribute_map.key?(k.to_sym))
56
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiNodeImageAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiNodeImageAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
57
57
  end
58
58
  h[k.to_sym] = v
59
59
  }
@@ -168,7 +168,7 @@ module OryHydraClient
168
168
  end
169
169
  else # model
170
170
  # models (e.g. Pet) or oneOf
171
- klass = OryHydraClient.const_get(type)
171
+ klass = OryKratosClient.const_get(type)
172
172
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
173
173
  end
174
174
  end
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  # InputAttributes represents the attributes of an input node
18
18
  class UiNodeInputAttributes
19
19
  # Sets the input's disabled field to true or false.
@@ -32,6 +32,7 @@ module OryHydraClient
32
32
 
33
33
  attr_accessor :type
34
34
 
35
+ # The input's value.
35
36
  attr_accessor :value
36
37
 
37
38
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -61,13 +62,14 @@ module OryHydraClient
61
62
  :'pattern' => :'String',
62
63
  :'required' => :'Boolean',
63
64
  :'type' => :'String',
64
- :'value' => :'UiNodeInputAttributesValue'
65
+ :'value' => :'AnyType'
65
66
  }
66
67
  end
67
68
 
68
69
  # List of attributes with nullable: true
69
70
  def self.openapi_nullable
70
71
  Set.new([
72
+ :'value'
71
73
  ])
72
74
  end
73
75
 
@@ -75,13 +77,13 @@ module OryHydraClient
75
77
  # @param [Hash] attributes Model attributes in the form of hash
76
78
  def initialize(attributes = {})
77
79
  if (!attributes.is_a?(Hash))
78
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiNodeInputAttributes` initialize method"
80
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiNodeInputAttributes` initialize method"
79
81
  end
80
82
 
81
83
  # check to see if the attribute exists and convert string to symbol for hash key
82
84
  attributes = attributes.each_with_object({}) { |(k, v), h|
83
85
  if (!self.class.attribute_map.key?(k.to_sym))
84
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiNodeInputAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
86
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiNodeInputAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
85
87
  end
86
88
  h[k.to_sym] = v
87
89
  }
@@ -236,7 +238,7 @@ module OryHydraClient
236
238
  end
237
239
  else # model
238
240
  # models (e.g. Pet) or oneOf
239
- klass = OryHydraClient.const_get(type)
241
+ klass = OryKratosClient.const_get(type)
240
242
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
241
243
  end
242
244
  end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.6.3-alpha.1
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.1
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  class UiNodeTextAttributes
18
18
  attr_accessor :text
19
19
 
@@ -46,13 +46,13 @@ module OryHydraClient
46
46
  # @param [Hash] attributes Model attributes in the form of hash
47
47
  def initialize(attributes = {})
48
48
  if (!attributes.is_a?(Hash))
49
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiNodeTextAttributes` initialize method"
49
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiNodeTextAttributes` initialize method"
50
50
  end
51
51
 
52
52
  # check to see if the attribute exists and convert string to symbol for hash key
53
53
  attributes = attributes.each_with_object({}) { |(k, v), h|
54
54
  if (!self.class.attribute_map.key?(k.to_sym))
55
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiNodeTextAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiNodeTextAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
56
56
  end
57
57
  h[k.to_sym] = v
58
58
  }
@@ -167,7 +167,7 @@ module OryHydraClient
167
167
  end
168
168
  else # model
169
169
  # models (e.g. Pet) or oneOf
170
- klass = OryHydraClient.const_get(type)
170
+ klass = OryKratosClient.const_get(type)
171
171
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
172
172
  end
173
173
  end
@@ -3,17 +3,17 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 5.1.1
9
+ OpenAPI Generator version: 5.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
  require 'time'
15
15
 
16
- module OryHydraClient
16
+ module OryKratosClient
17
17
  class UiText
18
18
  # The message's context. Useful when customizing messages.
19
19
  attr_accessor :context
@@ -60,13 +60,13 @@ module OryHydraClient
60
60
  # @param [Hash] attributes Model attributes in the form of hash
61
61
  def initialize(attributes = {})
62
62
  if (!attributes.is_a?(Hash))
63
- fail ArgumentError, "The input argument (attributes) must be a hash in `OryHydraClient::UiText` initialize method"
63
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::UiText` initialize method"
64
64
  end
65
65
 
66
66
  # check to see if the attribute exists and convert string to symbol for hash key
67
67
  attributes = attributes.each_with_object({}) { |(k, v), h|
68
68
  if (!self.class.attribute_map.key?(k.to_sym))
69
- fail ArgumentError, "`#{k}` is not a valid attribute in `OryHydraClient::UiText`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
69
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::UiText`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
70
70
  end
71
71
  h[k.to_sym] = v
72
72
  }
@@ -206,7 +206,7 @@ module OryHydraClient
206
206
  end
207
207
  else # model
208
208
  # models (e.g. Pet) or oneOf
209
- klass = OryHydraClient.const_get(type)
209
+ klass = OryKratosClient.const_get(type)
210
210
  klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
211
211
  end
212
212
  end
@@ -3,7 +3,7 @@
3
3
 
4
4
  #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
5
 
6
- The version of the OpenAPI document: v0.6.2-alpha.1
6
+ The version of the OpenAPI document: v0.6.3-alpha.1
7
7
  Contact: hi@ory.sh
8
8
  Generated by: https://openapi-generator.tech
9
9
  OpenAPI Generator version: 5.1.1
@@ -0,0 +1,313 @@
1
+ =begin
2
+ #Ory Kratos API
3
+
4
+ #Documentation for all public and administrative Ory Kratos APIs. Public and administrative APIs are exposed on different ports. Public APIs can face the public internet without any protection while administrative APIs should never be exposed without prior authorization. To protect the administative API port you should use something like Nginx, Ory Oathkeeper, or any other technology capable of authorizing incoming requests.
5
+
6
+ The version of the OpenAPI document: v0.7.1-alpha.2
7
+ Contact: hi@ory.sh
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.2.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module OryKratosClient
17
+ # VerifiableAddress is an identity's verifiable address
18
+ class VerifiableIdentityAddress
19
+ # When this entry was created
20
+ attr_accessor :created_at
21
+
22
+ attr_accessor :id
23
+
24
+ # VerifiableAddressStatus must not exceed 16 characters as that is the limitation in the SQL Schema
25
+ attr_accessor :status
26
+
27
+ # When this entry was last updated
28
+ attr_accessor :updated_at
29
+
30
+ # The address value example foo@user.com
31
+ attr_accessor :value
32
+
33
+ # Indicates if the address has already been verified
34
+ attr_accessor :verified
35
+
36
+ attr_accessor :verified_at
37
+
38
+ # VerifiableAddressType must not exceed 16 characters as that is the limitation in the SQL Schema
39
+ attr_accessor :via
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'created_at' => :'created_at',
45
+ :'id' => :'id',
46
+ :'status' => :'status',
47
+ :'updated_at' => :'updated_at',
48
+ :'value' => :'value',
49
+ :'verified' => :'verified',
50
+ :'verified_at' => :'verified_at',
51
+ :'via' => :'via'
52
+ }
53
+ end
54
+
55
+ # Returns all the JSON keys this model knows about
56
+ def self.acceptable_attributes
57
+ attribute_map.values
58
+ end
59
+
60
+ # Attribute type mapping.
61
+ def self.openapi_types
62
+ {
63
+ :'created_at' => :'Time',
64
+ :'id' => :'String',
65
+ :'status' => :'String',
66
+ :'updated_at' => :'Time',
67
+ :'value' => :'String',
68
+ :'verified' => :'Boolean',
69
+ :'verified_at' => :'Time',
70
+ :'via' => :'String'
71
+ }
72
+ end
73
+
74
+ # List of attributes with nullable: true
75
+ def self.openapi_nullable
76
+ Set.new([
77
+ ])
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ if (!attributes.is_a?(Hash))
84
+ fail ArgumentError, "The input argument (attributes) must be a hash in `OryKratosClient::VerifiableIdentityAddress` initialize method"
85
+ end
86
+
87
+ # check to see if the attribute exists and convert string to symbol for hash key
88
+ attributes = attributes.each_with_object({}) { |(k, v), h|
89
+ if (!self.class.attribute_map.key?(k.to_sym))
90
+ fail ArgumentError, "`#{k}` is not a valid attribute in `OryKratosClient::VerifiableIdentityAddress`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
91
+ end
92
+ h[k.to_sym] = v
93
+ }
94
+
95
+ if attributes.key?(:'created_at')
96
+ self.created_at = attributes[:'created_at']
97
+ end
98
+
99
+ if attributes.key?(:'id')
100
+ self.id = attributes[:'id']
101
+ end
102
+
103
+ if attributes.key?(:'status')
104
+ self.status = attributes[:'status']
105
+ end
106
+
107
+ if attributes.key?(:'updated_at')
108
+ self.updated_at = attributes[:'updated_at']
109
+ end
110
+
111
+ if attributes.key?(:'value')
112
+ self.value = attributes[:'value']
113
+ end
114
+
115
+ if attributes.key?(:'verified')
116
+ self.verified = attributes[:'verified']
117
+ end
118
+
119
+ if attributes.key?(:'verified_at')
120
+ self.verified_at = attributes[:'verified_at']
121
+ end
122
+
123
+ if attributes.key?(:'via')
124
+ self.via = attributes[:'via']
125
+ end
126
+ end
127
+
128
+ # Show invalid properties with the reasons. Usually used together with valid?
129
+ # @return Array for valid properties with the reasons
130
+ def list_invalid_properties
131
+ invalid_properties = Array.new
132
+ if @id.nil?
133
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
134
+ end
135
+
136
+ if @status.nil?
137
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
138
+ end
139
+
140
+ if @value.nil?
141
+ invalid_properties.push('invalid value for "value", value cannot be nil.')
142
+ end
143
+
144
+ if @verified.nil?
145
+ invalid_properties.push('invalid value for "verified", verified cannot be nil.')
146
+ end
147
+
148
+ if @via.nil?
149
+ invalid_properties.push('invalid value for "via", via cannot be nil.')
150
+ end
151
+
152
+ invalid_properties
153
+ end
154
+
155
+ # Check to see if the all the properties in the model are valid
156
+ # @return true if the model is valid
157
+ def valid?
158
+ return false if @id.nil?
159
+ return false if @status.nil?
160
+ return false if @value.nil?
161
+ return false if @verified.nil?
162
+ return false if @via.nil?
163
+ true
164
+ end
165
+
166
+ # Checks equality by comparing each attribute.
167
+ # @param [Object] Object to be compared
168
+ def ==(o)
169
+ return true if self.equal?(o)
170
+ self.class == o.class &&
171
+ created_at == o.created_at &&
172
+ id == o.id &&
173
+ status == o.status &&
174
+ updated_at == o.updated_at &&
175
+ value == o.value &&
176
+ verified == o.verified &&
177
+ verified_at == o.verified_at &&
178
+ via == o.via
179
+ end
180
+
181
+ # @see the `==` method
182
+ # @param [Object] Object to be compared
183
+ def eql?(o)
184
+ self == o
185
+ end
186
+
187
+ # Calculates hash code according to all attributes.
188
+ # @return [Integer] Hash code
189
+ def hash
190
+ [created_at, id, status, updated_at, value, verified, verified_at, via].hash
191
+ end
192
+
193
+ # Builds the object from hash
194
+ # @param [Hash] attributes Model attributes in the form of hash
195
+ # @return [Object] Returns the model itself
196
+ def self.build_from_hash(attributes)
197
+ new.build_from_hash(attributes)
198
+ end
199
+
200
+ # Builds the object from hash
201
+ # @param [Hash] attributes Model attributes in the form of hash
202
+ # @return [Object] Returns the model itself
203
+ def build_from_hash(attributes)
204
+ return nil unless attributes.is_a?(Hash)
205
+ self.class.openapi_types.each_pair do |key, type|
206
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
207
+ self.send("#{key}=", nil)
208
+ elsif type =~ /\AArray<(.*)>/i
209
+ # check to ensure the input is an array given that the attribute
210
+ # is documented as an array but the input is not
211
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
212
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
213
+ end
214
+ elsif !attributes[self.class.attribute_map[key]].nil?
215
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
216
+ end
217
+ end
218
+
219
+ self
220
+ end
221
+
222
+ # Deserializes the data based on type
223
+ # @param string type Data type
224
+ # @param string value Value to be deserialized
225
+ # @return [Object] Deserialized data
226
+ def _deserialize(type, value)
227
+ case type.to_sym
228
+ when :Time
229
+ Time.parse(value)
230
+ when :Date
231
+ Date.parse(value)
232
+ when :String
233
+ value.to_s
234
+ when :Integer
235
+ value.to_i
236
+ when :Float
237
+ value.to_f
238
+ when :Boolean
239
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
240
+ true
241
+ else
242
+ false
243
+ end
244
+ when :Object
245
+ # generic object (usually a Hash), return directly
246
+ value
247
+ when /\AArray<(?<inner_type>.+)>\z/
248
+ inner_type = Regexp.last_match[:inner_type]
249
+ value.map { |v| _deserialize(inner_type, v) }
250
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
251
+ k_type = Regexp.last_match[:k_type]
252
+ v_type = Regexp.last_match[:v_type]
253
+ {}.tap do |hash|
254
+ value.each do |k, v|
255
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
256
+ end
257
+ end
258
+ else # model
259
+ # models (e.g. Pet) or oneOf
260
+ klass = OryKratosClient.const_get(type)
261
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
262
+ end
263
+ end
264
+
265
+ # Returns the string representation of the object
266
+ # @return [String] String presentation of the object
267
+ def to_s
268
+ to_hash.to_s
269
+ end
270
+
271
+ # to_body is an alias to to_hash (backward compatibility)
272
+ # @return [Hash] Returns the object in the form of hash
273
+ def to_body
274
+ to_hash
275
+ end
276
+
277
+ # Returns the object in the form of hash
278
+ # @return [Hash] Returns the object in the form of hash
279
+ def to_hash
280
+ hash = {}
281
+ self.class.attribute_map.each_pair do |attr, param|
282
+ value = self.send(attr)
283
+ if value.nil?
284
+ is_nullable = self.class.openapi_nullable.include?(attr)
285
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
286
+ end
287
+
288
+ hash[param] = _to_hash(value)
289
+ end
290
+ hash
291
+ end
292
+
293
+ # Outputs non-array value in the form of hash
294
+ # For object, use to_hash. Otherwise, just return the value
295
+ # @param [Object] value Any valid value
296
+ # @return [Hash] Returns the value in the form of hash
297
+ def _to_hash(value)
298
+ if value.is_a?(Array)
299
+ value.compact.map { |v| _to_hash(v) }
300
+ elsif value.is_a?(Hash)
301
+ {}.tap do |hash|
302
+ value.each { |k, v| hash[k] = _to_hash(v) }
303
+ end
304
+ elsif value.respond_to? :to_hash
305
+ value.to_hash
306
+ else
307
+ value
308
+ end
309
+ end
310
+
311
+ end
312
+
313
+ end