gr4vy 1.10.12__py3-none-any.whl → 1.10.15__py3-none-any.whl

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 (293) hide show
  1. gr4vy/_version.py +3 -3
  2. gr4vy/basesdk.py +20 -6
  3. gr4vy/models/__init__.py +132 -0
  4. gr4vy/models/accountsreceivablesreportspec.py +18 -1
  5. gr4vy/models/accountupdaterinquirysummary.py +18 -1
  6. gr4vy/models/accountupdaterjob.py +18 -1
  7. gr4vy/models/accountupdateroptions.py +30 -31
  8. gr4vy/models/add_buyer_shipping_detailsop.py +34 -1
  9. gr4vy/models/add_buyerop.py +34 -1
  10. gr4vy/models/add_payment_linkop.py +34 -1
  11. gr4vy/models/add_reportop.py +34 -1
  12. gr4vy/models/address.py +38 -39
  13. gr4vy/models/adyencardoptions.py +32 -33
  14. gr4vy/models/adyenoptions.py +14 -19
  15. gr4vy/models/adyensepaoptions.py +30 -31
  16. gr4vy/models/adyensplitsoptions.py +14 -19
  17. gr4vy/models/affirmitineraryoptions.py +34 -35
  18. gr4vy/models/affirmoptions.py +14 -19
  19. gr4vy/models/airline.py +58 -59
  20. gr4vy/models/airlineleg.py +66 -67
  21. gr4vy/models/airlinepassenger.py +42 -43
  22. gr4vy/models/applepaypaymentmethodcreate.py +34 -35
  23. gr4vy/models/auditlogentries.py +14 -19
  24. gr4vy/models/auditlogentry.py +14 -19
  25. gr4vy/models/auditlogentryuser.py +14 -19
  26. gr4vy/models/billingdetails.py +32 -33
  27. gr4vy/models/braintreedynamicdatafieldsoptions.py +26 -27
  28. gr4vy/models/braintreeoptions.py +18 -19
  29. gr4vy/models/browserinfo.py +14 -19
  30. gr4vy/models/buyer.py +31 -32
  31. gr4vy/models/buyercreate.py +18 -29
  32. gr4vy/models/buyers.py +14 -19
  33. gr4vy/models/buyerupdate.py +18 -29
  34. gr4vy/models/cancel_transactionop.py +34 -1
  35. gr4vy/models/capture_transactionop.py +30 -19
  36. gr4vy/models/cardpaymentmethodcreate.py +31 -32
  37. gr4vy/models/cardschemedefinition.py +18 -1
  38. gr4vy/models/cardwithurlpaymentmethodcreate.py +33 -34
  39. gr4vy/models/cartitem.py +52 -53
  40. gr4vy/models/chaseoptions.py +14 -19
  41. gr4vy/models/checkoutsession.py +37 -38
  42. gr4vy/models/checkoutsessioncreate.py +35 -36
  43. gr4vy/models/checkoutsessionpaymentmethod.py +16 -27
  44. gr4vy/models/checkoutsessionpaymentmethodcreate.py +18 -28
  45. gr4vy/models/checkoutsessionpaymentmethoddetails.py +14 -19
  46. gr4vy/models/checkoutsessionwithurlpaymentmethodcreate.py +29 -30
  47. gr4vy/models/clicktopayfpanpaymentmethodcreate.py +32 -33
  48. gr4vy/models/clicktopaypaymentmethodcreate.py +28 -29
  49. gr4vy/models/configure_digital_walletop.py +34 -1
  50. gr4vy/models/create_account_updater_jobop.py +34 -1
  51. gr4vy/models/create_apple_pay_digital_wallet_sessionop.py +34 -1
  52. gr4vy/models/create_checkout_sessionop.py +34 -1
  53. gr4vy/models/create_full_transaction_refundop.py +30 -19
  54. gr4vy/models/create_gift_cardop.py +34 -1
  55. gr4vy/models/create_google_pay_digital_wallet_sessionop.py +34 -1
  56. gr4vy/models/create_payment_method_network_token_cryptogramop.py +34 -1
  57. gr4vy/models/create_payment_method_network_tokenop.py +34 -1
  58. gr4vy/models/create_payment_method_payment_service_tokenop.py +34 -1
  59. gr4vy/models/create_payment_methodop.py +34 -1
  60. gr4vy/models/create_payment_service_sessionop.py +34 -1
  61. gr4vy/models/create_payment_serviceop.py +34 -1
  62. gr4vy/models/create_payoutop.py +34 -1
  63. gr4vy/models/create_report_execution_urlop.py +34 -1
  64. gr4vy/models/create_three_ds_scenarioop.py +79 -0
  65. gr4vy/models/create_transaction_refundop.py +34 -1
  66. gr4vy/models/create_transactionop.py +32 -19
  67. gr4vy/models/createsession.py +14 -19
  68. gr4vy/models/cryptogram.py +18 -1
  69. gr4vy/models/cybersourceantifraudoptions.py +18 -27
  70. gr4vy/models/cybersourceoptions.py +27 -28
  71. gr4vy/models/delete_buyer_shipping_detailsop.py +34 -1
  72. gr4vy/models/delete_buyerop.py +34 -1
  73. gr4vy/models/delete_checkout_sessionop.py +34 -1
  74. gr4vy/models/delete_digital_walletop.py +34 -1
  75. gr4vy/models/delete_gift_cardop.py +34 -1
  76. gr4vy/models/delete_payment_method_network_tokenop.py +34 -1
  77. gr4vy/models/delete_payment_method_payment_service_tokenop.py +34 -1
  78. gr4vy/models/delete_payment_methodop.py +34 -1
  79. gr4vy/models/delete_payment_serviceop.py +34 -1
  80. gr4vy/models/delete_three_ds_scenarioop.py +76 -0
  81. gr4vy/models/detailedsettlementreportspec.py +18 -1
  82. gr4vy/models/digitalwallet.py +27 -33
  83. gr4vy/models/digitalwalletcreate.py +23 -28
  84. gr4vy/models/digitalwalletupdate.py +30 -31
  85. gr4vy/models/dlocaloptions.py +14 -19
  86. gr4vy/models/dlocalupioptions.py +14 -19
  87. gr4vy/models/dlocalupiwalletoptions.py +18 -33
  88. gr4vy/models/dlocalwalletoptions.py +14 -19
  89. gr4vy/models/expire_payment_linkop.py +34 -1
  90. gr4vy/models/fiservinstallmentoptions.py +27 -28
  91. gr4vy/models/fiservoptions.py +14 -19
  92. gr4vy/models/forterantifraudoptions.py +30 -31
  93. gr4vy/models/forterantifraudoptionscartitem.py +13 -18
  94. gr4vy/models/forterantifraudoptionscartitembasicitemdata.py +14 -19
  95. gr4vy/models/forterantifraudoptionscartitembeneficiary.py +13 -18
  96. gr4vy/models/forterantifraudoptionscartitembeneficiaryaddress.py +18 -19
  97. gr4vy/models/forterantifraudoptionscartitembeneficiarycomments.py +18 -27
  98. gr4vy/models/forterantifraudoptionscartitembeneficiarypersonaldetails.py +14 -19
  99. gr4vy/models/forterantifraudoptionscartitemdeliverydetails.py +13 -18
  100. gr4vy/models/forterantifraudoptionsdiscount.py +13 -18
  101. gr4vy/models/forterantifraudoptionsdiscountcoupondiscountamount.py +14 -19
  102. gr4vy/models/get_buyer_shipping_detailsop.py +34 -1
  103. gr4vy/models/get_buyerop.py +34 -1
  104. gr4vy/models/get_checkout_sessionop.py +34 -1
  105. gr4vy/models/get_digital_walletop.py +34 -1
  106. gr4vy/models/get_gift_cardop.py +34 -1
  107. gr4vy/models/get_payment_linkop.py +34 -1
  108. gr4vy/models/get_payment_methodop.py +34 -1
  109. gr4vy/models/get_payment_serviceop.py +34 -1
  110. gr4vy/models/get_payoutop.py +34 -1
  111. gr4vy/models/get_refundop.py +34 -1
  112. gr4vy/models/get_report_executionop.py +34 -1
  113. gr4vy/models/get_reportop.py +34 -1
  114. gr4vy/models/get_three_ds_scenarioop.py +105 -0
  115. gr4vy/models/get_transaction_refundop.py +34 -1
  116. gr4vy/models/get_transaction_settlementop.py +34 -1
  117. gr4vy/models/get_transactionop.py +34 -1
  118. gr4vy/models/giftcard.py +14 -19
  119. gr4vy/models/giftcardcreate.py +14 -19
  120. gr4vy/models/giftcardredemption.py +29 -30
  121. gr4vy/models/giftcards.py +14 -19
  122. gr4vy/models/giftcardservice.py +18 -1
  123. gr4vy/models/giftcardsummary.py +35 -36
  124. gr4vy/models/givingblockoptions.py +14 -19
  125. gr4vy/models/googlepayassurancedetails.py +14 -19
  126. gr4vy/models/googlepayfpanpaymentmethodcreate.py +32 -33
  127. gr4vy/models/googlepaypaymentmethodcreate.py +36 -37
  128. gr4vy/models/guestbuyer.py +30 -31
  129. gr4vy/models/internal/globals.py +18 -1
  130. gr4vy/models/latitudeoptions.py +14 -19
  131. gr4vy/models/list_all_report_executionsop.py +50 -35
  132. gr4vy/models/list_audit_logsop.py +39 -26
  133. gr4vy/models/list_buyer_gift_cardsop.py +32 -23
  134. gr4vy/models/list_buyer_payment_methodsop.py +42 -33
  135. gr4vy/models/list_buyer_shipping_detailsop.py +34 -1
  136. gr4vy/models/list_buyersop.py +32 -25
  137. gr4vy/models/list_card_scheme_definitionsop.py +34 -1
  138. gr4vy/models/list_digital_walletsop.py +34 -1
  139. gr4vy/models/list_gift_card_balancesop.py +34 -1
  140. gr4vy/models/list_gift_cardsop.py +38 -25
  141. gr4vy/models/list_merchant_accountsop.py +14 -19
  142. gr4vy/models/list_payment_linksop.py +32 -19
  143. gr4vy/models/list_payment_method_network_tokensop.py +34 -1
  144. gr4vy/models/list_payment_method_payment_service_tokensop.py +30 -19
  145. gr4vy/models/list_payment_methodsop.py +48 -33
  146. gr4vy/models/list_payment_optionsop.py +34 -1
  147. gr4vy/models/list_payment_service_definitionsop.py +14 -19
  148. gr4vy/models/list_payment_servicesop.py +32 -25
  149. gr4vy/models/list_payoutsop.py +30 -19
  150. gr4vy/models/list_report_executionsop.py +30 -19
  151. gr4vy/models/list_reportsop.py +39 -26
  152. gr4vy/models/list_transaction_actionsop.py +34 -1
  153. gr4vy/models/list_transaction_eventsop.py +30 -19
  154. gr4vy/models/list_transaction_refundsop.py +34 -1
  155. gr4vy/models/list_transaction_settlementsop.py +34 -1
  156. gr4vy/models/list_transactionsop.py +124 -109
  157. gr4vy/models/mattildatapioptions.py +14 -19
  158. gr4vy/models/merchantaccount.py +52 -53
  159. gr4vy/models/merchantaccountcreate.py +52 -53
  160. gr4vy/models/merchantaccounts.py +14 -19
  161. gr4vy/models/merchantaccountupdate.py +54 -55
  162. gr4vy/models/method.py +1 -0
  163. gr4vy/models/mockcardmerchantadvicecodeoptions.py +14 -19
  164. gr4vy/models/mockcardoptions.py +14 -19
  165. gr4vy/models/networktoken.py +18 -1
  166. gr4vy/models/networktokencreate.py +14 -19
  167. gr4vy/models/networktokenpaymentmethodcreate.py +34 -35
  168. gr4vy/models/nuveiairlinedataoptions.py +14 -19
  169. gr4vy/models/nuveiidealoptions.py +14 -19
  170. gr4vy/models/nuveioptions.py +14 -19
  171. gr4vy/models/nuveipseoptions.py +13 -18
  172. gr4vy/models/oxxooptions.py +14 -19
  173. gr4vy/models/paymentlink.py +59 -60
  174. gr4vy/models/paymentlinkcreate.py +59 -60
  175. gr4vy/models/paymentlinks.py +14 -19
  176. gr4vy/models/paymentmethod.py +51 -52
  177. gr4vy/models/paymentmethodcard.py +14 -19
  178. gr4vy/models/paymentmethoddetailscard.py +14 -19
  179. gr4vy/models/paymentmethods.py +14 -19
  180. gr4vy/models/paymentmethodstoredcard.py +18 -1
  181. gr4vy/models/paymentmethodsummary.py +47 -48
  182. gr4vy/models/paymentoption.py +14 -19
  183. gr4vy/models/paymentoptioncontext.py +14 -19
  184. gr4vy/models/paymentoptioncontextapprovalui.py +14 -19
  185. gr4vy/models/paymentoptionrequest.py +18 -26
  186. gr4vy/models/paymentservice.py +35 -36
  187. gr4vy/models/paymentservicecreate.py +36 -37
  188. gr4vy/models/paymentservicedefinition.py +14 -19
  189. gr4vy/models/paymentservicedefinitions.py +14 -19
  190. gr4vy/models/paymentservices.py +14 -19
  191. gr4vy/models/paymentservicetoken.py +14 -19
  192. gr4vy/models/paymentservicetokencreate.py +14 -19
  193. gr4vy/models/paymentserviceupdate.py +45 -46
  194. gr4vy/models/payoutconnectionoptions.py +14 -19
  195. gr4vy/models/payoutcreate.py +34 -35
  196. gr4vy/models/payoutmerchant.py +14 -19
  197. gr4vy/models/payoutmerchantsummary.py +14 -19
  198. gr4vy/models/payoutpaymentservice.py +14 -19
  199. gr4vy/models/payoutsummaries.py +14 -19
  200. gr4vy/models/payoutsummary.py +35 -36
  201. gr4vy/models/paypaloptions.py +14 -19
  202. gr4vy/models/paypalshippingoptions.py +14 -19
  203. gr4vy/models/paypalshippingoptionsitem.py +14 -19
  204. gr4vy/models/plaidpaymentmethodcreate.py +31 -32
  205. gr4vy/models/powertranzoptions.py +14 -19
  206. gr4vy/models/recipient.py +14 -19
  207. gr4vy/models/redirectpaymentmethodcreate.py +19 -27
  208. gr4vy/models/refund.py +39 -40
  209. gr4vy/models/refunds.py +14 -19
  210. gr4vy/models/register_digital_wallet_domainop.py +34 -1
  211. gr4vy/models/report.py +33 -34
  212. gr4vy/models/reportcreate.py +14 -19
  213. gr4vy/models/reportexecution.py +18 -1
  214. gr4vy/models/reportexecutions.py +14 -19
  215. gr4vy/models/reportexecutionsummary.py +18 -1
  216. gr4vy/models/reportexecutionurlgenerate.py +18 -1
  217. gr4vy/models/reports.py +14 -19
  218. gr4vy/models/reportsummary.py +16 -19
  219. gr4vy/models/reportupdate.py +14 -19
  220. gr4vy/models/requiredcheckoutfields.py +14 -19
  221. gr4vy/models/resume_payment_method_network_tokenop.py +34 -1
  222. gr4vy/models/security.py +18 -1
  223. gr4vy/models/settlement.py +16 -25
  224. gr4vy/models/shippingdetails.py +35 -36
  225. gr4vy/models/shippingdetailscreate.py +18 -31
  226. gr4vy/models/shippingdetailsupdate.py +18 -31
  227. gr4vy/models/statementdescriptor.py +34 -35
  228. gr4vy/models/stripeconnectoptions.py +30 -31
  229. gr4vy/models/stripeoptions.py +14 -19
  230. gr4vy/models/suspend_payment_method_network_tokenop.py +34 -1
  231. gr4vy/models/sync_transactionop.py +34 -1
  232. gr4vy/models/threedsecure.py +14 -19
  233. gr4vy/models/threedsecuredatav1.py +14 -19
  234. gr4vy/models/threedsecuredatav2.py +14 -19
  235. gr4vy/models/threedsecureerror.py +14 -19
  236. gr4vy/models/threedsecurescenario.py +77 -0
  237. gr4vy/models/threedsecurescenarioconditions.py +84 -0
  238. gr4vy/models/threedsecurescenariocreate.py +24 -0
  239. gr4vy/models/threedsecurescenariooutcome.py +57 -0
  240. gr4vy/models/threedsecurescenariooutcomeauthentication.py +31 -0
  241. gr4vy/models/threedsecurescenariooutcomeresult.py +27 -0
  242. gr4vy/models/threedsecurescenarios.py +58 -0
  243. gr4vy/models/threedsecurescenarioupdate.py +54 -0
  244. gr4vy/models/threedsecurev2.py +34 -35
  245. gr4vy/models/tokenpaymentmethodcreate.py +14 -19
  246. gr4vy/models/transaction.py +111 -112
  247. gr4vy/models/transactionaction.py +18 -1
  248. gr4vy/models/transactionbuyer.py +31 -32
  249. gr4vy/models/transactioncancel.py +14 -19
  250. gr4vy/models/transactioncapture.py +14 -19
  251. gr4vy/models/transactioncapturecreate.py +14 -19
  252. gr4vy/models/transactionconnectionoptions.py +104 -105
  253. gr4vy/models/transactioncreate.py +88 -89
  254. gr4vy/models/transactionevent.py +18 -1
  255. gr4vy/models/transactionevents.py +14 -19
  256. gr4vy/models/transactiongiftcard.py +14 -19
  257. gr4vy/models/transactionpaymentmethod.py +49 -50
  258. gr4vy/models/transactionpaymentservice.py +18 -1
  259. gr4vy/models/transactionrefundallcreate.py +14 -19
  260. gr4vy/models/transactionrefundcreate.py +16 -25
  261. gr4vy/models/transactionretriesreportspec.py +18 -1
  262. gr4vy/models/transactionsreportspec.py +18 -1
  263. gr4vy/models/transactionsummaries.py +14 -19
  264. gr4vy/models/transactionsummary.py +50 -51
  265. gr4vy/models/transactionthreedsecuresummary.py +18 -33
  266. gr4vy/models/transactionupdate.py +14 -19
  267. gr4vy/models/transactionvoid.py +14 -19
  268. gr4vy/models/travelhubcustomdata.py +14 -19
  269. gr4vy/models/travelhuboptions.py +14 -19
  270. gr4vy/models/trustlyoptions.py +14 -19
  271. gr4vy/models/unregister_digital_wallet_domainop.py +34 -1
  272. gr4vy/models/update_buyer_shipping_detailsop.py +34 -1
  273. gr4vy/models/update_buyerop.py +34 -1
  274. gr4vy/models/update_checkout_sessionop.py +34 -1
  275. gr4vy/models/update_digital_walletop.py +34 -1
  276. gr4vy/models/update_payment_serviceop.py +34 -1
  277. gr4vy/models/update_reportop.py +34 -1
  278. gr4vy/models/update_three_ds_scenarioop.py +91 -0
  279. gr4vy/models/update_transactionop.py +34 -1
  280. gr4vy/models/verify_payment_service_credentialsop.py +34 -1
  281. gr4vy/models/verifycredentials.py +14 -19
  282. gr4vy/models/void_transactionop.py +30 -19
  283. gr4vy/models/wpayeverdaypayoptions.py +30 -31
  284. gr4vy/models/wpaypaytooptions.py +14 -19
  285. gr4vy/models/wpaypaytoresourceoptions.py +14 -19
  286. gr4vy/models/wpaypaytosimulationoptions.py +14 -19
  287. gr4vy/sdk.py +3 -0
  288. gr4vy/three_ds_scenarios.py +1322 -0
  289. gr4vy/utils/__init__.py +13 -1
  290. {gr4vy-1.10.12.dist-info → gr4vy-1.10.15.dist-info}/METADATA +8 -1
  291. gr4vy-1.10.15.dist-info/RECORD +464 -0
  292. gr4vy-1.10.12.dist-info/RECORD +0 -451
  293. {gr4vy-1.10.12.dist-info → gr4vy-1.10.15.dist-info}/WHEEL +0 -0
