moovio_sdk 0.15.2__py3-none-any.whl → 0.16.0__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.

Potentially problematic release.


This version of moovio_sdk might be problematic. Click here for more details.

moovio_sdk/_version.py CHANGED
@@ -3,10 +3,10 @@
3
3
  import importlib.metadata
4
4
 
5
5
  __title__: str = "moovio_sdk"
6
- __version__: str = "0.15.2"
6
+ __version__: str = "0.16.0"
7
7
  __openapi_doc_version__: str = "latest"
8
- __gen_version__: str = "2.709.0"
9
- __user_agent__: str = "speakeasy-sdk/python 0.15.2 2.709.0 latest moovio_sdk"
8
+ __gen_version__: str = "2.716.5"
9
+ __user_agent__: str = "speakeasy-sdk/python 0.16.0 2.716.5 latest moovio_sdk"
10
10
 
11
11
  try:
12
12
  if __package__ is not None:
moovio_sdk/sdk.py CHANGED
@@ -174,7 +174,7 @@ class Moov(BaseSDK):
174
174
  """
175
175
  client_supplied = True
176
176
  if client is None:
177
- client = httpx.Client()
177
+ client = httpx.Client(follow_redirects=True)
178
178
  client_supplied = False
179
179
 
180
180
  assert issubclass(
@@ -183,7 +183,7 @@ class Moov(BaseSDK):
183
183
 
184
184
  async_client_supplied = True
185
185
  if async_client is None:
186
- async_client = httpx.AsyncClient()
186
+ async_client = httpx.AsyncClient(follow_redirects=True)
187
187
  async_client_supplied = False
188
188
 
189
189
  if debug_logger is None:
@@ -3,6 +3,7 @@
3
3
  from enum import Enum
4
4
  from typing import Any, Optional
5
5
 
6
+
6
7
  def get_discriminator(model: Any, fieldname: str, key: str) -> str:
7
8
  """
8
9
  Recursively search for the discriminator attribute in a model.
@@ -25,31 +26,54 @@ def get_discriminator(model: Any, fieldname: str, key: str) -> str:
25
26
 
26
27
  if isinstance(field, dict):
27
28
  if key in field:
28
- return f'{field[key]}'
29
+ return f"{field[key]}"
29
30
 
30
31
  if hasattr(field, fieldname):
31
32
  attr = getattr(field, fieldname)
32
33
  if isinstance(attr, Enum):
33
- return f'{attr.value}'
34
- return f'{attr}'
34
+ return f"{attr.value}"
35
+ return f"{attr}"
35
36
 
36
37
  if hasattr(field, upper_fieldname):
37
38
  attr = getattr(field, upper_fieldname)
38
39
  if isinstance(attr, Enum):
39
- return f'{attr.value}'
40
- return f'{attr}'
40
+ return f"{attr.value}"
41
+ return f"{attr}"
41
42
 
42
43
  return None
43
44
 
45
+ def search_nested_discriminator(obj: Any) -> Optional[str]:
46
+ """Recursively search for discriminator in nested structures."""
47
+ # First try direct field lookup
48
+ discriminator = get_field_discriminator(obj)
49
+ if discriminator is not None:
50
+ return discriminator
51
+
52
+ # If it's a dict, search in nested values
53
+ if isinstance(obj, dict):
54
+ for value in obj.values():
55
+ if isinstance(value, list):
56
+ # Search in list items
57
+ for item in value:
58
+ nested_discriminator = search_nested_discriminator(item)
59
+ if nested_discriminator is not None:
60
+ return nested_discriminator
61
+ elif isinstance(value, dict):
62
+ # Search in nested dict
63
+ nested_discriminator = search_nested_discriminator(value)
64
+ if nested_discriminator is not None:
65
+ return nested_discriminator
66
+
67
+ return None
44
68
 
45
69
  if isinstance(model, list):
46
70
  for field in model:
47
- discriminator = get_field_discriminator(field)
71
+ discriminator = search_nested_discriminator(field)
48
72
  if discriminator is not None:
49
73
  return discriminator
50
74
 
51
- discriminator = get_field_discriminator(model)
75
+ discriminator = search_nested_discriminator(model)
52
76
  if discriminator is not None:
53
77
  return discriminator
54
78
 
