trinsic_api 2.3.0.pre.alpha2 → 3.0.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.
Files changed (278) hide show
  1. checksums.yaml +4 -4
  2. data/docs/{EnvironmentRedirectUrisAddRequest.md → AddRedirectUriRequest.md} +2 -2
  3. data/docs/Address.md +2 -2
  4. data/docs/AppleWalletProviderOutput.md +18 -0
  5. data/docs/AttachmentInfo.md +24 -0
  6. data/docs/{MdlFieldDataType.md → AttributeAvailability.md} +2 -2
  7. data/docs/AustriaHandySignaturProviderOutput.md +20 -0
  8. data/docs/BelgiumIdCardProviderOutput.md +24 -0
  9. data/docs/ContractAttachment.md +20 -0
  10. data/docs/ContractAttribute.md +20 -0
  11. data/docs/CoteDIvoireNidLookup2Input.md +18 -0
  12. data/docs/CzechiaMojeIdProviderOutput.md +24 -0
  13. data/docs/DocumentData.md +12 -10
  14. data/docs/EstoniaIdCardProviderOutput.md +24 -0
  15. data/docs/FaydaProviderOutput.md +1 -1
  16. data/docs/FinlandIdCardProviderOutput.md +24 -0
  17. data/docs/FrejaProviderOutput.md +24 -0
  18. data/docs/FrenchNumeriqueGivenName.md +22 -0
  19. data/docs/FrenchNumeriqueNationality.md +20 -0
  20. data/docs/FrenchNumeriquePhone.md +22 -0
  21. data/docs/FrenchNumeriqueProviderOutput.md +66 -0
  22. data/docs/GetAttachmentRequest.md +2 -4
  23. data/docs/GoogleWalletProviderOutput.md +18 -0
  24. data/docs/IdentityData.md +9 -11
  25. data/docs/ItsmeProviderOutput.md +26 -0
  26. data/docs/KenyaNidMatch2Input.md +1 -1
  27. data/docs/{Language.md → KenyaNidMatch2InputSex.md} +2 -2
  28. data/docs/LaWalletProviderOutput.md +52 -0
  29. data/docs/LatviaEparakstsMobileProviderOutput.md +22 -0
  30. data/docs/LatviaEparakstsProviderOutput.md +22 -0
  31. data/docs/ListProvidersResponse.md +1 -1
  32. data/docs/{ListEnvironmentRedirectUrisResponse.md → ListRedirectUrisResponse.md} +2 -2
  33. data/docs/LithuaniaIdCardProviderOutput.md +24 -0
  34. data/docs/LloydsSmartIdProviderOutput.md +40 -0
  35. data/docs/Match.md +2 -2
  36. data/docs/MatchData.md +12 -10
  37. data/docs/MdlOutput.md +24 -0
  38. data/docs/MdlOutputCertificateData.md +26 -0
  39. data/docs/{ExternalMdlFieldData.md → MdlOutputFieldData.md} +3 -3
  40. data/docs/{FieldAvailability.md → MdlOutputFieldDataType.md} +2 -2
  41. data/docs/MexicoCurpProviderOutput.md +1 -1
  42. data/docs/MitIdProviderOutput.md +38 -0
  43. data/docs/MobileIdInput.md +1 -1
  44. data/docs/{SexV1.md → MobileIdLanguage.md} +2 -2
  45. data/docs/MobileIdProviderOutput.md +34 -0
  46. data/docs/NigeriaNinBiometric2Input.md +22 -0
  47. data/docs/NigeriaNinLookup2Input.md +18 -0
  48. data/docs/NigeriaNinMatch2Input.md +30 -0
  49. data/docs/NigeriaNinMatch2InputSex.md +15 -0
  50. data/docs/PersonData.md +10 -10
  51. data/docs/PeruDniAddress.md +22 -0
  52. data/docs/PeruDniLookupInput.md +18 -0
  53. data/docs/PeruDniProviderOutput.md +48 -0
  54. data/docs/PhilippinesDigitalNidProviderOutput.md +2 -2
  55. data/docs/PhilippinesPhysicalNidProviderOutput.md +2 -2
  56. data/docs/PolandEdoAppProviderOutput.md +24 -0
  57. data/docs/PolandMojeIdProviderOutput.md +22 -0
  58. data/docs/PortugalIdCardProviderOutput.md +24 -0
  59. data/docs/PostOfficeEasyIdProviderOutput.md +40 -0
  60. data/docs/{ProviderContract.md → Provider.md} +29 -25
  61. data/docs/ProviderInput.md +50 -32
  62. data/docs/ProviderOutput.md +61 -7
  63. data/docs/ProvidersApi.md +79 -0
  64. data/docs/RecommendProviderHealthOption.md +15 -0
  65. data/docs/{ProviderInformation.md → RecommendProviderInformation.md} +14 -14
  66. data/docs/{RecommendRequest.md → RecommendProvidersRequest.md} +3 -3
  67. data/docs/RecommendProvidersResponse.md +18 -0
  68. data/docs/{EnvironmentRedirectUrisApi.md → RedirectUrisApi.md} +21 -21
  69. data/docs/SamsungWalletProviderOutput.md +18 -0
  70. data/docs/SerbiaIdCardProviderOutput.md +24 -0
  71. data/docs/SessionsApi.md +149 -1
  72. data/docs/SmartIdInput.md +0 -2
  73. data/docs/SmartIdProviderOutput.md +42 -0
  74. data/docs/SouthAfricaNidBiometric2Input.md +22 -0
  75. data/docs/SouthAfricaNidMatch2Input.md +30 -0
  76. data/docs/SouthAfricaNidMatch2InputSex.md +15 -0
  77. data/docs/SpidProviderOutput.md +45 -25
  78. data/docs/SubProviderMetadata.md +0 -2
  79. data/docs/SwedenBankIdProviderOutput.md +42 -0
  80. data/docs/UgandaNidMatch2Input.md +22 -0
  81. data/docs/VerificationProfileResponse.md +3 -1
  82. data/docs/VerificationProfilesApi.md +3 -1
  83. data/docs/YotiDocumentDetails.md +26 -0
  84. data/docs/YotiProviderOutput.md +40 -0
  85. data/docs/YotiStructuredPostalAddress.md +56 -0
  86. data/docs/ZimbabweNidLookup2Input.md +18 -0
  87. data/lib/trinsic_api/api/providers_api.rb +82 -0
  88. data/lib/trinsic_api/api/{environment_redirect_uris_api.rb → redirect_uris_api.rb} +28 -28
  89. data/lib/trinsic_api/api/sessions_api.rb +142 -2
  90. data/lib/trinsic_api/api/verification_profiles_api.rb +3 -0
  91. data/lib/trinsic_api/models/{environment_redirect_uris_add_request.rb → add_redirect_uri_request.rb} +12 -3
  92. data/lib/trinsic_api/models/address.rb +3 -0
  93. data/lib/trinsic_api/models/apple_wallet_provider_output.rb +239 -0
  94. data/lib/trinsic_api/models/attachment_info.rb +319 -0
  95. data/lib/trinsic_api/models/{field_availability.rb → attribute_availability.rb} +3 -3
  96. data/lib/trinsic_api/models/austria_handy_signatur_provider_output.rb +266 -0
  97. data/lib/trinsic_api/models/{bangladesh_nid_input.rb → belgium_id_card_provider_output.rb} +60 -90
  98. data/lib/trinsic_api/models/{contract_identifier_field.rb → contract_attachment.rb} +25 -52
  99. data/lib/trinsic_api/models/{contract_field.rb → contract_attribute.rb} +8 -35
  100. data/lib/trinsic_api/models/cote_d_ivoire_nid_lookup2_input.rb +222 -0
  101. data/lib/trinsic_api/models/{finalize_mdl_exchange_response.rb → czechia_moje_id_provider_output.rb} +85 -52
  102. data/lib/trinsic_api/models/document_data.rb +18 -1
  103. data/lib/trinsic_api/models/estonia_id_card_provider_output.rb +320 -0
  104. data/lib/trinsic_api/models/fayda_provider_output.rb +1 -0
  105. data/lib/trinsic_api/models/finland_id_card_provider_output.rb +320 -0
  106. data/lib/trinsic_api/models/freja_provider_output.rb +320 -0
  107. data/lib/trinsic_api/models/french_numerique_given_name.rb +245 -0
  108. data/lib/trinsic_api/models/french_numerique_nationality.rb +234 -0
  109. data/lib/trinsic_api/models/french_numerique_phone.rb +245 -0
  110. data/lib/trinsic_api/models/french_numerique_provider_output.rb +487 -0
  111. data/lib/trinsic_api/models/get_attachment_request.rb +22 -49
  112. data/lib/trinsic_api/models/google_wallet_provider_output.rb +239 -0
  113. data/lib/trinsic_api/models/identity_data.rb +30 -33
  114. data/lib/trinsic_api/models/itsme_provider_output.rb +315 -0
  115. data/lib/trinsic_api/models/kenya_nid_match2_input.rb +1 -1
  116. data/lib/trinsic_api/models/{sex_v1.rb → kenya_nid_match2_input_sex.rb} +4 -6
  117. data/lib/trinsic_api/models/la_wallet_provider_output.rb +682 -0
  118. data/lib/trinsic_api/models/latvia_eparaksts_mobile_provider_output.rb +293 -0
  119. data/lib/trinsic_api/models/{create_mdl_exchange_response.rb → latvia_eparaksts_provider_output.rb} +53 -52
  120. data/lib/trinsic_api/models/list_providers_response.rb +2 -2
  121. data/lib/trinsic_api/models/{list_environment_redirect_uris_response.rb → list_redirect_uris_response.rb} +3 -3
  122. data/lib/trinsic_api/models/lithuania_id_card_provider_output.rb +320 -0
  123. data/lib/trinsic_api/models/lloyds_smart_id_provider_output.rb +344 -0
  124. data/lib/trinsic_api/models/match.rb +2 -0
  125. data/lib/trinsic_api/models/match_data.rb +23 -1
  126. data/lib/trinsic_api/models/{mdl_identity_data.rb → mdl_output.rb} +35 -8
  127. data/lib/trinsic_api/models/{mdl_certificate_data.rb → mdl_output_certificate_data.rb} +4 -4
  128. data/lib/trinsic_api/models/{external_mdl_field_data.rb → mdl_output_field_data.rb} +4 -4
  129. data/lib/trinsic_api/models/{mdl_field_data_type.rb → mdl_output_field_data_type.rb} +5 -4
  130. data/lib/trinsic_api/models/mexico_curp_provider_output.rb +1 -0
  131. data/lib/trinsic_api/models/mit_id_provider_output.rb +333 -0
  132. data/lib/trinsic_api/models/mobile_id_input.rb +1 -1
  133. data/lib/trinsic_api/models/{language.rb → mobile_id_language.rb} +3 -3
  134. data/lib/trinsic_api/models/mobile_id_provider_output.rb +311 -0
  135. data/lib/trinsic_api/models/nigeria_nin_biometric2_input.rb +246 -0
  136. data/lib/trinsic_api/models/{provider_attachments.rb → nigeria_nin_lookup2_input.rb} +12 -11
  137. data/lib/trinsic_api/models/{recommend_response.rb → nigeria_nin_match2_input.rb} +94 -82
  138. data/lib/trinsic_api/models/nigeria_nin_match2_input_sex.rb +40 -0
  139. data/lib/trinsic_api/models/person_data.rb +7 -0
  140. data/lib/trinsic_api/models/{identifier.rb → peru_dni_address.rb} +53 -49
  141. data/lib/trinsic_api/models/peru_dni_lookup_input.rb +222 -0
  142. data/lib/trinsic_api/models/peru_dni_provider_output.rb +518 -0
  143. data/lib/trinsic_api/models/philippines_digital_nid_provider_output.rb +2 -1
  144. data/lib/trinsic_api/models/philippines_physical_nid_provider_output.rb +2 -1
  145. data/lib/trinsic_api/models/poland_edo_app_provider_output.rb +320 -0
  146. data/lib/trinsic_api/models/poland_moje_id_provider_output.rb +293 -0
  147. data/lib/trinsic_api/models/{finalize_mdl_exchange_request.rb → portugal_id_card_provider_output.rb} +69 -68
  148. data/lib/trinsic_api/models/post_office_easy_id_provider_output.rb +344 -0
  149. data/lib/trinsic_api/models/{provider_contract.rb → provider.rb} +183 -125
  150. data/lib/trinsic_api/models/provider_input.rb +223 -124
  151. data/lib/trinsic_api/models/provider_output.rb +317 -15
  152. data/lib/trinsic_api/models/recommend_provider_health_option.rb +41 -0
  153. data/lib/trinsic_api/models/{provider_information.rb → recommend_provider_information.rb} +79 -73
  154. data/lib/trinsic_api/models/{recommend_request.rb → recommend_providers_request.rb} +27 -5
  155. data/lib/trinsic_api/models/{list_provider_contracts_response.rb → recommend_providers_response.rb} +20 -21
  156. data/lib/trinsic_api/models/redirect_uri_response.rb +9 -0
  157. data/lib/trinsic_api/models/samsung_wallet_provider_output.rb +239 -0
  158. data/lib/trinsic_api/models/serbia_id_card_provider_output.rb +320 -0
  159. data/lib/trinsic_api/models/smart_id_input.rb +1 -12
  160. data/lib/trinsic_api/models/smart_id_provider_output.rb +355 -0
  161. data/lib/trinsic_api/models/south_africa_nid_biometric2_input.rb +246 -0
  162. data/lib/trinsic_api/models/south_africa_nid_match2_input.rb +310 -0
  163. data/lib/trinsic_api/models/south_africa_nid_match2_input_sex.rb +40 -0
  164. data/lib/trinsic_api/models/spid_provider_output.rb +131 -20
  165. data/lib/trinsic_api/models/sub_provider_metadata.rb +1 -28
  166. data/lib/trinsic_api/models/{provider_info.rb → sweden_bank_id_provider_output.rb} +121 -153
  167. data/lib/trinsic_api/models/uganda_nid_match2_input.rb +244 -0
  168. data/lib/trinsic_api/models/verification_profile_response.rb +31 -4
  169. data/lib/trinsic_api/models/yoti_document_details.rb +266 -0
  170. data/lib/trinsic_api/models/yoti_provider_output.rb +344 -0
  171. data/lib/trinsic_api/models/yoti_structured_postal_address.rb +431 -0
  172. data/lib/trinsic_api/models/{document_scan_attachments.rb → zimbabwe_nid_lookup2_input.rb} +12 -11
  173. data/lib/trinsic_api/version.rb +1 -1
  174. data/lib/trinsic_api.rb +63 -30
  175. data/spec/api/providers_api_spec.rb +47 -0
  176. data/spec/api/{environment_redirect_uris_api_spec.rb → redirect_uris_api_spec.rb} +10 -10
  177. data/spec/api/sessions_api_spec.rb +27 -1
  178. data/spec/api/verification_profiles_api_spec.rb +1 -0
  179. data/spec/models/{environment_redirect_uris_add_request_spec.rb → add_redirect_uri_request_spec.rb} +6 -6
  180. data/spec/models/{list_provider_contracts_response_spec.rb → apple_wallet_provider_output_spec.rb} +7 -7
  181. data/spec/models/attachment_info_spec.rb +54 -0
  182. data/spec/models/{mdl_field_data_type_spec.rb → attribute_availability_spec.rb} +6 -6
  183. data/spec/models/austria_handy_signatur_provider_output_spec.rb +42 -0
  184. data/spec/models/{finalize_mdl_exchange_response_spec.rb → belgium_id_card_provider_output_spec.rb} +10 -10
  185. data/spec/models/contract_attachment_spec.rb +42 -0
  186. data/spec/models/contract_attribute_spec.rb +42 -0
  187. data/spec/models/cote_d_ivoire_nid_lookup2_input_spec.rb +36 -0
  188. data/spec/models/czechia_moje_id_provider_output_spec.rb +54 -0
  189. data/spec/models/document_data_spec.rb +6 -0
  190. data/spec/models/estonia_id_card_provider_output_spec.rb +54 -0
  191. data/spec/models/finland_id_card_provider_output_spec.rb +54 -0
  192. data/spec/models/freja_provider_output_spec.rb +54 -0
  193. data/spec/models/french_numerique_given_name_spec.rb +48 -0
  194. data/spec/models/french_numerique_nationality_spec.rb +42 -0
  195. data/spec/models/{contract_identifier_field_spec.rb → french_numerique_phone_spec.rb} +9 -9
  196. data/spec/models/french_numerique_provider_output_spec.rb +180 -0
  197. data/spec/models/get_attachment_request_spec.rb +1 -7
  198. data/spec/models/google_wallet_provider_output_spec.rb +36 -0
  199. data/spec/models/identity_data_spec.rb +1 -7
  200. data/spec/models/{bangladesh_nid_input_spec.rb → itsme_provider_output_spec.rb} +11 -11
  201. data/spec/models/{sex_v1_spec.rb → kenya_nid_match2_input_sex_spec.rb} +6 -6
  202. data/spec/models/la_wallet_provider_output_spec.rb +138 -0
  203. data/spec/models/latvia_eparaksts_mobile_provider_output_spec.rb +48 -0
  204. data/spec/models/latvia_eparaksts_provider_output_spec.rb +48 -0
  205. data/spec/models/{list_environment_redirect_uris_response_spec.rb → list_redirect_uris_response_spec.rb} +6 -6
  206. data/spec/models/lithuania_id_card_provider_output_spec.rb +54 -0
  207. data/spec/models/lloyds_smart_id_provider_output_spec.rb +102 -0
  208. data/spec/models/match_data_spec.rb +6 -0
  209. data/spec/models/{mdl_certificate_data_spec.rb → mdl_output_certificate_data_spec.rb} +6 -6
  210. data/spec/models/{external_mdl_field_data_spec.rb → mdl_output_field_data_spec.rb} +6 -6
  211. data/spec/models/{field_availability_spec.rb → mdl_output_field_data_type_spec.rb} +6 -6
  212. data/spec/models/{mdl_identity_data_spec.rb → mdl_output_spec.rb} +12 -6
  213. data/spec/models/mit_id_provider_output_spec.rb +96 -0
  214. data/spec/models/{language_spec.rb → mobile_id_language_spec.rb} +6 -6
  215. data/spec/models/{create_mdl_exchange_request_spec.rb → mobile_id_provider_output_spec.rb} +20 -14
  216. data/spec/models/nigeria_nin_biometric2_input_spec.rb +48 -0
  217. data/spec/models/{document_scan_attachments_spec.rb → nigeria_nin_lookup2_input_spec.rb} +7 -7
  218. data/spec/models/nigeria_nin_match2_input_sex_spec.rb +30 -0
  219. data/spec/models/{provider_info_spec.rb → nigeria_nin_match2_input_spec.rb} +13 -13
  220. data/spec/models/{identifier_spec.rb → peru_dni_address_spec.rb} +9 -9
  221. data/spec/models/{provider_attachments_spec.rb → peru_dni_lookup_input_spec.rb} +7 -7
  222. data/spec/models/peru_dni_provider_output_spec.rb +126 -0
  223. data/spec/models/{finalize_mdl_exchange_request_spec.rb → poland_edo_app_provider_output_spec.rb} +10 -10
  224. data/spec/models/{create_mdl_exchange_response_spec.rb → poland_moje_id_provider_output_spec.rb} +9 -9
  225. data/spec/models/portugal_id_card_provider_output_spec.rb +54 -0
  226. data/spec/models/post_office_easy_id_provider_output_spec.rb +102 -0
  227. data/spec/models/provider_input_spec.rb +70 -16
  228. data/spec/models/provider_output_spec.rb +164 -2
  229. data/spec/models/{provider_contract_spec.rb → provider_spec.rb} +28 -16
  230. data/spec/models/recommend_provider_health_option_spec.rb +30 -0
  231. data/spec/models/{provider_information_spec.rb → recommend_provider_information_spec.rb} +11 -11
  232. data/spec/models/{recommend_request_spec.rb → recommend_providers_request_spec.rb} +6 -6
  233. data/spec/models/recommend_providers_response_spec.rb +36 -0
  234. data/spec/models/samsung_wallet_provider_output_spec.rb +36 -0
  235. data/spec/models/serbia_id_card_provider_output_spec.rb +54 -0
  236. data/spec/models/smart_id_input_spec.rb +0 -6
  237. data/spec/models/smart_id_provider_output_spec.rb +108 -0
  238. data/spec/models/south_africa_nid_biometric2_input_spec.rb +48 -0
  239. data/spec/models/south_africa_nid_match2_input_sex_spec.rb +30 -0
  240. data/spec/models/{attachment_access_keys_spec.rb → south_africa_nid_match2_input_spec.rb} +18 -12
  241. data/spec/models/spid_provider_output_spec.rb +61 -1
  242. data/spec/models/sub_provider_metadata_spec.rb +0 -6
  243. data/spec/models/sweden_bank_id_provider_output_spec.rb +108 -0
  244. data/spec/models/{contract_field_spec.rb → uganda_nid_match2_input_spec.rb} +9 -9
  245. data/spec/models/verification_profile_response_spec.rb +6 -0
  246. data/spec/models/yoti_document_details_spec.rb +60 -0
  247. data/spec/models/yoti_provider_output_spec.rb +102 -0
  248. data/spec/models/yoti_structured_postal_address_spec.rb +150 -0
  249. data/spec/models/zimbabwe_nid_lookup2_input_spec.rb +36 -0
  250. metadata +254 -122
  251. data/docs/AttachmentAccessKeys.md +0 -28
  252. data/docs/AttachmentsApi.md +0 -79
  253. data/docs/BangladeshNidInput.md +0 -26
  254. data/docs/ContractField.md +0 -22
  255. data/docs/ContractIdentifierField.md +0 -22
  256. data/docs/CreateMdlExchangeRequest.md +0 -32
  257. data/docs/CreateMdlExchangeResponse.md +0 -22
  258. data/docs/DocumentScanAttachments.md +0 -18
  259. data/docs/FinalizeMdlExchangeRequest.md +0 -24
  260. data/docs/FinalizeMdlExchangeResponse.md +0 -24
  261. data/docs/Identifier.md +0 -22
  262. data/docs/ListProviderContractsResponse.md +0 -18
  263. data/docs/MdlApi.md +0 -151
  264. data/docs/MdlCertificateData.md +0 -26
  265. data/docs/MdlIdentityData.md +0 -22
  266. data/docs/NetworkApi.md +0 -223
  267. data/docs/ProviderAttachments.md +0 -18
  268. data/docs/ProviderInfo.md +0 -30
  269. data/docs/RecommendResponse.md +0 -22
  270. data/lib/trinsic_api/api/attachments_api.rb +0 -86
  271. data/lib/trinsic_api/api/mdl_api.rb +0 -150
  272. data/lib/trinsic_api/api/network_api.rb +0 -215
  273. data/lib/trinsic_api/models/attachment_access_keys.rb +0 -287
  274. data/lib/trinsic_api/models/create_mdl_exchange_request.rb +0 -404
  275. data/spec/api/attachments_api_spec.rb +0 -47
  276. data/spec/api/mdl_api_spec.rb +0 -59
  277. data/spec/api/network_api_spec.rb +0 -72
  278. data/spec/models/recommend_response_spec.rb +0 -48
