@alagoni97/cli 0.72.1

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 (244) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +336 -0
  3. package/bin/dev.cmd +3 -0
  4. package/bin/dev.mjs +3 -0
  5. package/bin/run.cmd +3 -0
  6. package/bin/run.mjs +4 -0
  7. package/dist/LoggingInterface.d.ts +123 -0
  8. package/dist/LoggingInterface.js +300 -0
  9. package/dist/PersistedConfig.d.ts +46 -0
  10. package/dist/PersistedConfig.js +94 -0
  11. package/dist/browser/adapters/output.d.ts +69 -0
  12. package/dist/browser/adapters/output.js +91 -0
  13. package/dist/browser/config.d.ts +18 -0
  14. package/dist/browser/config.js +59 -0
  15. package/dist/browser/generate.d.ts +20 -0
  16. package/dist/browser/generate.js +129 -0
  17. package/dist/browser/index.d.ts +17 -0
  18. package/dist/browser/index.js +26 -0
  19. package/dist/browser/parser.d.ts +9 -0
  20. package/dist/browser/parser.js +61 -0
  21. package/dist/browser/shims/asyncapi-parser.d.ts +30 -0
  22. package/dist/browser/shims/asyncapi-parser.js +52 -0
  23. package/dist/browser/shims/fs.d.ts +190 -0
  24. package/dist/browser/shims/fs.js +188 -0
  25. package/dist/browser/shims/json-schema-ref-parser.d.ts +73 -0
  26. package/dist/browser/shims/json-schema-ref-parser.js +246 -0
  27. package/dist/browser/shims/swagger-parser.d.ts +20 -0
  28. package/dist/browser/shims/swagger-parser.js +40 -0
  29. package/dist/codegen/configurationSchemaBuilder.d.ts +15 -0
  30. package/dist/codegen/configurationSchemaBuilder.js +48 -0
  31. package/dist/codegen/configurations.d.ts +29 -0
  32. package/dist/codegen/configurations.js +260 -0
  33. package/dist/codegen/detection.d.ts +19 -0
  34. package/dist/codegen/detection.js +174 -0
  35. package/dist/codegen/errors.d.ts +111 -0
  36. package/dist/codegen/errors.js +352 -0
  37. package/dist/codegen/generators/generic/custom.d.ts +75 -0
  38. package/dist/codegen/generators/generic/custom.js +66 -0
  39. package/dist/codegen/generators/index.d.ts +14 -0
  40. package/dist/codegen/generators/index.js +42 -0
  41. package/dist/codegen/generators/typescript/channels/asyncapi.d.ts +10 -0
  42. package/dist/codegen/generators/typescript/channels/asyncapi.js +131 -0
  43. package/dist/codegen/generators/typescript/channels/index.d.ts +8 -0
  44. package/dist/codegen/generators/typescript/channels/index.js +142 -0
  45. package/dist/codegen/generators/typescript/channels/openapi.d.ts +9 -0
  46. package/dist/codegen/generators/typescript/channels/openapi.js +168 -0
  47. package/dist/codegen/generators/typescript/channels/protocols/amqp/index.d.ts +7 -0
  48. package/dist/codegen/generators/typescript/channels/protocols/amqp/index.js +149 -0
  49. package/dist/codegen/generators/typescript/channels/protocols/amqp/publishExchange.d.ts +5 -0
  50. package/dist/codegen/generators/typescript/channels/protocols/amqp/publishExchange.js +106 -0
  51. package/dist/codegen/generators/typescript/channels/protocols/amqp/publishQueue.d.ts +3 -0
  52. package/dist/codegen/generators/typescript/channels/protocols/amqp/publishQueue.js +102 -0
  53. package/dist/codegen/generators/typescript/channels/protocols/amqp/subscribeQueue.d.ts +3 -0
  54. package/dist/codegen/generators/typescript/channels/protocols/amqp/subscribeQueue.js +133 -0
  55. package/dist/codegen/generators/typescript/channels/protocols/eventsource/express.d.ts +3 -0
  56. package/dist/codegen/generators/typescript/channels/protocols/eventsource/express.js +100 -0
  57. package/dist/codegen/generators/typescript/channels/protocols/eventsource/fetch.d.ts +5 -0
  58. package/dist/codegen/generators/typescript/channels/protocols/eventsource/fetch.js +144 -0
  59. package/dist/codegen/generators/typescript/channels/protocols/eventsource/index.d.ts +6 -0
  60. package/dist/codegen/generators/typescript/channels/protocols/eventsource/index.js +132 -0
  61. package/dist/codegen/generators/typescript/channels/protocols/http/client.d.ts +10 -0
  62. package/dist/codegen/generators/typescript/channels/protocols/http/client.js +224 -0
  63. package/dist/codegen/generators/typescript/channels/protocols/http/common-types.d.ts +14 -0
  64. package/dist/codegen/generators/typescript/channels/protocols/http/common-types.js +800 -0
  65. package/dist/codegen/generators/typescript/channels/protocols/http/index.d.ts +8 -0
  66. package/dist/codegen/generators/typescript/channels/protocols/http/index.js +96 -0
  67. package/dist/codegen/generators/typescript/channels/protocols/http/security.d.ts +48 -0
  68. package/dist/codegen/generators/typescript/channels/protocols/http/security.js +491 -0
  69. package/dist/codegen/generators/typescript/channels/protocols/kafka/index.d.ts +6 -0
  70. package/dist/codegen/generators/typescript/channels/protocols/kafka/index.js +127 -0
  71. package/dist/codegen/generators/typescript/channels/protocols/kafka/publish.d.ts +3 -0
  72. package/dist/codegen/generators/typescript/channels/protocols/kafka/publish.js +108 -0
  73. package/dist/codegen/generators/typescript/channels/protocols/kafka/subscribe.d.ts +3 -0
  74. package/dist/codegen/generators/typescript/channels/protocols/kafka/subscribe.js +154 -0
  75. package/dist/codegen/generators/typescript/channels/protocols/kafka/utils.d.ts +11 -0
  76. package/dist/codegen/generators/typescript/channels/protocols/kafka/utils.js +58 -0
  77. package/dist/codegen/generators/typescript/channels/protocols/mqtt/index.d.ts +6 -0
  78. package/dist/codegen/generators/typescript/channels/protocols/mqtt/index.js +113 -0
  79. package/dist/codegen/generators/typescript/channels/protocols/mqtt/publish.d.ts +3 -0
  80. package/dist/codegen/generators/typescript/channels/protocols/mqtt/publish.js +99 -0
  81. package/dist/codegen/generators/typescript/channels/protocols/mqtt/subscribe.d.ts +3 -0
  82. package/dist/codegen/generators/typescript/channels/protocols/mqtt/subscribe.js +186 -0
  83. package/dist/codegen/generators/typescript/channels/protocols/nats/corePublish.d.ts +3 -0
  84. package/dist/codegen/generators/typescript/channels/protocols/nats/corePublish.js +90 -0
  85. package/dist/codegen/generators/typescript/channels/protocols/nats/coreReply.d.ts +3 -0
  86. package/dist/codegen/generators/typescript/channels/protocols/nats/coreReply.js +142 -0
  87. package/dist/codegen/generators/typescript/channels/protocols/nats/coreRequest.d.ts +3 -0
  88. package/dist/codegen/generators/typescript/channels/protocols/nats/coreRequest.js +100 -0
  89. package/dist/codegen/generators/typescript/channels/protocols/nats/coreSubscribe.d.ts +3 -0
  90. package/dist/codegen/generators/typescript/channels/protocols/nats/coreSubscribe.js +143 -0
  91. package/dist/codegen/generators/typescript/channels/protocols/nats/index.d.ts +11 -0
  92. package/dist/codegen/generators/typescript/channels/protocols/nats/index.js +224 -0
  93. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPublish.d.ts +3 -0
  94. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPublish.js +89 -0
  95. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPullSubscribe.d.ts +3 -0
  96. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPullSubscribe.js +146 -0
  97. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPushSubscription.d.ts +3 -0
  98. package/dist/codegen/generators/typescript/channels/protocols/nats/jetstreamPushSubscription.js +149 -0
  99. package/dist/codegen/generators/typescript/channels/protocols/nats/utils.d.ts +35 -0
  100. package/dist/codegen/generators/typescript/channels/protocols/nats/utils.js +120 -0
  101. package/dist/codegen/generators/typescript/channels/protocols/websocket/index.d.ts +7 -0
  102. package/dist/codegen/generators/typescript/channels/protocols/websocket/index.js +152 -0
  103. package/dist/codegen/generators/typescript/channels/protocols/websocket/publish.d.ts +3 -0
  104. package/dist/codegen/generators/typescript/channels/protocols/websocket/publish.js +64 -0
  105. package/dist/codegen/generators/typescript/channels/protocols/websocket/register.d.ts +3 -0
  106. package/dist/codegen/generators/typescript/channels/protocols/websocket/register.js +115 -0
  107. package/dist/codegen/generators/typescript/channels/protocols/websocket/subscribe.d.ts +3 -0
  108. package/dist/codegen/generators/typescript/channels/protocols/websocket/subscribe.js +151 -0
  109. package/dist/codegen/generators/typescript/channels/types.d.ts +181 -0
  110. package/dist/codegen/generators/typescript/channels/types.js +131 -0
  111. package/dist/codegen/generators/typescript/channels/utils.d.ts +64 -0
  112. package/dist/codegen/generators/typescript/channels/utils.js +163 -0
  113. package/dist/codegen/generators/typescript/client/index.d.ts +8 -0
  114. package/dist/codegen/generators/typescript/client/index.js +61 -0
  115. package/dist/codegen/generators/typescript/client/protocols/nats/corePublish.d.ts +6 -0
  116. package/dist/codegen/generators/typescript/client/protocols/nats/corePublish.js +53 -0
  117. package/dist/codegen/generators/typescript/client/protocols/nats/coreSubscribe.d.ts +6 -0
  118. package/dist/codegen/generators/typescript/client/protocols/nats/coreSubscribe.js +90 -0
  119. package/dist/codegen/generators/typescript/client/protocols/nats/jetStreamPullSubscription.d.ts +6 -0
  120. package/dist/codegen/generators/typescript/client/protocols/nats/jetStreamPullSubscription.js +83 -0
  121. package/dist/codegen/generators/typescript/client/protocols/nats/jetstreamPublish.d.ts +6 -0
  122. package/dist/codegen/generators/typescript/client/protocols/nats/jetstreamPublish.js +54 -0
  123. package/dist/codegen/generators/typescript/client/protocols/nats/jetstreamPushSubscription.d.ts +6 -0
  124. package/dist/codegen/generators/typescript/client/protocols/nats/jetstreamPushSubscription.js +82 -0
  125. package/dist/codegen/generators/typescript/client/protocols/nats.d.ts +2 -0
  126. package/dist/codegen/generators/typescript/client/protocols/nats.js +182 -0
  127. package/dist/codegen/generators/typescript/client/types.d.ts +49 -0
  128. package/dist/codegen/generators/typescript/client/types.js +37 -0
  129. package/dist/codegen/generators/typescript/headers.d.ts +54 -0
  130. package/dist/codegen/generators/typescript/headers.js +138 -0
  131. package/dist/codegen/generators/typescript/index.d.ts +7 -0
  132. package/dist/codegen/generators/typescript/index.js +38 -0
  133. package/dist/codegen/generators/typescript/models.d.ts +21761 -0
  134. package/dist/codegen/generators/typescript/models.js +64 -0
  135. package/dist/codegen/generators/typescript/parameters.d.ts +37 -0
  136. package/dist/codegen/generators/typescript/parameters.js +101 -0
  137. package/dist/codegen/generators/typescript/payloads.d.ts +73 -0
  138. package/dist/codegen/generators/typescript/payloads.js +250 -0
  139. package/dist/codegen/generators/typescript/types.d.ts +34 -0
  140. package/dist/codegen/generators/typescript/types.js +70 -0
  141. package/dist/codegen/generators/typescript/utils.d.ts +38 -0
  142. package/dist/codegen/generators/typescript/utils.js +195 -0
  143. package/dist/codegen/index.d.ts +7 -0
  144. package/dist/codegen/index.js +38 -0
  145. package/dist/codegen/inputs/asyncapi/generators/headers.d.ts +3 -0
  146. package/dist/codegen/inputs/asyncapi/generators/headers.js +41 -0
  147. package/dist/codegen/inputs/asyncapi/generators/parameters.d.ts +14 -0
  148. package/dist/codegen/inputs/asyncapi/generators/parameters.js +120 -0
  149. package/dist/codegen/inputs/asyncapi/generators/payloads.d.ts +16 -0
  150. package/dist/codegen/inputs/asyncapi/generators/payloads.js +124 -0
  151. package/dist/codegen/inputs/asyncapi/generators/types.d.ts +9 -0
  152. package/dist/codegen/inputs/asyncapi/generators/types.js +61 -0
  153. package/dist/codegen/inputs/asyncapi/index.d.ts +1 -0
  154. package/dist/codegen/inputs/asyncapi/index.js +7 -0
  155. package/dist/codegen/inputs/asyncapi/parser.d.ts +4 -0
  156. package/dist/codegen/inputs/asyncapi/parser.js +90 -0
  157. package/dist/codegen/inputs/index.d.ts +3 -0
  158. package/dist/codegen/inputs/index.js +19 -0
  159. package/dist/codegen/inputs/jsonschema/generators/index.d.ts +1 -0
  160. package/dist/codegen/inputs/jsonschema/generators/index.js +5 -0
  161. package/dist/codegen/inputs/jsonschema/generators/models.d.ts +7 -0
  162. package/dist/codegen/inputs/jsonschema/generators/models.js +26 -0
  163. package/dist/codegen/inputs/jsonschema/index.d.ts +1 -0
  164. package/dist/codegen/inputs/jsonschema/index.js +7 -0
  165. package/dist/codegen/inputs/jsonschema/parser.d.ts +31 -0
  166. package/dist/codegen/inputs/jsonschema/parser.js +128 -0
  167. package/dist/codegen/inputs/openapi/generators/headers.d.ts +3 -0
  168. package/dist/codegen/inputs/openapi/generators/headers.js +101 -0
  169. package/dist/codegen/inputs/openapi/generators/parameters.d.ts +10 -0
  170. package/dist/codegen/inputs/openapi/generators/parameters.js +852 -0
  171. package/dist/codegen/inputs/openapi/generators/payloads.d.ts +3 -0
  172. package/dist/codegen/inputs/openapi/generators/payloads.js +231 -0
  173. package/dist/codegen/inputs/openapi/generators/types.d.ts +9 -0
  174. package/dist/codegen/inputs/openapi/generators/types.js +86 -0
  175. package/dist/codegen/inputs/openapi/index.d.ts +2 -0
  176. package/dist/codegen/inputs/openapi/index.js +8 -0
  177. package/dist/codegen/inputs/openapi/parser.d.ts +4 -0
  178. package/dist/codegen/inputs/openapi/parser.js +115 -0
  179. package/dist/codegen/inputs/openapi/security.d.ts +56 -0
  180. package/dist/codegen/inputs/openapi/security.js +193 -0
  181. package/dist/codegen/modelina/index.d.ts +2 -0
  182. package/dist/codegen/modelina/index.js +20 -0
  183. package/dist/codegen/modelina/presets/index.d.ts +3 -0
  184. package/dist/codegen/modelina/presets/index.js +14 -0
  185. package/dist/codegen/modelina/presets/primitives.d.ts +34 -0
  186. package/dist/codegen/modelina/presets/primitives.js +211 -0
  187. package/dist/codegen/modelina/presets/union.d.ts +33 -0
  188. package/dist/codegen/modelina/presets/union.js +197 -0
  189. package/dist/codegen/modelina/presets/validation.d.ts +66 -0
  190. package/dist/codegen/modelina/presets/validation.js +183 -0
  191. package/dist/codegen/modelina/types.d.ts +61845 -0
  192. package/dist/codegen/modelina/types.js +412 -0
  193. package/dist/codegen/output/filesystem.d.ts +30 -0
  194. package/dist/codegen/output/filesystem.js +61 -0
  195. package/dist/codegen/output/index.d.ts +16 -0
  196. package/dist/codegen/output/index.js +57 -0
  197. package/dist/codegen/output/memory.d.ts +54 -0
  198. package/dist/codegen/output/memory.js +81 -0
  199. package/dist/codegen/output/modelina.d.ts +30 -0
  200. package/dist/codegen/output/modelina.js +30 -0
  201. package/dist/codegen/output/types.d.ts +47 -0
  202. package/dist/codegen/output/types.js +6 -0
  203. package/dist/codegen/renderer.d.ts +13 -0
  204. package/dist/codegen/renderer.js +309 -0
  205. package/dist/codegen/schemaPostProcess.d.ts +25 -0
  206. package/dist/codegen/schemaPostProcess.js +38 -0
  207. package/dist/codegen/types.d.ts +285187 -0
  208. package/dist/codegen/types.js +177 -0
  209. package/dist/codegen/utils.d.ts +126 -0
  210. package/dist/codegen/utils.js +373 -0
  211. package/dist/commands/base.d.ts +18 -0
  212. package/dist/commands/base.js +59 -0
  213. package/dist/commands/generate.d.ts +46 -0
  214. package/dist/commands/generate.js +305 -0
  215. package/dist/commands/init.d.ts +55 -0
  216. package/dist/commands/init.js +544 -0
  217. package/dist/commands/telemetry.d.ts +25 -0
  218. package/dist/commands/telemetry.js +115 -0
  219. package/dist/index.d.ts +29 -0
  220. package/dist/index.js +35 -0
  221. package/dist/telemetry/anonymize.d.ts +19 -0
  222. package/dist/telemetry/anonymize.js +73 -0
  223. package/dist/telemetry/collector.d.ts +26 -0
  224. package/dist/telemetry/collector.js +57 -0
  225. package/dist/telemetry/config.d.ts +32 -0
  226. package/dist/telemetry/config.js +97 -0
  227. package/dist/telemetry/events.d.ts +72 -0
  228. package/dist/telemetry/events.js +5 -0
  229. package/dist/telemetry/index.d.ts +46 -0
  230. package/dist/telemetry/index.js +91 -0
  231. package/dist/telemetry/notice.d.ts +8 -0
  232. package/dist/telemetry/notice.js +50 -0
  233. package/dist/telemetry/sender.d.ts +14 -0
  234. package/dist/telemetry/sender.js +125 -0
  235. package/dist/utils/gitignore.d.ts +66 -0
  236. package/dist/utils/gitignore.js +111 -0
  237. package/dist/utils/inputSource.d.ts +3 -0
  238. package/dist/utils/inputSource.js +26 -0
  239. package/dist/utils/refResolvers.d.ts +29 -0
  240. package/dist/utils/refResolvers.js +83 -0
  241. package/dist/utils/remoteFetch.d.ts +18 -0
  242. package/dist/utils/remoteFetch.js +64 -0
  243. package/oclif.manifest.json +510 -0
  244. package/package.json +155 -0
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Browser shim for Node.js 'fs' module.
3
+ * Provides stub implementations that throw helpful errors.
4
+ *
5
+ * This module is used for both 'fs' and 'fs/promises' imports.
6
+ * All functions return promises since that's what the browser code expects.
7
+ */
8
+ declare class FakeStats {
9
+ dev: number;
10
+ ino: number;
11
+ mode: number;
12
+ nlink: number;
13
+ uid: number;
14
+ gid: number;
15
+ rdev: number;
16
+ size: number;
17
+ blksize: number;
18
+ blocks: number;
19
+ atimeMs: number;
20
+ mtimeMs: number;
21
+ ctimeMs: number;
22
+ birthtimeMs: number;
23
+ atime: Date;
24
+ mtime: Date;
25
+ ctime: Date;
26
+ birthtime: Date;
27
+ isFile(): boolean;
28
+ isDirectory(): boolean;
29
+ isBlockDevice(): boolean;
30
+ isCharacterDevice(): boolean;
31
+ isSymbolicLink(): boolean;
32
+ isFIFO(): boolean;
33
+ isSocket(): boolean;
34
+ }
35
+ export declare const Stats: typeof FakeStats;
36
+ export declare const readFile: (..._args: unknown[]) => Promise<never>;
37
+ export declare const writeFile: (..._args: unknown[]) => Promise<never>;
38
+ export declare const mkdir: (..._args: unknown[]) => Promise<never>;
39
+ export declare const readdir: (..._args: unknown[]) => Promise<never>;
40
+ export declare const stat: (..._args: unknown[]) => Promise<never>;
41
+ export declare const unlink: (..._args: unknown[]) => Promise<never>;
42
+ export declare const rmdir: (..._args: unknown[]) => Promise<never>;
43
+ export declare const access: (..._args: unknown[]) => Promise<never>;
44
+ export declare const copyFile: (..._args: unknown[]) => Promise<never>;
45
+ export declare const rename: (..._args: unknown[]) => Promise<never>;
46
+ export declare const lstat: (..._args: unknown[]) => Promise<never>;
47
+ export declare const realpath: (..._args: unknown[]) => Promise<never>;
48
+ export declare const chmod: (..._args: unknown[]) => Promise<never>;
49
+ export declare const chown: (..._args: unknown[]) => Promise<never>;
50
+ export declare const utimes: (..._args: unknown[]) => Promise<never>;
51
+ export declare const link: (..._args: unknown[]) => Promise<never>;
52
+ export declare const symlink: (..._args: unknown[]) => Promise<never>;
53
+ export declare const readlink: (..._args: unknown[]) => Promise<never>;
54
+ export declare const truncate: (..._args: unknown[]) => Promise<never>;
55
+ export declare const appendFile: (..._args: unknown[]) => Promise<never>;
56
+ export declare const open: (..._args: unknown[]) => Promise<never>;
57
+ export declare const rm: (..._args: unknown[]) => Promise<never>;
58
+ export declare const readFileSync: (..._args: unknown[]) => never;
59
+ export declare const writeFileSync: (..._args: unknown[]) => never;
60
+ export declare const existsSync: () => boolean;
61
+ export declare const mkdirSync: (..._args: unknown[]) => never;
62
+ export declare const readdirSync: () => string[];
63
+ export declare const statSync: () => FakeStats;
64
+ export declare const unlinkSync: (..._args: unknown[]) => never;
65
+ export declare const rmdirSync: (..._args: unknown[]) => never;
66
+ export declare const accessSync: (..._args: unknown[]) => never;
67
+ export declare const copyFileSync: (..._args: unknown[]) => never;
68
+ export declare const renameSync: (..._args: unknown[]) => never;
69
+ export declare const lstatSync: () => FakeStats;
70
+ export declare const realpathSync: (..._args: unknown[]) => never;
71
+ export declare const promises: {
72
+ readFile: (..._args: unknown[]) => Promise<never>;
73
+ writeFile: (..._args: unknown[]) => Promise<never>;
74
+ mkdir: (..._args: unknown[]) => Promise<never>;
75
+ readdir: (..._args: unknown[]) => Promise<never>;
76
+ stat: (..._args: unknown[]) => Promise<never>;
77
+ unlink: (..._args: unknown[]) => Promise<never>;
78
+ rmdir: (..._args: unknown[]) => Promise<never>;
79
+ access: (..._args: unknown[]) => Promise<never>;
80
+ copyFile: (..._args: unknown[]) => Promise<never>;
81
+ rename: (..._args: unknown[]) => Promise<never>;
82
+ lstat: (..._args: unknown[]) => Promise<never>;
83
+ realpath: (..._args: unknown[]) => Promise<never>;
84
+ chmod: (..._args: unknown[]) => Promise<never>;
85
+ chown: (..._args: unknown[]) => Promise<never>;
86
+ utimes: (..._args: unknown[]) => Promise<never>;
87
+ link: (..._args: unknown[]) => Promise<never>;
88
+ symlink: (..._args: unknown[]) => Promise<never>;
89
+ readlink: (..._args: unknown[]) => Promise<never>;
90
+ truncate: (..._args: unknown[]) => Promise<never>;
91
+ appendFile: (..._args: unknown[]) => Promise<never>;
92
+ open: (..._args: unknown[]) => Promise<never>;
93
+ rm: (..._args: unknown[]) => Promise<never>;
94
+ };
95
+ export declare const constants: {
96
+ F_OK: number;
97
+ R_OK: number;
98
+ W_OK: number;
99
+ X_OK: number;
100
+ COPYFILE_EXCL: number;
101
+ COPYFILE_FICLONE: number;
102
+ COPYFILE_FICLONE_FORCE: number;
103
+ O_RDONLY: number;
104
+ O_WRONLY: number;
105
+ O_RDWR: number;
106
+ O_CREAT: number;
107
+ O_EXCL: number;
108
+ O_TRUNC: number;
109
+ O_APPEND: number;
110
+ O_DIRECTORY: number;
111
+ O_NOFOLLOW: number;
112
+ O_SYNC: number;
113
+ O_DSYNC: number;
114
+ O_SYMLINK: number;
115
+ O_NONBLOCK: number;
116
+ };
117
+ declare const _default: {
118
+ readFile: (..._args: unknown[]) => Promise<never>;
119
+ writeFile: (..._args: unknown[]) => Promise<never>;
120
+ mkdir: (..._args: unknown[]) => Promise<never>;
121
+ readdir: (..._args: unknown[]) => Promise<never>;
122
+ stat: (..._args: unknown[]) => Promise<never>;
123
+ unlink: (..._args: unknown[]) => Promise<never>;
124
+ rmdir: (..._args: unknown[]) => Promise<never>;
125
+ access: (..._args: unknown[]) => Promise<never>;
126
+ copyFile: (..._args: unknown[]) => Promise<never>;
127
+ rename: (..._args: unknown[]) => Promise<never>;
128
+ readFileSync: (..._args: unknown[]) => never;
129
+ writeFileSync: (..._args: unknown[]) => never;
130
+ existsSync: () => boolean;
131
+ mkdirSync: (..._args: unknown[]) => never;
132
+ readdirSync: () => string[];
133
+ statSync: () => FakeStats;
134
+ unlinkSync: (..._args: unknown[]) => never;
135
+ rmdirSync: (..._args: unknown[]) => never;
136
+ accessSync: (..._args: unknown[]) => never;
137
+ copyFileSync: (..._args: unknown[]) => never;
138
+ renameSync: (..._args: unknown[]) => never;
139
+ lstatSync: () => FakeStats;
140
+ realpathSync: (..._args: unknown[]) => never;
141
+ lstat: (..._args: unknown[]) => Promise<never>;
142
+ promises: {
143
+ readFile: (..._args: unknown[]) => Promise<never>;
144
+ writeFile: (..._args: unknown[]) => Promise<never>;
145
+ mkdir: (..._args: unknown[]) => Promise<never>;
146
+ readdir: (..._args: unknown[]) => Promise<never>;
147
+ stat: (..._args: unknown[]) => Promise<never>;
148
+ unlink: (..._args: unknown[]) => Promise<never>;
149
+ rmdir: (..._args: unknown[]) => Promise<never>;
150
+ access: (..._args: unknown[]) => Promise<never>;
151
+ copyFile: (..._args: unknown[]) => Promise<never>;
152
+ rename: (..._args: unknown[]) => Promise<never>;
153
+ lstat: (..._args: unknown[]) => Promise<never>;
154
+ realpath: (..._args: unknown[]) => Promise<never>;
155
+ chmod: (..._args: unknown[]) => Promise<never>;
156
+ chown: (..._args: unknown[]) => Promise<never>;
157
+ utimes: (..._args: unknown[]) => Promise<never>;
158
+ link: (..._args: unknown[]) => Promise<never>;
159
+ symlink: (..._args: unknown[]) => Promise<never>;
160
+ readlink: (..._args: unknown[]) => Promise<never>;
161
+ truncate: (..._args: unknown[]) => Promise<never>;
162
+ appendFile: (..._args: unknown[]) => Promise<never>;
163
+ open: (..._args: unknown[]) => Promise<never>;
164
+ rm: (..._args: unknown[]) => Promise<never>;
165
+ };
166
+ constants: {
167
+ F_OK: number;
168
+ R_OK: number;
169
+ W_OK: number;
170
+ X_OK: number;
171
+ COPYFILE_EXCL: number;
172
+ COPYFILE_FICLONE: number;
173
+ COPYFILE_FICLONE_FORCE: number;
174
+ O_RDONLY: number;
175
+ O_WRONLY: number;
176
+ O_RDWR: number;
177
+ O_CREAT: number;
178
+ O_EXCL: number;
179
+ O_TRUNC: number;
180
+ O_APPEND: number;
181
+ O_DIRECTORY: number;
182
+ O_NOFOLLOW: number;
183
+ O_SYNC: number;
184
+ O_DSYNC: number;
185
+ O_SYMLINK: number;
186
+ O_NONBLOCK: number;
187
+ };
188
+ Stats: typeof FakeStats;
189
+ };
190
+ export default _default;
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ /**
3
+ * Browser shim for Node.js 'fs' module.
4
+ * Provides stub implementations that throw helpful errors.
5
+ *
6
+ * This module is used for both 'fs' and 'fs/promises' imports.
7
+ * All functions return promises since that's what the browser code expects.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.constants = exports.promises = exports.realpathSync = exports.lstatSync = exports.renameSync = exports.copyFileSync = exports.accessSync = exports.rmdirSync = exports.unlinkSync = exports.statSync = exports.readdirSync = exports.mkdirSync = exports.existsSync = exports.writeFileSync = exports.readFileSync = exports.rm = exports.open = exports.appendFile = exports.truncate = exports.readlink = exports.symlink = exports.link = exports.utimes = exports.chown = exports.chmod = exports.realpath = exports.lstat = exports.rename = exports.copyFile = exports.access = exports.rmdir = exports.unlink = exports.stat = exports.readdir = exports.mkdir = exports.writeFile = exports.readFile = exports.Stats = void 0;
11
+ const notSupportedAsync = (name) => {
12
+ return (..._args) => {
13
+ return Promise.reject(new Error(`fs.${name} is not supported in browser environment`));
14
+ };
15
+ };
16
+ // For sync functions that might be called
17
+ const notSupportedSync = (name) => {
18
+ return (..._args) => {
19
+ throw new Error(`fs.${name} is not supported in browser environment`);
20
+ };
21
+ };
22
+ // Fake Stats object for statSync/lstatSync - returns false for all checks
23
+ class FakeStats {
24
+ dev = 0;
25
+ ino = 0;
26
+ mode = 0;
27
+ nlink = 0;
28
+ uid = 0;
29
+ gid = 0;
30
+ rdev = 0;
31
+ size = 0;
32
+ blksize = 0;
33
+ blocks = 0;
34
+ atimeMs = 0;
35
+ mtimeMs = 0;
36
+ ctimeMs = 0;
37
+ birthtimeMs = 0;
38
+ atime = new Date(0);
39
+ mtime = new Date(0);
40
+ ctime = new Date(0);
41
+ birthtime = new Date(0);
42
+ isFile() {
43
+ return false;
44
+ }
45
+ isDirectory() {
46
+ return false;
47
+ }
48
+ isBlockDevice() {
49
+ return false;
50
+ }
51
+ isCharacterDevice() {
52
+ return false;
53
+ }
54
+ isSymbolicLink() {
55
+ return false;
56
+ }
57
+ isFIFO() {
58
+ return false;
59
+ }
60
+ isSocket() {
61
+ return false;
62
+ }
63
+ }
64
+ // Singleton fake stats instance
65
+ const fakeStats = new FakeStats();
66
+ // Export Stats class for libraries that reference fs.Stats
67
+ exports.Stats = FakeStats;
68
+ // Async function stubs (used by fs/promises imports)
69
+ exports.readFile = notSupportedAsync('readFile');
70
+ exports.writeFile = notSupportedAsync('writeFile');
71
+ exports.mkdir = notSupportedAsync('mkdir');
72
+ exports.readdir = notSupportedAsync('readdir');
73
+ exports.stat = notSupportedAsync('stat');
74
+ exports.unlink = notSupportedAsync('unlink');
75
+ exports.rmdir = notSupportedAsync('rmdir');
76
+ exports.access = notSupportedAsync('access');
77
+ exports.copyFile = notSupportedAsync('copyFile');
78
+ exports.rename = notSupportedAsync('rename');
79
+ exports.lstat = notSupportedAsync('lstat');
80
+ exports.realpath = notSupportedAsync('realpath');
81
+ exports.chmod = notSupportedAsync('chmod');
82
+ exports.chown = notSupportedAsync('chown');
83
+ exports.utimes = notSupportedAsync('utimes');
84
+ exports.link = notSupportedAsync('link');
85
+ exports.symlink = notSupportedAsync('symlink');
86
+ exports.readlink = notSupportedAsync('readlink');
87
+ exports.truncate = notSupportedAsync('truncate');
88
+ exports.appendFile = notSupportedAsync('appendFile');
89
+ exports.open = notSupportedAsync('open');
90
+ exports.rm = notSupportedAsync('rm');
91
+ // Sync function stubs (used by direct fs imports)
92
+ exports.readFileSync = notSupportedSync('readFileSync');
93
+ exports.writeFileSync = notSupportedSync('writeFileSync');
94
+ const existsSync = () => false;
95
+ exports.existsSync = existsSync;
96
+ exports.mkdirSync = notSupportedSync('mkdirSync');
97
+ const readdirSync = () => [];
98
+ exports.readdirSync = readdirSync;
99
+ // Return fake stats that say "not a file, not a directory" - used by is-directory and similar
100
+ const statSync = () => fakeStats;
101
+ exports.statSync = statSync;
102
+ exports.unlinkSync = notSupportedSync('unlinkSync');
103
+ exports.rmdirSync = notSupportedSync('rmdirSync');
104
+ exports.accessSync = notSupportedSync('accessSync');
105
+ exports.copyFileSync = notSupportedSync('copyFileSync');
106
+ exports.renameSync = notSupportedSync('renameSync');
107
+ // Return fake stats for lstatSync too
108
+ const lstatSync = () => fakeStats;
109
+ exports.lstatSync = lstatSync;
110
+ exports.realpathSync = notSupportedSync('realpathSync');
111
+ // Promises namespace (for `import { promises } from 'fs'`)
112
+ exports.promises = {
113
+ readFile: exports.readFile,
114
+ writeFile: exports.writeFile,
115
+ mkdir: exports.mkdir,
116
+ readdir: exports.readdir,
117
+ stat: exports.stat,
118
+ unlink: exports.unlink,
119
+ rmdir: exports.rmdir,
120
+ access: exports.access,
121
+ copyFile: exports.copyFile,
122
+ rename: exports.rename,
123
+ lstat: exports.lstat,
124
+ realpath: exports.realpath,
125
+ chmod: exports.chmod,
126
+ chown: exports.chown,
127
+ utimes: exports.utimes,
128
+ link: exports.link,
129
+ symlink: exports.symlink,
130
+ readlink: exports.readlink,
131
+ truncate: exports.truncate,
132
+ appendFile: exports.appendFile,
133
+ open: exports.open,
134
+ rm: exports.rm
135
+ };
136
+ // Constants
137
+ exports.constants = {
138
+ F_OK: 0,
139
+ R_OK: 4,
140
+ W_OK: 2,
141
+ X_OK: 1,
142
+ COPYFILE_EXCL: 1,
143
+ COPYFILE_FICLONE: 2,
144
+ COPYFILE_FICLONE_FORCE: 4,
145
+ O_RDONLY: 0,
146
+ O_WRONLY: 1,
147
+ O_RDWR: 2,
148
+ O_CREAT: 64,
149
+ O_EXCL: 128,
150
+ O_TRUNC: 512,
151
+ O_APPEND: 1024,
152
+ O_DIRECTORY: 65536,
153
+ O_NOFOLLOW: 131072,
154
+ O_SYNC: 1052672,
155
+ O_DSYNC: 4096,
156
+ O_SYMLINK: 2097152,
157
+ O_NONBLOCK: 2048
158
+ };
159
+ // Default export (for `import fs from 'fs'`)
160
+ exports.default = {
161
+ readFile: exports.readFile,
162
+ writeFile: exports.writeFile,
163
+ mkdir: exports.mkdir,
164
+ readdir: exports.readdir,
165
+ stat: exports.stat,
166
+ unlink: exports.unlink,
167
+ rmdir: exports.rmdir,
168
+ access: exports.access,
169
+ copyFile: exports.copyFile,
170
+ rename: exports.rename,
171
+ readFileSync: exports.readFileSync,
172
+ writeFileSync: exports.writeFileSync,
173
+ existsSync: exports.existsSync,
174
+ mkdirSync: exports.mkdirSync,
175
+ readdirSync: exports.readdirSync,
176
+ statSync: exports.statSync,
177
+ unlinkSync: exports.unlinkSync,
178
+ rmdirSync: exports.rmdirSync,
179
+ accessSync: exports.accessSync,
180
+ copyFileSync: exports.copyFileSync,
181
+ renameSync: exports.renameSync,
182
+ lstatSync: exports.lstatSync,
183
+ realpathSync: exports.realpathSync,
184
+ lstat: exports.lstat,
185
+ promises: exports.promises,
186
+ constants: exports.constants,
187
+ Stats: exports.Stats
188
+ };
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Browser shim for @apidevtools/json-schema-ref-parser.
3
+ * The original library uses Node.js file system APIs for dereferencing.
4
+ * In the browser, we provide implementations that resolve internal $ref
5
+ * references (those starting with #/) without file system access.
6
+ */
7
+ type Schema = any;
8
+ /**
9
+ * Exported dereferenceInternal for @readme/openapi-parser compatibility.
10
+ */
11
+ export declare function dereferenceInternal(schema: Schema, _options?: object): Promise<Schema>;
12
+ /**
13
+ * Browser-compatible dereference that resolves internal $ref references.
14
+ */
15
+ export declare function dereference(_basePathOrSchema: string | object, schemaOrOptions?: object, _options?: object): Promise<object>;
16
+ /**
17
+ * Browser-compatible bundle that returns the input unchanged.
18
+ */
19
+ export declare function bundle(_basePathOrSchema: string | object, schemaOrOptions?: object, _options?: object): Promise<object>;
20
+ /**
21
+ * Browser-compatible parse that returns the input unchanged.
22
+ */
23
+ export declare function parse(_basePathOrSchema: string | object, schemaOrOptions?: object, _options?: object): Promise<object>;
24
+ /**
25
+ * Browser-compatible resolve that returns the input unchanged.
26
+ */
27
+ export declare function resolve(_basePathOrSchema: string | object, schemaOrOptions?: object, _options?: object): Promise<object>;
28
+ /**
29
+ * Stub for MissingPointerError
30
+ */
31
+ export declare class MissingPointerError extends Error {
32
+ constructor(message?: string);
33
+ }
34
+ /**
35
+ * Stub for $RefParser class used by @readme/openapi-parser and @apidevtools/swagger-parser
36
+ * Must be a proper constructor function for util.inherits compatibility
37
+ */
38
+ export declare function $RefParser(this: RefParserInstance): void;
39
+ interface RefParserInstance {
40
+ schema: Schema;
41
+ $refs: {
42
+ circular: boolean;
43
+ paths: () => string[];
44
+ values: () => Record<string, Schema>;
45
+ get: (path: string) => Schema | undefined;
46
+ };
47
+ }
48
+ /**
49
+ * Get default options for json-schema-ref-parser
50
+ */
51
+ export declare function getJsonSchemaRefParserDefaultOptions(): object;
52
+ /**
53
+ * Options constructor for swagger-parser compatibility
54
+ * swagger-parser does: util.inherits(ParserOptions, $RefParserOptions)
55
+ */
56
+ interface OptionsInstance {
57
+ parse: object;
58
+ resolve: object;
59
+ dereference: object;
60
+ [key: string]: unknown;
61
+ }
62
+ export declare function Options(this: OptionsInstance, options?: object): void;
63
+ export { Options as $RefParserOptions };
64
+ /**
65
+ * Normalize arguments for parser methods (used by swagger-parser)
66
+ */
67
+ export declare function normalizeArgs(args: IArguments | unknown[]): {
68
+ path: string;
69
+ schema: Schema;
70
+ options: object;
71
+ callback?: (err: Error | null, result?: Schema) => void;
72
+ };
73
+ export default $RefParser;
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ /* eslint-disable security/detect-object-injection */
3
+ /**
4
+ * Browser shim for @apidevtools/json-schema-ref-parser.
5
+ * The original library uses Node.js file system APIs for dereferencing.
6
+ * In the browser, we provide implementations that resolve internal $ref
7
+ * references (those starting with #/) without file system access.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.normalizeArgs = exports.$RefParserOptions = exports.Options = exports.getJsonSchemaRefParserDefaultOptions = exports.$RefParser = exports.MissingPointerError = exports.resolve = exports.parse = exports.bundle = exports.dereference = exports.dereferenceInternal = void 0;
11
+ /**
12
+ * Resolve a JSON pointer (e.g., "#/components/messages/UserCreated") within a schema.
13
+ */
14
+ function resolvePointer(schema, pointer) {
15
+ if (!pointer.startsWith('#/')) {
16
+ return undefined; // External refs not supported in browser
17
+ }
18
+ const parts = pointer
19
+ .slice(2)
20
+ .split('/')
21
+ .map((p) =>
22
+ // Decode JSON pointer escape sequences
23
+ p.replace(/~1/g, '/').replace(/~0/g, '~'));
24
+ let current = schema;
25
+ for (const part of parts) {
26
+ if (current === undefined || current === null) {
27
+ return undefined;
28
+ }
29
+ current = current[part];
30
+ }
31
+ return current;
32
+ }
33
+ /**
34
+ * Deep clone and dereference all internal $ref in a schema.
35
+ */
36
+ function dereferenceInternalImpl(schema, root, visited = new Set()) {
37
+ if (schema === null || typeof schema !== 'object') {
38
+ return schema;
39
+ }
40
+ if (Array.isArray(schema)) {
41
+ return schema.map((item) => dereferenceInternalImpl(item, root, visited));
42
+ }
43
+ // Handle $ref
44
+ if (schema.$ref &&
45
+ typeof schema.$ref === 'string' &&
46
+ schema.$ref.startsWith('#/')) {
47
+ const refPath = schema.$ref;
48
+ // Prevent circular reference infinite loops
49
+ if (visited.has(refPath)) {
50
+ // Return a reference marker for circular refs
51
+ return { ...schema };
52
+ }
53
+ const resolved = resolvePointer(root, refPath);
54
+ if (resolved !== undefined) {
55
+ visited.add(refPath);
56
+ // Recursively dereference the resolved schema
57
+ const dereferenced = dereferenceInternalImpl(resolved, root, visited);
58
+ visited.delete(refPath);
59
+ return dereferenced;
60
+ }
61
+ }
62
+ // Recursively process all properties
63
+ const result = {};
64
+ for (const [key, value] of Object.entries(schema)) {
65
+ result[key] = dereferenceInternalImpl(value, root, visited);
66
+ }
67
+ return result;
68
+ }
69
+ /**
70
+ * Exported dereferenceInternal for @readme/openapi-parser compatibility.
71
+ */
72
+ async function dereferenceInternal(schema, _options) {
73
+ return dereferenceInternalImpl(schema, schema);
74
+ }
75
+ exports.dereferenceInternal = dereferenceInternal;
76
+ /**
77
+ * Browser-compatible dereference that resolves internal $ref references.
78
+ */
79
+ async function dereference(_basePathOrSchema, schemaOrOptions, _options) {
80
+ const schema = typeof _basePathOrSchema === 'object'
81
+ ? _basePathOrSchema
82
+ : schemaOrOptions ?? {};
83
+ return dereferenceInternalImpl(schema, schema);
84
+ }
85
+ exports.dereference = dereference;
86
+ /**
87
+ * Browser-compatible bundle that returns the input unchanged.
88
+ */
89
+ async function bundle(_basePathOrSchema, schemaOrOptions, _options) {
90
+ if (typeof _basePathOrSchema === 'object') {
91
+ return _basePathOrSchema;
92
+ }
93
+ return schemaOrOptions ?? {};
94
+ }
95
+ exports.bundle = bundle;
96
+ /**
97
+ * Browser-compatible parse that returns the input unchanged.
98
+ */
99
+ async function parse(_basePathOrSchema, schemaOrOptions, _options) {
100
+ if (typeof _basePathOrSchema === 'object') {
101
+ return _basePathOrSchema;
102
+ }
103
+ return schemaOrOptions ?? {};
104
+ }
105
+ exports.parse = parse;
106
+ /**
107
+ * Browser-compatible resolve that returns the input unchanged.
108
+ */
109
+ async function resolve(_basePathOrSchema, schemaOrOptions, _options) {
110
+ if (typeof _basePathOrSchema === 'object') {
111
+ return _basePathOrSchema;
112
+ }
113
+ return schemaOrOptions ?? {};
114
+ }
115
+ exports.resolve = resolve;
116
+ /**
117
+ * Stub for MissingPointerError
118
+ */
119
+ class MissingPointerError extends Error {
120
+ constructor(message) {
121
+ super(message || 'Missing pointer');
122
+ this.name = 'MissingPointerError';
123
+ }
124
+ }
125
+ exports.MissingPointerError = MissingPointerError;
126
+ /**
127
+ * Stub for $RefParser class used by @readme/openapi-parser and @apidevtools/swagger-parser
128
+ * Must be a proper constructor function for util.inherits compatibility
129
+ */
130
+ function $RefParser() {
131
+ this.schema = {};
132
+ this.$refs = {
133
+ circular: false,
134
+ paths: () => [],
135
+ values: () => ({}),
136
+ get: () => undefined
137
+ };
138
+ }
139
+ exports.$RefParser = $RefParser;
140
+ /**
141
+ * Normalise the variadic `(pathOrSchema, schemaOrOptions, options)` signature
142
+ * used by `@apidevtools/json-schema-ref-parser` (and called as
143
+ * `(path, schema, options)` by `@readme/openapi-parser`) into a single schema
144
+ * object. Mirrors the standalone `parse`/`dereference`/`bundle`/`resolve`
145
+ * exports above so the prototype methods don't drift from them.
146
+ */
147
+ function resolveSchemaFromArgs(pathOrSchema, schemaOrOptions) {
148
+ if (typeof pathOrSchema === 'object' && pathOrSchema !== null) {
149
+ return pathOrSchema;
150
+ }
151
+ if (typeof schemaOrOptions === 'object' && schemaOrOptions !== null) {
152
+ return schemaOrOptions;
153
+ }
154
+ if (typeof pathOrSchema === 'string') {
155
+ try {
156
+ return JSON.parse(pathOrSchema);
157
+ }
158
+ catch {
159
+ return {};
160
+ }
161
+ }
162
+ return {};
163
+ }
164
+ $RefParser.prototype.parse = async function (pathOrSchema, schemaOrOptions, _options) {
165
+ this.schema = resolveSchemaFromArgs(pathOrSchema, schemaOrOptions);
166
+ return this.schema;
167
+ };
168
+ $RefParser.prototype.resolve = async function (pathOrSchema, schemaOrOptions, options) {
169
+ await this.parse(pathOrSchema, schemaOrOptions, options);
170
+ return this;
171
+ };
172
+ $RefParser.prototype.bundle = async function (pathOrSchema, schemaOrOptions, options) {
173
+ await this.parse(pathOrSchema, schemaOrOptions, options);
174
+ return this.schema;
175
+ };
176
+ $RefParser.prototype.dereference = async function (pathOrSchema, schemaOrOptions, _options) {
177
+ const schema = resolveSchemaFromArgs(pathOrSchema, schemaOrOptions);
178
+ this.schema = dereferenceInternalImpl(schema, schema);
179
+ return this.schema;
180
+ };
181
+ /**
182
+ * Get default options for json-schema-ref-parser
183
+ */
184
+ function getJsonSchemaRefParserDefaultOptions() {
185
+ return {
186
+ parse: {
187
+ json: { order: 100 },
188
+ yaml: { order: 200 },
189
+ text: { order: 300 },
190
+ binary: { order: 400 }
191
+ },
192
+ resolve: {
193
+ file: { order: 100 },
194
+ http: { order: 200 },
195
+ external: true
196
+ },
197
+ dereference: {
198
+ circular: true,
199
+ excludedPathMatcher: () => false
200
+ },
201
+ continueOnError: false
202
+ };
203
+ }
204
+ exports.getJsonSchemaRefParserDefaultOptions = getJsonSchemaRefParserDefaultOptions;
205
+ function Options(options) {
206
+ const defaults = getJsonSchemaRefParserDefaultOptions();
207
+ Object.assign(this, defaults);
208
+ if (options) {
209
+ Object.assign(this, options);
210
+ }
211
+ }
212
+ exports.Options = Options;
213
+ exports.$RefParserOptions = Options;
214
+ Options.prototype = {};
215
+ /**
216
+ * Normalize arguments for parser methods (used by swagger-parser)
217
+ */
218
+ function normalizeArgs(args) {
219
+ const argsArray = Array.from(args);
220
+ let path = '';
221
+ let schema = {};
222
+ let options = {};
223
+ let callback;
224
+ // Parse arguments based on type
225
+ for (const arg of argsArray) {
226
+ if (typeof arg === 'string') {
227
+ path = arg;
228
+ }
229
+ else if (typeof arg === 'function') {
230
+ callback = arg;
231
+ }
232
+ else if (typeof arg === 'object' && arg !== null) {
233
+ if (!schema || Object.keys(schema).length === 0) {
234
+ schema = arg;
235
+ }
236
+ else {
237
+ options = arg;
238
+ }
239
+ }
240
+ }
241
+ return { path, schema, options, callback };
242
+ }
243
+ exports.normalizeArgs = normalizeArgs;
244
+ // Default export - must be the $RefParser constructor for CommonJS compatibility
245
+ // swagger-parser does: const $RefParser = require('@apidevtools/json-schema-ref-parser')
246
+ exports.default = $RefParser;