@visulima/jsdoc-open-api 3.0.0-alpha.8 → 3.0.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.
Files changed (113) hide show
  1. package/CHANGELOG.md +440 -0
  2. package/LICENSE.md +34 -0
  3. package/README.md +44 -33
  4. package/bin/index.js +12 -9
  5. package/dist/cli/commander/index.d.ts +1000 -2
  6. package/dist/cli/commander/index.js +1 -0
  7. package/dist/cli/index.d.ts +9 -2
  8. package/dist/cli/index.js +1 -0
  9. package/dist/index.d.ts +266 -7
  10. package/dist/index.js +1 -0
  11. package/dist/packem_shared/DEFAULT_OPTIONS-C7o6qjwP.js +1 -0
  12. package/dist/packem_shared/SpecBuilder-Vbq42UbW.js +1 -0
  13. package/dist/packem_shared/SwaggerCompilerPlugin-PUOALp2i.js +1 -0
  14. package/dist/packem_shared/constants-CdEv9ZcD.js +1 -0
  15. package/dist/packem_shared/customizer-BXFVpImq.js +1 -0
  16. package/dist/packem_shared/generateCommand-C_XPsbS6.js +5 -0
  17. package/dist/packem_shared/generateCommand-ClL9Mnc3.js +1 -0
  18. package/dist/packem_shared/initCommand-Ca1hGdYS.js +35 -0
  19. package/dist/packem_shared/initCommand-TixxsVQU.js +1 -0
  20. package/dist/packem_shared/jsDocumentCommentsToOpenApi-TjPhUj5G.js +1 -0
  21. package/dist/packem_shared/loadDefinition-7r9qpfuE.js +1 -0
  22. package/dist/packem_shared/parseFile-RDlR4tEF.js +1 -0
  23. package/dist/packem_shared/swaggerJsDocumentCommentsToOpenApi-Bm9R1BnW.js +10 -0
  24. package/dist/packem_shared/validate-9Rwe2A3r.js +1 -0
  25. package/dist/packem_shared/yamlLoc-DPq-xUM4.js +1 -0
  26. package/package.json +23 -43
  27. package/dist/cli/command/generate-command.d.cts +0 -7
  28. package/dist/cli/command/generate-command.d.mts +0 -7
  29. package/dist/cli/command/generate-command.d.ts +0 -7
  30. package/dist/cli/command/init-command.d.cts +0 -2
  31. package/dist/cli/command/init-command.d.mts +0 -2
  32. package/dist/cli/command/init-command.d.ts +0 -2
  33. package/dist/cli/commander/command/generate-command.d.cts +0 -3
  34. package/dist/cli/commander/command/generate-command.d.mts +0 -3
  35. package/dist/cli/commander/command/generate-command.d.ts +0 -3
  36. package/dist/cli/commander/command/init-command.d.cts +0 -3
  37. package/dist/cli/commander/command/init-command.d.mts +0 -3
  38. package/dist/cli/commander/command/init-command.d.ts +0 -3
  39. package/dist/cli/commander/index.cjs +0 -11
  40. package/dist/cli/commander/index.d.cts +0 -2
  41. package/dist/cli/commander/index.d.mts +0 -2
  42. package/dist/cli/commander/index.mjs +0 -2
  43. package/dist/cli/index.cjs +0 -11
  44. package/dist/cli/index.d.cts +0 -2
  45. package/dist/cli/index.d.mts +0 -2
  46. package/dist/cli/index.mjs +0 -2
  47. package/dist/constants.d.cts +0 -1
  48. package/dist/constants.d.mts +0 -1
  49. package/dist/constants.d.ts +0 -1
  50. package/dist/exported.d.cts +0 -198
  51. package/dist/exported.d.mts +0 -198
  52. package/dist/exported.d.ts +0 -198
  53. package/dist/index.cjs +0 -19
  54. package/dist/index.d.cts +0 -7
  55. package/dist/index.d.mts +0 -7
  56. package/dist/index.mjs +0 -6
  57. package/dist/jsdoc/comments-to-open-api.d.cts +0 -6
  58. package/dist/jsdoc/comments-to-open-api.d.mts +0 -6
  59. package/dist/jsdoc/comments-to-open-api.d.ts +0 -6
  60. package/dist/packem_shared/SpecBuilder-B7YiF7zR.mjs +0 -61
  61. package/dist/packem_shared/SpecBuilder-CCESkmm5.cjs +0 -63
  62. package/dist/packem_shared/SwaggerCompilerPlugin-BkYJzU4f.cjs +0 -88
  63. package/dist/packem_shared/SwaggerCompilerPlugin-DZ7tIJ8x.mjs +0 -86
  64. package/dist/packem_shared/customizer-CoMXMU7a.mjs +0 -8
  65. package/dist/packem_shared/customizer-DDFwFqJl.cjs +0 -10
  66. package/dist/packem_shared/generateCommand-DRMkfIle.mjs +0 -15
  67. package/dist/packem_shared/generateCommand-MwnCNgEE.cjs +0 -82
  68. package/dist/packem_shared/generateCommand-RY4QFtm7.cjs +0 -17
  69. package/dist/packem_shared/generateCommand-a9_RAbug.mjs +0 -80
  70. package/dist/packem_shared/initCommand-B6Z9EXHP.mjs +0 -15
  71. package/dist/packem_shared/initCommand-Ch-72dKZ.cjs +0 -65
  72. package/dist/packem_shared/initCommand-D3yVEMwO.cjs +0 -17
  73. package/dist/packem_shared/initCommand-zE4VRDGW.mjs +0 -63
  74. package/dist/packem_shared/jsDocumentCommentsToOpenApi-C7yMeXJ5.cjs +0 -337
  75. package/dist/packem_shared/jsDocumentCommentsToOpenApi-DtrIZ2lK.mjs +0 -331
  76. package/dist/packem_shared/parseFile-BE-sKiRK.mjs +0 -35
  77. package/dist/packem_shared/parseFile-Dk7Bw7lt.cjs +0 -42
  78. package/dist/packem_shared/swaggerJsDocumentCommentsToOpenApi-B7g9rVr5.mjs +0 -131
  79. package/dist/packem_shared/swaggerJsDocumentCommentsToOpenApi-BuB7eE94.cjs +0 -138
  80. package/dist/packem_shared/validate-DZHaKH07.mjs +0 -30
  81. package/dist/packem_shared/validate-FKieC3ln.cjs +0 -37
  82. package/dist/packem_shared/yamlLoc-C7iHWvdq.mjs +0 -14
  83. package/dist/packem_shared/yamlLoc-CEvBiR4K.cjs +0 -16
  84. package/dist/parse-file.d.cts +0 -9
  85. package/dist/parse-file.d.mts +0 -9
  86. package/dist/parse-file.d.ts +0 -9
  87. package/dist/spec-builder.d.cts +0 -14
  88. package/dist/spec-builder.d.mts +0 -14
  89. package/dist/spec-builder.d.ts +0 -14
  90. package/dist/swagger-jsdoc/comments-to-open-api.d.cts +0 -6
  91. package/dist/swagger-jsdoc/comments-to-open-api.d.mts +0 -6
  92. package/dist/swagger-jsdoc/comments-to-open-api.d.ts +0 -6
  93. package/dist/swagger-jsdoc/organize-swagger-object.d.cts +0 -7
  94. package/dist/swagger-jsdoc/organize-swagger-object.d.mts +0 -7
  95. package/dist/swagger-jsdoc/organize-swagger-object.d.ts +0 -7
  96. package/dist/swagger-jsdoc/utils.d.cts +0 -22
  97. package/dist/swagger-jsdoc/utils.d.mts +0 -22
  98. package/dist/swagger-jsdoc/utils.d.ts +0 -22
  99. package/dist/util/customizer.d.cts +0 -2
  100. package/dist/util/customizer.d.mts +0 -2
  101. package/dist/util/customizer.d.ts +0 -2
  102. package/dist/util/object-merge.d.cts +0 -2
  103. package/dist/util/object-merge.d.mts +0 -2
  104. package/dist/util/object-merge.d.ts +0 -2
  105. package/dist/util/yaml-loc.d.cts +0 -2
  106. package/dist/util/yaml-loc.d.mts +0 -2
  107. package/dist/util/yaml-loc.d.ts +0 -2
  108. package/dist/validate.d.cts +0 -2
  109. package/dist/validate.d.mts +0 -2
  110. package/dist/validate.d.ts +0 -2
  111. package/dist/webpack/swagger-compiler-plugin.d.cts +0 -15
  112. package/dist/webpack/swagger-compiler-plugin.d.mts +0 -15
  113. package/dist/webpack/swagger-compiler-plugin.d.ts +0 -15
