gr4vy 1.10.12__py3-none-any.whl → 1.10.14__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 (292) 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/mockcardmerchantadvicecodeoptions.py +14 -19
  163. gr4vy/models/mockcardoptions.py +14 -19
  164. gr4vy/models/networktoken.py +18 -1
  165. gr4vy/models/networktokencreate.py +14 -19
  166. gr4vy/models/networktokenpaymentmethodcreate.py +34 -35
  167. gr4vy/models/nuveiairlinedataoptions.py +14 -19
  168. gr4vy/models/nuveiidealoptions.py +14 -19
  169. gr4vy/models/nuveioptions.py +14 -19
  170. gr4vy/models/nuveipseoptions.py +13 -18
  171. gr4vy/models/oxxooptions.py +14 -19
  172. gr4vy/models/paymentlink.py +59 -60
  173. gr4vy/models/paymentlinkcreate.py +59 -60
  174. gr4vy/models/paymentlinks.py +14 -19
  175. gr4vy/models/paymentmethod.py +51 -52
  176. gr4vy/models/paymentmethodcard.py +14 -19
  177. gr4vy/models/paymentmethoddetailscard.py +14 -19
  178. gr4vy/models/paymentmethods.py +14 -19
  179. gr4vy/models/paymentmethodstoredcard.py +18 -1
  180. gr4vy/models/paymentmethodsummary.py +47 -48
  181. gr4vy/models/paymentoption.py +14 -19
  182. gr4vy/models/paymentoptioncontext.py +14 -19
  183. gr4vy/models/paymentoptioncontextapprovalui.py +14 -19
  184. gr4vy/models/paymentoptionrequest.py +18 -26
  185. gr4vy/models/paymentservice.py +35 -36
  186. gr4vy/models/paymentservicecreate.py +36 -37
  187. gr4vy/models/paymentservicedefinition.py +14 -19
  188. gr4vy/models/paymentservicedefinitions.py +14 -19
  189. gr4vy/models/paymentservices.py +14 -19
  190. gr4vy/models/paymentservicetoken.py +14 -19
  191. gr4vy/models/paymentservicetokencreate.py +14 -19
  192. gr4vy/models/paymentserviceupdate.py +45 -46
  193. gr4vy/models/payoutconnectionoptions.py +14 -19
  194. gr4vy/models/payoutcreate.py +34 -35
  195. gr4vy/models/payoutmerchant.py +14 -19
  196. gr4vy/models/payoutmerchantsummary.py +14 -19
  197. gr4vy/models/payoutpaymentservice.py +14 -19
  198. gr4vy/models/payoutsummaries.py +14 -19
  199. gr4vy/models/payoutsummary.py +35 -36
  200. gr4vy/models/paypaloptions.py +14 -19
  201. gr4vy/models/paypalshippingoptions.py +14 -19
  202. gr4vy/models/paypalshippingoptionsitem.py +14 -19
  203. gr4vy/models/plaidpaymentmethodcreate.py +31 -32
  204. gr4vy/models/powertranzoptions.py +14 -19
  205. gr4vy/models/recipient.py +14 -19
  206. gr4vy/models/redirectpaymentmethodcreate.py +18 -27
  207. gr4vy/models/refund.py +39 -40
  208. gr4vy/models/refunds.py +14 -19
  209. gr4vy/models/register_digital_wallet_domainop.py +34 -1
  210. gr4vy/models/report.py +33 -34
  211. gr4vy/models/reportcreate.py +14 -19
  212. gr4vy/models/reportexecution.py +18 -1
  213. gr4vy/models/reportexecutions.py +14 -19
  214. gr4vy/models/reportexecutionsummary.py +18 -1
  215. gr4vy/models/reportexecutionurlgenerate.py +18 -1
  216. gr4vy/models/reports.py +14 -19
  217. gr4vy/models/reportsummary.py +16 -19
  218. gr4vy/models/reportupdate.py +14 -19
  219. gr4vy/models/requiredcheckoutfields.py +14 -19
  220. gr4vy/models/resume_payment_method_network_tokenop.py +34 -1
  221. gr4vy/models/security.py +18 -1
  222. gr4vy/models/settlement.py +16 -25
  223. gr4vy/models/shippingdetails.py +35 -36
  224. gr4vy/models/shippingdetailscreate.py +18 -31
  225. gr4vy/models/shippingdetailsupdate.py +18 -31
  226. gr4vy/models/statementdescriptor.py +34 -35
  227. gr4vy/models/stripeconnectoptions.py +30 -31
  228. gr4vy/models/stripeoptions.py +14 -19
  229. gr4vy/models/suspend_payment_method_network_tokenop.py +34 -1
  230. gr4vy/models/sync_transactionop.py +34 -1
  231. gr4vy/models/threedsecure.py +14 -19
  232. gr4vy/models/threedsecuredatav1.py +14 -19
  233. gr4vy/models/threedsecuredatav2.py +14 -19
  234. gr4vy/models/threedsecureerror.py +14 -19
  235. gr4vy/models/threedsecurescenario.py +77 -0
  236. gr4vy/models/threedsecurescenarioconditions.py +84 -0
  237. gr4vy/models/threedsecurescenariocreate.py +24 -0
  238. gr4vy/models/threedsecurescenariooutcome.py +57 -0
  239. gr4vy/models/threedsecurescenariooutcomeauthentication.py +31 -0
  240. gr4vy/models/threedsecurescenariooutcomeresult.py +27 -0
  241. gr4vy/models/threedsecurescenarios.py +58 -0
  242. gr4vy/models/threedsecurescenarioupdate.py +54 -0
  243. gr4vy/models/threedsecurev2.py +34 -35
  244. gr4vy/models/tokenpaymentmethodcreate.py +14 -19
  245. gr4vy/models/transaction.py +111 -112
  246. gr4vy/models/transactionaction.py +18 -1
  247. gr4vy/models/transactionbuyer.py +31 -32
  248. gr4vy/models/transactioncancel.py +14 -19
  249. gr4vy/models/transactioncapture.py +14 -19
  250. gr4vy/models/transactioncapturecreate.py +14 -19
  251. gr4vy/models/transactionconnectionoptions.py +104 -105
  252. gr4vy/models/transactioncreate.py +88 -89
  253. gr4vy/models/transactionevent.py +18 -1
  254. gr4vy/models/transactionevents.py +14 -19
  255. gr4vy/models/transactiongiftcard.py +14 -19
  256. gr4vy/models/transactionpaymentmethod.py +49 -50
  257. gr4vy/models/transactionpaymentservice.py +18 -1
  258. gr4vy/models/transactionrefundallcreate.py +14 -19
  259. gr4vy/models/transactionrefundcreate.py +16 -25
  260. gr4vy/models/transactionretriesreportspec.py +18 -1
  261. gr4vy/models/transactionsreportspec.py +18 -1
  262. gr4vy/models/transactionsummaries.py +14 -19
  263. gr4vy/models/transactionsummary.py +50 -51
  264. gr4vy/models/transactionthreedsecuresummary.py +18 -33
  265. gr4vy/models/transactionupdate.py +14 -19
  266. gr4vy/models/transactionvoid.py +14 -19
  267. gr4vy/models/travelhubcustomdata.py +14 -19
  268. gr4vy/models/travelhuboptions.py +14 -19
  269. gr4vy/models/trustlyoptions.py +14 -19
  270. gr4vy/models/unregister_digital_wallet_domainop.py +34 -1
  271. gr4vy/models/update_buyer_shipping_detailsop.py +34 -1
  272. gr4vy/models/update_buyerop.py +34 -1
  273. gr4vy/models/update_checkout_sessionop.py +34 -1
  274. gr4vy/models/update_digital_walletop.py +34 -1
  275. gr4vy/models/update_payment_serviceop.py +34 -1
  276. gr4vy/models/update_reportop.py +34 -1
  277. gr4vy/models/update_three_ds_scenarioop.py +91 -0
  278. gr4vy/models/update_transactionop.py +34 -1
  279. gr4vy/models/verify_payment_service_credentialsop.py +34 -1
  280. gr4vy/models/verifycredentials.py +14 -19
  281. gr4vy/models/void_transactionop.py +30 -19
  282. gr4vy/models/wpayeverdaypayoptions.py +30 -31
  283. gr4vy/models/wpaypaytooptions.py +14 -19
  284. gr4vy/models/wpaypaytoresourceoptions.py +14 -19
  285. gr4vy/models/wpaypaytosimulationoptions.py +14 -19
  286. gr4vy/sdk.py +3 -0
  287. gr4vy/three_ds_scenarios.py +1322 -0
  288. gr4vy/utils/__init__.py +13 -1
  289. {gr4vy-1.10.12.dist-info → gr4vy-1.10.14.dist-info}/METADATA +8 -1
  290. gr4vy-1.10.14.dist-info/RECORD +464 -0
  291. gr4vy-1.10.12.dist-info/RECORD +0 -451
  292. {gr4vy-1.10.12.dist-info → gr4vy-1.10.14.dist-info}/WHEEL +0 -0
