@@ -168,13 +168,13 @@ export async function generateApi(
168168 ...apiGen . enumAliases ,
169169 ...( hooks
170170 ? [
171- generateReactHooks ( {
172- exportName : generatedApiName ,
173- operationDefinitions,
174- endpointOverrides,
175- config : hooks ,
176- } ) ,
177- ]
171+ generateReactHooks ( {
172+ exportName : generatedApiName ,
173+ operationDefinitions,
174+ endpointOverrides,
175+ config : hooks ,
176+ } ) ,
177+ ]
178178 : [ ] ) ,
179179 ] ,
180180 factory . createToken ( ts . SyntaxKind . EndOfFileToken ) ,
@@ -294,7 +294,7 @@ export async function generateApi(
294294 const body = apiGen . resolve ( requestBody ) ;
295295 const schema = apiGen . getSchemaFromContent ( body . content ) ;
296296 const type = apiGen . getTypeFromSchema ( schema ) ;
297- const schemaName = camelCase ( ( type as any ) . name || getReferenceName ( schema ) || 'body' ) ;
297+ const schemaName = camelCase ( ( type as any ) . name || getReferenceName ( schema ) || ( "title" in schema && schema . title ) || 'body' ) ;
298298 const name = generateName ( schemaName in queryArg ? 'body' : schemaName , 'body' ) ;
299299
300300 queryArg [ name ] = {
@@ -328,19 +328,19 @@ export async function generateApi(
328328 ? isFlatArg
329329 ? withQueryComment ( { ...queryArgValues [ 0 ] . type } , queryArgValues [ 0 ] , false )
330330 : factory . createTypeLiteralNode (
331- queryArgValues . map ( ( def ) =>
332- withQueryComment (
333- factory . createPropertySignature (
334- undefined ,
335- propertyName ( def . name ) ,
336- createQuestionToken ( ! def . required ) ,
337- def . type
338- ) ,
339- def ,
340- true
341- )
331+ queryArgValues . map ( ( def ) =>
332+ withQueryComment (
333+ factory . createPropertySignature (
334+ undefined ,
335+ propertyName ( def . name ) ,
336+ createQuestionToken ( ! def . required ) ,
337+ def . type
338+ ) ,
339+ def ,
340+ true
342341 )
343342 )
343+ )
344344 : factory . createKeywordTypeNode ( ts . SyntaxKind . VoidKeyword )
345345 )
346346 ) . name
@@ -384,18 +384,18 @@ export async function generateApi(
384384 return parameters . length === 0
385385 ? undefined
386386 : factory . createPropertyAssignment (
387- factory . createIdentifier ( propertyName ) ,
388- factory . createObjectLiteralExpression (
389- parameters . map (
390- ( param ) =>
391- createPropertyAssignment (
392- param . originalName ,
393- isFlatArg ? rootObject : accessProperty ( rootObject , param . name )
394- ) ,
395- true
396- )
387+ factory . createIdentifier ( propertyName ) ,
388+ factory . createObjectLiteralExpression (
389+ parameters . map (
390+ ( param ) =>
391+ createPropertyAssignment (
392+ param . originalName ,
393+ isFlatArg ? rootObject : accessProperty ( rootObject , param . name )
394+ ) ,
395+ true
397396 )
398- ) ;
397+ )
398+ ) ;
399399 }
400400
401401 return factory . createArrowFunction (
@@ -416,17 +416,17 @@ export async function generateApi(
416416 isQuery && verb . toUpperCase ( ) === 'GET'
417417 ? undefined
418418 : factory . createPropertyAssignment (
419- factory . createIdentifier ( 'method' ) ,
420- factory . createStringLiteral ( verb . toUpperCase ( ) )
421- ) ,
419+ factory . createIdentifier ( 'method' ) ,
420+ factory . createStringLiteral ( verb . toUpperCase ( ) )
421+ ) ,
422422 bodyParameter === undefined
423423 ? undefined
424424 : factory . createPropertyAssignment (
425- factory . createIdentifier ( 'body' ) ,
426- isFlatArg
427- ? rootObject
428- : factory . createPropertyAccessExpression ( rootObject , factory . createIdentifier ( bodyParameter . name ) )
429- ) ,
425+ factory . createIdentifier ( 'body' ) ,
426+ isFlatArg
427+ ? rootObject
428+ : factory . createPropertyAccessExpression ( rootObject , factory . createIdentifier ( bodyParameter . name ) )
429+ ) ,
430430 createObjectLiteralProperty ( pickParams ( 'cookie' ) , 'cookies' ) ,
431431 createObjectLiteralProperty ( pickParams ( 'header' ) , 'headers' ) ,
432432 createObjectLiteralProperty ( pickParams ( 'query' ) , 'params' ) ,
@@ -438,12 +438,12 @@ export async function generateApi(
438438 }
439439
440440 // eslint-disable-next-line no-empty-pattern
441- function generateQueryEndpointProps ( { } : { operationDefinition : OperationDefinition } ) : ObjectPropertyDefinitions {
441+ function generateQueryEndpointProps ( { } : { operationDefinition : OperationDefinition } ) : ObjectPropertyDefinitions {
442442 return { } ; /* TODO needs implementation - skip for now */
443443 }
444444
445445 // eslint-disable-next-line no-empty-pattern
446- function generateMutationEndpointProps ( { } : { operationDefinition : OperationDefinition } ) : ObjectPropertyDefinitions {
446+ function generateMutationEndpointProps ( { } : { operationDefinition : OperationDefinition } ) : ObjectPropertyDefinitions {
447447 return { } ; /* TODO needs implementation - skip for now */
448448 }
449449}
@@ -473,16 +473,16 @@ function generatePathExpression(
473473
474474 return expressions . length
475475 ? factory . createTemplateExpression (
476- factory . createTemplateHead ( head ) ,
477- expressions . map ( ( [ prop , literal ] , index ) =>
478- factory . createTemplateSpan (
479- isFlatArg ? rootObject : accessProperty ( rootObject , prop ) ,
480- index === expressions . length - 1
481- ? factory . createTemplateTail ( literal )
482- : factory . createTemplateMiddle ( literal )
483- )
476+ factory . createTemplateHead ( head ) ,
477+ expressions . map ( ( [ prop , literal ] , index ) =>
478+ factory . createTemplateSpan (
479+ isFlatArg ? rootObject : accessProperty ( rootObject , prop ) ,
480+ index === expressions . length - 1
481+ ? factory . createTemplateTail ( literal )
482+ : factory . createTemplateMiddle ( literal )
484483 )
485484 )
485+ )
486486 : factory . createNoSubstitutionTemplateLiteral ( head ) ;
487487}
488488
@@ -493,13 +493,13 @@ type QueryArgDefinition = {
493493 required ?: boolean ;
494494 param ?: OpenAPIV3 . ParameterObject ;
495495} & (
496- | {
496+ | {
497497 origin : 'param' ;
498498 param : OpenAPIV3 . ParameterObject ;
499499 }
500- | {
500+ | {
501501 origin : 'body' ;
502502 body : OpenAPIV3 . RequestBodyObject ;
503503 }
504- ) ;
504+ ) ;
505505type QueryArgDefinitions = Record < string , QueryArgDefinition > ;
0 commit comments