@@ -138,59 +138,58 @@ class PaymentMethodSummary(BaseModel):
138
138
 
139
139
  @model_serializer(mode="wrap")
140
140
  def serialize_model(self, handler):
141
- optional_fields = [
142
- "type",
143
- "approval_url",
144
- "country",
145
- "currency",
146
- "details",
147
- "expiration_date",
148
- "fingerprint",
149
- "label",
150
- "last_replaced_at",
151
- "mode",
152
- "scheme",
153
- "additional_schemes",
154
- "cit_last_used_at",
155
- "last_used_at",
156
- ]
157
- nullable_fields = [
158
- "approval_url",
159
- "country",
160
- "currency",
161
- "details",
162
- "expiration_date",
163
- "fingerprint",
164
- "label",
165
- "last_replaced_at",
166
- "mode",
167
- "scheme",
168
- "additional_schemes",
169
- "cit_last_used_at",
170
- "last_used_at",
171
- ]
172
- null_default_fields = []
173
-
141
+ optional_fields = set(
142
+ [
143
+ "type",
144
+ "approval_url",
145
+ "country",
146
+ "currency",
147
+ "details",
148
+ "expiration_date",
149
+ "fingerprint",
150
+ "label",
151
+ "last_replaced_at",
152
+ "mode",
153
+ "scheme",
154
+ "additional_schemes",
155
+ "cit_last_used_at",
156
+ "last_used_at",
157
+ ]
158
+ )
159
+ nullable_fields = set(
160
+ [
161
+ "approval_url",
162
+ "country",
163
+ "currency",
164
+ "details",
165
+ "expiration_date",
166
+ "fingerprint",
167
+ "label",
168
+ "last_replaced_at",
169
+ "mode",
170
+ "scheme",
171
+ "additional_schemes",
172
+ "cit_last_used_at",
173
+ "last_used_at",
174
+ ]
175
+ )
174
176
  serialized = handler(self)