gr4vy/models/cartitem.py CHANGED
@@ -109,64 +109,63 @@ class CartItem(BaseModel):
109
109
 
110
110
  @model_serializer(mode="wrap")
111
111
  def serialize_model(self, handler):
112
- optional_fields = [
113
- "discount_amount",
114
- "tax_amount",
115
- "external_identifier",
116
- "sku",
117
- "upc",
118
- "product_url",
119
- "image_url",
120
- "categories",
121
- "product_type",
122
- "seller_country",
123
- "tax_exempt",
124
- "unit_of_measure",
125
- "commodity_code",
126
- "description",
127
- "duty_amount",
128
- "shipping_amount",
129
- ]
130
- nullable_fields = [
131
- "discount_amount",
132
- "tax_amount",
133
- "external_identifier",
134
- "sku",
135
- "upc",
136
- "product_url",
137
- "image_url",
138
- "categories",
139
- "product_type",
140
- "seller_country",
141
- "tax_exempt",
142
- "unit_of_measure",
143
- "commodity_code",
144
- "description",
145
- "duty_amount",
146
- "shipping_amount",
147
- ]
148
- null_default_fields = []
149
-
112
+ optional_fields = set(
113
+ [
114
+ "discount_amount",
115
+ "tax_amount",
116
+ "external_identifier",
117
+ "sku",
118
+ "upc",
119
+ "product_url",
120
+ "image_url",
121
+ "categories",
122
+ "product_type",
123
+ "seller_country",
124
+ "tax_exempt",
125
+ "unit_of_measure",
126
+ "commodity_code",
127
+ "description",
128
+ "duty_amount",
129
+ "shipping_amount",
130
+ ]
131
+ )
132
+ nullable_fields = set(
133
+ [
134
+ "discount_amount",
135
+ "tax_amount",
136
+ "external_identifier",
137
+ "sku",
138
+ "upc",
139
+ "product_url",
140
+ "image_url",
141
+ "categories",
142
+ "product_type",
143
+ "seller_country",
144
+ "tax_exempt",
145
+ "unit_of_measure",
146
+ "commodity_code",
147
+ "description",
148
+ "duty_amount",
149
+ "shipping_amount",
150
+ ]
151
+ )
150
152
  serialized = handler(self)