@@ -0,0 +1,239 @@
1
+ =begin
2
+ #Trinsic API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: v1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.13.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TrinsicApi
17
+ # Exposed properties for the `google-wallet` Provider which do not directly map to the normalized IdentityData model.
18
+ class GoogleWalletProviderOutput
19
+ # The raw output of the mDL exchange performed through Google Wallet.
20
+ attr_accessor :raw_mdl_output
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'raw_mdl_output' => :'rawMdlOutput'
26
+ }
27
+ end
28
+
29
+ # Returns attribute mapping this model knows about
30
+ def self.acceptable_attribute_map
31
+ attribute_map
32
+ end
33
+
34
+ # Returns all the JSON keys this model knows about
35
+ def self.acceptable_attributes
36
+ acceptable_attribute_map.values
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.openapi_types
41
+ {
42
+ :'raw_mdl_output' => :'MdlOutput'
43
+ }
44
+ end
45
+
46
+ # List of attributes with nullable: true
47
+ def self.openapi_nullable
48
+ Set.new([
49
+ ])
50
+ end
51
+
52
+ # Initializes the object
53
+ # @param [Hash] attributes Model attributes in the form of hash
54
+ def initialize(attributes = {})
55
+ if (!attributes.is_a?(Hash))
56
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TrinsicApi::GoogleWalletProviderOutput` initialize method"
57
+ end
58
+
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ acceptable_attribute_map = self.class.acceptable_attribute_map
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!acceptable_attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TrinsicApi::GoogleWalletProviderOutput`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'raw_mdl_output')
69
+ self.raw_mdl_output = attributes[:'raw_mdl_output']
70
+ else
71
+ self.raw_mdl_output = nil
72
+ end
73
+ end
74
+
75
+ # Show invalid properties with the reasons. Usually used together with valid?
76
+ # @return Array for valid properties with the reasons
77
+ def list_invalid_properties
78
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
79
+ invalid_properties = Array.new
80
+ if @raw_mdl_output.nil?
81
+ invalid_properties.push('invalid value for "raw_mdl_output", raw_mdl_output cannot be nil.')
82
+ end
83
+
84
+ invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+ warn '[DEPRECATED] the `valid?` method is obsolete'
91
+ return false if @raw_mdl_output.nil?
92
+ true
93
+ end
94
+
95
+ # Custom attribute writer method with validation
96
+ # @param [Object] raw_mdl_output Value to be assigned
97
+ def raw_mdl_output=(raw_mdl_output)
98
+ if raw_mdl_output.nil?
99
+ fail ArgumentError, 'raw_mdl_output cannot be nil'
100
+ end
101
+
102
+ @raw_mdl_output = raw_mdl_output
103
+ end
104
+
105
+ # Checks equality by comparing each attribute.
106
+ # @param [Object] Object to be compared
107
+ def ==(o)
108
+ return true if self.equal?(o)
109
+ self.class == o.class &&
110
+ raw_mdl_output == o.raw_mdl_output
111
+ end
112
+
113
+ # @see the `==` method
114
+ # @param [Object] Object to be compared
115
+ def eql?(o)
116
+ self == o
117
+ end
118
+
119
+ # Calculates hash code according to all attributes.
120
+ # @return [Integer] Hash code
121
+ def hash
122
+ [raw_mdl_output].hash
123
+ end
124
+
125
+ # Builds the object from hash
126
+ # @param [Hash] attributes Model attributes in the form of hash
127
+ # @return [Object] Returns the model itself
128
+ def self.build_from_hash(attributes)
129
+ return nil unless attributes.is_a?(Hash)
130
+ attributes = attributes.transform_keys(&:to_sym)
131
+ transformed_hash = {}
132
+ openapi_types.each_pair do |key, type|
133
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
134
+ transformed_hash["#{key}"] = nil
135
+ elsif type =~ /\AArray<(.*)>/i
136
+ # check to ensure the input is an array given that the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[attribute_map[key]].is_a?(Array)
139
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
140
+ end
141
+ elsif !attributes[attribute_map[key]].nil?
142
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
143
+ end
144
+ end
145
+ new(transformed_hash)
146
+ end
147
+
148
+ # Deserializes the data based on type
149
+ # @param string type Data type
150
+ # @param string value Value to be deserialized
151
+ # @return [Object] Deserialized data
152
+ def self._deserialize(type, value)
153
+ case type.to_sym
154
+ when :Time
155
+ Time.parse(value)
156
+ when :Date
157
+ Date.parse(value)
158
+ when :String
159
+ value.to_s
160
+ when :Integer
161
+ value.to_i
162
+ when :Float
163
+ value.to_f
164
+ when :Boolean
165
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
166
+ true
167
+ else
168
+ false
169
+ end
170
+ when :Object
171
+ # generic object (usually a Hash), return directly
172
+ value
173
+ when /\AArray<(?<inner_type>.+)>\z/
174
+ inner_type = Regexp.last_match[:inner_type]
175
+ value.map { |v| _deserialize(inner_type, v) }
176
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
177
+ k_type = Regexp.last_match[:k_type]
178
+ v_type = Regexp.last_match[:v_type]
179
+ {}.tap do |hash|
180
+ value.each do |k, v|
181
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
182
+ end
183
+ end
184
+ else # model
185
+ # models (e.g. Pet) or oneOf
186
+ klass = TrinsicApi.const_get(type)
187
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
188
+ end
189
+ end
190
+
191
+ # Returns the string representation of the object
192
+ # @return [String] String presentation of the object
193
+ def to_s
194
+ to_hash.to_s
195
+ end
196
+
197
+ # to_body is an alias to to_hash (backward compatibility)
198
+ # @return [Hash] Returns the object in the form of hash
199
+ def to_body
200
+ to_hash
201
+ end
202
+
203
+ # Returns the object in the form of hash
204
+ # @return [Hash] Returns the object in the form of hash
205
+ def to_hash
206
+ hash = {}
207
+ self.class.attribute_map.each_pair do |attr, param|
208
+ value = self.send(attr)
209
+ if value.nil?
210
+ is_nullable = self.class.openapi_nullable.include?(attr)
211
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
212
+ end
213
+
214
+ hash[param] = _to_hash(value)
215
+ end
216
+ hash
217
+ end
218
+
219
+ # Outputs non-array value in the form of hash
220
+ # For object, use to_hash. Otherwise, just return the value
221
+ # @param [Object] value Any valid value
222
+ # @return [Hash] Returns the value in the form of hash
223
+ def _to_hash(value)
224
+ if value.is_a?(Array)
225
+ value.compact.map { |v| _to_hash(v) }
226
+ elsif value.is_a?(Hash)
227
+ {}.tap do |hash|
228
+ value.each { |k, v| hash[k] = _to_hash(v) }
229
+ end
230
+ elsif value.respond_to? :to_hash
231
+ value.to_hash
232
+ else
233
+ value
234
+ end
235
+ end
236
+
237
+ end
238
+
239
+ end
@@ -15,22 +15,27 @@ require 'time'
15
15
 