175
-
176
177
  m = {}
177
178
 
178
179
  for n, f in type(self).model_fields.items():
179
180
  k = f.alias or n
180
181
  val = serialized.get(k)
181
- serialized.pop(k, None)
182
-
183
- optional_nullable = k in optional_fields and k in nullable_fields
184
- is_set = (
185
- self.__pydantic_fields_set__.intersection({n})
186
- or k in null_default_fields
187
- ) # pylint: disable=no-member
188
-
189
- if val is not None and val != UNSET_SENTINEL:
190
- m[k] = val
191
- elif val != UNSET_SENTINEL and (
192
- not k in optional_fields or (optional_nullable and is_set)
193
- ):
194
- m[k] = val
182
+ is_nullable_and_explicitly_set = (
183
+ k in nullable_fields
184
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
185
+ )
186
+
187
+ if val != UNSET_SENTINEL:
188
+ if (
189
+ val is not None
190
+ or k not in optional_fields
191
+ or is_nullable_and_explicitly_set
192
+ ):
193
+ m[k] = val
195
194
 
196
195
  return m
@@ -74,30 +74,25 @@ class PaymentOption(BaseModel):
74
74
 
75
75
  @model_serializer(mode="wrap")
76
76
  def serialize_model(self, handler):
77
- optional_fields = ["type", "icon_url", "label", "context"]
78
- nullable_fields = ["icon_url", "label", "context"]
79
- null_default_fields = []
80
-
77
+ optional_fields = set(["type", "icon_url", "label", "context"])
78
+ nullable_fields = set(["icon_url", "label", "context"])
81
79
  serialized = handler(self)