151
-
152
153
  m = {}
153
154
 
154
155
  for n, f in type(self).model_fields.items():
155
156
  k = f.alias or n
156
157
  val = serialized.get(k)
157
- serialized.pop(k, None)
158
-
159
- optional_nullable = k in optional_fields and k in nullable_fields
160
- is_set = (
161
- self.__pydantic_fields_set__.intersection({n})
162
- or k in null_default_fields
163
- ) # pylint: disable=no-member
164
-
165
- if val is not None and val != UNSET_SENTINEL:
166
- m[k] = val
167
- elif val != UNSET_SENTINEL and (
168
- not k in optional_fields or (optional_nullable and is_set)
169
- ):
170
- m[k] = val
158
+ is_nullable_and_explicitly_set = (
159
+ k in nullable_fields
160
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
161
+ )
162
+
163
+ if val != UNSET_SENTINEL:
164
+ if (
165
+ val is not None
166
+ or k not in optional_fields
167
+ or is_nullable_and_explicitly_set
168
+ ):
169
+ m[k] = val
171
170
 
172
171
  return m
@@ -17,30 +17,25 @@ class ChaseOptions(BaseModel):
17
17
 
18
18
  @model_serializer(mode="wrap")
19
19
  def serialize_model(self, handler):
20
- optional_fields = ["comments"]
21
- nullable_fields = ["comments"]
22
- null_default_fields = []
23
-
20
+ optional_fields = set(["comments"])
21
+ nullable_fields = set(["comments"])
24
22
  serialized = handler(self)
