@visulima/jsdoc-open-api 2.0.95 → 3.0.0-alpha.10

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.
Files changed (111) hide show
  1. package/CHANGELOG.md +158 -0
  2. package/LICENSE.md +1 -1
  3. package/README.md +33 -28
  4. package/dist/cli/command/generate-command.d.cts +7 -0
  5. package/dist/cli/command/generate-command.d.mts +7 -0
  6. package/dist/cli/command/generate-command.d.ts +7 -0
  7. package/dist/cli/command/init-command.d.cts +2 -0
  8. package/dist/cli/command/init-command.d.mts +2 -0
  9. package/dist/cli/command/init-command.d.ts +2 -0
  10. package/dist/cli/commander/command/generate-command.d.cts +3 -0
  11. package/dist/cli/commander/command/generate-command.d.mts +3 -0
  12. package/dist/cli/commander/command/generate-command.d.ts +3 -0
  13. package/dist/cli/commander/command/init-command.d.cts +3 -0
  14. package/dist/cli/commander/command/init-command.d.mts +3 -0
  15. package/dist/cli/commander/command/init-command.d.ts +3 -0
  16. package/dist/cli/commander/index.cjs +11 -0
  17. package/dist/cli/commander/index.d.cts +2 -0
  18. package/dist/cli/commander/index.d.mts +2 -7
  19. package/dist/cli/commander/index.d.ts +2 -7
  20. package/dist/cli/commander/index.mjs +2 -30
  21. package/dist/cli/index.cjs +11 -0
  22. package/dist/cli/index.d.cts +2 -0
  23. package/dist/cli/index.d.mts +2 -10
  24. package/dist/cli/index.d.ts +2 -10
  25. package/dist/cli/index.mjs +2 -4
  26. package/dist/constants.d.cts +1 -0
  27. package/dist/constants.d.mts +1 -0
  28. package/dist/constants.d.ts +1 -0
  29. package/dist/exported.d.cts +198 -0
  30. package/dist/exported.d.mts +198 -0
  31. package/dist/exported.d.ts +198 -0
  32. package/dist/index.cjs +19 -0
  33. package/dist/index.d.cts +7 -0
  34. package/dist/index.d.mts +7 -248
  35. package/dist/index.d.ts +7 -248
  36. package/dist/index.mjs +6 -85
  37. package/dist/jsdoc/comments-to-open-api.d.cts +6 -0
  38. package/dist/jsdoc/comments-to-open-api.d.mts +6 -0
  39. package/dist/jsdoc/comments-to-open-api.d.ts +6 -0
  40. package/dist/packem_shared/SpecBuilder-B7YiF7zR.mjs +61 -0
  41. package/dist/packem_shared/SpecBuilder-CCESkmm5.cjs +63 -0
  42. package/dist/packem_shared/SwaggerCompilerPlugin-BkYJzU4f.cjs +88 -0
  43. package/dist/packem_shared/SwaggerCompilerPlugin-DZ7tIJ8x.mjs +86 -0
  44. package/dist/packem_shared/customizer-CoMXMU7a.mjs +8 -0
  45. package/dist/packem_shared/customizer-DDFwFqJl.cjs +10 -0
  46. package/dist/packem_shared/generateCommand-DRMkfIle.mjs +15 -0
  47. package/dist/packem_shared/generateCommand-MwnCNgEE.cjs +82 -0
  48. package/dist/packem_shared/generateCommand-RY4QFtm7.cjs +17 -0
  49. package/dist/packem_shared/generateCommand-a9_RAbug.mjs +80 -0
  50. package/dist/packem_shared/initCommand-B6Z9EXHP.mjs +15 -0
  51. package/dist/packem_shared/initCommand-Ch-72dKZ.cjs +65 -0
  52. package/dist/packem_shared/initCommand-D3yVEMwO.cjs +17 -0
  53. package/dist/packem_shared/initCommand-zE4VRDGW.mjs +63 -0
  54. package/dist/packem_shared/jsDocumentCommentsToOpenApi-C7yMeXJ5.cjs +337 -0
  55. package/dist/packem_shared/jsDocumentCommentsToOpenApi-DtrIZ2lK.mjs +331 -0
  56. package/dist/packem_shared/parseFile-BE-sKiRK.mjs +35 -0
  57. package/dist/packem_shared/parseFile-Dk7Bw7lt.cjs +42 -0
  58. package/dist/packem_shared/swaggerJsDocumentCommentsToOpenApi-B7g9rVr5.mjs +131 -0
  59. package/dist/packem_shared/swaggerJsDocumentCommentsToOpenApi-BuB7eE94.cjs +138 -0
  60. package/dist/packem_shared/validate-DZHaKH07.mjs +30 -0
  61. package/dist/packem_shared/validate-FKieC3ln.cjs +37 -0
  62. package/dist/packem_shared/yamlLoc-C7iHWvdq.mjs +14 -0
  63. package/dist/packem_shared/yamlLoc-CEvBiR4K.cjs +16 -0
  64. package/dist/parse-file.d.cts +9 -0
  65. package/dist/parse-file.d.mts +9 -0
  66. package/dist/parse-file.d.ts +9 -0
  67. package/dist/spec-builder.d.cts +14 -0
  68. package/dist/spec-builder.d.mts +14 -0
  69. package/dist/spec-builder.d.ts +14 -0
  70. package/dist/swagger-jsdoc/comments-to-open-api.d.cts +6 -0
  71. package/dist/swagger-jsdoc/comments-to-open-api.d.mts +6 -0
  72. package/dist/swagger-jsdoc/comments-to-open-api.d.ts +6 -0
  73. package/dist/swagger-jsdoc/organize-swagger-object.d.cts +7 -0
  74. package/dist/swagger-jsdoc/organize-swagger-object.d.mts +7 -0
  75. package/dist/swagger-jsdoc/organize-swagger-object.d.ts +7 -0
  76. package/dist/swagger-jsdoc/utils.d.cts +22 -0
  77. package/dist/swagger-jsdoc/utils.d.mts +22 -0
  78. package/dist/swagger-jsdoc/utils.d.ts +22 -0
  79. package/dist/util/customizer.d.cts +2 -0
  80. package/dist/util/customizer.d.mts +2 -0
  81. package/dist/util/customizer.d.ts +2 -0
  82. package/dist/util/object-merge.d.cts +2 -0
  83. package/dist/util/object-merge.d.mts +2 -0
  84. package/dist/util/object-merge.d.ts +2 -0
  85. package/dist/util/yaml-loc.d.cts +2 -0
  86. package/dist/util/yaml-loc.d.mts +2 -0
  87. package/dist/util/yaml-loc.d.ts +2 -0
  88. package/dist/validate.d.cts +2 -0
  89. package/dist/validate.d.mts +2 -0
  90. package/dist/validate.d.ts +2 -0
  91. package/dist/webpack/swagger-compiler-plugin.d.cts +15 -0
  92. package/dist/webpack/swagger-compiler-plugin.d.mts +15 -0
  93. package/dist/webpack/swagger-compiler-plugin.d.ts +15 -0
  94. package/package.json +35 -23
  95. package/dist/chunk-CZO3NX7C.js +0 -149
  96. package/dist/chunk-CZO3NX7C.js.map +0 -1
  97. package/dist/chunk-LOXRB2QY.js +0 -1223
  98. package/dist/chunk-LOXRB2QY.js.map +0 -1
  99. package/dist/chunk-WUINTXB7.mjs +0 -1205
  100. package/dist/chunk-WUINTXB7.mjs.map +0 -1
  101. package/dist/chunk-Z53EXE6B.mjs +0 -142
  102. package/dist/chunk-Z53EXE6B.mjs.map +0 -1
  103. package/dist/cli/commander/index.js +0 -33
  104. package/dist/cli/commander/index.js.map +0 -1
  105. package/dist/cli/commander/index.mjs.map +0 -1
  106. package/dist/cli/index.js +0 -17
  107. package/dist/cli/index.js.map +0 -1
  108. package/dist/cli/index.mjs.map +0 -1
  109. package/dist/index.js +0 -106
  110. package/dist/index.js.map +0 -1
  111. package/dist/index.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/webpack/swagger-compiler-plugin.ts"],"names":["comments_to_open_api_default"],"mappings":"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","file":"index.mjs","sourcesContent":["import { mkdir, writeFile } from \"node:fs\";\nimport { dirname } from \"node:path\";\nimport { exit } from \"node:process\";\n\nimport { collect } from \"@visulima/fs\";\nimport type { Compiler } from \"webpack\";\n\nimport { DEFAULT_EXCLUDE } from \"../constants\";\nimport type { BaseDefinition } from \"../exported\";\nimport jsDocumentCommentsToOpenApi from \"../jsdoc/comments-to-open-api\";\nimport parseFile from \"../parse-file\";\nimport SpecBuilder from \"../spec-builder\";\nimport swaggerJsDocumentCommentsToOpenApi from \"../swagger-jsdoc/comments-to-open-api\";\nimport validate from \"../validate\";\n\nconst errorHandler = (error: any) => {\n if (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n\n exit(1);\n }\n};\n\nclass SwaggerCompilerPlugin {\n private readonly assetsPath: string;\n\n private readonly ignore: (RegExp | string)[];\n\n private readonly sources: string[];\n\n private readonly swaggerDefinition: BaseDefinition;\n\n private readonly verbose: boolean;\n\n public constructor(\n assetsPath: string,\n sources: string[],\n swaggerDefinition: BaseDefinition,\n options: {\n ignore?: (RegExp | string)[];\n verbose?: boolean;\n },\n ) {\n this.assetsPath = assetsPath;\n this.swaggerDefinition = swaggerDefinition;\n this.sources = sources;\n this.verbose = options.verbose ?? false;\n this.ignore = options.ignore ?? [];\n }\n\n public apply(compiler: Compiler): void {\n const skip = new Set<RegExp | string>([...DEFAULT_EXCLUDE, ...this.ignore]);\n\n compiler.hooks.make.tapAsync(\"SwaggerCompilerPlugin\", async (_, callback: VoidFunction): Promise<void> => {\n // eslint-disable-next-line no-console\n console.log(\"Build paused, switching to swagger build\");\n\n const spec = new SpecBuilder(this.swaggerDefinition);\n\n // eslint-disable-next-line unicorn/prevent-abbreviations,no-loops/no-loops\n for await (const dir of this.sources) {\n const files: string[] = await collect(dir, {\n extensions: [\".js\", \".cjs\", \".mjs\", \".ts\", \".tsx\", \".jsx\", \".yaml\", \".yml\"],\n includeDirs: false,\n skip: [...skip],\n });\n\n if (this.verbose) {\n // eslint-disable-next-line no-console\n console.log(`Found ${String(files.length)} files in ${dir}`);\n // eslint-disable-next-line no-console\n console.log(files);\n }\n\n files.forEach((file) => {\n if (this.verbose) {\n // eslint-disable-next-line no-console\n console.log(`Parsing file ${file}`);\n }\n\n try {\n const parsedJsDocumentFile = parseFile(file, jsDocumentCommentsToOpenApi, this.verbose);\n\n spec.addData(parsedJsDocumentFile.map((item) => item.spec));\n\n const parsedSwaggerJsDocumentFile = parseFile(file, swaggerJsDocumentCommentsToOpenApi, this.verbose);\n\n spec.addData(parsedSwaggerJsDocumentFile.map((item) => item.spec));\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(error);\n\n exit(1);\n }\n });\n }\n\n try {\n if (this.verbose) {\n // eslint-disable-next-line no-console\n console.log(\"Validating swagger spec\");\n // eslint-disable-next-line no-console\n console.log(JSON.stringify(spec, null, 2));\n }\n\n await validate(JSON.parse(JSON.stringify(spec)));\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error(error.toJSON());\n\n exit(1);\n }\n\n const { assetsPath } = this;\n\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n mkdir(dirname(assetsPath), { recursive: true }, (error) => {\n if (error) {\n errorHandler(error);\n }\n\n // eslint-disable-next-line security/detect-non-literal-fs-filename\n writeFile(assetsPath, JSON.stringify(spec, null, 2), errorHandler);\n });\n\n if (this.verbose) {\n // eslint-disable-next-line no-console\n console.log(`Written swagger spec to \"${this.assetsPath}\" file`);\n }\n\n // eslint-disable-next-line no-console\n console.log(\"switching back to normal build\");\n\n callback();\n });\n }\n}\n\nexport default SwaggerCompilerPlugin;\n"]}