jszy-swagger-doc-generator 1.1.0 → 1.4.0
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.
- package/README.md +106 -118
- package/dist/cli.js +17 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +44 -12
- package/dist/index.js +364 -68
- package/dist/index.js.map +1 -1
- package/package.json +6 -3
- package/src/cli.ts +21 -5
- package/src/index.ts +401 -76
package/dist/index.js
CHANGED
|
@@ -287,7 +287,7 @@ class SwaggerDocGenerator {
|
|
|
287
287
|
return `export type ${typeName} = ${convertTypeToTs(schema, allSchemas)};\n`;
|
|
288
288
|
}
|
|
289
289
|
/**
|
|
290
|
-
* Generates React hooks from the paths in Swagger doc
|
|
290
|
+
* Generates React hooks from the paths in Swagger doc organized by tag
|
|
291
291
|
*/
|
|
292
292
|
generateReactHooks(swaggerDoc) {
|
|
293
293
|
const hooksByTag = new Map();
|
|
@@ -304,10 +304,65 @@ class SwaggerDocGenerator {
|
|
|
304
304
|
endpointsByTag[tag].push({ path, method, endpointInfo });
|
|
305
305
|
});
|
|
306
306
|
});
|
|
307
|
-
// Generate hooks for each tag
|
|
307
|
+
// Generate hooks and types for each tag
|
|
308
308
|
Object.entries(endpointsByTag).forEach(([tag, endpoints]) => {
|
|
309
|
-
|
|
310
|
-
|
|
309
|
+
// Generate TypeScript types for schemas used in this tag
|
|
310
|
+
let typesContent = `// ${toPascalCase(tag)} API Types\n\n`;
|
|
311
|
+
// First, find all directly used schemas in endpoints for this tag
|
|
312
|
+
const directlyUsedSchemas = new Set();
|
|
313
|
+
if (schemas) {
|
|
314
|
+
Object.entries(schemas).forEach(([typeName, schema]) => {
|
|
315
|
+
if (this.isSchemaUsedInEndpoints(typeName, endpoints, schemas)) {
|
|
316
|
+
directlyUsedSchemas.add(typeName);
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
}
|
|
320
|
+
// Then, find all referenced schemas (schemas that are referenced by the directly used ones)
|
|
321
|
+
const allNeededSchemas = this.findAllReferencedSchemas(directlyUsedSchemas, schemas);
|
|
322
|
+
// Generate types for all needed schemas
|
|
323
|
+
if (schemas) {
|
|
324
|
+
for (const typeName of allNeededSchemas) {
|
|
325
|
+
const schema = schemas[typeName];
|
|
326
|
+
if (schema) {
|
|
327
|
+
typesContent += this.generateSingleTypeDefinition(typeName, schema, schemas);
|
|
328
|
+
typesContent += '\n';
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
// Generate hooks content
|
|
333
|
+
let hooksContent = `// ${toPascalCase(tag)} API Hooks\n`;
|
|
334
|
+
hooksContent += `import { useQuery, useMutation, useQueryClient } from 'react-query';\n`;
|
|
335
|
+
hooksContent += `import axios from 'axios';\n`;
|
|
336
|
+
// Determine which types are actually used in this tag's endpoints and generate imports
|
|
337
|
+
const usedTypeNames = new Set();
|
|
338
|
+
// First, find all types that are directly used in endpoints for this tag
|
|
339
|
+
if (schemas) {
|
|
340
|
+
for (const [typeName, schema] of Object.entries(schemas)) {
|
|
341
|
+
if (this.isSchemaUsedInEndpoints(typeName, endpoints, schemas)) {
|
|
342
|
+
usedTypeNames.add(typeName);
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
// Then, add all transitive dependencies of the directly used types
|
|
347
|
+
const finalTypeNames = new Set();
|
|
348
|
+
for (const typeName of usedTypeNames) {
|
|
349
|
+
finalTypeNames.add(typeName);
|
|
350
|
+
// Find all types referenced by this type
|
|
351
|
+
const referencedTypes = this.findSchemaReferences(schemas[typeName], schemas);
|
|
352
|
+
for (const refName of referencedTypes) {
|
|
353
|
+
if (schemas[refName]) {
|
|
354
|
+
finalTypeNames.add(refName);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
// Add import statement only if there are types to import
|
|
359
|
+
if (finalTypeNames.size > 0) {
|
|
360
|
+
hooksContent += `import type { ${Array.from(finalTypeNames).join(', ')} } from './${toCamelCase(tag)}.types';\n\n`;
|
|
361
|
+
}
|
|
362
|
+
else {
|
|
363
|
+
hooksContent += `\n`;
|
|
364
|
+
}
|
|
365
|
+
// Generate parameter interfaces for this tag
|
|
311
366
|
const allParamInterfaces = [];
|
|
312
367
|
endpoints.forEach(({ path, method, endpointInfo }) => {
|
|
313
368
|
const paramInterface = this.generateParamInterface(path, method, endpointInfo, schemas);
|
|
@@ -317,22 +372,176 @@ class SwaggerDocGenerator {
|
|
|
317
372
|
});
|
|
318
373
|
// Add all unique parameter interfaces
|
|
319
374
|
allParamInterfaces.forEach(interfaceCode => {
|
|
320
|
-
|
|
375
|
+
hooksContent += interfaceCode + '\n';
|
|
321
376
|
});
|
|
322
|
-
// Generate individual hooks
|
|
377
|
+
// Generate individual hooks using react-query and axios
|
|
323
378
|
endpoints.forEach(({ path, method, endpointInfo }) => {
|
|
324
|
-
const hookContent = this.
|
|
325
|
-
|
|
379
|
+
const hookContent = this.generateReactQueryHook(path, method, endpointInfo, schemas);
|
|
380
|
+
hooksContent += hookContent + '\n';
|
|
326
381
|
});
|
|
327
|
-
hooksByTag.set(tag,
|
|
382
|
+
hooksByTag.set(tag, { hooks: hooksContent, types: typesContent });
|
|
328
383
|
});
|
|
329
384
|
return hooksByTag;
|
|
330
385
|
}
|
|
331
386
|
/**
|
|
332
|
-
*
|
|
387
|
+
* Checks if a schema is used in any of the endpoints
|
|
333
388
|
*/
|
|
334
|
-
|
|
335
|
-
|
|
389
|
+
isSchemaUsedInEndpoints(schemaName, endpoints, allSchemas) {
|
|
390
|
+
for (const { endpointInfo } of endpoints) {
|
|
391
|
+
// Check if schema is used as response
|
|
392
|
+
if (endpointInfo.responses) {
|
|
393
|
+
for (const [, responseInfo] of Object.entries(endpointInfo.responses)) {
|
|
394
|
+
if (responseInfo.content) {
|
|
395
|
+
for (const [, contentInfo] of Object.entries(responseInfo.content)) {
|
|
396
|
+
if (contentInfo.schema) {
|
|
397
|
+
if (this.schemaContainsRef(contentInfo.schema, schemaName, allSchemas)) {
|
|
398
|
+
return true;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
// Check if schema is used in parameters
|
|
406
|
+
if (endpointInfo.parameters) {
|
|
407
|
+
for (const param of endpointInfo.parameters) {
|
|
408
|
+
if (param.schema && this.schemaContainsRef(param.schema, schemaName, allSchemas)) {
|
|
409
|
+
return true;
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
// Check if schema is used in request body
|
|
414
|
+
if (endpointInfo.requestBody && endpointInfo.requestBody.content) {
|
|
415
|
+
for (const [, contentInfo] of Object.entries(endpointInfo.requestBody.content)) {
|
|
416
|
+
if (contentInfo.schema && this.schemaContainsRef(contentInfo.schema, schemaName, allSchemas)) {
|
|
417
|
+
return true;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
return false;
|
|
423
|
+
}
|
|
424
|
+
/**
|
|
425
|
+
* Checks if a schema contains a reference to another schema
|
|
426
|
+
*/
|
|
427
|
+
schemaContainsRef(schema, targetSchemaName, allSchemas) {
|
|
428
|
+
if (!schema)
|
|
429
|
+
return false;
|
|
430
|
+
// Check if this schema directly references the target
|
|
431
|
+
if (schema.$ref) {
|
|
432
|
+
const refTypeName = schema.$ref.split('/').pop();
|
|
433
|
+
if (refTypeName === targetSchemaName) {
|
|
434
|
+
return true;
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
// Recursively check nested properties
|
|
438
|
+
if (schema.properties) {
|
|
439
|
+
for (const [, propSchema] of Object.entries(schema.properties)) {
|
|
440
|
+
if (this.schemaContainsRef(propSchema, targetSchemaName, allSchemas)) {
|
|
441
|
+
return true;
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
// Check if it's an array schema
|
|
446
|
+
if (schema.items) {
|
|
447
|
+
if (this.schemaContainsRef(schema.items, targetSchemaName, allSchemas)) {
|
|
448
|
+
return true;
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
// Check allOf, oneOf, anyOf
|
|
452
|
+
if (schema.allOf) {
|
|
453
|
+
for (const item of schema.allOf) {
|
|
454
|
+
if (this.schemaContainsRef(item, targetSchemaName, allSchemas)) {
|
|
455
|
+
return true;
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
if (schema.oneOf) {
|
|
460
|
+
for (const item of schema.oneOf) {
|
|
461
|
+
if (this.schemaContainsRef(item, targetSchemaName, allSchemas)) {
|
|
462
|
+
return true;
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
if (schema.anyOf) {
|
|
467
|
+
for (const item of schema.anyOf) {
|
|
468
|
+
if (this.schemaContainsRef(item, targetSchemaName, allSchemas)) {
|
|
469
|
+
return true;
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
return false;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Find all referenced schemas from a set of directly used schemas
|
|
477
|
+
*/
|
|
478
|
+
findAllReferencedSchemas(initialSchemas, allSchemas) {
|
|
479
|
+
const result = new Set([...initialSchemas]); // Start with initial schemas
|
|
480
|
+
let changed = true;
|
|
481
|
+
while (changed) {
|
|
482
|
+
changed = false;
|
|
483
|
+
for (const typeName of [...result]) { // Use spread to create a new array to avoid concurrent modification
|
|
484
|
+
const schema = allSchemas[typeName];
|
|
485
|
+
if (schema) {
|
|
486
|
+
// Check for references in the schema
|
|
487
|
+
const referencedSchemas = this.findSchemaReferences(schema, allSchemas);
|
|
488
|
+
for (const refName of referencedSchemas) {
|
|
489
|
+
if (!result.has(refName) && allSchemas[refName]) {
|
|
490
|
+
result.add(refName);
|
|
491
|
+
changed = true;
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
return result;
|
|
498
|
+
}
|
|
499
|
+
/**
|
|
500
|
+
* Find schema references in a given schema
|
|
501
|
+
*/
|
|
502
|
+
findSchemaReferences(schema, allSchemas) {
|
|
503
|
+
const references = new Set();
|
|
504
|
+
if (!schema)
|
|
505
|
+
return references;
|
|
506
|
+
// Check direct $ref
|
|
507
|
+
if (schema.$ref) {
|
|
508
|
+
const refTypeName = schema.$ref.split('/').pop();
|
|
509
|
+
if (refTypeName && allSchemas[refTypeName]) {
|
|
510
|
+
references.add(refTypeName);
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
// Check properties
|
|
514
|
+
if (schema.properties) {
|
|
515
|
+
Object.values(schema.properties).forEach((propSchema) => {
|
|
516
|
+
const nestedRefs = this.findSchemaReferences(propSchema, allSchemas);
|
|
517
|
+
nestedRefs.forEach(ref => references.add(ref));
|
|
518
|
+
});
|
|
519
|
+
}
|
|
520
|
+
// Check array items
|
|
521
|
+
if (schema.items) {
|
|
522
|
+
const itemRefs = this.findSchemaReferences(schema.items, allSchemas);
|
|
523
|
+
itemRefs.forEach(ref => references.add(ref));
|
|
524
|
+
}
|
|
525
|
+
// Check allOf, oneOf, anyOf
|
|
526
|
+
if (schema.allOf) {
|
|
527
|
+
schema.allOf.forEach((item) => {
|
|
528
|
+
const itemRefs = this.findSchemaReferences(item, allSchemas);
|
|
529
|
+
itemRefs.forEach(ref => references.add(ref));
|
|
530
|
+
});
|
|
531
|
+
}
|
|
532
|
+
if (schema.oneOf) {
|
|
533
|
+
schema.oneOf.forEach((item) => {
|
|
534
|
+
const itemRefs = this.findSchemaReferences(item, allSchemas);
|
|
535
|
+
itemRefs.forEach(ref => references.add(ref));
|
|
536
|
+
});
|
|
537
|
+
}
|
|
538
|
+
if (schema.anyOf) {
|
|
539
|
+
schema.anyOf.forEach((item) => {
|
|
540
|
+
const itemRefs = this.findSchemaReferences(item, allSchemas);
|
|
541
|
+
itemRefs.forEach(ref => references.add(ref));
|
|
542
|
+
});
|
|
543
|
+
}
|
|
544
|
+
return references;
|
|
336
545
|
}
|
|
337
546
|
/**
|
|
338
547
|
* Generates a parameter interface for an API endpoint
|
|
@@ -366,24 +575,15 @@ class SwaggerDocGenerator {
|
|
|
366
575
|
return paramsInterface;
|
|
367
576
|
}
|
|
368
577
|
/**
|
|
369
|
-
* Generates a
|
|
578
|
+
* Generates a React Query hook using axios
|
|
370
579
|
*/
|
|
371
|
-
|
|
580
|
+
generateReactQueryHook(path, method, endpointInfo, schemas) {
|
|
372
581
|
const operationId = endpointInfo.operationId || this.generateOperationId(path, method);
|
|
373
582
|
const hookName = `use${toPascalCase(operationId)}`;
|
|
583
|
+
const hookType = method.toLowerCase() === 'get' ? 'useQuery' : 'useMutation';
|
|
374
584
|
// Use unique parameter interface name
|
|
375
585
|
const pathParams = endpointInfo.parameters?.filter((p) => p.in === 'path') || [];
|
|
376
586
|
const queryParams = endpointInfo.parameters?.filter((p) => p.in === 'query') || [];
|
|
377
|
-
let paramsDeclaration = '';
|
|
378
|
-
let paramsUsage = '{}';
|
|
379
|
-
const hasParams = pathParams.length > 0 || queryParams.length > 0;
|
|
380
|
-
if (hasParams) {
|
|
381
|
-
const paramInterfaceName = `${toPascalCase(operationId)}Params`;
|
|
382
|
-
paramsDeclaration = `params: ${paramInterfaceName}`;
|
|
383
|
-
paramsUsage = 'params';
|
|
384
|
-
}
|
|
385
|
-
// Format the path for use in the code (handle path parameters)
|
|
386
|
-
const pathWithParams = path.replace(/{(\w+)}/g, (_, param) => `\${params.${toCamelCase(param)}}`);
|
|
387
587
|
// Determine response type
|
|
388
588
|
let responseType = 'any';
|
|
389
589
|
if (endpointInfo.responses && endpointInfo.responses['200']) {
|
|
@@ -393,60 +593,146 @@ class SwaggerDocGenerator {
|
|
|
393
593
|
}
|
|
394
594
|
}
|
|
395
595
|
// Generate request body parameter if needed
|
|
396
|
-
let
|
|
596
|
+
let requestBodyType = 'any';
|
|
597
|
+
let hasBody = false;
|
|
397
598
|
if (method.toLowerCase() !== 'get' && method.toLowerCase() !== 'delete' && endpointInfo.requestBody) {
|
|
398
599
|
const bodySchema = endpointInfo.requestBody.content?.['application/json']?.schema;
|
|
399
600
|
if (bodySchema) {
|
|
400
|
-
|
|
401
|
-
|
|
601
|
+
requestBodyType = convertTypeToTs(bodySchema, schemas);
|
|
602
|
+
hasBody = true;
|
|
402
603
|
}
|
|
403
604
|
}
|
|
404
|
-
//
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
if (
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
605
|
+
// Format the path for use in the code (handle path parameters)
|
|
606
|
+
const pathWithParams = path.replace(/{(\w+)}/g, (_, param) => `\${params.${toCamelCase(param)}}`);
|
|
607
|
+
const axiosPath = `\`\${process.env.REACT_APP_API_BASE_URL || ''}${pathWithParams}\``;
|
|
608
|
+
// Generate the hook code
|
|
609
|
+
let hookCode = '';
|
|
610
|
+
if (method.toLowerCase() === 'get') {
|
|
611
|
+
// For GET requests, use useQuery
|
|
612
|
+
const hasParams = pathParams.length > 0 || queryParams.length > 0;
|
|
613
|
+
if (hasParams) {
|
|
614
|
+
const paramInterfaceName = `${toPascalCase(operationId)}Params`;
|
|
615
|
+
hookCode += `export const ${hookName} = (params: ${paramInterfaceName}) => {\n`;
|
|
616
|
+
hookCode += ` return useQuery({\n`;
|
|
617
|
+
hookCode += ` queryKey: ['${operationId}', params],\n`;
|
|
618
|
+
hookCode += ` queryFn: async () => {\n`;
|
|
619
|
+
hookCode += ` const response = await axios.get<${responseType}>(${axiosPath}, { params });\n`;
|
|
620
|
+
hookCode += ` return response.data;\n`;
|
|
621
|
+
hookCode += ` },\n`;
|
|
622
|
+
hookCode += ` });\n`;
|
|
623
|
+
hookCode += `};\n`;
|
|
624
|
+
}
|
|
625
|
+
else {
|
|
626
|
+
hookCode += `export const ${hookName} = () => {\n`;
|
|
627
|
+
hookCode += ` return useQuery({\n`;
|
|
628
|
+
hookCode += ` queryKey: ['${operationId}'],\n`;
|
|
629
|
+
hookCode += ` queryFn: async () => {\n`;
|
|
630
|
+
hookCode += ` const response = await axios.get<${responseType}>(${axiosPath});\n`;
|
|
631
|
+
hookCode += ` return response.data;\n`;
|
|
632
|
+
hookCode += ` },\n`;
|
|
633
|
+
hookCode += ` });\n`;
|
|
634
|
+
hookCode += `};\n`;
|
|
635
|
+
}
|
|
418
636
|
}
|
|
419
637
|
else {
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
638
|
+
// For non-GET requests, use useMutation
|
|
639
|
+
const hasPathParams = pathParams.length > 0;
|
|
640
|
+
if (hasPathParams) {
|
|
641
|
+
const paramInterfaceName = `${toPascalCase(operationId)}Params`;
|
|
642
|
+
hookCode += `export const ${hookName} = () => {\n`;
|
|
643
|
+
hookCode += ` const queryClient = useQueryClient();\n\n`;
|
|
644
|
+
hookCode += ` return useMutation({\n`;
|
|
645
|
+
hookCode += ` mutationFn: async ({ params, data }: { params: ${paramInterfaceName}; data: ${requestBodyType} }) => {\n`;
|
|
646
|
+
// Format the path for use in the code (handle path parameters)
|
|
647
|
+
let formattedPath = path.replace(/{(\w+)}/g, (_, param) => `\${params.${toCamelCase(param)}}`);
|
|
648
|
+
const pathWithParams = `\`\${process.env.REACT_APP_API_BASE_URL || ''}${formattedPath}\``;
|
|
649
|
+
hookCode += ` const response = await axios.${method.toLowerCase()}<${responseType}>(${pathWithParams}, data);\n`;
|
|
650
|
+
hookCode += ` return response.data;\n`;
|
|
651
|
+
hookCode += ` },\n`;
|
|
652
|
+
hookCode += ` onSuccess: () => {\n`;
|
|
653
|
+
hookCode += ` // Invalidate and refetch related queries\n`;
|
|
654
|
+
hookCode += ` queryClient.invalidateQueries({ queryKey: ['${operationId}'] });\n`;
|
|
655
|
+
hookCode += ` },\n`;
|
|
656
|
+
hookCode += ` });\n`;
|
|
657
|
+
hookCode += `};\n`;
|
|
658
|
+
}
|
|
659
|
+
else {
|
|
660
|
+
hookCode += `export const ${hookName} = () => {\n`;
|
|
661
|
+
hookCode += ` const queryClient = useQueryClient();\n\n`;
|
|
662
|
+
hookCode += ` return useMutation({\n`;
|
|
663
|
+
hookCode += ` mutationFn: async (data: ${requestBodyType}) => {\n`;
|
|
664
|
+
hookCode += ` const response = await axios.${method.toLowerCase()}<${responseType}>(${axiosPath}, data);\n`;
|
|
665
|
+
hookCode += ` return response.data;\n`;
|
|
666
|
+
hookCode += ` },\n`;
|
|
667
|
+
hookCode += ` onSuccess: () => {\n`;
|
|
668
|
+
hookCode += ` // Invalidate and refetch related queries\n`;
|
|
669
|
+
hookCode += ` queryClient.invalidateQueries({ queryKey: ['${operationId}'] });\n`;
|
|
670
|
+
hookCode += ` },\n`;
|
|
671
|
+
hookCode += ` });\n`;
|
|
672
|
+
hookCode += `};\n`;
|
|
673
|
+
}
|
|
674
|
+
}
|
|
435
675
|
return hookCode;
|
|
436
676
|
}
|
|
437
|
-
/**
|
|
438
|
-
* Generates a single React hook for an API endpoint
|
|
439
|
-
*/
|
|
440
|
-
generateSingleHook(path, method, endpointInfo, schemas) {
|
|
441
|
-
// This method is kept for backward compatibility
|
|
442
|
-
return this.generateSingleHookWithUniqueName(path, method, endpointInfo, schemas);
|
|
443
|
-
}
|
|
444
677
|
/**
|
|
445
678
|
* Generate operation ID from path and method if not provided
|
|
446
679
|
*/
|
|
447
680
|
generateOperationId(path, method) {
|
|
448
681
|
return `${method.toLowerCase()}_${path.replace(/[\/{}]/g, '_')}`;
|
|
449
682
|
}
|
|
683
|
+
/**
|
|
684
|
+
* Formats code using Prettier - sync version with child process
|
|
685
|
+
*/
|
|
686
|
+
formatCode(code, filepath) {
|
|
687
|
+
// Skip formatting in test environment to avoid ESM issues
|
|
688
|
+
if (process.env.NODE_ENV === 'test' || typeof jest !== 'undefined') {
|
|
689
|
+
return code;
|
|
690
|
+
}
|
|
691
|
+
try {
|
|
692
|
+
// Use execSync to run prettier as a separate process to avoid ESM issues
|
|
693
|
+
const { execSync } = require('child_process');
|
|
694
|
+
const { writeFileSync, readFileSync, unlinkSync } = require('fs');
|
|
695
|
+
const { join, extname } = require('path');
|
|
696
|
+
const { tmpdir } = require('os');
|
|
697
|
+
// Determine the file extension to use for the temp file
|
|
698
|
+
const fileExtension = extname(filepath) || '.txt';
|
|
699
|
+
const tempPath = join(tmpdir(), `prettier-tmp-${Date.now()}-${Math.random().toString(36).substr(2, 9)}${fileExtension}`);
|
|
700
|
+
writeFileSync(tempPath, code, 'utf8');
|
|
701
|
+
// Format the file using prettier CLI
|
|
702
|
+
execSync(`npx prettier --write "${tempPath}" --single-quote --trailing-comma es5 --tab-width 2 --semi --print-width 80`, {
|
|
703
|
+
stdio: 'pipe'
|
|
704
|
+
});
|
|
705
|
+
// Read the formatted content back
|
|
706
|
+
const formattedCode = readFileSync(tempPath, 'utf8');
|
|
707
|
+
// Clean up the temporary file
|
|
708
|
+
unlinkSync(tempPath);
|
|
709
|
+
return formattedCode;
|
|
710
|
+
}
|
|
711
|
+
catch (error) {
|
|
712
|
+
console.warn(`Failed to format ${filepath} with Prettier:`, error);
|
|
713
|
+
return code; // Return unformatted code if formatting fails
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
/**
|
|
717
|
+
* Gets the parser based on file extension
|
|
718
|
+
*/
|
|
719
|
+
getParserForFile(filepath) {
|
|
720
|
+
const ext = path.extname(filepath);
|
|
721
|
+
switch (ext) {
|
|
722
|
+
case '.ts':
|
|
723
|
+
case '.tsx':
|
|
724
|
+
return 'typescript';
|
|
725
|
+
case '.js':
|
|
726
|
+
case '.jsx':
|
|
727
|
+
return 'babel';
|
|
728
|
+
case '.json':
|
|
729
|
+
return 'json';
|
|
730
|
+
case '.md':
|
|
731
|
+
return 'markdown';
|
|
732
|
+
default:
|
|
733
|
+
return 'typescript';
|
|
734
|
+
}
|
|
735
|
+
}
|
|
450
736
|
/**
|
|
451
737
|
* Saves the generated documentation to a file
|
|
452
738
|
*/
|
|
@@ -455,7 +741,8 @@ class SwaggerDocGenerator {
|
|
|
455
741
|
if (!fs.existsSync(dir)) {
|
|
456
742
|
fs.mkdirSync(dir, { recursive: true });
|
|
457
743
|
}
|
|
458
|
-
|
|
744
|
+
const formattedDocumentation = this.formatCode(documentation, outputPath);
|
|
745
|
+
fs.writeFileSync(outputPath, formattedDocumentation, 'utf8');
|
|
459
746
|
}
|
|
460
747
|
/**
|
|
461
748
|
* Saves the generated TypeScript types to a file
|
|
@@ -465,7 +752,8 @@ class SwaggerDocGenerator {
|
|
|
465
752
|
if (!fs.existsSync(dir)) {
|
|
466
753
|
fs.mkdirSync(dir, { recursive: true });
|
|
467
754
|
}
|
|
468
|
-
|
|
755
|
+
const formattedTypes = this.formatCode(types, outputPath);
|
|
756
|
+
fs.writeFileSync(outputPath, formattedTypes, 'utf8');
|
|
469
757
|
}
|
|
470
758
|
/**
|
|
471
759
|
* Saves the generated React hooks to files organized by tag
|
|
@@ -475,13 +763,21 @@ class SwaggerDocGenerator {
|
|
|
475
763
|
if (!fs.existsSync(dir)) {
|
|
476
764
|
fs.mkdirSync(dir, { recursive: true });
|
|
477
765
|
}
|
|
478
|
-
for (const [tag,
|
|
766
|
+
for (const [tag, { hooks, types }] of hooksByTag) {
|
|
479
767
|
const tagDir = path.join(outputDir, toCamelCase(tag));
|
|
480
768
|
if (!fs.existsSync(tagDir)) {
|
|
481
769
|
fs.mkdirSync(tagDir, { recursive: true });
|
|
482
770
|
}
|
|
483
|
-
|
|
484
|
-
|
|
771
|
+
// Save hooks to hooks file
|
|
772
|
+
const hooksFileName = path.join(tagDir, `${toCamelCase(tag)}.hooks.ts`);
|
|
773
|
+
const formattedHooks = this.formatCode(hooks, hooksFileName);
|
|
774
|
+
fs.writeFileSync(hooksFileName, formattedHooks, 'utf8');
|
|
775
|
+
// Save types to types file
|
|
776
|
+
if (types.trim()) { // Only save if there are types
|
|
777
|
+
const typesFileName = path.join(tagDir, `${toCamelCase(tag)}.types.ts`);
|
|
778
|
+
const formattedTypes = this.formatCode(types, typesFileName);
|
|
779
|
+
fs.writeFileSync(typesFileName, formattedTypes, 'utf8');
|
|
780
|
+
}
|
|
485
781
|
}
|
|
486
782
|
}
|
|
487
783
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jszy-swagger-doc-generator",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "A tool to generate frontend documentation from Swagger/OpenAPI JSON files",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
7
|
-
"swagger-doc-generator": "./dist/cli.js"
|
|
7
|
+
"swagger-doc-generator": "./dist/cli.js",
|
|
8
|
+
"jszy-swagger-doc-generator": "./dist/cli.js",
|
|
9
|
+
"api-sdk": "./dist/cli.js"
|
|
8
10
|
},
|
|
9
11
|
"scripts": {
|
|
10
12
|
"build": "tsc",
|
|
11
13
|
"dev": "tsc --watch",
|
|
12
|
-
"start": "node dist/cli.js",
|
|
14
|
+
"start": "node dist/cli.js --url http://localhost:3000/api-docs-json --generate-types --generate-hooks",
|
|
13
15
|
"test": "jest",
|
|
14
16
|
"test:watch": "jest --watch",
|
|
15
17
|
"test:coverage": "jest --coverage"
|
|
@@ -25,6 +27,7 @@
|
|
|
25
27
|
"license": "MIT",
|
|
26
28
|
"dependencies": {
|
|
27
29
|
"axios": "^1.6.0",
|
|
30
|
+
"prettier": "^3.0.0",
|
|
28
31
|
"yargs": "^17.7.2"
|
|
29
32
|
},
|
|
30
33
|
"devDependencies": {
|