@@ -0,0 +1 @@
1
+ import{default as m}from"../../packem_shared/generateCommand-ClL9Mnc3.js";import{default as t}from"../../packem_shared/initCommand-TixxsVQU.js";export{m as generateCommand,t as initCommand};
@@ -1,2 +1,9 @@
1
- export { default as generateCommand } from "./command/generate-command.d.ts";
2
- export { default as initCommand } from "./command/init-command.d.ts";
1
+ declare const generateCommand: (configName: string, paths: string[], options: {
2
+ config?: string;
3
+ definition?: string;
4
+ output?: string;
5
+ verbose?: boolean;
6
+ veryVerbose?: boolean;
7
+ }) => Promise<void>;
8
+ declare const initCommand: (configName: string, packageJsonPath?: string) => void;
9
+ export { generateCommand, initCommand };
@@ -0,0 +1 @@
1
+ import{default as m}from"../packem_shared/generateCommand-C_XPsbS6.js";import{default as t}from"../packem_shared/initCommand-Ca1hGdYS.js";export{m as generateCommand,t as initCommand};
package/dist/index.d.ts CHANGED
@@ -1,7 +1,266 @@
1
- export type { BaseDefinition, OpenApiObject } from "./exported.d.ts";
2
- export { default as jsDocumentCommentsToOpenApi } from "./jsdoc/comments-to-open-api.d.ts";
3
- export { default as parseFile } from "./parse-file.d.ts";
4
- export { default as SpecBuilder } from "./spec-builder.d.ts";
5
- export { default as swaggerJsDocumentCommentsToOpenApi } from "./swagger-jsdoc/comments-to-open-api.d.ts";
6
- export { default as yamlLoc } from "./util/yaml-loc.d.ts";
7
- export { default as SwaggerCompilerPlugin } from "./webpack/swagger-compiler-plugin.d.ts";
1
+ import { Block } from 'comment-parser';
2
+ import 'buffer';
3
+ import 'http';
4
+ import 'https';
5
+ import 'inspector';
6
+ import 'net';
7
+ import 'url';
8
+ import 'vm';
9
+ interface BaseDefinition {
10
+ components?: ComponentsObject;
11
+ externalDocs?: ExternalDocumentationObject;
12
+ info: InfoObject;
13
+ openapi: string;
14
+ paths?: PathsObject;
15
+ security?: SecurityRequirementObject[];
16
+ servers?: ServerObject[];
17
+ tags?: TagObject[];
18
+ }
19
+ interface OpenApiObject extends BaseDefinition {
20
+ paths?: PathsObject;
21
+ }
22
+ interface InfoObject {
23
+ contact?: ContactObject;
24
+ description?: string;
25
+ license?: LicenseObject;
26
+ termsOfService?: string;
27
+ title: string;
28
+ version: string;
29
+ }
30
+ interface ContactObject {
31
+ email?: string;
32
+ name?: string;
33
+ url?: string;
34
+ }
35
+ interface LicenseObject {
36
+ name: string;
37
+ url?: string;
38
+ }
39
+ interface ServerObject {
40
+ description?: string;
41
+ url: string;
42
+ variables?: Map<ServerVariable>;
43
+ }
44
+ interface ServerVariable {
45
+ default: string;
46
+ description?: string;
47
+ enum?: string[];
48
+ }
49
+ interface ComponentsObject {
50
+ callbacks?: Map<CallbackObject | ReferenceObject>;
51
+ examples?: Map<ExampleObject | ReferenceObject>;
52
+ headers?: Map<HeaderObject | ReferenceObject>;
53
+ links?: Map<LinkObject | ReferenceObject>;
54
+ parameters?: Map<ParameterObject | ReferenceObject>;
55
+ requestBodies?: Map<ReferenceObject | RequestBodyObject>;
56
+ responses?: Map<ReferenceObject | ResponseObject>;
57
+ schemas?: Map<ReferenceObject | SchemaObject>;
58
+ securitySchemes?: Map<ApiKeySecuritySchemeObject | HttpSecuritySchemeObject | Oauth2SecuritySchemeObject | OpenIdConnectSecuritySchemeObject | ReferenceObject>;
59
+ }
60
+ type PathsObject = Record<string, PathItemObject>;
61
+ interface PathItemObject {
62
+ $ref?: string;
63
+ delete?: OperationObject;
64
+ description?: string;
65
+ get?: OperationObject;
66
+ head?: OperationObject;
67
+ options?: OperationObject;
68
+ parameters?: (ParameterObject | ReferenceObject)[];
69
+ patch?: OperationObject;
70
+ post?: OperationObject;
71
+ put?: OperationObject;
72
+ servers?: ServerObject[];
73
+ summary?: string;
74
+ trace?: OperationObject;
75
+ }
76
+ interface OperationObject {
77
+ callbacks?: Map<CallbackObject | ReferenceObject>;
78
+ deprecated?: boolean;
79
+ description?: string;
80
+ externalDocs?: ExternalDocumentationObject;
81
+ operationId?: string;
82
+ parameters?: (ParameterObject | ReferenceObject)[];
83
+ requestBody?: ReferenceObject | RequestBodyObject;
84
+ responses: ResponsesObject;
85
+ security?: SecurityRequirementObject[];
86
+ servers?: ServerObject[];
87
+ summary?: string;
88
+ tags?: string[];
89
+ }
90
+ interface ExternalDocumentationObject {
91
+ description?: string;
92
+ url: string;
93
+ }
94
+ interface ParameterObject {
95
+ allowEmptyValue?: boolean;
96
+ allowReserved?: boolean;
97
+ content?: Map<MediaTypeObject>;
98
+ deprecated?: boolean;
99
+ description?: string;
100
+ example?: any;
101
+ examples?: Map<ExampleObject | ReferenceObject>;
102
+ explode?: string;
103
+ in: string;
104
+ name: string;
105
+ required?: boolean;
106
+ schema?: ReferenceObject | SchemaObject;
107
+ style?: string;
108
+ }
109
+ interface RequestBodyObject {
110
+ content: Map<MediaTypeObject>;
111
+ description?: string;
112
+ required?: boolean;
113
+ }
114
+ interface MediaTypeObject {
115
+ encoding?: Map<EncodingObject>;
116
+ example?: any;
117
+ examples?: Map<ExampleObject | ReferenceObject>;
118
+ schema?: ReferenceObject | SchemaObject;
119
+ }
120
+ interface EncodingObject {
121
+ allowReserved?: boolean;
122
+ contentType?: string;
123
+ explode?: boolean;
124
+ headers?: Map<HeaderObject | ReferenceObject>;
125
+ style?: string;
126
+ }
127
+ type ResponsesObject = Record<string, ReferenceObject | ResponseObject>;
128
+ interface ResponseObject {
129
+ content?: Map<MediaTypeObject>;
130
+ description: string;
131
+ headers?: Map<HeaderObject | ReferenceObject>;
132
+ links?: Map<LinkObject | ReferenceObject>;
133
+ }
134
+ type CallbackObject = Record<string, PathItemObject>;
135
+ interface ExampleObject {
136
+ description?: string;
137
+ externalValue?: string;
138
+ summary?: string;
139
+ value?: any;
140
+ }
141
+ interface LinkObject {
142
+ description?: string;
143
+ operationId?: string;
144
+ operationRef?: string;
145
+ parameters?: Map<any>;
146
+ requestBody?: any;
147
+ server?: ServerObject;
148
+ }
149
+ interface HeaderObject {
150
+ allowEmptyValue?: boolean;
151
+ allowReserved?: boolean;
152
+ content?: Map<MediaTypeObject>;
153
+ deprecated?: boolean;
154
+ description?: string;
155
+ example?: any;
156
+ examples?: Map<ExampleObject | ReferenceObject>;
157
+ explode?: string;
158
+ required?: boolean;
159
+ schema?: ReferenceObject | SchemaObject;
160
+ style?: string;
161
+ }
162
+ interface TagObject {
163
+ description?: string;
164
+ externalDocs?: ExternalDocumentationObject;
165
+ name: string;
166
+ }
167
+ interface ReferenceObject {
168
+ $ref: string;
169
+ }
170
+ type SchemaObject = Record<string, any>;
171
+ interface ApiKeySecuritySchemeObject {
172
+ description?: string;
173
+ in: string;
174
+ name: string;
175
+ type: string;
176
+ }
177
+ interface HttpSecuritySchemeObject {
178
+ bearerFormat?: string;
179
+ description?: string;
180
+ scheme: string;
181
+ type: string;
182
+ }
183
+ interface Oauth2SecuritySchemeObject {
184
+ description?: string;
185
+ flows: OAuthFlowsObject;
186
+ type: string;
187
+ }
188
+ interface OpenIdConnectSecuritySchemeObject {
189
+ description?: string;
190
+ openIdConnectUrl: string;
191
+ type: string;
192
+ }
193
+ interface OAuthFlowsObject {
194
+ authorizationCode?: OAuthFlowObject;
195
+ clientCredentials?: OAuthFlowObject;
196
+ implicit?: OAuthFlowObject;
197
+ password?: OAuthFlowObject;
198
+ }
199
+ interface OAuthFlowObject {
200
+ authorizationUrl?: string;
201
+ refreshUrl: string;
202
+ scopes: Map<string>;
203
+ tokenUrl?: string;
204
+ }
205
+ type SecurityRequirementObject = Record<string, string[]>;
206
+ type Map<T> = Record<string, T>;
207
+ declare const commentsToOpenApi$1: (fileContents: string, verbose?: boolean, comments?: Block[]) => {
208
+ loc: number;
209
+ spec: OpenApiObject;
210
+ }[];
211
+ declare const DEFAULT_OPTIONS: {
212
+ cwd: undefined;
213
+ exclude: string[];
214
+ excludeNodeModules: boolean;
215
+ extension: string[];
216
+ include: string[];
217
+ verbose: boolean;
218
+ };
219
+ type CommentsToOpenApi = (fileContent: string, verbose?: boolean, comments?: Block[]) => {
220
+ loc: number;
221
+ spec: OpenApiObject;
222
+ }[];
223
+ declare const parseFile$1: (file: string, commentsToOpenApi: CommentsToOpenApi, verbose?: boolean) => {
224
+ loc: number;
225
+ spec: OpenApiObject;
226
+ }[];
227
+ declare const parseFileMulti: (file: string, translators: CommentsToOpenApi[], verbose?: boolean) => {
228
+ loc: number;
229
+ spec: OpenApiObject;
230
+ }[];
231
+ declare class SpecBuilder implements OpenApiObject {
232
+ components?: ComponentsObject;
233
+ externalDocs?: ExternalDocumentationObject;
234
+ info: InfoObject;
235
+ openapi: string;
236
+ paths: PathsObject;
237
+ security?: SecurityRequirementObject[];
238
+ servers?: ServerObject[];
239
+ tags?: TagObject[];
240
+ constructor(baseDefinition: BaseDefinition);
241
+ addData(parsedFile: OpenApiObject[]): void;
242
+ }
243
+ declare const commentsToOpenApi: (fileContents: string, verbose?: boolean, comments?: Block[]) => {
244
+ loc: number;
245
+ spec: OpenApiObject;
246
+ }[];
247
+ declare const parseFile: (file: string) => BaseDefinition;
248
+ declare const yamlLoc: (string: string) => number;
249
+ declare const validate: (spec: Record<string, unknown>) => Promise<void>;
250
+ type WebpackCompiler = undefined;
251
+ declare class SwaggerCompilerPlugin {
252
+ private readonly assetsPath;
253
+ private readonly ignore;
254
+ private readonly silent;
255
+ private readonly sources;
256
+ private readonly swaggerDefinition;
257
+ private readonly verbose;
258
+ constructor(assetsPath: string, sources: string[], swaggerDefinition: BaseDefinition, options: {
259
+ ignore?: (RegExp | string)[];
260
+ silent?: boolean;
261
+ verbose?: boolean;
262
+ });
263
+ apply(compiler: WebpackCompiler): void;
264
+ private log;
265
+ }
266
+ export { type BaseDefinition, type CommentsToOpenApi, DEFAULT_OPTIONS, type OpenApiObject, SpecBuilder, SwaggerCompilerPlugin, commentsToOpenApi$1 as jsDocumentCommentsToOpenApi, parseFile as loadDefinition, parseFile$1 as parseFile, parseFileMulti, commentsToOpenApi as swaggerJsDocumentCommentsToOpenApi, validate, yamlLoc };
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ import{default as a}from"./packem_shared/jsDocumentCommentsToOpenApi-TjPhUj5G.js";import{default as r}from"./packem_shared/DEFAULT_OPTIONS-C7o6qjwP.js";import{default as l,parseFileMulti as m}from"./packem_shared/parseFile-RDlR4tEF.js";import{default as s}from"./packem_shared/SpecBuilder-Vbq42UbW.js";import{default as d}from"./packem_shared/swaggerJsDocumentCommentsToOpenApi-Bm9R1BnW.js";import{default as n}from"./packem_shared/loadDefinition-7r9qpfuE.js";import{default as g}from"./packem_shared/yamlLoc-DPq-xUM4.js";import{default as D}from"./packem_shared/validate-9Rwe2A3r.js";import{default as T}from"./packem_shared/SwaggerCompilerPlugin-PUOALp2i.js";export{r as DEFAULT_OPTIONS,s as SpecBuilder,T as SwaggerCompilerPlugin,a as jsDocumentCommentsToOpenApi,n as loadDefinition,l as parseFile,m as parseFileMulti,d as swaggerJsDocumentCommentsToOpenApi,D as validate,g as yamlLoc};
@@ -0,0 +1 @@
1
+ const s={cwd:void 0,exclude:["coverage/**","packages/*/test{,s}/**","**/*.d.ts","test{,s}/**","test{,-*}.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}","**/*{.,-}test.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}","**/__tests__/**","**/{ava,babel,nyc}.config.{js,cjs,mjs}","**/jest.config.{js,cjs,mjs,ts}","**/{karma,rollup,webpack}.config.js","**/.{eslint,mocha}rc.{js,cjs}","**/.{travis,yarnrc}.yml","**/{docker-compose}.yml"],excludeNodeModules:!0,extension:[".js",".cjs",".mjs",".ts",".tsx",".jsx",".yaml",".yml"],include:["**"],verbose:!0};export{s as default};
@@ -0,0 +1 @@
1
+ const c=new Set(["__proto__","constructor","prototype"]),h=(o,s)=>{Object.keys(s).forEach(t=>{c.has(t)||(o[t]===void 0?o[t]={...s[t]}:Object.keys(s[t]).forEach(e=>{c.has(e)||(o[t][e]={...o[t][e],...s[t][e]})}))})},i=new Set(["__proto__","constructor","prototype"]);class u{components;externalDocs;info;openapi;paths;security;servers;tags;constructor(s){this.openapi=s.openapi,this.info=s.info,this.paths=s.paths??{},s.servers&&(this.servers=s.servers),s.components&&(this.components=s.components),s.security&&(this.security=s.security),s.tags&&(this.tags=s.tags),s.externalDocs&&(this.externalDocs=s.externalDocs)}addData(s){s.forEach(t=>{const{components:e,paths:n,...a}=t;h(this,{components:e??{},paths:n??{}}),Object.entries(a).forEach(([r,p])=>{i.has(r)||(this[r]=p)})})}}export{u as default};
@@ -0,0 +1 @@
1
+ import{mkdir as c,writeFile as m}from"node:fs/promises";import{dirname as f}from"node:path";import{collect as p}from"@visulima/fs";import{D as u}from"./constants-CdEv9ZcD.js";import w from"./jsDocumentCommentsToOpenApi-TjPhUj5G.js";import{parseFileMulti as d}from"./parseFile-RDlR4tEF.js";import b from"./SpecBuilder-Vbq42UbW.js";import v from"./swaggerJsDocumentCommentsToOpenApi-Bm9R1BnW.js";import y from"./validate-9Rwe2A3r.js";const D=[w,v],E=r=>r instanceof Error?r:new Error(String(r));class J{assetsPath;ignore;silent;sources;swaggerDefinition;verbose;constructor(t,n,o,s){this.assetsPath=t,this.swaggerDefinition=o,this.sources=n,this.verbose=s.verbose??!1,this.silent=s.silent??!1,this.ignore=s.ignore??[]}apply(t){const n=new Set([...u,...this.ignore]);t.hooks.make.tapAsync("SwaggerCompilerPlugin",async(o,s)=>{this.log("Build paused, switching to swagger build");const e=new b(this.swaggerDefinition);try{for(const i of this.sources){const l=await p(i,{extensions:[".js",".cjs",".mjs",".ts",".tsx",".jsx",".yaml",".yml"],includeDirs:!1,skip:[...n]});this.verbose&&(this.log(`Found ${String(l.length)} files in ${i}`),this.log(JSON.stringify(l))),l.forEach(g=>{this.verbose&&this.log(`Parsing file ${g}`),e.addData(d(g,D,this.verbose).map(h=>h.spec))})}this.verbose&&(this.log("Validating swagger spec"),this.log(JSON.stringify(e,void 0,2))),await y(structuredClone(e));const{assetsPath:a}=this;await c(f(a),{recursive:!0}),await m(a,JSON.stringify(e,void 0,2)),this.verbose&&this.log(`Written swagger spec to "${this.assetsPath}" file`)}catch(a){const i=E(a);Array.isArray(o.errors)&&o.errors.push(i),s(i);return}this.log("switching back to normal build"),s()})}log(t){this.silent||console.log(t)}}export{J as default};
@@ -0,0 +1 @@
1
+ const s=["coverage/**",".github/**","**/*.d.ts","**/test{,s}/**","**/test{,-*}.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}","**/*{.,-}test.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}","**/__tests__/**","**/{ava,babel,nyc}.config.{js,cjs,mjs}","**/jest.config.{js,cjs,mjs,ts}","**/{karma,rollup,webpack}.config.js","**/.{eslint,mocha}rc.{js,cjs}","**/.{travis,yarnrc}.yml","**/{docker-compose,docker}.yml","**/.yamllint.{yaml,yml}","**/node_modules/**","**/{pnpm-workspace,pnpm-lock}.yaml","**/{package,package-lock}.json","**/yarn.lock","**/package.json5","**/.next/**"];export{s as D};
@@ -0,0 +1 @@
1
+ const a=(r,t)=>{if(Array.isArray(r))return[...r,...t]};export{a as u};
@@ -0,0 +1,5 @@
1
+ import{mkdir as D,writeFile as b,lstat as E,realpath as O}from"node:fs/promises";import{dirname as S,extname as _,normalize as F}from"node:path";import{stdout as U}from"node:process";import{pathToFileURL as x}from"node:url";import{collect as L}from"@visulima/fs";import{MultiBar as N,Presets as j}from"cli-progress";import R from"yaml";import{D as k}from"./constants-CdEv9ZcD.js";import C from"./jsDocumentCommentsToOpenApi-TjPhUj5G.js";import{parseFileMulti as g}from"./parseFile-RDlR4tEF.js";import M from"./SpecBuilder-Vbq42UbW.js";import V from"./swaggerJsDocumentCommentsToOpenApi-Bm9R1BnW.js";import P from"./loadDefinition-7r9qpfuE.js";import T from"./validate-9Rwe2A3r.js";const A=new Set([".yaml",".yml"]),u="-",p=[C,V],J=async t=>{try{let e=await import(x(F(t)).href);return e?.default&&(e=e.default),e}catch(e){if(e?.code==="ERR_MODULE_NOT_FOUND"||e?.code==="MODULE_NOT_FOUND"||e?.code==="ERR_LOAD_URL")throw new Error(`No config file found, on: ${t}
2
+ `,{cause:e});const o=e instanceof Error?e.message:String(e);throw new Error(`Failed to load config file "${t}": ${o}`,{cause:e})}},z=async(t,e,o)=>{const r=await J(o.config??t),i=o.definition??r.definition;let{swaggerDefinition:c}=r;i&&(c={...P(i),...c});const f=o.output===u?void 0:new N({clearOnComplete:!1,format:"{value}/{total} | {bar} | {filename}",hideCursor:!0},j.shades_grey),s=new M(c),w=new Set([...k,...r.exclude]);for(const m of e){const y=(await E(m)).isDirectory(),a=await O(m);if(!y){s.addData(g(a,p,o.verbose).map(l=>l.spec));continue}const n=await L(a,{extensions:r.extensions??[".js",".cjs",".mjs",".ts",".tsx",".jsx",".yaml",".yml"],followSymlinks:r.followSymlinks??!1,match:r.include,skip:[...w]});(o.verbose??o.veryVerbose)&&console.log(`
3
+ Found ${String(n.length)} files in ${a}`),o.veryVerbose&&console.log(n);const h=f?.create(n.length,0);n.forEach(l=>{o.verbose&&console.log(`Parsing file ${l}`),h?.increment(1,{filename:a}),s.addData(g(l,p,o.verbose).map(v=>v.spec))})}return o.verbose&&console.log("Validating swagger spec"),o.veryVerbose&&console.log(JSON.stringify(s,void 0,2)),await T(structuredClone(s)),f?.stop(),s},d=(t,e)=>A.has(_(e))?R.stringify(structuredClone(t)):JSON.stringify(t,void 0,2),te=async(t,e,o)=>{const r=await z(t,e,o),i=o.output??"swagger.json";if(i===u){U.write(`${d(r,"swagger.json")}
4
+ `);return}o.verbose&&console.log(`Written swagger spec to "${i}" file`),await D(S(i),{recursive:!0}),await b(i,d(r,i)),console.log(`
5
+ Swagger specification is ready, check the "${i}" file.`)};export{te as default};
@@ -0,0 +1 @@
1
+ import{watch as u}from"node:fs";import s,{exit as p}from"node:process";import f from"./generateCommand-C_XPsbS6.js";const c=o=>{console.error(o)},h=async(o,a,r)=>{const e=async()=>{await f(o,a,r)},t=a.map(i=>u(i,{recursive:!0},()=>{e().catch(c)})),n=()=>{t.forEach(i=>{i.close()}),p(0)};s.once("SIGINT",n),s.once("SIGTERM",n);try{await e()}catch(i){c(i)}console.log("Watching for changes... (press Ctrl+C to exit)")},d=(o,a="generate",r=".openapirc.js")=>{o.command(a).description("Generates OpenAPI (Swagger) documentation from JSDoc's").usage("[options] <path ...>").argument("[path ...]","Paths to files or directories to parse").option("-c, --config [.openapirc.js]","@visulima/jsdoc-open-api config file path.").option("-d, --definition [definition.yaml]","Base OpenAPI definition file (YAML/JSON) to seed info/servers/components.").option("-o, --output [swaggerSpec.json]",'Output swagger specification. Use "-" to write to stdout, or a .yaml/.yml path for YAML output.').option("-w, --watch","Re-generate the specification whenever a watched path changes.").option("-v, --verbose","Verbose output.").option("--very-verbose","Very verbose output.").action(async(e,t)=>{if(t.watch){await h(r,e,t);return}try{await f(r,e,t)}catch(n){c(n),p(1)}})};export{d as default};
@@ -0,0 +1,35 @@
1
+ import{existsSync as t,realpathSync as c,writeFileSync as l}from"node:fs";import{findUpSync as i,readJsonSync as r}from"@visulima/fs";const j=(e,a=process.cwd())=>{if(t(e))throw new Error("Config file already exists");const o=i("package.json",{cwd:c(a)});let s="module.exports =";if(o){const n=r(o);console.info(`Found package.json at "${o}"`),n.type==="module"&&(console.info("Found package.json with type: module, using ES6 as export for the config file"),s="export default")}else console.info("No package.json found");l(e,`${s} {
2
+ exclude: [
3
+ 'coverage/**',
4
+ '.github/**',
5
+ 'packages/*/test{,s}/**',
6
+ '**/*.d.ts',
7
+ 'test{,s}/**',
8
+ 'test{,-*}.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}',
9
+ '**/*{.,-}test.{js,cjs,mjs,ts,tsx,jsx,yaml,yml}',
10
+ '**/__tests__/**',
11
+ '**/{ava,babel,nyc}.config.{js,cjs,mjs}',
12
+ '**/jest.config.{js,cjs,mjs,ts}',
13
+ '**/{karma,rollup,webpack}.config.js',
14
+ '**/.{eslint,mocha}rc.{js,cjs}',
15
+ '**/.{travis,yarnrc}.yml',
16
+ '**/{docker-compose,docker}.yml',
17
+ '**/.yamllint.{yaml,yml}',
18
+ '**/node_modules/**',
19
+ '**/pnpm-lock.yaml',
20
+ '**/pnpm-workspace.yaml',
21
+ '**/{package,package-lock}.json',
22
+ '**/yarn.lock',
23
+ '**/package.json5',
24
+ '**/.next/**',
25
+ ],
26
+ followSymlinks: false,
27
+ swaggerDefinition: {
28
+ openapi: '3.0.0',
29
+ info: {
30
+ title: 'API',
31
+ version: '1.0.0',
32
+ },
33
+ },
34
+ };
35
+ `),console.log(`Created "${e}"`)};export{j as default};
@@ -0,0 +1 @@
1
+ import{exit as c}from"node:process";import e from"./initCommand-Ca1hGdYS.js";const s=(o,i="init",r="Inits a pre-configured @visulima/jsdoc-open-api config file.",n=".openapirc.js")=>{o.command(i).description(r).action(()=>{try{e(n)}catch(t){console.error(t),c(1)}})};export{s as default};
@@ -0,0 +1 @@
1
+ import{parse as d}from"comment-parser";import{mergeWith as l}from"es-toolkit";import{u as y}from"./customizer-BXFVpImq.js";const f=/\[\]$/,b=/^- /u,$=/Param$/u,g=/^(GET|PUT|POST|DELETE|OPTIONS|HEAD|PATCH|TRACE) \/.*$/,h=t=>{t.security&&(t.security=Object.keys(t.security).map(o=>({[o]:t.security[o]})))},T=new Set(["array","boolean","integer","number","object","string"]),m={binary:"string",byte:"string",date:"string","date-time":"string",double:"number",float:"number",int32:"integer",int64:"integer",password:"string"},w=t=>{const o=t.type,c=o.endsWith("[]"),e=o.replace(f,""),n=T.has(e),r=Object.keys(m).includes(e);let s;if(t.default)switch(e){case"double":case"float":case"number":{s=Number.parseFloat(t.default);break}case"int32":case"int64":case"integer":{s=Number.parseInt(t.default,10);break}default:{s=t.default;break}}let a;n?a={default:s,type:e}:r?a={default:s,format:e,type:m[e]}:a={$ref:`#/components/schemas/${e}`};let p=c?{items:{...a},type:"array"}:{...a};e===""&&(p=void 0);let i=t.description.trim().replace(b,"");return i===""&&(i=void 0),{description:i,name:t.name,rawType:o,required:!t.optional,schema:p}},k=(t,o)=>t.map(c=>{const e=w(c);let n="";switch(e.name&&(n+=e.name),e.description&&(n+=` ${e.description.trim()}`),c.tag){case"bodyComponent":return{requestBody:{$ref:`#/components/requestBodies/${e.rawType}`}};case"bodyContent":return{requestBody:{content:{[e.name.replaceAll(String.raw`*\/*`,"*/*")]:{schema:e.schema}}}};case"bodyDescription":return{requestBody:{description:n}};case"bodyExample":{const[r,s]=e.name.split(".");return{requestBody:{content:{[r]:{examples:{[s]:{$ref:`#/components/examples/${e.rawType}`}}}}}}}case"bodyRequired":return{requestBody:{required:!0}};case"callback":return{callbacks:{[e.name]:{$ref:`#/components/callbacks/${e.rawType}`}}};case"cookieParam":case"headerParam":case"pathParam":case"queryParam":return{parameters:[{description:e.description,in:c.tag.replace($,""),name:e.name,required:e.required,schema:e.schema}]};case"deprecated":return{deprecated:!0};case"description":case"operationId":case"summary":return{[c.tag]:n};case"externalDocs":return{externalDocs:{description:e.description,url:e.name}};case"paramComponent":return{parameters:[{$ref:`#/components/parameters/${e.rawType}`}]};case"response":return{responses:{[e.name]:{description:e.description}}};case"responseComponent":return{responses:{[e.name]:{$ref:`#/components/responses/${e.rawType}`}}};case"responseContent":{const[r,s]=e.name.split(".");return{responses:{[r]:{content:{[s]:{schema:e.schema}}}}}}case"responseExample":{const[r,s,a]=e.name.split(".");return{responses:{[r]:{content:{[s]:{examples:{[a]:{$ref:`#/components/examples/${e.rawType}`}}}}}}}}case"responseHeader":{const[r,s]=e.name.split(".");return{responses:{[r]:{headers:{[s]:{description:e.description,schema:e.schema}}}}}}case"responseHeaderComponent":{const[r,s]=e.name.split(".");return{responses:{[r]:{headers:{[s]:{$ref:`#/components/headers/${e.rawType}`}}}}}}case"responseLink":{const[r,s]=e.name.split(".");return{responses:{[r]:{links:{[s]:{$ref:`#/components/links/${e.rawType}`}}}}}}case"security":{const[r,s]=e.name.split(".");let a=[];return s&&(a=[s]),{security:{[r]:a}}}case"server":return{servers:[{description:e.description,url:e.name}]};case"tag":return{tags:[n]};default:return{}}}),C=(t,o,c)=>(c??d(t,{spacing:"preserve"})).filter(e=>g.test(e.description.trim())).map(e=>{const n=e.tags.length+1,r={};for(const u of k(e.tags))l(r,u,y);h(r);const[s,a]=e.description.split(" "),p={[a.trim()]:{[s.toLowerCase().trim()]:{...r}}},i=JSON.parse(JSON.stringify({paths:p}));return{loc:n,spec:i}});export{C as default};
@@ -0,0 +1 @@
1
+ import{readFileSync as n}from"node:fs";import t from"node:path";import m from"yaml";const s=o=>{const r=t.extname(o);if(r!==".yaml"&&r!==".yml"&&r!==".json")throw new Error("OpenAPI definition path must be YAML or JSON.");const e=n(o,{encoding:"utf8"});return r===".yaml"||r===".yml"?m.parse(e):JSON.parse(e)};export{s as default};
@@ -0,0 +1 @@
1
+ import{readFileSync as f}from"node:fs";import p from"node:path";import{parse as u}from"comment-parser";import y from"yaml";import d from"./yamlLoc-DPq-xUM4.js";const i=new Set(["components","externalDocs","info","openapi","paths","security","servers","tags"]);class g extends Error{filePath}const l=new Set([".yaml",".yml"]),h=(t,o)=>{const r=y.parse(o);if(r===null||typeof r!="object")return[];const n=Object.keys(r).filter(e=>!i.has(e));if(n.length>0){const e=new g(`Unexpected keys: ${n.join(", ")}`);throw e.filePath=t,e}return Object.keys(r).some(e=>i.has(e))?[{loc:d(o),spec:r}]:[]},k=(t,o,r)=>{const n=f(t,{encoding:"utf8"}),e=p.extname(t);if(l.has(e))return h(t,n);try{return o(n,r)}catch(s){throw s.filePath=t,s}},O=(t,o,r)=>{const n=f(t,{encoding:"utf8"}),e=p.extname(t);if(l.has(e))return h(t,n);const s=u(n,{spacing:"preserve"}),c=[];for(const m of o)try{c.push(...m(n,r,s))}catch(a){throw a.filePath=t,a}return c};export{k as default,O as parseFileMulti};
@@ -0,0 +1,10 @@
1
+ import{parse as f}from"comment-parser";import{mergeWith as m}from"es-toolkit";import y from"yaml";import{u as l}from"./customizer-BXFVpImq.js";const g=(s,t)=>{if(t===null)return s},h=(s,t)=>{const e=m({},s??{},g);return m(e,t??{},g)},d=s=>Object.keys(s).map(t=>s[t]).every(t=>typeof t=="object"&&Object.keys(t).every(e=>!(e in t))),u=(s,t)=>t.some(e=>s.name===e.name),v=s=>{switch(s.tag){case"asyncapi":return"v4";case"openapi":return"v3";case"swagger":return"v2";default:return"v2"}},w=(s,t,e)=>{if(e==="x-webhooks"&&(s[e]=t[e]),!e.startsWith("x-"))if(["components","consumes","produces","paths","schemas","securityDefinitions","responses","parameters","definitions","channels"].includes(e))Object.keys(t[e]).forEach(r=>{s[e][r]=h(s[e][r],t[e][r])});else if(e==="tags"){const{tags:r}=t;Array.isArray(r)?r.forEach(n=>{u(n,s.tags)||s.tags.push(n)}):u(r,s.tags)||s.tags.push(r)}else if(e==="security"){const{security:r}=t;s.security=r}else e.startsWith("/")&&(s.paths[e]=h(s.paths[e],t[e]))},E={v2:["paths","definitions","responses","parameters","securityDefinitions"],v3:["paths","definitions","responses","parameters","securityDefinitions","components"],v4:["components","channels"]},S=(s,t)=>s.map(e=>{const r=e.description!==""||e.name.startsWith("/")||e.name.endsWith(":");if((e.tag==="openapi"||e.tag==="swagger"||e.tag==="asyncapi")&&r){let n=e.description;(e.name.startsWith("/")||e.name.endsWith(":"))&&(n=n.trim()===""?e.name:`${e.name}
2
+ ${n}`);const a=y.parseDocument(n);if(a.errors.length>0){a.errors.forEach(p=>{p.annotation=n});let i="Error parsing YAML in @openapi spec:";throw i+=t?a.errors.map(p=>`${p.toString()}
3
+ Imbedded within:
4
+ \`\`\`
5
+ ${p.annotation?.replaceAll(`
6
+ `,`
7
+ `)}
8
+ \`\`\``).join(`
9
+ `):a.errors.map(p=>p.toString()).join(`
10
+ `),new Error(i)}const c=a.toJSON(),o={tags:[]};return E[v(e)].forEach(i=>{o[i]=o[i]??{}}),Object.keys(c).forEach(i=>{w(o,c,i)}),o}return{}}),O=new Set(["asyncapi","openapi","swagger"]),k=(s,t,e)=>(e??f(s,{spacing:"preserve"})).filter(r=>r.tags.some(n=>O.has(n.tag))).map(r=>{const n=r.tags.length+1,a={};for(const o of S(r.tags,t))m(a,o,l);["definitions","responses","parameters","securityDefinitions","components","tags"].forEach(o=>{a[o]!==void 0&&d(a[o])&&delete a[o]});const c=JSON.parse(JSON.stringify(a));return{loc:n,spec:c}});export{k as default};
@@ -0,0 +1 @@
1
+ import t from"@apidevtools/swagger-parser";const e=async a=>{await t.validate(a)};export{e as default};
@@ -0,0 +1 @@
1
+ const s=/\r\n|\r|\n/u,l=/^\s*(#\s*(?:\S.*)?)?$/u,n=e=>e.split(s).filter(t=>l.test(t)?!1:t.trim().length>0).length;export{n as default};
package/package.json CHANGED
@@ -1,23 +1,21 @@
1
1
  {
2
2
  "name": "@visulima/jsdoc-open-api",
3
- "version": "3.0.0-alpha.8",
3
+ "version": "3.0.0",
4
4
  "description": "Generates swagger doc based on JSDoc.",
5
5
  "keywords": [
6
- "visulima",
6
+ "api",
7
+ "cli",
8
+ "command",
9
+ "comment",
7
10
  "javascript",
11
+ "jsdoc",
8
12
  "openapi",
9
13
  "swagger",
10
- "jsdoc",
11
- "comment",
12
- "api",
13
- "webpack",
14
- "cli",
15
- "command"
14
+ "visulima",
15
+ "webpack"
16
16
  ],
17
17
  "homepage": "https://visulima.com/packages/jsdoc-open-api/",
18
- "bugs": {
19
- "url": "https://github.com/visulima/visulima/issues"
20
- },
18
+ "bugs": "https://github.com/visulima/visulima/issues",
21
19
  "repository": {
22
20
  "type": "git",
23
21
  "url": "https://github.com/visulima/visulima.git",
@@ -39,41 +37,23 @@
39
37
  "email": "d.bannert@anolilab.de"
40
38
  },
41
39
  "sideEffects": false,
40
+ "type": "module",
42
41
  "exports": {
43
42
  ".": {
44
- "import": {
45
- "types": "./dist/index.d.mts",
46
- "default": "./dist/index.mjs"
47
- },
48
- "require": {
49
- "types": "./dist/index.d.cts",
50
- "default": "./dist/index.cjs"
51
- }
43
+ "types": "./dist/index.d.ts",
44
+ "default": "./dist/index.js"
52
45
  },
53
46
  "./cli": {
54
- "import": {
55
- "types": "./dist/cli/index.d.mts",
56
- "default": "./dist/cli/index.mjs"
57
- },
58
- "require": {
59
- "types": "./dist/cli/index.d.cts",
60
- "default": "./dist/cli/index.cjs"
61
- }
47
+ "types": "./dist/cli/index.d.ts",
48
+ "default": "./dist/cli/index.js"
62
49
  },
63
50
  "./cli/commander": {
64
- "import": {
65
- "types": "./dist/cli/commander/index.d.mts",
66
- "default": "./dist/cli/commander/index.mjs"
67
- },
68
- "require": {
69
- "types": "./dist/cli/commander/index.d.cts",
70
- "default": "./dist/cli/commander/index.cjs"
71
- }
51
+ "types": "./dist/cli/commander/index.d.ts",
52
+ "default": "./dist/cli/commander/index.js"
72
53
  },
73
54
  "./package.json": "./package.json"
74
55
  },
75
- "main": "dist/index.cjs",
76
- "module": "dist/index.mjs",
56
+ "module": "dist/index.js",
77
57
  "types": "dist/index.d.ts",
78
58
  "typesVersions": {
79
59
  ">=5.0": {
@@ -101,15 +81,15 @@
101
81
  ],
102
82
  "dependencies": {
103
83
  "@apidevtools/swagger-parser": "^12.1.0",
104
- "@visulima/fs": "5.0.0-alpha.9",
105
- "comment-parser": "1.4.6",
106
- "lodash.mergewith": "^4.6.2",
107
- "yaml": "2.8.3"
84
+ "@visulima/fs": "5.0.0",
85
+ "comment-parser": "1.4.7",
86
+ "es-toolkit": "^1.47.1",
87
+ "yaml": "2.9.0"
108
88
  },
109
89
  "optionalDependencies": {
110
90
  "cli-progress": "^3.12.0",
111
- "commander": "^14.0.3",
112
- "webpack": "^5.106.2"
91
+ "commander": "^15.0.0",
92
+ "webpack": "^5.107.2"
113
93
  },
114
94
  "engines": {
115
95
  "node": "^22.14.0 || >=24.10.0"
@@ -1,7 +0,0 @@
1
- declare const generateCommand: (configName: string, paths: string[], options: {
2
- config?: string;
3
- output?: string;
4
- verbose?: boolean;
5
- veryVerbose?: boolean;
6
- }) => Promise<void>;
7
- export = generateCommand;
@@ -1,7 +0,0 @@
1
- declare const generateCommand: (configName: string, paths: string[], options: {
2
- config?: string;
3
- output?: string;
4
- verbose?: boolean;
5
- veryVerbose?: boolean;
6
- }) => Promise<void>;
7
- export default generateCommand;
@@ -1,7 +0,0 @@
1
- declare const generateCommand: (configName: string, paths: string[], options: {
2
- config?: string;
3
- output?: string;
4
- verbose?: boolean;
5
- veryVerbose?: boolean;
6
- }) => Promise<void>;
7
- export = generateCommand;
@@ -1,2 +0,0 @@
1
- declare const initCommand: (configName: string, packageJsonPath?: string) => void;
2
- export = initCommand;
@@ -1,2 +0,0 @@
1
- declare const initCommand: (configName: string, packageJsonPath?: string) => void;
2
- export default initCommand;
@@ -1,2 +0,0 @@
1
- declare const initCommand: (configName: string, packageJsonPath?: string) => void;
2
- export = initCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const generateCommand: (program: Command, commandName?: string, configName?: string) => void;
3
- export = generateCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const generateCommand: (program: Command, commandName?: string, configName?: string) => void;
3
- export default generateCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const generateCommand: (program: Command, commandName?: string, configName?: string) => void;
3
- export = generateCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const initCommand: (program: Command, commandName?: string, description?: string, configName?: string) => void;
3
- export = initCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const initCommand: (program: Command, commandName?: string, description?: string, configName?: string) => void;
3
- export default initCommand;
@@ -1,3 +0,0 @@
1
- import type { Command } from "commander";
2
- declare const initCommand: (program: Command, commandName?: string, description?: string, configName?: string) => void;
3
- export = initCommand;
@@ -1,11 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- const generateCommand = require('../../packem_shared/generateCommand-RY4QFtm7.cjs');
6
- const initCommand = require('../../packem_shared/initCommand-D3yVEMwO.cjs');
7
-
8
-
9
-
10
- exports.generateCommand = generateCommand;
11
- exports.initCommand = initCommand;
@@ -1,2 +0,0 @@
1
- export { default as generateCommand } from "./command/generate-command.d.cts";
2
- export { default as initCommand } from "./command/init-command.d.cts";
@@ -1,2 +0,0 @@
1
- export { default as generateCommand } from "./command/generate-command.d.mts";
2
- export { default as initCommand } from "./command/init-command.d.mts";
@@ -1,2 +0,0 @@
1
- export { default as generateCommand } from '../../packem_shared/generateCommand-DRMkfIle.mjs';
2
- export { default as initCommand } from '../../packem_shared/initCommand-B6Z9EXHP.mjs';
@@ -1,11 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- const generateCommand = require('../packem_shared/generateCommand-MwnCNgEE.cjs');
6
- const initCommand = require('../packem_shared/initCommand-Ch-72dKZ.cjs');
7
-
8
-
9
-
10
- exports.generateCommand = generateCommand;
11
- exports.initCommand = initCommand;
@@ -1,2 +0,0 @@
1
- export { default as generateCommand } from "./command/generate-command.d.cts";
2
- export { default as initCommand } from "./command/init-command.d.cts";
@@ -1,2 +0,0 @@
1
- export { default as generateCommand } from "./command/generate-command.d.mts";
2
- export { default as initCommand } from "./command/init-command.d.mts";