16
16
  module TrinsicApi
17
17
  class IdentityData
18
+ # The ID of the provider from which this data originated (eg \"yoti\", \"clear\")
18
19
  attr_accessor :originating_provider_id
19
20
 
21
+ # The sub-provider ID of the provider from which this data originated (eg \"rabo\", \"poste-italiane\") This is applicable only to federated Identity Providers such as SPID and IDIN.
20
22
  attr_accessor :originating_sub_provider_id
21
23
 
24
+ # Identity data of the individual who was verified
22
25
  attr_accessor :person
23
26
 
27
+ # Identity data of the document involved in verification, if relevant
24
28
  attr_accessor :document
25
29
 
30
+ # Match results for the data being matched against. This applies to Providers which operate based on matching data / biometrics against a government database, returning match scores or results as opposed to the data itself.
26
31
  attr_accessor :match
27
32
 
28
- attr_accessor :attachment_access_keys
33
+ # Information for each attachment included with this set of identity data. Use the Attachments API to fetch an attachment by its ID for a given Session.
34
+ attr_accessor :attachments
29
35
 
36
+ # Provider-specific output data that doesn't fit the standard identity data schema. The structure of this object varies by provider.
30
37
  attr_accessor :provider_output
31
38
 
32
- attr_accessor :identifiers
33
-
34
39
  # Attribute mapping from ruby-style variable name to JSON key.