25
-
26
23
  m = {}
27
24
 
28
25
  for n, f in type(self).model_fields.items():
29
26
  k = f.alias or n
30
27
  val = serialized.get(k)
31
- serialized.pop(k, None)
32
-
33
- optional_nullable = k in optional_fields and k in nullable_fields
34
- is_set = (
35
- self.__pydantic_fields_set__.intersection({n})
36
- or k in null_default_fields
37
- ) # pylint: disable=no-member
38
-
39
- if val is not None and val != UNSET_SENTINEL:
40
- m[k] = val
41
- elif val != UNSET_SENTINEL and (
42
- not k in optional_fields or (optional_nullable and is_set)
43
- ):
44
- m[k] = val
28
+ is_nullable_and_explicitly_set = (
29
+ k in nullable_fields
30
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
31
+ )
32
+
33
+ if val != UNSET_SENTINEL:
34
+ if (
35
+ val is not None
36
+ or k not in optional_fields
37
+ or is_nullable_and_explicitly_set
38
+ ):
39
+ m[k] = val
45
40
 
46
41
  return m
@@ -85,49 +85,48 @@ class CheckoutSession(BaseModel):
85
85
 
86
86
  @model_serializer(mode="wrap")
87
87
  def serialize_model(self, handler):
88
- optional_fields = [
89
- "cart_items",
90
- "metadata",
91
- "buyer",
92
- "airline",
93
- "amount",
94
- "currency",
95
- "payment_service_id",
96
- "type",
97
- "payment_method",
98
- ]
99
- nullable_fields = [
100
- "cart_items",
101
- "metadata",
102
- "buyer",
103
- "airline",
104
- "amount",
105
- "currency",
106
- "payment_service_id",
107
- "payment_method",
108
- ]
109
- null_default_fields = []
110
-
88
+ optional_fields = set(
89
+ [
90
+ "cart_items",
91
+ "metadata",
92
+ "buyer",
93
+ "airline",
94
+ "amount",
95
+ "currency",
96
+ "payment_service_id",
97
+ "type",
98
+ "payment_method",
99
+ ]
100
+ )
101
+ nullable_fields = set(
102
+ [
103
+ "cart_items",
104
+ "metadata",
105
+ "buyer",
106
+ "airline",
107
+ "amount",
108
+ "currency",
109
+ "payment_service_id",
110
+ "payment_method",
111
+ ]
112
+ )
111
113
  serialized = handler(self)
112
-
113
114
  m = {}
114
115
 
115
116
  for n, f in type(self).model_fields.items():
116
117
  k = f.alias or n
117
118
  val = serialized.get(k)
118
- serialized.pop(k, None)
119
-
120
- optional_nullable = k in optional_fields and k in nullable_fields
121
- is_set = (
122
- self.__pydantic_fields_set__.intersection({n})
123
- or k in null_default_fields
124
- ) # pylint: disable=no-member
125
-
126
- if val is not None and val != UNSET_SENTINEL:
127
- m[k] = val
128
- elif val != UNSET_SENTINEL and (
129
- not k in optional_fields or (optional_nullable and is_set)
130
- ):
131
- m[k] = val
119
+ is_nullable_and_explicitly_set = (
120
+ k in nullable_fields
121
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
122
+ )
123
+
124
+ if val != UNSET_SENTINEL:
125
+ if (
126
+ val is not None
127
+ or k not in optional_fields
128
+ or is_nullable_and_explicitly_set
129
+ ):
130
+ m[k] = val
132
131
 
133
132
  return m