82
-
83
80
  m = {}
84
81
 
85
82
  for n, f in type(self).model_fields.items():
86
83
  k = f.alias or n
87
84
  val = serialized.get(k)
88
- serialized.pop(k, None)
89
-
90
- optional_nullable = k in optional_fields and k in nullable_fields
91
- is_set = (
92
- self.__pydantic_fields_set__.intersection({n})
93
- or k in null_default_fields
94
- ) # pylint: disable=no-member
95
-
96
- if val is not None and val != UNSET_SENTINEL:
97
- m[k] = val
98
- elif val != UNSET_SENTINEL and (
99
- not k in optional_fields or (optional_nullable and is_set)
100
- ):
101
- m[k] = val
85
+ is_nullable_and_explicitly_set = (
86
+ k in nullable_fields
87
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
88
+ )
89
+
90
+ if val != UNSET_SENTINEL:
91
+ if (
92
+ val is not None
93
+ or k not in optional_fields
94
+ or is_nullable_and_explicitly_set
95
+ ):
96
+ m[k] = val
102
97
 
103
98
  return m
@@ -45,30 +45,25 @@ class PaymentOptionContext(BaseModel):
45
45
 
46
46
  @model_serializer(mode="wrap")
47
47
  def serialize_model(self, handler):
48
- optional_fields = ["approval_ui", "required_fields"]
49
- nullable_fields = ["approval_ui", "required_fields"]
50
- null_default_fields = []
51
-
48
+ optional_fields = set(["approval_ui", "required_fields"])
49
+ nullable_fields = set(["approval_ui", "required_fields"])
52
50
  serialized = handler(self)
