@@ -8,6 +8,19 @@ from typing_extensions import Annotated
88{ {#imports} }
99{ {import} }
1010{ {/imports} }
11+ { {#operations.operation} }
12+ { {! Workaround for missing imports for parameters that use oneOf } }
13+ { {#allParams} }
14+ { {^hasDiscriminatorWithNonEmptyMapping} }
15+ { {#composedSchemas.oneOf} }
16+ { {#-first} }
17+ from { {packageName} }.models.{ {#lambda.snakecase} }{ {schema.complexType} }{ {/lambda.snakecase} } import { {schema.complexType} }
18+ from datetime import datetime, date, timezone
19+ { {/-first} }
20+ { {/composedSchemas.oneOf} }
21+ { {/hasDiscriminatorWithNonEmptyMapping} }
22+ { {/allParams} }
23+ { {/operations.operation} }
1124from { {packageName} }.api_client import ApiClient, RequestSerialized
1225from { {packageName} }.api_response import ApiResponse
1326from { {packageName} }.configuration import Configuration
@@ -117,6 +130,7 @@ class {{classname}}:
117130{ {#queryParams} }
118131 # process the query parameters
119132 if { {paramName} } is not None:
133+ { {^schema.composedSchemas.oneOf} }
120134 { {#isDateTime} }
121135 if isinstance({ {paramName} }, datetime):
122136 _query_params.append(
@@ -146,6 +160,27 @@ class {{classname}}:
146160 { {^isDateTime} }{ {^isDate} }
147161 _query_params.append(('{ {baseName} }', { {paramName} }{ {#isEnumRef} }.value{ {/isEnumRef} }))
148162 { {/isDate} }{ {/isDateTime} }
163+ { {/schema.composedSchemas.oneOf} }
164+ { {#schema.composedSchemas.oneOf} }
165+ { {#-first} }
166+ if isinstance({ {paramName} }, datetime):
167+ _query_params.append(
168+ (
169+ '{ {schema.baseName} }',
170+ { {paramName} }.isoformat(timespec='microseconds')
171+ )
172+ )
173+ elif isinstance({ {paramName} }, date):
174+ _query_params.append(
175+ (
176+ '{ {schema.baseName} }',
177+ { {paramName} }.isoformat()
178+ )
179+ )
180+ else:
181+ _query_params.append(('{ {schema.baseName} }', { {paramName} }))
182+ { {/-first} }
183+ { {/schema.composedSchemas.oneOf} }
149184{ {/queryParams} }
150185
151186{ {#headerParams} }
0 commit comments