35
40
  def self.attribute_map
36
41
  {
@@ -39,9 +44,8 @@ module TrinsicApi
39
44
  :'person' => :'person',
40
45
  :'document' => :'document',
41
46
  :'match' => :'match',
42
- :'attachment_access_keys' => :'attachmentAccessKeys',
43
- :'provider_output' => :'providerOutput',
44
- :'identifiers' => :'identifiers'
47
+ :'attachments' => :'attachments',
48
+ :'provider_output' => :'providerOutput'
45
49
  }
46
50
  end
47
51
 
@@ -63,9 +67,8 @@ module TrinsicApi
63
67
  :'person' => :'PersonData',
64
68
  :'document' => :'DocumentData',
65
69
  :'match' => :'MatchData',
66
- :'attachment_access_keys' => :'AttachmentAccessKeys',
67
- :'provider_output' => :'ProviderOutput',
68
- :'identifiers' => :'Array<Identifier>'
70
+ :'attachments' => :'Array<AttachmentInfo>',
71
+ :'provider_output' => :'ProviderOutput'
69
72
  }
70
73
  end
71
74
 
@@ -77,8 +80,7 @@ module TrinsicApi
77
80
  :'person',
78
81
  :'document',
79
82
  :'match',
80
- :'attachment_access_keys',
81
- :'provider_output',
83
+ :'provider_output'
82
84
  ])