53
-
54
51
  m = {}
55
52
 
56
53
  for n, f in type(self).model_fields.items():
57
54
  k = f.alias or n
58
55
  val = serialized.get(k)
59
- serialized.pop(k, None)
60
-
61
- optional_nullable = k in optional_fields and k in nullable_fields
62
- is_set = (
63
- self.__pydantic_fields_set__.intersection({n})
64
- or k in null_default_fields
65
- ) # pylint: disable=no-member
66
-
67
- if val is not None and val != UNSET_SENTINEL:
68
- m[k] = val
69
- elif val != UNSET_SENTINEL and (
70
- not k in optional_fields or (optional_nullable and is_set)
71
- ):
72
- m[k] = val
56
+ is_nullable_and_explicitly_set = (
57
+ k in nullable_fields
58
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
59
+ )
60
+
61
+ if val != UNSET_SENTINEL:
62
+ if (
63
+ val is not None
64
+ or k not in optional_fields
65
+ or is_nullable_and_explicitly_set
66
+ ):
67
+ m[k] = val
73
68
 
74
69
  return m
@@ -18,30 +18,25 @@ class PaymentOptionContextApprovalUI(BaseModel):
18
18
 
19
19
  @model_serializer(mode="wrap")
20
20
  def serialize_model(self, handler):