@@ -56,47 +56,46 @@ class CheckoutSessionCreate(BaseModel):
56
56
 
57
57
  @model_serializer(mode="wrap")
58
58
  def serialize_model(self, handler):
59
- optional_fields = [
60
- "cart_items",
61
- "metadata",
62
- "buyer",
63
- "airline",
64
- "amount",
65
- "currency",
66
- "payment_service_id",
67
- "expires_in",
68
- ]
69
- nullable_fields = [
70
- "cart_items",
71
- "metadata",
72
- "buyer",
73
- "airline",
74
- "amount",
75
- "currency",
76
- "payment_service_id",
77
- ]
78
- null_default_fields = []
79
-
59
+ optional_fields = set(
60
+ [
61
+ "cart_items",
62
+ "metadata",
63
+ "buyer",
64
+ "airline",
65
+ "amount",
66
+ "currency",
67
+ "payment_service_id",
68
+ "expires_in",
69
+ ]
70
+ )
71
+ nullable_fields = set(
72
+ [
73
+ "cart_items",
74
+ "metadata",
75
+ "buyer",
76
+ "airline",
77
+ "amount",
78
+ "currency",
79
+ "payment_service_id",
80
+ ]
81
+ )
80
82
  serialized = handler(self)
81
-
82
83
  m = {}
83
84
 
84
85
  for n, f in type(self).model_fields.items():
85
86
  k = f.alias or n
86
87
  val = serialized.get(k)
87
- serialized.pop(k, None)
88
-
89
- optional_nullable = k in optional_fields and k in nullable_fields
90
- is_set = (
91
- self.__pydantic_fields_set__.intersection({n})
92
- or k in null_default_fields
93
- ) # pylint: disable=no-member
94
-
95
- if val is not None and val != UNSET_SENTINEL:
96
- m[k] = val
97
- elif val != UNSET_SENTINEL and (
98
- not k in optional_fields or (optional_nullable and is_set)
99
- ):
100
- m[k] = val
88
+ is_nullable_and_explicitly_set = (
89
+ k in nullable_fields
90
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
91
+ )
92
+
93
+ if val != UNSET_SENTINEL:
94
+ if (
95
+ val is not None
96
+ or k not in optional_fields
97
+ or is_nullable_and_explicitly_set
98
+ ):
99
+ m[k] = val
101
100
 
102
101
  return m
@@ -65,38 +65,27 @@ class CheckoutSessionPaymentMethod(BaseModel):
65
65
 
66
66
  @model_serializer(mode="wrap")
67
67
  def serialize_model(self, handler):
68
- optional_fields = [
69
- "type",
70
- "id",
71
- "details",
72
- "label",
73
- "method",
74
- "scheme",
75
- "fingerprint",
76
- ]
77
- nullable_fields = ["id", "details", "label", "scheme", "fingerprint"]
78
- null_default_fields = []
79
-
68
+ optional_fields = set(
69
+ ["type", "id", "details", "label", "method", "scheme", "fingerprint"]
70
+ )
71
+ nullable_fields = set(["id", "details", "label", "scheme", "fingerprint"])
80
72
  serialized = handler(self)
81
-
82
73
  m = {}
83
74
 
84
75
  for n, f in type(self).model_fields.items():
85
76
  k = f.alias or n
86
77
  val = serialized.get(k)
87
- serialized.pop(k, None)
88
-
89
- optional_nullable = k in optional_fields and k in nullable_fields
90
- is_set = (
91
- self.__pydantic_fields_set__.intersection({n})
92
- or k in null_default_fields
93
- ) # pylint: disable=no-member
94
-
95
- if val is not None and val != UNSET_SENTINEL:
96
- m[k] = val
97
- elif val != UNSET_SENTINEL and (
98
- not k in optional_fields or (optional_nullable and is_set)
99
- ):
100
- m[k] = val
78
+ is_nullable_and_explicitly_set = (
79
+ k in nullable_fields
80
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
81
+ )
82
+
83
+ if val != UNSET_SENTINEL:
84
+ if (
85
+ val is not None
86
+ or k not in optional_fields
87
+ or is_nullable_and_explicitly_set
88
+ ):
89
+ m[k] = val
101
90
 