83
85
  end
84
86
 
@@ -118,21 +120,17 @@ module TrinsicApi
118
120
  self.match = attributes[:'match']
119
121
  end
120
122
 
121
- if attributes.key?(:'attachment_access_keys')
122
- self.attachment_access_keys = attributes[:'attachment_access_keys']
123
+ if attributes.key?(:'attachments')
124
+ if (value = attributes[:'attachments']).is_a?(Array)
125
+ self.attachments = value
126
+ end
127
+ else
128
+ self.attachments = nil
123
129
  end
124
130
 
125
131
  if attributes.key?(:'provider_output')
126
132
  self.provider_output = attributes[:'provider_output']
127
133
  end
128
-
129
- if attributes.key?(:'identifiers')
130
- if (value = attributes[:'identifiers']).is_a?(Array)
131
- self.identifiers = value
132
- end
133
- else
134
- self.identifiers = nil
135
- end
136
134
  end
137
135
 
138
136
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -140,8 +138,8 @@ module TrinsicApi
140
138
  def list_invalid_properties
141
139
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
142
140
  invalid_properties = Array.new
143
- if @identifiers.nil?
144
- invalid_properties.push('invalid value for "identifiers", identifiers cannot be nil.')
141
+ if @attachments.nil?
142
+ invalid_properties.push('invalid value for "attachments", attachments cannot be nil.')
145
143
  end