21
- optional_fields = ["height", "width"]
22
- nullable_fields = ["height", "width"]
23
- null_default_fields = []
24
-
21
+ optional_fields = set(["height", "width"])
22
+ nullable_fields = set(["height", "width"])
25
23
  serialized = handler(self)
26
-
27
24
  m = {}
28
25
 
29
26
  for n, f in type(self).model_fields.items():
30
27
  k = f.alias or n
31
28
  val = serialized.get(k)
32
- serialized.pop(k, None)
33
-
34
- optional_nullable = k in optional_fields and k in nullable_fields
35
- is_set = (
36
- self.__pydantic_fields_set__.intersection({n})
37
- or k in null_default_fields
38
- ) # pylint: disable=no-member
39
-
40
- if val is not None and val != UNSET_SENTINEL:
41
- m[k] = val
42
- elif val != UNSET_SENTINEL and (
43
- not k in optional_fields or (optional_nullable and is_set)
44
- ):
45
- m[k] = val
29
+ is_nullable_and_explicitly_set = (
30
+ k in nullable_fields
31
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
32
+ )
33
+
34
+ if val != UNSET_SENTINEL:
35
+ if (
36
+ val is not None
37
+ or k not in optional_fields
38
+ or is_nullable_and_explicitly_set
39
+ ):
40
+ m[k] = val
46
41
 
47
42
  return m
@@ -44,37 +44,29 @@ class PaymentOptionRequest(BaseModel):
44
44
 
45
45
  @model_serializer(mode="wrap")
46
46
  def serialize_model(self, handler):
47
- optional_fields = [
48
- "metadata",
49
- "country",
50
- "currency",
51
- "amount",
52
- "locale",
53
- "cart_items",
54
- ]
55
- nullable_fields = ["metadata", "country", "currency", "amount", "cart_items"]
56
- null_default_fields = []
57
-
47
+ optional_fields = set(
48
+ ["metadata", "country", "currency", "amount", "locale", "cart_items"]
49
+ )
50
+ nullable_fields = set(
51
+ ["metadata", "country", "currency", "amount", "cart_items"]
52
+ )
58
53
  serialized = handler(self)
59
-
60
54
  m = {}
61
55
 
62
56
  for n, f in type(self).model_fields.items():
63
57
  k = f.alias or n
64
58
  val = serialized.get(k)
65
- serialized.pop(k, None)
66
-
67
- optional_nullable = k in optional_fields and k in nullable_fields
68
- is_set = (
69
- self.__pydantic_fields_set__.intersection({n})
70
- or k in null_default_fields
71
- ) # pylint: disable=no-member
72
-
73
- if val is not None and val != UNSET_SENTINEL:
74
- m[k] = val
75
- elif val != UNSET_SENTINEL and (
76
- not k in optional_fields or (optional_nullable and is_set)
77
- ):
78
- m[k] = val
59
+ is_nullable_and_explicitly_set = (
60
+ k in nullable_fields
61
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
62
+ )
63
+
64
+ if val != UNSET_SENTINEL:
65
+ if (
66
+ val is not None
67
+ or k not in optional_fields
68
+ or is_nullable_and_explicitly_set
69
+ ):
70
+ m[k] = val
79
71
 
