11import datetime
2- from typing import Any , Dict , List , Optional , Union
2+ from typing import Any , Dict , List , Optional , Union , cast
33
44import attr
55from dateutil .parser import isoparse
@@ -17,6 +17,7 @@ class AModel:
1717 a_camel_date_time : Union [datetime .datetime , datetime .date ]
1818 a_date : datetime .date
1919 required_not_nullable : str
20+ a_nullable_date : Optional [datetime .date ]
2021 required_nullable : Optional [str ]
2122 nested_list_of_enums : Union [Unset , List [List [DifferentEnum ]]] = UNSET
2223 attr_1_leading_digit : Union [Unset , str ] = UNSET
@@ -33,7 +34,6 @@ def to_dict(self) -> Dict[str, Any]:
3334 a_camel_date_time = self .a_camel_date_time .isoformat ()
3435
3536 a_date = self .a_date .isoformat ()
36-
3737 required_not_nullable = self .required_not_nullable
3838 nested_list_of_enums : Union [Unset , List [Any ]] = UNSET
3939 if not isinstance (self .nested_list_of_enums , Unset ):
@@ -47,6 +47,7 @@ def to_dict(self) -> Dict[str, Any]:
4747
4848 nested_list_of_enums .append (nested_list_of_enums_item )
4949
50+ a_nullable_date = self .a_nullable_date .isoformat () if self .a_nullable_date else None
5051 attr_1_leading_digit = self .attr_1_leading_digit
5152 required_nullable = self .required_nullable
5253 not_required_nullable = self .not_required_nullable
@@ -59,6 +60,7 @@ def to_dict(self) -> Dict[str, Any]:
5960 "aCamelDateTime" : a_camel_date_time ,
6061 "a_date" : a_date ,
6162 "required_not_nullable" : required_not_nullable ,
63+ "a_nullable_date" : a_nullable_date ,
6264 "required_nullable" : required_nullable ,
6365 }
6466 )
@@ -109,6 +111,11 @@ def _parse_a_camel_date_time(data: Any) -> Union[datetime.datetime, datetime.dat
109111
110112 nested_list_of_enums .append (nested_list_of_enums_item )
111113
114+ a_nullable_date = None
115+ _a_nullable_date = d .pop ("a_nullable_date" )
116+ if _a_nullable_date is not None :
117+ a_nullable_date = isoparse (cast (str , _a_nullable_date )).date ()
118+
112119 attr_1_leading_digit = d .pop ("1_leading_digit" , UNSET )
113120
114121 required_nullable = d .pop ("required_nullable" )
@@ -123,6 +130,7 @@ def _parse_a_camel_date_time(data: Any) -> Union[datetime.datetime, datetime.dat
123130 a_date = a_date ,
124131 required_not_nullable = required_not_nullable ,
125132 nested_list_of_enums = nested_list_of_enums ,
133+ a_nullable_date = a_nullable_date ,
126134 attr_1_leading_digit = attr_1_leading_digit ,
127135 required_nullable = required_nullable ,
128136 not_required_nullable = not_required_nullable ,
0 commit comments