102
91
  return m
@@ -47,39 +47,29 @@ class CheckoutSessionPaymentMethodCreate(BaseModel):
47
47
 
48
48
  @model_serializer(mode="wrap")
49
49
  def serialize_model(self, handler):
50
- optional_fields = [
51
- "method",
52
- "external_identifier",
53
- "buyer_id",
54
- "buyer_external_identifier",
55
- ]
56
- nullable_fields = [
57
- "external_identifier",
58
- "buyer_id",
59
- "buyer_external_identifier",
60
- ]
61
- null_default_fields = []
62
-
50
+ optional_fields = set(
51
+ ["method", "external_identifier", "buyer_id", "buyer_external_identifier"]
52
+ )
53
+ nullable_fields = set(
54
+ ["external_identifier", "buyer_id", "buyer_external_identifier"]
55
+ )
63
56
  serialized = handler(self)
64
-
65
57
  m = {}
66
58
 
67
59
  for n, f in type(self).model_fields.items():
68
60
  k = f.alias or n
69
61
  val = serialized.get(k)
70
- serialized.pop(k, None)
71
-
72
- optional_nullable = k in optional_fields and k in nullable_fields
73
- is_set = (
74
- self.__pydantic_fields_set__.intersection({n})
75
- or k in null_default_fields
76
- ) # pylint: disable=no-member
77
-
78
- if val is not None and val != UNSET_SENTINEL:
79
- m[k] = val
80
- elif val != UNSET_SENTINEL and (
81
- not k in optional_fields or (optional_nullable and is_set)
82
- ):
83
- m[k] = val
62
+ is_nullable_and_explicitly_set = (
63
+ k in nullable_fields
64
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
65
+ )
66
+
67
+ if val != UNSET_SENTINEL:
68
+ if (
69
+ val is not None
70
+ or k not in optional_fields
71
+ or is_nullable_and_explicitly_set
72
+ ):
73
+ m[k] = val
84
74
 
85
75
  return m
@@ -33,30 +33,25 @@ class CheckoutSessionPaymentMethodDetails(BaseModel):
33
33
 
34
34
  @model_serializer(mode="wrap")
35
35
  def serialize_model(self, handler):
36
- optional_fields = ["bin", "card_country", "card_type", "card_issuer_name"]
37
- nullable_fields = ["bin", "card_country", "card_type", "card_issuer_name"]
38
- null_default_fields = []
39
-
36
+ optional_fields = set(["bin", "card_country", "card_type", "card_issuer_name"])
37
+ nullable_fields = set(["bin", "card_country", "card_type", "card_issuer_name"])
40
38
  serialized = handler(self)
41
-
42
39
  m = {}
43
40
 
44
41
  for n, f in type(self).model_fields.items():
45
42
  k = f.alias or n
46
43
  val = serialized.get(k)
47
- serialized.pop(k, None)
48
-
49
- optional_nullable = k in optional_fields and k in nullable_fields
50
- is_set = (
51
- self.__pydantic_fields_set__.intersection({n})
52
- or k in null_default_fields
53
- ) # pylint: disable=no-member
54
-
55
- if val is not None and val != UNSET_SENTINEL:
56
- m[k] = val
57
- elif val != UNSET_SENTINEL and (
58
- not k in optional_fields or (optional_nullable and is_set)
59
- ):
60
- m[k] = val
44
+ is_nullable_and_explicitly_set = (
45
+ k in nullable_fields
46
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
47
+ )
48
+
49
+ if val != UNSET_SENTINEL:
50
+ if (
51
+ val is not None
52
+ or k not in optional_fields
53
+ or is_nullable_and_explicitly_set
54
+ ):
55
+ m[k] = val
61
56
 
62
57
  return m
@@ -56,41 +56,40 @@ class CheckoutSessionWithURLPaymentMethodCreate(BaseModel):
56
56
 
57
57
  @model_serializer(mode="wrap")
58
58
  def serialize_model(self, handler):