80
72
  return m
@@ -143,47 +143,46 @@ class PaymentService(BaseModel):
143
143
 
144
144
  @model_serializer(mode="wrap")
145
145
  def serialize_model(self, handler):
146
- optional_fields = [
147
- "type",
148
- "id",
149
- "active",
150
- "status",
151
- "three_d_secure_enabled",
152
- "merchant_profile",
153
- "webhook_url",
154
- "fields",
155
- "reporting_fields",
156
- "is_deleted",
157
- ]
158
- nullable_fields = [
159
- "three_d_secure_enabled",
160
- "merchant_profile",
161
- "webhook_url",
162
- "fields",
163
- "reporting_fields",
164
- ]
165
- null_default_fields = []
166
-
146
+ optional_fields = set(
147
+ [
148
+ "type",
149
+ "id",
150
+ "active",
151
+ "status",
152
+ "three_d_secure_enabled",
153
+ "merchant_profile",
154
+ "webhook_url",
155
+ "fields",
156
+ "reporting_fields",
157
+ "is_deleted",
158
+ ]
159
+ )
160
+ nullable_fields = set(
161
+ [
162
+ "three_d_secure_enabled",
163
+ "merchant_profile",
164
+ "webhook_url",
165
+ "fields",
166
+ "reporting_fields",
167
+ ]
168
+ )
167
169
  serialized = handler(self)
168
-
169
170
  m = {}
170
171
 
171
172
  for n, f in type(self).model_fields.items():
172
173
  k = f.alias or n
173
174
  val = serialized.get(k)
174
- serialized.pop(k, None)
175
-
176
- optional_nullable = k in optional_fields and k in nullable_fields
177
- is_set = (
178
- self.__pydantic_fields_set__.intersection({n})
179
- or k in null_default_fields
180
- ) # pylint: disable=no-member
181
-
182
- if val is not None and val != UNSET_SENTINEL:
183
- m[k] = val
184
- elif val != UNSET_SENTINEL and (
185
- not k in optional_fields or (optional_nullable and is_set)
186
- ):
187
- m[k] = val
175
+ is_nullable_and_explicitly_set = (
176
+ k in nullable_fields
177
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
178
+ )
179
+
180
+ if val != UNSET_SENTINEL:
181
+ if (
182
+ val is not None
183
+ or k not in optional_fields
184
+ or is_nullable_and_explicitly_set
185
+ ):
186
+ m[k] = val
188
187
 
189
188
  return m
@@ -93,48 +93,47 @@ class PaymentServiceCreate(BaseModel):
93
93
 
94
94
  @model_serializer(mode="wrap")
95
95
  def serialize_model(self, handler):
96
- optional_fields = [
97
- "reporting_fields",
98
- "position",
99
- "active",
100
- "three_d_secure_enabled",
101
- "merchant_profile",
102
- "payment_method_tokenization_enabled",
103
- "network_tokens_enabled",
104
- "open_loop",
105
- "settlement_reporting_enabled",
106
- ]
107
- nullable_fields = [
108
- "reporting_fields",
109
- "position",
110
- "active",
111
- "merchant_profile",
112
- "payment_method_tokenization_enabled",
113
- "network_tokens_enabled",
114
- "open_loop",
115
- ]
116
- null_default_fields = []
117
-
96
+ optional_fields = set(
97
+ [
98
+ "reporting_fields",
99
+ "position",
100
+ "active",
101
+ "three_d_secure_enabled",
102
+ "merchant_profile",
103
+ "payment_method_tokenization_enabled",
104
+ "network_tokens_enabled",
105
+ "open_loop",
106
+ "settlement_reporting_enabled",
107
+ ]
108
+ )
109
+ nullable_fields = set(
110
+ [
111
+ "reporting_fields",
112
+ "position",
113
+ "active",
114
+ "merchant_profile",
115
+ "payment_method_tokenization_enabled",
116
+ "network_tokens_enabled",
117
+ "open_loop",
118
+ ]
119
+ )
118
120
  serialized = handler(self)
119
-
120
121
  m = {}
121
122
 
122
123
  for n, f in type(self).model_fields.items():
123
124
  k = f.alias or n
124
125
  val = serialized.get(k)
125
- serialized.pop(k, None)
126
-
127
- optional_nullable = k in optional_fields and k in nullable_fields
128
- is_set = (
129
- self.__pydantic_fields_set__.intersection({n})
130
- or k in null_default_fields
131
- ) # pylint: disable=no-member
132
-
133
- if val is not None and val != UNSET_SENTINEL:
134
- m[k] = val
135
- elif val != UNSET_SENTINEL and (
136
- not k in optional_fields or (optional_nullable and is_set)
137
- ):
138
- m[k] = val
126
+ is_nullable_and_explicitly_set = (
127
+ k in nullable_fields
128
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
129
+ )
130
+
131
+ if val != UNSET_SENTINEL:
132
+ if (
133
+ val is not None
134
+ or k not in optional_fields
135
+ or is_nullable_and_explicitly_set
136
+ ):
137
+ m[k] = val
139
138
 