55
- raise ValueError(f'Could not find discriminator field {fieldname} in {model}')
79
+ raise ValueError(f"Could not find discriminator field {fieldname} in {model}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: moovio_sdk
3
- Version: 0.15.2
3
+ Version: 0.16.0
4
4
  Summary: Python Client SDK Generated by Speakeasy.
5
5
  Author: Speakeasy
6
6
  Requires-Python: >=3.9.2
@@ -197,6 +197,7 @@ with Moov(
197
197
  </br>
198
198
 
199
199
  The same SDK client can also be used to make asynchronous requests by importing asyncio.
200
+
200
201
  ```python
201
202
  # Asynchronous Example
202
203
  import asyncio
@@ -3,7 +3,7 @@ moovio_sdk/_hooks/__init__.py,sha256=9_7W5jAYw8rcO8Kfc-Ty-lB82BHfksAJJpVFb_UeU1c
3
3
  moovio_sdk/_hooks/registration.py,sha256=1QZB41w6If7I9dXiOSQx6dhSc6BPWrnI5Q5bMOr4iVA,624
4
4
  moovio_sdk/_hooks/sdkhooks.py,sha256=2XuMgiV2N7UE7lN00Is-c3spxVWigYitXS6xSmS_Qow,2560
5
5
  moovio_sdk/_hooks/types.py,sha256=Yi9LD8_sd4zG7_idzCZY4MTxTXMhDlmCdpQvU4dXFI4,3049
6
- moovio_sdk/_version.py,sha256=k8l9y8DwxtbZwG6mzm0DfWyvwuU-SShtSGy9esG31J8,466
6
+ moovio_sdk/_version.py,sha256=shi-lMDYthGbn-7xUGuu6F1Ez9AIZiRhwHzad1lihoM,466
7
7
  moovio_sdk/account_terminal_applications.py,sha256=ldTg5uAukIAwfziQFgmuq6vlAsUPS5DqMkgdCx9bwn8,38522
8
8
  moovio_sdk/accounts.py,sha256=XHDyYql7Tc27K28zv0UI0eYU0LkRu8kmSPXBYI8Iyx0,100626
9
9
  moovio_sdk/adjustments.py,sha256=U2AtbA2k71S1IpwjJ96LT4SdGUDqR3JEgOSvMm9a2yU,17613
@@ -705,7 +705,7 @@ moovio_sdk/py.typed,sha256=zrp19r0G21lr2yRiMC0f8MFkQFGj9wMpSbboePMg8KM,59
705
705
  moovio_sdk/receipts.py,sha256=ZyEDLX-fnxLDf3QmKA6nfKtHEUxOaOwDLDYr6PAuNYo,19035
706
706
  moovio_sdk/representatives.py,sha256=3XG8tnLGs5pB8gDzMNgGCxiqcHp29vFSc12G7S-K3A8,60219
707
707
  moovio_sdk/scheduling.py,sha256=NcTSaPBa43YTmxS02qYy-o8ItA61gMLEk1HAV9MV2nc,60890
708
- moovio_sdk/sdk.py,sha256=IFvSKx2COVGbl_PX6_ZZhg_b6SDJP3bKOHS9KEL1Wlc,12650
708
+ moovio_sdk/sdk.py,sha256=DbvOI96OJ2_5QpcSF-qfL2C1fHbd4z8BCjl_mBXoxko,12692
709
709
  moovio_sdk/sdkconfiguration.py,sha256=vvZHznUDI2m3Z8ddTKDFUXkQu4mNBGX8Q9Zx7XpR3WY,1665
710
710
  moovio_sdk/statements.py,sha256=KWU3fFswizXN79gRJX-TWsk1F2V0Yp1DaeiWfozU6KU,21145
711
711
  moovio_sdk/support.py,sha256=fIs60WlHq2au9n4BBPLq1J3Vp8cdulisn-_5Z3r9vg0,50519
@@ -716,7 +716,7 @@ moovio_sdk/types/__init__.py,sha256=RArOwSgeeTIva6h-4ttjXwMUeCkz10nAFBL9D-QljI4,
716
716
  moovio_sdk/types/basemodel.py,sha256=L79WXvTECbSqaJzs8D3ud_KdIWkU7Cx2wbohDAktE9E,1127
717
717
  moovio_sdk/underwriting.py,sha256=gokG7XLfatp4Xq3NnlvoCS0EvNhJWedkBO1JJnnfmU4,37424
718
718
  moovio_sdk/utils/__init__.py,sha256=CAG0O76aEToGKXpT6Ft87Vd-iiQTh4XdBrQ37BVbsiM,5861
719
- moovio_sdk/utils/annotations.py,sha256=aR7mZG34FzgRdew7WZPYEu9QGBerpuKxCF4sek5Z_5Y,1699
719
+ moovio_sdk/utils/annotations.py,sha256=FvfvVTUj8TUclm4HbGgY5yi2Ap7EzGmu2UPFU4FwC1w,2755
720
720
  moovio_sdk/utils/datetimes.py,sha256=oppAA5e3V35pQov1-FNLKxAaNF1_XWi-bQtyjjql3H8,855
721
721
  moovio_sdk/utils/enums.py,sha256=REU6ydF8gsVL3xaeGX4sMNyiL3q5P9h29-f6Sa6luAE,2633
722
722
  moovio_sdk/utils/eventstreaming.py,sha256=SgFqMcUOYKlrTQ4gAp_dNcKLvDXukeiEMNU3DP8mXk8,6692
@@ -734,6 +734,6 @@ moovio_sdk/utils/url.py,sha256=BgGPgcTA6MRK4bF8fjP2dUopN3NzEzxWMXPBVg8NQUA,5254
734
734
  moovio_sdk/utils/values.py,sha256=CcaCXEa3xHhkUDROyXZocN8f0bdITftv9Y0P9lTf0YM,3517
735
735
  moovio_sdk/wallet_transactions.py,sha256=RmLqla-r3w-R2yiE6NFsOSWdmKFxDqCKAw5TZV0ooOs,23895
736
736
  moovio_sdk/wallets.py,sha256=mkjHXF-JJ6fdgWNTn-qQA938ejre_ILQuFh8F0Vi1LY,43246
737
- moovio_sdk-0.15.2.dist-info/METADATA,sha256=TJAkCQBh28LtFkZZrgOF35hVUxWmhoeXx7Wzici1oOE,114994
738
- moovio_sdk-0.15.2.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
739
- moovio_sdk-0.15.2.dist-info/RECORD,,
737
+ moovio_sdk-0.16.0.dist-info/METADATA,sha256=xrVLejz_tUamQmsLvsuS9IlyUqJwujf2q-K1JmDnfG4,114995
738
+ moovio_sdk-0.16.0.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
739
+ moovio_sdk-0.16.0.dist-info/RECORD,,