146
144
 
147
145
  invalid_properties
@@ -151,18 +149,18 @@ module TrinsicApi
151
149
  # @return true if the model is valid
152
150
  def valid?
153
151
  warn '[DEPRECATED] the `valid?` method is obsolete'
154
- return false if @identifiers.nil?
152
+ return false if @attachments.nil?
155
153
  true
156
154
  end
157
155
 
158
156
  # Custom attribute writer method with validation
159
- # @param [Object] identifiers Value to be assigned
160
- def identifiers=(identifiers)
161
- if identifiers.nil?
162
- fail ArgumentError, 'identifiers cannot be nil'
157
+ # @param [Object] attachments Value to be assigned
158
+ def attachments=(attachments)
159
+ if attachments.nil?
160
+ fail ArgumentError, 'attachments cannot be nil'
163
161
  end
164
162
 
165
- @identifiers = identifiers
163
+ @attachments = attachments
166
164
  end
167
165
 
168
166
  # Checks equality by comparing each attribute.
@@ -175,9 +173,8 @@ module TrinsicApi
175
173
  person == o.person &&
176
174
  document == o.document &&
177
175
  match == o.match &&
178
- attachment_access_keys == o.attachment_access_keys &&
179
- provider_output == o.provider_output &&
180
- identifiers == o.identifiers
176
+ attachments == o.attachments &&
177
+ provider_output == o.provider_output
181
178
  end