140
139
  return m
@@ -98,30 +98,25 @@ class PaymentServiceDefinition(BaseModel):
98
98
 
99
99
  @model_serializer(mode="wrap")
100
100
  def serialize_model(self, handler):
101
- optional_fields = ["type", "icon_url"]
102
- nullable_fields = ["icon_url", "supported_integration_clients"]
103
- null_default_fields = []
104
-
101
+ optional_fields = set(["type", "icon_url"])
102
+ nullable_fields = set(["icon_url", "supported_integration_clients"])
105
103
  serialized = handler(self)
106
-
107
104
  m = {}
108
105
 
109
106
  for n, f in type(self).model_fields.items():
110
107
  k = f.alias or n
111
108
  val = serialized.get(k)
112
- serialized.pop(k, None)
113
-
114
- optional_nullable = k in optional_fields and k in nullable_fields
115
- is_set = (
116
- self.__pydantic_fields_set__.intersection({n})
117
- or k in null_default_fields
118
- ) # pylint: disable=no-member
119
-
120
- if val is not None and val != UNSET_SENTINEL:
121
- m[k] = val
122
- elif val != UNSET_SENTINEL and (
123
- not k in optional_fields or (optional_nullable and is_set)
124
- ):
125
- m[k] = val
109
+ is_nullable_and_explicitly_set = (
110
+ k in nullable_fields
111
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
112
+ )
113
+
114
+ if val != UNSET_SENTINEL:
115
+ if (
116
+ val is not None
117
+ or k not in optional_fields
118
+ or is_nullable_and_explicitly_set
119
+ ):
120
+ m[k] = val
126
121
 
127
122
  return m
@@ -37,30 +37,25 @@ class PaymentServiceDefinitions(BaseModel):
37
37
 
38
38
  @model_serializer(mode="wrap")
39
39
  def serialize_model(self, handler):
40
- optional_fields = ["limit", "next_cursor", "previous_cursor"]
41
- nullable_fields = ["next_cursor", "previous_cursor"]
42
- null_default_fields = []
43
-
40
+ optional_fields = set(["limit", "next_cursor", "previous_cursor"])
41
+ nullable_fields = set(["next_cursor", "previous_cursor"])
44
42
  serialized = handler(self)
45
-
46
43
  m = {}
47
44
 
48
45
  for n, f in type(self).model_fields.items():
49
46
  k = f.alias or n
50
47
  val = serialized.get(k)
51
- serialized.pop(k, None)
52
-
53
- optional_nullable = k in optional_fields and k in nullable_fields
54
- is_set = (
55
- self.__pydantic_fields_set__.intersection({n})
56
- or k in null_default_fields
57
- ) # pylint: disable=no-member
58
-
59
- if val is not None and val != UNSET_SENTINEL:
60
- m[k] = val
61
- elif val != UNSET_SENTINEL and (
62
- not k in optional_fields or (optional_nullable and is_set)
63
- ):
64
- m[k] = val
48
+ is_nullable_and_explicitly_set = (
49
+ k in nullable_fields
50
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
51
+ )
52
+
53
+ if val != UNSET_SENTINEL:
54
+ if (
55
+ val is not None
56
+ or k not in optional_fields
57
+ or is_nullable_and_explicitly_set
58
+ ):
59
+ m[k] = val
65
60
 
66
61
  return m
@@ -34,30 +34,25 @@ class PaymentServices(BaseModel):
34
34
 
35
35
  @model_serializer(mode="wrap")
36
36
  def serialize_model(self, handler):
37
- optional_fields = ["limit", "next_cursor", "previous_cursor"]
38
- nullable_fields = ["next_cursor", "previous_cursor"]
39
- null_default_fields = []
40
-
37
+ optional_fields = set(["limit", "next_cursor", "previous_cursor"])
38
+ nullable_fields = set(["next_cursor", "previous_cursor"])
41
39
  serialized = handler(self)
42
-
43
40
  m = {}
44
41
 
45
42
  for n, f in type(self).model_fields.items():
46
43
  k = f.alias or n
47
44
  val = serialized.get(k)
48
- serialized.pop(k, None)
49
-
50
- optional_nullable = k in optional_fields and k in nullable_fields
51
- is_set = (
52
- self.__pydantic_fields_set__.intersection({n})
53
- or k in null_default_fields
54
- ) # pylint: disable=no-member
55
-
56
- if val is not None and val != UNSET_SENTINEL:
57
- m[k] = val
58
- elif val != UNSET_SENTINEL and (
59
- not k in optional_fields or (optional_nullable and is_set)
60
- ):
61
- m[k] = val
45
+ is_nullable_and_explicitly_set = (
46
+ k in nullable_fields
47
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
48
+ )
49
+
50
+ if val != UNSET_SENTINEL:
51
+ if (
52
+ val is not None
53
+ or k not in optional_fields
54
+ or is_nullable_and_explicitly_set
55
+ ):
56
+ m[k] = val
62
57
 
63
58
  return m