59
- optional_fields = [
60
- "method",
61
- "external_identifier",
62
- "buyer_id",
63
- "buyer_external_identifier",
64
- "redirect_url",
65
- ]
66
- nullable_fields = [
67
- "external_identifier",
68
- "buyer_id",
69
- "buyer_external_identifier",
70
- "redirect_url",
71
- ]
72
- null_default_fields = []
73
-
59
+ optional_fields = set(
60
+ [
61
+ "method",
62
+ "external_identifier",
63
+ "buyer_id",
64
+ "buyer_external_identifier",
65
+ "redirect_url",
66
+ ]
67
+ )
68
+ nullable_fields = set(
69
+ [
70
+ "external_identifier",
71
+ "buyer_id",
72
+ "buyer_external_identifier",
73
+ "redirect_url",
74
+ ]
75
+ )
74
76
  serialized = handler(self)
75
-
76
77
  m = {}
77
78
 
78
79
  for n, f in type(self).model_fields.items():
79
80
  k = f.alias or n
80
81
  val = serialized.get(k)
81
- serialized.pop(k, None)
82
-
83
- optional_nullable = k in optional_fields and k in nullable_fields
84
- is_set = (
85
- self.__pydantic_fields_set__.intersection({n})
86
- or k in null_default_fields
87
- ) # pylint: disable=no-member
88
-
89
- if val is not None and val != UNSET_SENTINEL:
90
- m[k] = val
91
- elif val != UNSET_SENTINEL and (
92
- not k in optional_fields or (optional_nullable and is_set)
93
- ):
94
- m[k] = val
82
+ is_nullable_and_explicitly_set = (
83
+ k in nullable_fields
84
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
85
+ )
86
+
87
+ if val != UNSET_SENTINEL:
88
+ if (
89
+ val is not None
90
+ or k not in optional_fields
91
+ or is_nullable_and_explicitly_set
92
+ ):
93
+ m[k] = val
95
94
 
96
95
  return m
@@ -70,44 +70,43 @@ class ClickToPayFPANPaymentMethodCreate(BaseModel):
70
70
 
71
71
  @model_serializer(mode="wrap")
72
72
  def serialize_model(self, handler):
73
- optional_fields = [
74
- "buyer_external_identifier",
75
- "buyer_id",
76
- "external_identifier",
77
- "card_type",
78
- "redirect_url",
79
- "security_code",
80
- ]
81
- nullable_fields = [
82
- "buyer_external_identifier",
83
- "buyer_id",
84
- "external_identifier",
85
- "card_type",
86
- "redirect_url",
87
- "security_code",
88
- ]
89
- null_default_fields = []
90
-
73
+ optional_fields = set(
74
+ [
75
+ "buyer_external_identifier",
76
+ "buyer_id",
77
+ "external_identifier",
78
+ "card_type",
79
+ "redirect_url",
80
+ "security_code",
81
+ ]
82
+ )
83
+ nullable_fields = set(
84
+ [
85
+ "buyer_external_identifier",
86
+ "buyer_id",
87
+ "external_identifier",
88
+ "card_type",
89
+ "redirect_url",
90
+ "security_code",
91
+ ]
92
+ )
91
93
  serialized = handler(self)
92
-
93
94
  m = {}
94
95
 
95
96
  for n, f in type(self).model_fields.items():
96
97
  k = f.alias or n
97
98
  val = serialized.get(k)
98
- serialized.pop(k, None)
99
-
100
- optional_nullable = k in optional_fields and k in nullable_fields
101
- is_set = (
102
- self.__pydantic_fields_set__.intersection({n})
103
- or k in null_default_fields
104
- ) # pylint: disable=no-member
105
-
106
- if val is not None and val != UNSET_SENTINEL:
107
- m[k] = val
108
- elif val != UNSET_SENTINEL and (
109
- not k in optional_fields or (optional_nullable and is_set)
110
- ):
111
- m[k] = val
99
+ is_nullable_and_explicitly_set = (
100
+ k in nullable_fields
101
+ and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member
102
+ )
103
+
104
+ if val != UNSET_SENTINEL:
105
+ if (
106
+ val is not None
107
+ or k not in optional_fields
108
+ or is_nullable_and_explicitly_set
109
+ ):
110
+ m[k] = val
112
111
 
113
112
  return m