182
179
 
183
180
  # @see the `==` method
@@ -189,7 +186,7 @@ module TrinsicApi
189
186
  # Calculates hash code according to all attributes.
190
187
  # @return [Integer] Hash code
191
188
  def hash
192
- [originating_provider_id, originating_sub_provider_id, person, document, match, attachment_access_keys, provider_output, identifiers].hash
189
+ [originating_provider_id, originating_sub_provider_id, person, document, match, attachments, provider_output].hash
193
190
  end
194
191
 
195
192
  # Builds the object from hash
@@ -0,0 +1,315 @@
1
+ =begin
2
+ #Trinsic API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: v1
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.13.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TrinsicApi
17
+ # Exposed properties for the `a-itsme-login` Provider which do not directly map to the normalized IdentityData model.
18
+ class ItsmeProviderOutput
19
+ # The first name of the verified individual
20
+ attr_accessor :first_name
21
+
22
+ # The last name of the verified individual
23
+ attr_accessor :last_name
24
+
25
+ # The date of birth of the verified individual
26
+ attr_accessor :date_of_birth
27
+
28
+ # The hashed version of the Belgian National Register Number of the verified individual. By default, itsme does not return the raw National Register Number of the individual; instead, only a hashed version is returned. Your account must be approved by itsme to receive the raw, unhashed National Register Number.
29
+ attr_accessor :hashed_national_register_number
30
+
31
+ # The raw (not hashed) Belgian National Register Number (\"Rijksregisternummer\") of the verified individual. Only returned if your account has been explicitly authorized to receive it by itsme; by law, this data is considered sensitive personal data. This is an 11-digit number in the format YYMMDDXXXCC, where: - YYMMDD represents the individual's date of birth (year, month, day). - XXX is a sequential birth number, odd for females and even for males. - CC is a checksum, calculated with the equation: 97 - (YYMMDDXXX mod 97) For births in the year 2000 or later, the digit '2' is prepended to the first 9 digits during checksum calculation.
32
+ attr_accessor :national_register_number
33
+
34
+ # Attribute mapping from ruby-style variable name to JSON key.
35
+ def self.attribute_map
36
+ {
37
+ :'first_name' => :'firstName',
38
+ :'last_name' => :'lastName',
39
+ :'date_of_birth' => :'dateOfBirth',
40
+ :'hashed_national_register_number' => :'hashedNationalRegisterNumber',
41
+ :'national_register_number' => :'nationalRegisterNumber'
42
+ }
43
+ end
44
+
45
+ # Returns attribute mapping this model knows about
46
+ def self.acceptable_attribute_map
47
+ attribute_map
48
+ end
49
+
50
+ # Returns all the JSON keys this model knows about
51
+ def self.acceptable_attributes
52
+ acceptable_attribute_map.values
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ def self.openapi_types
57
+ {
58
+ :'first_name' => :'String',
59
+ :'last_name' => :'String',
60
+ :'date_of_birth' => :'Date',
61
+ :'hashed_national_register_number' => :'String',
62
+ :'national_register_number' => :'String'
63
+ }
64
+ end
65
+
66
+ # List of attributes with nullable: true
67
+ def self.openapi_nullable
68
+ Set.new([
69
+ :'hashed_national_register_number',
70
+ :'national_register_number'
71
+ ])
72
+ end
73
+
74
+ # Initializes the object
75
+ # @param [Hash] attributes Model attributes in the form of hash
76
+ def initialize(attributes = {})
77
+ if (!attributes.is_a?(Hash))
78
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TrinsicApi::ItsmeProviderOutput` initialize method"
79
+ end
80
+
81
+ # check to see if the attribute exists and convert string to symbol for hash key
82
+ acceptable_attribute_map = self.class.acceptable_attribute_map
83
+ attributes = attributes.each_with_object({}) { |(k, v), h|
84
+ if (!acceptable_attribute_map.key?(k.to_sym))
85
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TrinsicApi::ItsmeProviderOutput`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
86
+ end
87
+ h[k.to_sym] = v
88
+ }
89
+
90
+ if attributes.key?(:'first_name')
91
+ self.first_name = attributes[:'first_name']
92
+ else
93
+ self.first_name = nil
94
+ end
95
+
96
+ if attributes.key?(:'last_name')
97
+ self.last_name = attributes[:'last_name']
98
+ else
99
+ self.last_name = nil
100
+ end
101
+
102
+ if attributes.key?(:'date_of_birth')
103
+ self.date_of_birth = attributes[:'date_of_birth']
104
+ else
105
+ self.date_of_birth = nil
106
+ end
107
+
108
+ if attributes.key?(:'hashed_national_register_number')
109
+ self.hashed_national_register_number = attributes[:'hashed_national_register_number']
110
+ end
111
+
112
+ if attributes.key?(:'national_register_number')
113
+ self.national_register_number = attributes[:'national_register_number']
114
+ end
115
+ end
116
+
117
+ # Show invalid properties with the reasons. Usually used together with valid?
118
+ # @return Array for valid properties with the reasons
119
+ def list_invalid_properties
120
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
121
+ invalid_properties = Array.new
122
+ if @first_name.nil?
123
+ invalid_properties.push('invalid value for "first_name", first_name cannot be nil.')
124
+ end
125
+
126
+ if @last_name.nil?
127
+ invalid_properties.push('invalid value for "last_name", last_name cannot be nil.')
128
+ end
129
+
130
+ if @date_of_birth.nil?
131
+ invalid_properties.push('invalid value for "date_of_birth", date_of_birth cannot be nil.')
132
+ end
133
+
134
+ invalid_properties
135
+ end
136
+
137
+ # Check to see if the all the properties in the model are valid
138
+ # @return true if the model is valid
139
+ def valid?
140
+ warn '[DEPRECATED] the `valid?` method is obsolete'
141
+ return false if @first_name.nil?
142
+ return false if @last_name.nil?
143
+ return false if @date_of_birth.nil?
144
+ true
145
+ end
146
+
147
+ # Custom attribute writer method with validation
148
+ # @param [Object] first_name Value to be assigned
149
+ def first_name=(first_name)
150
+ if first_name.nil?
151
+ fail ArgumentError, 'first_name cannot be nil'
152
+ end
153
+
154
+ @first_name = first_name
155
+ end
156
+
157
+ # Custom attribute writer method with validation
158
+ # @param [Object] last_name Value to be assigned
159
+ def last_name=(last_name)
160
+ if last_name.nil?
161
+ fail ArgumentError, 'last_name cannot be nil'
162
+ end
163
+
164
+ @last_name = last_name
165
+ end
166
+
167
+ # Custom attribute writer method with validation
168
+ # @param [Object] date_of_birth Value to be assigned
169
+ def date_of_birth=(date_of_birth)
170
+ if date_of_birth.nil?
171
+ fail ArgumentError, 'date_of_birth cannot be nil'
172
+ end
173
+
174
+ @date_of_birth = date_of_birth
175
+ end
176
+
177
+ # Checks equality by comparing each attribute.
178
+ # @param [Object] Object to be compared
179
+ def ==(o)
180
+ return true if self.equal?(o)
181
+ self.class == o.class &&
182
+ first_name == o.first_name &&
183
+ last_name == o.last_name &&
184
+ date_of_birth == o.date_of_birth &&
185
+ hashed_national_register_number == o.hashed_national_register_number &&
186
+ national_register_number == o.national_register_number
187
+ end
188
+
189
+ # @see the `==` method
190
+ # @param [Object] Object to be compared
191
+ def eql?(o)
192
+ self == o
193
+ end
194
+
195
+ # Calculates hash code according to all attributes.
196
+ # @return [Integer] Hash code
197
+ def hash
198
+ [first_name, last_name, date_of_birth, hashed_national_register_number, national_register_number].hash
199
+ end
200
+
201
+ # Builds the object from hash
202
+ # @param [Hash] attributes Model attributes in the form of hash
203
+ # @return [Object] Returns the model itself
204
+ def self.build_from_hash(attributes)
205
+ return nil unless attributes.is_a?(Hash)
206
+ attributes = attributes.transform_keys(&:to_sym)
207
+ transformed_hash = {}
208
+ openapi_types.each_pair do |key, type|
209
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
210
+ transformed_hash["#{key}"] = nil
211
+ elsif type =~ /\AArray<(.*)>/i
212
+ # check to ensure the input is an array given that the attribute
213
+ # is documented as an array but the input is not
214
+ if attributes[attribute_map[key]].is_a?(Array)
215
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
216
+ end
217
+ elsif !attributes[attribute_map[key]].nil?
218
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
219
+ end
220
+ end
221
+ new(transformed_hash)
222
+ end
223
+
224
+ # Deserializes the data based on type
225
+ # @param string type Data type
226
+ # @param string value Value to be deserialized
227
+ # @return [Object] Deserialized data
228
+ def self._deserialize(type, value)
229
+ case type.to_sym
230
+ when :Time
231
+ Time.parse(value)
232
+ when :Date
233
+ Date.parse(value)
234
+ when :String
235
+ value.to_s
236
+ when :Integer
237
+ value.to_i
238
+ when :Float
239
+ value.to_f
240
+ when :Boolean
241
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
242
+ true
243
+ else
244
+ false
245
+ end
246
+ when :Object
247
+ # generic object (usually a Hash), return directly
248
+ value
249
+ when /\AArray<(?<inner_type>.+)>\z/
250
+ inner_type = Regexp.last_match[:inner_type]
251
+ value.map { |v| _deserialize(inner_type, v) }
252
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
253
+ k_type = Regexp.last_match[:k_type]
254
+ v_type = Regexp.last_match[:v_type]
255
+ {}.tap do |hash|
256
+ value.each do |k, v|
257
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
258
+ end
259
+ end
260
+ else # model
261
+ # models (e.g. Pet) or oneOf
262
+ klass = TrinsicApi.const_get(type)
263
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
264
+ end
265
+ end
266
+
267
+ # Returns the string representation of the object
268
+ # @return [String] String presentation of the object
269
+ def to_s
270
+ to_hash.to_s
271
+ end
272
+
273
+ # to_body is an alias to to_hash (backward compatibility)
274
+ # @return [Hash] Returns the object in the form of hash
275
+ def to_body
276
+ to_hash
277
+ end
278
+
279
+ # Returns the object in the form of hash
280
+ # @return [Hash] Returns the object in the form of hash
281
+ def to_hash
282
+ hash = {}
283
+ self.class.attribute_map.each_pair do |attr, param|
284
+ value = self.send(attr)
285
+ if value.nil?
286
+ is_nullable = self.class.openapi_nullable.include?(attr)
287
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
288
+ end
289
+
290
+ hash[param] = _to_hash(value)
291
+ end
292
+ hash
293
+ end
294
+
295
+ # Outputs non-array value in the form of hash
296
+ # For object, use to_hash. Otherwise, just return the value
297
+ # @param [Object] value Any valid value
298
+ # @return [Hash] Returns the value in the form of hash
299
+ def _to_hash(value)
300
+ if value.is_a?(Array)
301
+ value.compact.map { |v| _to_hash(v) }
302
+ elsif value.is_a?(Hash)
303
+ {}.tap do |hash|
304
+ value.each { |k, v| hash[k] = _to_hash(v) }
305
+ end
306
+ elsif value.respond_to? :to_hash
307
+ value.to_hash
308
+ else
309
+ value
310
+ end
311
+ end
312
+
313
+ end
314
+
315
+ end