@hasna/connectors 1.3.33 → 1.3.35

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 (673) hide show
  1. package/bin/index.js +1119 -268
  2. package/bin/mcp.js +378 -201
  3. package/bin/serve.js +452 -275
  4. package/dashboard/dist/assets/index-DJjxFlTl.css +1 -0
  5. package/dashboard/dist/assets/index-DNPZ58_i.js +284 -0
  6. package/dashboard/dist/index.html +2 -2
  7. package/dist/cli/components/App.d.ts +2 -1
  8. package/dist/cli/components/CategorySelect.d.ts +2 -1
  9. package/dist/cli/components/ConnectorSelect.d.ts +2 -1
  10. package/dist/cli/components/Header.d.ts +2 -1
  11. package/dist/cli/components/InstallProgress.d.ts +2 -1
  12. package/dist/cli/components/SearchView.d.ts +2 -1
  13. package/dist/index.js +109 -110
  14. package/package.json +3 -2
  15. package/connectors/connect-github/bin/index.js +0 -3518
  16. package/connectors/connect-github/dist/index.js +0 -520
  17. package/connectors/connect-yousign/bun.lock +0 -32
  18. package/connectors/connect-yousign/node_modules/@types/bun/LICENSE +0 -21
  19. package/connectors/connect-yousign/node_modules/@types/bun/README.md +0 -20
  20. package/connectors/connect-yousign/node_modules/@types/bun/index.d.ts +0 -1
  21. package/connectors/connect-yousign/node_modules/@types/bun/package.json +0 -53
  22. package/connectors/connect-yousign/node_modules/@types/node/LICENSE +0 -21
  23. package/connectors/connect-yousign/node_modules/@types/node/README.md +0 -15
  24. package/connectors/connect-yousign/node_modules/@types/node/assert/strict.d.ts +0 -105
  25. package/connectors/connect-yousign/node_modules/@types/node/assert.d.ts +0 -955
  26. package/connectors/connect-yousign/node_modules/@types/node/async_hooks.d.ts +0 -623
  27. package/connectors/connect-yousign/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  28. package/connectors/connect-yousign/node_modules/@types/node/buffer.d.ts +0 -1810
  29. package/connectors/connect-yousign/node_modules/@types/node/child_process.d.ts +0 -1433
  30. package/connectors/connect-yousign/node_modules/@types/node/cluster.d.ts +0 -486
  31. package/connectors/connect-yousign/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  32. package/connectors/connect-yousign/node_modules/@types/node/console.d.ts +0 -151
  33. package/connectors/connect-yousign/node_modules/@types/node/constants.d.ts +0 -20
  34. package/connectors/connect-yousign/node_modules/@types/node/crypto.d.ts +0 -4065
  35. package/connectors/connect-yousign/node_modules/@types/node/dgram.d.ts +0 -564
  36. package/connectors/connect-yousign/node_modules/@types/node/diagnostics_channel.d.ts +0 -576
  37. package/connectors/connect-yousign/node_modules/@types/node/dns/promises.d.ts +0 -503
  38. package/connectors/connect-yousign/node_modules/@types/node/dns.d.ts +0 -922
  39. package/connectors/connect-yousign/node_modules/@types/node/domain.d.ts +0 -166
  40. package/connectors/connect-yousign/node_modules/@types/node/events.d.ts +0 -1047
  41. package/connectors/connect-yousign/node_modules/@types/node/fs/promises.d.ts +0 -1329
  42. package/connectors/connect-yousign/node_modules/@types/node/fs.d.ts +0 -4678
  43. package/connectors/connect-yousign/node_modules/@types/node/globals.d.ts +0 -150
  44. package/connectors/connect-yousign/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  45. package/connectors/connect-yousign/node_modules/@types/node/http.d.ts +0 -2188
  46. package/connectors/connect-yousign/node_modules/@types/node/http2.d.ts +0 -2480
  47. package/connectors/connect-yousign/node_modules/@types/node/https.d.ts +0 -405
  48. package/connectors/connect-yousign/node_modules/@types/node/index.d.ts +0 -115
  49. package/connectors/connect-yousign/node_modules/@types/node/inspector/promises.d.ts +0 -41
  50. package/connectors/connect-yousign/node_modules/@types/node/inspector.d.ts +0 -269
  51. package/connectors/connect-yousign/node_modules/@types/node/inspector.generated.d.ts +0 -4401
  52. package/connectors/connect-yousign/node_modules/@types/node/module.d.ts +0 -757
  53. package/connectors/connect-yousign/node_modules/@types/node/net.d.ts +0 -933
  54. package/connectors/connect-yousign/node_modules/@types/node/os.d.ts +0 -507
  55. package/connectors/connect-yousign/node_modules/@types/node/package.json +0 -155
  56. package/connectors/connect-yousign/node_modules/@types/node/path/posix.d.ts +0 -8
  57. package/connectors/connect-yousign/node_modules/@types/node/path/win32.d.ts +0 -8
  58. package/connectors/connect-yousign/node_modules/@types/node/path.d.ts +0 -187
  59. package/connectors/connect-yousign/node_modules/@types/node/perf_hooks.d.ts +0 -643
  60. package/connectors/connect-yousign/node_modules/@types/node/process.d.ts +0 -2175
  61. package/connectors/connect-yousign/node_modules/@types/node/punycode.d.ts +0 -117
  62. package/connectors/connect-yousign/node_modules/@types/node/querystring.d.ts +0 -152
  63. package/connectors/connect-yousign/node_modules/@types/node/quic.d.ts +0 -910
  64. package/connectors/connect-yousign/node_modules/@types/node/readline/promises.d.ts +0 -161
  65. package/connectors/connect-yousign/node_modules/@types/node/readline.d.ts +0 -542
  66. package/connectors/connect-yousign/node_modules/@types/node/repl.d.ts +0 -415
  67. package/connectors/connect-yousign/node_modules/@types/node/sea.d.ts +0 -162
  68. package/connectors/connect-yousign/node_modules/@types/node/sqlite.d.ts +0 -1065
  69. package/connectors/connect-yousign/node_modules/@types/node/stream/consumers.d.ts +0 -38
  70. package/connectors/connect-yousign/node_modules/@types/node/stream/promises.d.ts +0 -211
  71. package/connectors/connect-yousign/node_modules/@types/node/stream/web.d.ts +0 -296
  72. package/connectors/connect-yousign/node_modules/@types/node/stream.d.ts +0 -1770
  73. package/connectors/connect-yousign/node_modules/@types/node/string_decoder.d.ts +0 -67
  74. package/connectors/connect-yousign/node_modules/@types/node/test/reporters.d.ts +0 -96
  75. package/connectors/connect-yousign/node_modules/@types/node/test.d.ts +0 -2275
  76. package/connectors/connect-yousign/node_modules/@types/node/timers/promises.d.ts +0 -108
  77. package/connectors/connect-yousign/node_modules/@types/node/timers.d.ts +0 -159
  78. package/connectors/connect-yousign/node_modules/@types/node/tls.d.ts +0 -1203
  79. package/connectors/connect-yousign/node_modules/@types/node/trace_events.d.ts +0 -197
  80. package/connectors/connect-yousign/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  81. package/connectors/connect-yousign/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  82. package/connectors/connect-yousign/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  83. package/connectors/connect-yousign/node_modules/@types/node/ts5.6/index.d.ts +0 -117
  84. package/connectors/connect-yousign/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  85. package/connectors/connect-yousign/node_modules/@types/node/ts5.7/index.d.ts +0 -117
  86. package/connectors/connect-yousign/node_modules/@types/node/tty.d.ts +0 -250
  87. package/connectors/connect-yousign/node_modules/@types/node/url.d.ts +0 -541
  88. package/connectors/connect-yousign/node_modules/@types/node/util/types.d.ts +0 -558
  89. package/connectors/connect-yousign/node_modules/@types/node/util.d.ts +0 -1687
  90. package/connectors/connect-yousign/node_modules/@types/node/v8.d.ts +0 -988
  91. package/connectors/connect-yousign/node_modules/@types/node/vm.d.ts +0 -1208
  92. package/connectors/connect-yousign/node_modules/@types/node/wasi.d.ts +0 -202
  93. package/connectors/connect-yousign/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  94. package/connectors/connect-yousign/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  95. package/connectors/connect-yousign/node_modules/@types/node/web-globals/console.d.ts +0 -9
  96. package/connectors/connect-yousign/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  97. package/connectors/connect-yousign/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  98. package/connectors/connect-yousign/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  99. package/connectors/connect-yousign/node_modules/@types/node/web-globals/events.d.ts +0 -106
  100. package/connectors/connect-yousign/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  101. package/connectors/connect-yousign/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  102. package/connectors/connect-yousign/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  103. package/connectors/connect-yousign/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  104. package/connectors/connect-yousign/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  105. package/connectors/connect-yousign/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  106. package/connectors/connect-yousign/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  107. package/connectors/connect-yousign/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  108. package/connectors/connect-yousign/node_modules/@types/node/web-globals/url.d.ts +0 -24
  109. package/connectors/connect-yousign/node_modules/@types/node/worker_threads.d.ts +0 -717
  110. package/connectors/connect-yousign/node_modules/@types/node/zlib.d.ts +0 -682
  111. package/connectors/connect-yousign/node_modules/bun-types/CLAUDE.md +0 -105
  112. package/connectors/connect-yousign/node_modules/bun-types/README.md +0 -33
  113. package/connectors/connect-yousign/node_modules/bun-types/bun.d.ts +0 -8481
  114. package/connectors/connect-yousign/node_modules/bun-types/bun.ns.d.ts +0 -5
  115. package/connectors/connect-yousign/node_modules/bun-types/bundle.d.ts +0 -74
  116. package/connectors/connect-yousign/node_modules/bun-types/deprecated.d.ts +0 -184
  117. package/connectors/connect-yousign/node_modules/bun-types/devserver.d.ts +0 -187
  118. package/connectors/connect-yousign/node_modules/bun-types/docs/README.md +0 -28
  119. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/bytecode.mdx +0 -447
  120. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/css.mdx +0 -1024
  121. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/esbuild.mdx +0 -304
  122. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/executables.mdx +0 -1318
  123. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/fullstack.mdx +0 -1086
  124. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/hot-reloading.mdx +0 -229
  125. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/html-static.mdx +0 -498
  126. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/index.mdx +0 -1840
  127. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/loaders.mdx +0 -451
  128. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/macros.mdx +0 -328
  129. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/minifier.mdx +0 -1286
  130. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/plugins.mdx +0 -477
  131. package/connectors/connect-yousign/node_modules/bun-types/docs/bundler/standalone-html.mdx +0 -314
  132. package/connectors/connect-yousign/node_modules/bun-types/docs/feedback.mdx +0 -75
  133. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/arraybuffer-to-array.mdx +0 -29
  134. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/arraybuffer-to-blob.mdx +0 -26
  135. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/arraybuffer-to-buffer.mdx +0 -27
  136. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/arraybuffer-to-string.mdx +0 -17
  137. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/arraybuffer-to-typedarray.mdx +0 -41
  138. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/blob-to-arraybuffer.mdx +0 -16
  139. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/blob-to-dataview.mdx +0 -16
  140. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/blob-to-stream.mdx +0 -16
  141. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/blob-to-string.mdx +0 -17
  142. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/blob-to-typedarray.mdx +0 -16
  143. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/buffer-to-arraybuffer.mdx +0 -16
  144. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/buffer-to-blob.mdx +0 -16
  145. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/buffer-to-readablestream.mdx +0 -43
  146. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/buffer-to-string.mdx +0 -27
  147. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/buffer-to-typedarray.mdx +0 -16
  148. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/dataview-to-string.mdx +0 -17
  149. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-arraybuffer.mdx +0 -27
  150. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-blob.mdx +0 -18
  151. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-buffer.mdx +0 -16
  152. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-dataview.mdx +0 -16
  153. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-readablestream.mdx +0 -43
  154. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/binary/typedarray-to-string.mdx +0 -18
  155. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/aws-lambda.mdx +0 -204
  156. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/digital-ocean.mdx +0 -161
  157. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/google-cloud-run.mdx +0 -194
  158. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/railway.mdx +0 -145
  159. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/render.mdx +0 -82
  160. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/deployment/vercel.mdx +0 -97
  161. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/astro.mdx +0 -82
  162. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/discordjs.mdx +0 -80
  163. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/docker.mdx +0 -151
  164. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/drizzle.mdx +0 -195
  165. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/elysia.mdx +0 -31
  166. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/express.mdx +0 -43
  167. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/gel.mdx +0 -261
  168. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/hono.mdx +0 -47
  169. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/mongoose.mdx +0 -92
  170. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/neon-drizzle.mdx +0 -234
  171. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/neon-serverless-postgres.mdx +0 -60
  172. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/nextjs.mdx +0 -103
  173. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/nuxt.mdx +0 -96
  174. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/pm2.mdx +0 -55
  175. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/prisma-postgres.mdx +0 -169
  176. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/prisma.mdx +0 -164
  177. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/qwik.mdx +0 -114
  178. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/react.mdx +0 -52
  179. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/remix.mdx +0 -97
  180. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/sentry.mdx +0 -54
  181. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/solidstart.mdx +0 -62
  182. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/ssr-react.mdx +0 -49
  183. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/stric.mdx +0 -54
  184. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/sveltekit.mdx +0 -138
  185. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/systemd.mdx +0 -114
  186. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/tanstack-start.mdx +0 -791
  187. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/upstash.mdx +0 -87
  188. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/ecosystem/vite.mdx +0 -77
  189. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/html-rewriter/extract-links.mdx +0 -71
  190. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/html-rewriter/extract-social-meta.mdx +0 -97
  191. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/cluster.mdx +0 -69
  192. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/fetch-unix.mdx +0 -35
  193. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/fetch.mdx +0 -26
  194. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/file-uploads.mdx +0 -97
  195. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/hot.mdx +0 -28
  196. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/proxy.mdx +0 -50
  197. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/server.mdx +0 -48
  198. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/simple.mdx +0 -20
  199. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/stream-file.mdx +0 -50
  200. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/stream-iterator.mdx +0 -49
  201. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/stream-node-streams-in-bun.mdx +0 -22
  202. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/http/tls.mdx +0 -32
  203. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/index.mdx +0 -10
  204. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add-dev.mdx +0 -28
  205. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add-git.mdx +0 -40
  206. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add-optional.mdx +0 -27
  207. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add-peer.mdx +0 -45
  208. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add-tarball.mdx +0 -35
  209. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/add.mdx +0 -44
  210. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/azure-artifacts.mdx +0 -76
  211. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/cicd.mdx +0 -43
  212. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/custom-registry.mdx +0 -32
  213. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/from-npm-install-to-bun-install.mdx +0 -230
  214. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/git-diff-bun-lockfile.mdx +0 -48
  215. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/jfrog-artifactory.mdx +0 -28
  216. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/npm-alias.mdx +0 -25
  217. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/registry-scope.mdx +0 -40
  218. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/trusted.mdx +0 -52
  219. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/workspaces.mdx +0 -70
  220. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/install/yarnlock.mdx +0 -51
  221. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/argv.mdx +0 -66
  222. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/ctrl-c.mdx +0 -18
  223. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/ipc.mdx +0 -69
  224. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/nanoseconds.mdx +0 -15
  225. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/os-signals.mdx +0 -31
  226. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/spawn-stderr.mdx +0 -34
  227. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/spawn-stdout.mdx +0 -28
  228. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/spawn.mdx +0 -43
  229. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/process/stdin.mdx +0 -62
  230. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/arraybuffer.mdx +0 -30
  231. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/buffer.mdx +0 -21
  232. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/exists.mdx +0 -18
  233. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/json.mdx +0 -19
  234. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/mime.mdx +0 -22
  235. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/stream.mdx +0 -28
  236. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/string.mdx +0 -24
  237. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/uint8array.mdx +0 -23
  238. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/read-file/watch.mdx +0 -66
  239. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/build-time-constants.mdx +0 -295
  240. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/cicd.mdx +0 -45
  241. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/codesign-macos-executable.mdx +0 -61
  242. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/define-constant.mdx +0 -149
  243. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/delete-directory.mdx +0 -39
  244. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/delete-file.mdx +0 -21
  245. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/heap-snapshot.mdx +0 -28
  246. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/import-html.mdx +0 -15
  247. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/import-json.mdx +0 -46
  248. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/import-json5.mdx +0 -74
  249. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/import-toml.mdx +0 -32
  250. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/import-yaml.mdx +0 -104
  251. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/read-env.mdx +0 -37
  252. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/set-env.mdx +0 -51
  253. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/shell.mdx +0 -42
  254. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/timezone.mdx +0 -38
  255. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/tsconfig-paths.mdx +0 -31
  256. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/typescript.mdx +0 -51
  257. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/vscode-debugger.mdx +0 -47
  258. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/runtime/web-debugger.mdx +0 -103
  259. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/node-readable-to-arraybuffer.mdx +0 -13
  260. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/node-readable-to-blob.mdx +0 -13
  261. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/node-readable-to-json.mdx +0 -14
  262. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/node-readable-to-string.mdx +0 -14
  263. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/node-readable-to-uint8array.mdx +0 -13
  264. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-array.mdx +0 -16
  265. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-arraybuffer.mdx +0 -16
  266. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-blob.mdx +0 -16
  267. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-buffer.mdx +0 -17
  268. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-json.mdx +0 -16
  269. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-string.mdx +0 -16
  270. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/streams/to-typedarray.mdx +0 -24
  271. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/bail.mdx +0 -24
  272. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/concurrent-test-glob.mdx +0 -146
  273. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/coverage-threshold.mdx +0 -67
  274. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/coverage.mdx +0 -49
  275. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/happy-dom.mdx +0 -73
  276. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/migrate-from-jest.mdx +0 -125
  277. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/mock-clock.mdx +0 -50
  278. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/mock-functions.mdx +0 -70
  279. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/rerun-each.mdx +0 -16
  280. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/run-tests.mdx +0 -116
  281. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/skip-tests.mdx +0 -43
  282. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/snapshot.mdx +0 -102
  283. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/spy-on.mdx +0 -49
  284. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/svelte-test.mdx +0 -113
  285. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/testing-library.mdx +0 -93
  286. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/timeout.mdx +0 -17
  287. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/todo-tests.mdx +0 -74
  288. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/update-snapshots.mdx +0 -49
  289. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/test/watch-mode.mdx +0 -24
  290. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/base64.mdx +0 -17
  291. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/deep-equals.mdx +0 -41
  292. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/deflate.mdx +0 -20
  293. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/detect-bun.mdx +0 -28
  294. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/entrypoint.mdx +0 -19
  295. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/escape-html.mdx +0 -24
  296. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/file-url-to-path.mdx +0 -16
  297. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/gzip.mdx +0 -20
  298. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/hash-a-password.mdx +0 -56
  299. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/import-meta-dir.mdx +0 -15
  300. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/import-meta-file.mdx +0 -15
  301. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/import-meta-path.mdx +0 -15
  302. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/javascript-uuid.mdx +0 -25
  303. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/main.mdx +0 -43
  304. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/path-to-file-url.mdx +0 -16
  305. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/sleep.mdx +0 -24
  306. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/upgrade.mdx +0 -93
  307. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/version.mdx +0 -23
  308. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/util/which-path-to-executable-bin.mdx +0 -17
  309. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/websocket/compression.mdx +0 -33
  310. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/websocket/context.mdx +0 -79
  311. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/websocket/pubsub.mdx +0 -43
  312. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/websocket/simple.mdx +0 -38
  313. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/append.mdx +0 -54
  314. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/basic.mdx +0 -46
  315. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/blob.mdx +0 -30
  316. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/cat.mdx +0 -19
  317. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/file-cp.mdx +0 -18
  318. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/filesink.mdx +0 -54
  319. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/response.mdx +0 -19
  320. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/stdout.mdx +0 -23
  321. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/stream.mdx +0 -19
  322. package/connectors/connect-yousign/node_modules/bun-types/docs/guides/write-file/unlink.mdx +0 -18
  323. package/connectors/connect-yousign/node_modules/bun-types/docs/index.mdx +0 -133
  324. package/connectors/connect-yousign/node_modules/bun-types/docs/installation.mdx +0 -372
  325. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/bunx.mdx +0 -91
  326. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/catalogs.mdx +0 -292
  327. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/add.mdx +0 -179
  328. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/audit.mdx +0 -60
  329. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/info.mdx +0 -70
  330. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/install.mdx +0 -591
  331. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/link.mdx +0 -61
  332. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/outdated.mdx +0 -197
  333. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/patch.mdx +0 -69
  334. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/pm.mdx +0 -323
  335. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/publish.mdx +0 -131
  336. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/remove.mdx +0 -16
  337. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/update.mdx +0 -140
  338. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/cli/why.mdx +0 -84
  339. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/filter.mdx +0 -127
  340. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/global-cache.mdx +0 -72
  341. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/isolated-installs.mdx +0 -220
  342. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/lifecycle.mdx +0 -64
  343. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/lockfile.mdx +0 -64
  344. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/npmrc.mdx +0 -245
  345. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/overrides.mdx +0 -83
  346. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/scopes-registries.mdx +0 -35
  347. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/security-scanner-api.mdx +0 -95
  348. package/connectors/connect-yousign/node_modules/bun-types/docs/pm/workspaces.mdx +0 -115
  349. package/connectors/connect-yousign/node_modules/bun-types/docs/project/benchmarking.mdx +0 -296
  350. package/connectors/connect-yousign/node_modules/bun-types/docs/project/bindgen.mdx +0 -223
  351. package/connectors/connect-yousign/node_modules/bun-types/docs/project/building-windows.mdx +0 -143
  352. package/connectors/connect-yousign/node_modules/bun-types/docs/project/contributing.mdx +0 -366
  353. package/connectors/connect-yousign/node_modules/bun-types/docs/project/feedback.mdx +0 -20
  354. package/connectors/connect-yousign/node_modules/bun-types/docs/project/license.mdx +0 -78
  355. package/connectors/connect-yousign/node_modules/bun-types/docs/project/roadmap.mdx +0 -8
  356. package/connectors/connect-yousign/node_modules/bun-types/docs/quickstart.mdx +0 -251
  357. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/archive.mdx +0 -452
  358. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/auto-install.mdx +0 -97
  359. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/binary-data.mdx +0 -846
  360. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/bun-apis.mdx +0 -59
  361. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/bunfig.mdx +0 -754
  362. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/c-compiler.mdx +0 -204
  363. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/child-process.mdx +0 -659
  364. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/color.mdx +0 -267
  365. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/console.mdx +0 -67
  366. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/cookies.mdx +0 -454
  367. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/debugger.mdx +0 -335
  368. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/environment-variables.mdx +0 -231
  369. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/ffi.mdx +0 -567
  370. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/file-io.mdx +0 -306
  371. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/file-system-router.mdx +0 -118
  372. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/file-types.mdx +0 -482
  373. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/glob.mdx +0 -181
  374. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/globals.mdx +0 -72
  375. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/hashing.mdx +0 -315
  376. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/html-rewriter.mdx +0 -333
  377. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/cookies.mdx +0 -79
  378. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/error-handling.mdx +0 -40
  379. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/metrics.mdx +0 -36
  380. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/routing.mdx +0 -289
  381. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/server.mdx +0 -645
  382. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/tls.mdx +0 -101
  383. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/http/websockets.mdx +0 -414
  384. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/index.mdx +0 -223
  385. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/json5.mdx +0 -271
  386. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/jsonl.mdx +0 -188
  387. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/jsx.mdx +0 -115
  388. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/markdown.mdx +0 -344
  389. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/module-resolution.mdx +0 -374
  390. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/networking/dns.mdx +0 -111
  391. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/networking/fetch.mdx +0 -484
  392. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/networking/tcp.mdx +0 -239
  393. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/networking/udp.mdx +0 -180
  394. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/node-api.mdx +0 -19
  395. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/nodejs-compat.mdx +0 -468
  396. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/plugins.mdx +0 -419
  397. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/redis.mdx +0 -583
  398. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/repl.mdx +0 -176
  399. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/s3.mdx +0 -881
  400. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/secrets.mdx +0 -340
  401. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/semver.mdx +0 -57
  402. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/shell.mdx +0 -637
  403. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/sql.mdx +0 -1404
  404. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/sqlite.mdx +0 -721
  405. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/streams.mdx +0 -232
  406. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/templating/create.mdx +0 -269
  407. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/templating/init.mdx +0 -58
  408. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/transpiler.mdx +0 -288
  409. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/typescript.mdx +0 -58
  410. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/utils.mdx +0 -1010
  411. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/watch-mode.mdx +0 -161
  412. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/web-apis.mdx +0 -29
  413. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/workers.mdx +0 -314
  414. package/connectors/connect-yousign/node_modules/bun-types/docs/runtime/yaml.mdx +0 -469
  415. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/add.mdx +0 -166
  416. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/build.mdx +0 -197
  417. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/bunx.mdx +0 -49
  418. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/feedback.mdx +0 -17
  419. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/init.mdx +0 -84
  420. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/install.mdx +0 -173
  421. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/link.mdx +0 -163
  422. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/outdated.mdx +0 -140
  423. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/patch.mdx +0 -171
  424. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/publish.mdx +0 -198
  425. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/remove.mdx +0 -146
  426. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/run.mdx +0 -305
  427. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/test.mdx +0 -105
  428. package/connectors/connect-yousign/node_modules/bun-types/docs/snippets/cli/update.mdx +0 -144
  429. package/connectors/connect-yousign/node_modules/bun-types/docs/test/code-coverage.mdx +0 -409
  430. package/connectors/connect-yousign/node_modules/bun-types/docs/test/configuration.mdx +0 -520
  431. package/connectors/connect-yousign/node_modules/bun-types/docs/test/dates-times.mdx +0 -129
  432. package/connectors/connect-yousign/node_modules/bun-types/docs/test/discovery.mdx +0 -90
  433. package/connectors/connect-yousign/node_modules/bun-types/docs/test/dom.mdx +0 -226
  434. package/connectors/connect-yousign/node_modules/bun-types/docs/test/index.mdx +0 -409
  435. package/connectors/connect-yousign/node_modules/bun-types/docs/test/lifecycle.mdx +0 -366
  436. package/connectors/connect-yousign/node_modules/bun-types/docs/test/mocks.mdx +0 -637
  437. package/connectors/connect-yousign/node_modules/bun-types/docs/test/reporters.mdx +0 -126
  438. package/connectors/connect-yousign/node_modules/bun-types/docs/test/runtime-behavior.mdx +0 -342
  439. package/connectors/connect-yousign/node_modules/bun-types/docs/test/snapshots.mdx +0 -434
  440. package/connectors/connect-yousign/node_modules/bun-types/docs/test/writing-tests.mdx +0 -672
  441. package/connectors/connect-yousign/node_modules/bun-types/docs/typescript.mdx +0 -54
  442. package/connectors/connect-yousign/node_modules/bun-types/extensions.d.ts +0 -40
  443. package/connectors/connect-yousign/node_modules/bun-types/fetch.d.ts +0 -79
  444. package/connectors/connect-yousign/node_modules/bun-types/ffi.d.ts +0 -1154
  445. package/connectors/connect-yousign/node_modules/bun-types/globals.d.ts +0 -2067
  446. package/connectors/connect-yousign/node_modules/bun-types/html-rewriter.d.ts +0 -186
  447. package/connectors/connect-yousign/node_modules/bun-types/index.d.ts +0 -32
  448. package/connectors/connect-yousign/node_modules/bun-types/jsc.d.ts +0 -233
  449. package/connectors/connect-yousign/node_modules/bun-types/jsx.d.ts +0 -11
  450. package/connectors/connect-yousign/node_modules/bun-types/overrides.d.ts +0 -376
  451. package/connectors/connect-yousign/node_modules/bun-types/package.json +0 -37
  452. package/connectors/connect-yousign/node_modules/bun-types/redis.d.ts +0 -3352
  453. package/connectors/connect-yousign/node_modules/bun-types/s3.d.ts +0 -1335
  454. package/connectors/connect-yousign/node_modules/bun-types/security.d.ts +0 -101
  455. package/connectors/connect-yousign/node_modules/bun-types/serve.d.ts +0 -1296
  456. package/connectors/connect-yousign/node_modules/bun-types/shell.d.ts +0 -380
  457. package/connectors/connect-yousign/node_modules/bun-types/sql.d.ts +0 -887
  458. package/connectors/connect-yousign/node_modules/bun-types/sqlite.d.ts +0 -1322
  459. package/connectors/connect-yousign/node_modules/bun-types/test-globals.d.ts +0 -22
  460. package/connectors/connect-yousign/node_modules/bun-types/test.d.ts +0 -2392
  461. package/connectors/connect-yousign/node_modules/bun-types/vendor/expect-type/branding.d.ts +0 -283
  462. package/connectors/connect-yousign/node_modules/bun-types/vendor/expect-type/index.d.ts +0 -1207
  463. package/connectors/connect-yousign/node_modules/bun-types/vendor/expect-type/messages.d.ts +0 -395
  464. package/connectors/connect-yousign/node_modules/bun-types/vendor/expect-type/overloads.d.ts +0 -669
  465. package/connectors/connect-yousign/node_modules/bun-types/vendor/expect-type/utils.d.ts +0 -431
  466. package/connectors/connect-yousign/node_modules/bun-types/wasm.d.ts +0 -193
  467. package/connectors/connect-yousign/node_modules/chalk/license +0 -9
  468. package/connectors/connect-yousign/node_modules/chalk/package.json +0 -83
  469. package/connectors/connect-yousign/node_modules/chalk/readme.md +0 -297
  470. package/connectors/connect-yousign/node_modules/chalk/source/index.d.ts +0 -325
  471. package/connectors/connect-yousign/node_modules/chalk/source/index.js +0 -225
  472. package/connectors/connect-yousign/node_modules/chalk/source/utilities.js +0 -33
  473. package/connectors/connect-yousign/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -236
  474. package/connectors/connect-yousign/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -223
  475. package/connectors/connect-yousign/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -1
  476. package/connectors/connect-yousign/node_modules/chalk/source/vendor/supports-color/browser.js +0 -34
  477. package/connectors/connect-yousign/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -55
  478. package/connectors/connect-yousign/node_modules/chalk/source/vendor/supports-color/index.js +0 -190
  479. package/connectors/connect-yousign/node_modules/commander/LICENSE +0 -22
  480. package/connectors/connect-yousign/node_modules/commander/Readme.md +0 -1157
  481. package/connectors/connect-yousign/node_modules/commander/esm.mjs +0 -16
  482. package/connectors/connect-yousign/node_modules/commander/index.js +0 -24
  483. package/connectors/connect-yousign/node_modules/commander/lib/argument.js +0 -149
  484. package/connectors/connect-yousign/node_modules/commander/lib/command.js +0 -2509
  485. package/connectors/connect-yousign/node_modules/commander/lib/error.js +0 -39
  486. package/connectors/connect-yousign/node_modules/commander/lib/help.js +0 -520
  487. package/connectors/connect-yousign/node_modules/commander/lib/option.js +0 -330
  488. package/connectors/connect-yousign/node_modules/commander/lib/suggestSimilar.js +0 -101
  489. package/connectors/connect-yousign/node_modules/commander/package-support.json +0 -16
  490. package/connectors/connect-yousign/node_modules/commander/package.json +0 -84
  491. package/connectors/connect-yousign/node_modules/commander/typings/esm.d.mts +0 -3
  492. package/connectors/connect-yousign/node_modules/commander/typings/index.d.ts +0 -969
  493. package/connectors/connect-yousign/node_modules/typescript/LICENSE.txt +0 -55
  494. package/connectors/connect-yousign/node_modules/typescript/README.md +0 -50
  495. package/connectors/connect-yousign/node_modules/typescript/SECURITY.md +0 -41
  496. package/connectors/connect-yousign/node_modules/typescript/ThirdPartyNoticeText.txt +0 -193
  497. package/connectors/connect-yousign/node_modules/typescript/bin/tsc +0 -2
  498. package/connectors/connect-yousign/node_modules/typescript/bin/tsserver +0 -2
  499. package/connectors/connect-yousign/node_modules/typescript/lib/_tsc.js +0 -133818
  500. package/connectors/connect-yousign/node_modules/typescript/lib/_tsserver.js +0 -659
  501. package/connectors/connect-yousign/node_modules/typescript/lib/_typingsInstaller.js +0 -222
  502. package/connectors/connect-yousign/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -2122
  503. package/connectors/connect-yousign/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -2122
  504. package/connectors/connect-yousign/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -2122
  505. package/connectors/connect-yousign/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -2122
  506. package/connectors/connect-yousign/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -2122
  507. package/connectors/connect-yousign/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -2122
  508. package/connectors/connect-yousign/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -2122
  509. package/connectors/connect-yousign/node_modules/typescript/lib/lib.d.ts +0 -22
  510. package/connectors/connect-yousign/node_modules/typescript/lib/lib.decorators.d.ts +0 -384
  511. package/connectors/connect-yousign/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -22
  512. package/connectors/connect-yousign/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -41
  513. package/connectors/connect-yousign/node_modules/typescript/lib/lib.dom.d.ts +0 -39429
  514. package/connectors/connect-yousign/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -571
  515. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -147
  516. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -597
  517. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.d.ts +0 -28
  518. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -77
  519. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -605
  520. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -81
  521. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -128
  522. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -144
  523. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -46
  524. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -326
  525. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -116
  526. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2016.d.ts +0 -21
  527. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -23
  528. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -31
  529. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -21
  530. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.d.ts +0 -26
  531. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -31
  532. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -23
  533. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -44
  534. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -49
  535. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -135
  536. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -45
  537. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -53
  538. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -77
  539. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -53
  540. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.d.ts +0 -24
  541. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -24
  542. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -83
  543. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -30
  544. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -37
  545. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -79
  546. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.d.ts +0 -24
  547. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -24
  548. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -23
  549. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -33
  550. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -37
  551. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -24
  552. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -765
  553. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.d.ts +0 -27
  554. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -42
  555. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -24
  556. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -474
  557. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -28
  558. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -47
  559. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -99
  560. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -44
  561. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -41
  562. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.d.ts +0 -23
  563. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -24
  564. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -166
  565. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -48
  566. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -33
  567. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -78
  568. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -121
  569. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.d.ts +0 -25
  570. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -75
  571. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -24
  572. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -145
  573. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -26
  574. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -39
  575. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -25
  576. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -924
  577. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -21
  578. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2023.d.ts +0 -22
  579. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -24
  580. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -56
  581. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -65
  582. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -29
  583. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.d.ts +0 -26
  584. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -24
  585. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -29
  586. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -35
  587. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -25
  588. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -68
  589. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -29
  590. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es5.d.ts +0 -4601
  591. package/connectors/connect-yousign/node_modules/typescript/lib/lib.es6.d.ts +0 -23
  592. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -35
  593. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -96
  594. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.d.ts +0 -29
  595. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -28
  596. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -193
  597. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -24
  598. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -445
  599. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -24
  600. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -21
  601. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -148
  602. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -34
  603. package/connectors/connect-yousign/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -25
  604. package/connectors/connect-yousign/node_modules/typescript/lib/lib.scripthost.d.ts +0 -322
  605. package/connectors/connect-yousign/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -41
  606. package/connectors/connect-yousign/node_modules/typescript/lib/lib.webworker.d.ts +0 -13150
  607. package/connectors/connect-yousign/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -23
  608. package/connectors/connect-yousign/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -340
  609. package/connectors/connect-yousign/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -2122
  610. package/connectors/connect-yousign/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -2122
  611. package/connectors/connect-yousign/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -2122
  612. package/connectors/connect-yousign/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -2122
  613. package/connectors/connect-yousign/node_modules/typescript/lib/tsc.js +0 -8
  614. package/connectors/connect-yousign/node_modules/typescript/lib/tsserver.js +0 -8
  615. package/connectors/connect-yousign/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -17
  616. package/connectors/connect-yousign/node_modules/typescript/lib/tsserverlibrary.js +0 -21
  617. package/connectors/connect-yousign/node_modules/typescript/lib/typesMap.json +0 -497
  618. package/connectors/connect-yousign/node_modules/typescript/lib/typescript.d.ts +0 -11437
  619. package/connectors/connect-yousign/node_modules/typescript/lib/typescript.js +0 -200276
  620. package/connectors/connect-yousign/node_modules/typescript/lib/typingsInstaller.js +0 -8
  621. package/connectors/connect-yousign/node_modules/typescript/lib/watchGuard.js +0 -53
  622. package/connectors/connect-yousign/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -2122
  623. package/connectors/connect-yousign/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -2122
  624. package/connectors/connect-yousign/node_modules/typescript/package.json +0 -120
  625. package/connectors/connect-yousign/node_modules/undici-types/LICENSE +0 -21
  626. package/connectors/connect-yousign/node_modules/undici-types/README.md +0 -6
  627. package/connectors/connect-yousign/node_modules/undici-types/agent.d.ts +0 -32
  628. package/connectors/connect-yousign/node_modules/undici-types/api.d.ts +0 -43
  629. package/connectors/connect-yousign/node_modules/undici-types/balanced-pool.d.ts +0 -30
  630. package/connectors/connect-yousign/node_modules/undici-types/cache-interceptor.d.ts +0 -173
  631. package/connectors/connect-yousign/node_modules/undici-types/cache.d.ts +0 -36
  632. package/connectors/connect-yousign/node_modules/undici-types/client-stats.d.ts +0 -15
  633. package/connectors/connect-yousign/node_modules/undici-types/client.d.ts +0 -108
  634. package/connectors/connect-yousign/node_modules/undici-types/connector.d.ts +0 -34
  635. package/connectors/connect-yousign/node_modules/undici-types/content-type.d.ts +0 -21
  636. package/connectors/connect-yousign/node_modules/undici-types/cookies.d.ts +0 -30
  637. package/connectors/connect-yousign/node_modules/undici-types/diagnostics-channel.d.ts +0 -74
  638. package/connectors/connect-yousign/node_modules/undici-types/dispatcher.d.ts +0 -276
  639. package/connectors/connect-yousign/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -22
  640. package/connectors/connect-yousign/node_modules/undici-types/errors.d.ts +0 -161
  641. package/connectors/connect-yousign/node_modules/undici-types/eventsource.d.ts +0 -66
  642. package/connectors/connect-yousign/node_modules/undici-types/fetch.d.ts +0 -211
  643. package/connectors/connect-yousign/node_modules/undici-types/formdata.d.ts +0 -108
  644. package/connectors/connect-yousign/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  645. package/connectors/connect-yousign/node_modules/undici-types/global-origin.d.ts +0 -7
  646. package/connectors/connect-yousign/node_modules/undici-types/h2c-client.d.ts +0 -73
  647. package/connectors/connect-yousign/node_modules/undici-types/handlers.d.ts +0 -15
  648. package/connectors/connect-yousign/node_modules/undici-types/header.d.ts +0 -160
  649. package/connectors/connect-yousign/node_modules/undici-types/index.d.ts +0 -88
  650. package/connectors/connect-yousign/node_modules/undici-types/interceptors.d.ts +0 -73
  651. package/connectors/connect-yousign/node_modules/undici-types/mock-agent.d.ts +0 -68
  652. package/connectors/connect-yousign/node_modules/undici-types/mock-call-history.d.ts +0 -111
  653. package/connectors/connect-yousign/node_modules/undici-types/mock-client.d.ts +0 -27
  654. package/connectors/connect-yousign/node_modules/undici-types/mock-errors.d.ts +0 -12
  655. package/connectors/connect-yousign/node_modules/undici-types/mock-interceptor.d.ts +0 -94
  656. package/connectors/connect-yousign/node_modules/undici-types/mock-pool.d.ts +0 -27
  657. package/connectors/connect-yousign/node_modules/undici-types/package.json +0 -55
  658. package/connectors/connect-yousign/node_modules/undici-types/patch.d.ts +0 -29
  659. package/connectors/connect-yousign/node_modules/undici-types/pool-stats.d.ts +0 -19
  660. package/connectors/connect-yousign/node_modules/undici-types/pool.d.ts +0 -41
  661. package/connectors/connect-yousign/node_modules/undici-types/proxy-agent.d.ts +0 -29
  662. package/connectors/connect-yousign/node_modules/undici-types/readable.d.ts +0 -68
  663. package/connectors/connect-yousign/node_modules/undici-types/retry-agent.d.ts +0 -8
  664. package/connectors/connect-yousign/node_modules/undici-types/retry-handler.d.ts +0 -125
  665. package/connectors/connect-yousign/node_modules/undici-types/round-robin-pool.d.ts +0 -41
  666. package/connectors/connect-yousign/node_modules/undici-types/snapshot-agent.d.ts +0 -109
  667. package/connectors/connect-yousign/node_modules/undici-types/util.d.ts +0 -18
  668. package/connectors/connect-yousign/node_modules/undici-types/utility.d.ts +0 -7
  669. package/connectors/connect-yousign/node_modules/undici-types/webidl.d.ts +0 -341
  670. package/connectors/connect-yousign/node_modules/undici-types/websocket.d.ts +0 -186
  671. package/dashboard/dist/assets/index-CSlS3oNV.css +0 -1
  672. package/dashboard/dist/assets/index-NCasN7x4.js +0 -284
  673. package/dist/server/server.test.d.ts +0 -1
@@ -1,3518 +0,0 @@
1
- #!/usr/bin/env bun
2
- // @bun
3
- var __create = Object.create;
4
- var __getProtoOf = Object.getPrototypeOf;
5
- var __defProp = Object.defineProperty;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- function __accessProp(key) {
9
- return this[key];
10
- }
11
- var __toESMCache_node;
12
- var __toESMCache_esm;
13
- var __toESM = (mod, isNodeMode, target) => {
14
- var canCache = mod != null && typeof mod === "object";
15
- if (canCache) {
16
- var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
17
- var cached = cache.get(mod);
18
- if (cached)
19
- return cached;
20
- }
21
- target = mod != null ? __create(__getProtoOf(mod)) : {};
22
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
23
- for (let key of __getOwnPropNames(mod))
24
- if (!__hasOwnProp.call(to, key))
25
- __defProp(to, key, {
26
- get: __accessProp.bind(mod, key),
27
- enumerable: true
28
- });
29
- if (canCache)
30
- cache.set(mod, to);
31
- return to;
32
- };
33
- var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
34
- var __require = import.meta.require;
35
-
36
- // ../../node_modules/commander/lib/error.js
37
- var require_error = __commonJS((exports) => {
38
- class CommanderError extends Error {
39
- constructor(exitCode, code, message) {
40
- super(message);
41
- Error.captureStackTrace(this, this.constructor);
42
- this.name = this.constructor.name;
43
- this.code = code;
44
- this.exitCode = exitCode;
45
- this.nestedError = undefined;
46
- }
47
- }
48
-
49
- class InvalidArgumentError extends CommanderError {
50
- constructor(message) {
51
- super(1, "commander.invalidArgument", message);
52
- Error.captureStackTrace(this, this.constructor);
53
- this.name = this.constructor.name;
54
- }
55
- }
56
- exports.CommanderError = CommanderError;
57
- exports.InvalidArgumentError = InvalidArgumentError;
58
- });
59
-
60
- // ../../node_modules/commander/lib/argument.js
61
- var require_argument = __commonJS((exports) => {
62
- var { InvalidArgumentError } = require_error();
63
-
64
- class Argument {
65
- constructor(name, description) {
66
- this.description = description || "";
67
- this.variadic = false;
68
- this.parseArg = undefined;
69
- this.defaultValue = undefined;
70
- this.defaultValueDescription = undefined;
71
- this.argChoices = undefined;
72
- switch (name[0]) {
73
- case "<":
74
- this.required = true;
75
- this._name = name.slice(1, -1);
76
- break;
77
- case "[":
78
- this.required = false;
79
- this._name = name.slice(1, -1);
80
- break;
81
- default:
82
- this.required = true;
83
- this._name = name;
84
- break;
85
- }
86
- if (this._name.length > 3 && this._name.slice(-3) === "...") {
87
- this.variadic = true;
88
- this._name = this._name.slice(0, -3);
89
- }
90
- }
91
- name() {
92
- return this._name;
93
- }
94
- _concatValue(value, previous) {
95
- if (previous === this.defaultValue || !Array.isArray(previous)) {
96
- return [value];
97
- }
98
- return previous.concat(value);
99
- }
100
- default(value, description) {
101
- this.defaultValue = value;
102
- this.defaultValueDescription = description;
103
- return this;
104
- }
105
- argParser(fn) {
106
- this.parseArg = fn;
107
- return this;
108
- }
109
- choices(values) {
110
- this.argChoices = values.slice();
111
- this.parseArg = (arg, previous) => {
112
- if (!this.argChoices.includes(arg)) {
113
- throw new InvalidArgumentError(`Allowed choices are ${this.argChoices.join(", ")}.`);
114
- }
115
- if (this.variadic) {
116
- return this._concatValue(arg, previous);
117
- }
118
- return arg;
119
- };
120
- return this;
121
- }
122
- argRequired() {
123
- this.required = true;
124
- return this;
125
- }
126
- argOptional() {
127
- this.required = false;
128
- return this;
129
- }
130
- }
131
- function humanReadableArgName(arg) {
132
- const nameOutput = arg.name() + (arg.variadic === true ? "..." : "");
133
- return arg.required ? "<" + nameOutput + ">" : "[" + nameOutput + "]";
134
- }
135
- exports.Argument = Argument;
136
- exports.humanReadableArgName = humanReadableArgName;
137
- });
138
-
139
- // ../../node_modules/commander/lib/help.js
140
- var require_help = __commonJS((exports) => {
141
- var { humanReadableArgName } = require_argument();
142
-
143
- class Help {
144
- constructor() {
145
- this.helpWidth = undefined;
146
- this.sortSubcommands = false;
147
- this.sortOptions = false;
148
- this.showGlobalOptions = false;
149
- }
150
- visibleCommands(cmd) {
151
- const visibleCommands = cmd.commands.filter((cmd2) => !cmd2._hidden);
152
- const helpCommand = cmd._getHelpCommand();
153
- if (helpCommand && !helpCommand._hidden) {
154
- visibleCommands.push(helpCommand);
155
- }
156
- if (this.sortSubcommands) {
157
- visibleCommands.sort((a, b) => {
158
- return a.name().localeCompare(b.name());
159
- });
160
- }
161
- return visibleCommands;
162
- }
163
- compareOptions(a, b) {
164
- const getSortKey = (option) => {
165
- return option.short ? option.short.replace(/^-/, "") : option.long.replace(/^--/, "");
166
- };
167
- return getSortKey(a).localeCompare(getSortKey(b));
168
- }
169
- visibleOptions(cmd) {
170
- const visibleOptions = cmd.options.filter((option) => !option.hidden);
171
- const helpOption = cmd._getHelpOption();
172
- if (helpOption && !helpOption.hidden) {
173
- const removeShort = helpOption.short && cmd._findOption(helpOption.short);
174
- const removeLong = helpOption.long && cmd._findOption(helpOption.long);
175
- if (!removeShort && !removeLong) {
176
- visibleOptions.push(helpOption);
177
- } else if (helpOption.long && !removeLong) {
178
- visibleOptions.push(cmd.createOption(helpOption.long, helpOption.description));
179
- } else if (helpOption.short && !removeShort) {
180
- visibleOptions.push(cmd.createOption(helpOption.short, helpOption.description));
181
- }
182
- }
183
- if (this.sortOptions) {
184
- visibleOptions.sort(this.compareOptions);
185
- }
186
- return visibleOptions;
187
- }
188
- visibleGlobalOptions(cmd) {
189
- if (!this.showGlobalOptions)
190
- return [];
191
- const globalOptions = [];
192
- for (let ancestorCmd = cmd.parent;ancestorCmd; ancestorCmd = ancestorCmd.parent) {
193
- const visibleOptions = ancestorCmd.options.filter((option) => !option.hidden);
194
- globalOptions.push(...visibleOptions);
195
- }
196
- if (this.sortOptions) {
197
- globalOptions.sort(this.compareOptions);
198
- }
199
- return globalOptions;
200
- }
201
- visibleArguments(cmd) {
202
- if (cmd._argsDescription) {
203
- cmd.registeredArguments.forEach((argument) => {
204
- argument.description = argument.description || cmd._argsDescription[argument.name()] || "";
205
- });
206
- }
207
- if (cmd.registeredArguments.find((argument) => argument.description)) {
208
- return cmd.registeredArguments;
209
- }
210
- return [];
211
- }
212
- subcommandTerm(cmd) {
213
- const args = cmd.registeredArguments.map((arg) => humanReadableArgName(arg)).join(" ");
214
- return cmd._name + (cmd._aliases[0] ? "|" + cmd._aliases[0] : "") + (cmd.options.length ? " [options]" : "") + (args ? " " + args : "");
215
- }
216
- optionTerm(option) {
217
- return option.flags;
218
- }
219
- argumentTerm(argument) {
220
- return argument.name();
221
- }
222
- longestSubcommandTermLength(cmd, helper) {
223
- return helper.visibleCommands(cmd).reduce((max, command) => {
224
- return Math.max(max, helper.subcommandTerm(command).length);
225
- }, 0);
226
- }
227
- longestOptionTermLength(cmd, helper) {
228
- return helper.visibleOptions(cmd).reduce((max, option) => {
229
- return Math.max(max, helper.optionTerm(option).length);
230
- }, 0);
231
- }
232
- longestGlobalOptionTermLength(cmd, helper) {
233
- return helper.visibleGlobalOptions(cmd).reduce((max, option) => {
234
- return Math.max(max, helper.optionTerm(option).length);
235
- }, 0);
236
- }
237
- longestArgumentTermLength(cmd, helper) {
238
- return helper.visibleArguments(cmd).reduce((max, argument) => {
239
- return Math.max(max, helper.argumentTerm(argument).length);
240
- }, 0);
241
- }
242
- commandUsage(cmd) {
243
- let cmdName = cmd._name;
244
- if (cmd._aliases[0]) {
245
- cmdName = cmdName + "|" + cmd._aliases[0];
246
- }
247
- let ancestorCmdNames = "";
248
- for (let ancestorCmd = cmd.parent;ancestorCmd; ancestorCmd = ancestorCmd.parent) {
249
- ancestorCmdNames = ancestorCmd.name() + " " + ancestorCmdNames;
250
- }
251
- return ancestorCmdNames + cmdName + " " + cmd.usage();
252
- }
253
- commandDescription(cmd) {
254
- return cmd.description();
255
- }
256
- subcommandDescription(cmd) {
257
- return cmd.summary() || cmd.description();
258
- }
259
- optionDescription(option) {
260
- const extraInfo = [];
261
- if (option.argChoices) {
262
- extraInfo.push(`choices: ${option.argChoices.map((choice) => JSON.stringify(choice)).join(", ")}`);
263
- }
264
- if (option.defaultValue !== undefined) {
265
- const showDefault = option.required || option.optional || option.isBoolean() && typeof option.defaultValue === "boolean";
266
- if (showDefault) {
267
- extraInfo.push(`default: ${option.defaultValueDescription || JSON.stringify(option.defaultValue)}`);
268
- }
269
- }
270
- if (option.presetArg !== undefined && option.optional) {
271
- extraInfo.push(`preset: ${JSON.stringify(option.presetArg)}`);
272
- }
273
- if (option.envVar !== undefined) {
274
- extraInfo.push(`env: ${option.envVar}`);
275
- }
276
- if (extraInfo.length > 0) {
277
- return `${option.description} (${extraInfo.join(", ")})`;
278
- }
279
- return option.description;
280
- }
281
- argumentDescription(argument) {
282
- const extraInfo = [];
283
- if (argument.argChoices) {
284
- extraInfo.push(`choices: ${argument.argChoices.map((choice) => JSON.stringify(choice)).join(", ")}`);
285
- }
286
- if (argument.defaultValue !== undefined) {
287
- extraInfo.push(`default: ${argument.defaultValueDescription || JSON.stringify(argument.defaultValue)}`);
288
- }
289
- if (extraInfo.length > 0) {
290
- const extraDescripton = `(${extraInfo.join(", ")})`;
291
- if (argument.description) {
292
- return `${argument.description} ${extraDescripton}`;
293
- }
294
- return extraDescripton;
295
- }
296
- return argument.description;
297
- }
298
- formatHelp(cmd, helper) {
299
- const termWidth = helper.padWidth(cmd, helper);
300
- const helpWidth = helper.helpWidth || 80;
301
- const itemIndentWidth = 2;
302
- const itemSeparatorWidth = 2;
303
- function formatItem(term, description) {
304
- if (description) {
305
- const fullText = `${term.padEnd(termWidth + itemSeparatorWidth)}${description}`;
306
- return helper.wrap(fullText, helpWidth - itemIndentWidth, termWidth + itemSeparatorWidth);
307
- }
308
- return term;
309
- }
310
- function formatList(textArray) {
311
- return textArray.join(`
312
- `).replace(/^/gm, " ".repeat(itemIndentWidth));
313
- }
314
- let output = [`Usage: ${helper.commandUsage(cmd)}`, ""];
315
- const commandDescription = helper.commandDescription(cmd);
316
- if (commandDescription.length > 0) {
317
- output = output.concat([
318
- helper.wrap(commandDescription, helpWidth, 0),
319
- ""
320
- ]);
321
- }
322
- const argumentList = helper.visibleArguments(cmd).map((argument) => {
323
- return formatItem(helper.argumentTerm(argument), helper.argumentDescription(argument));
324
- });
325
- if (argumentList.length > 0) {
326
- output = output.concat(["Arguments:", formatList(argumentList), ""]);
327
- }
328
- const optionList = helper.visibleOptions(cmd).map((option) => {
329
- return formatItem(helper.optionTerm(option), helper.optionDescription(option));
330
- });
331
- if (optionList.length > 0) {
332
- output = output.concat(["Options:", formatList(optionList), ""]);
333
- }
334
- if (this.showGlobalOptions) {
335
- const globalOptionList = helper.visibleGlobalOptions(cmd).map((option) => {
336
- return formatItem(helper.optionTerm(option), helper.optionDescription(option));
337
- });
338
- if (globalOptionList.length > 0) {
339
- output = output.concat([
340
- "Global Options:",
341
- formatList(globalOptionList),
342
- ""
343
- ]);
344
- }
345
- }
346
- const commandList = helper.visibleCommands(cmd).map((cmd2) => {
347
- return formatItem(helper.subcommandTerm(cmd2), helper.subcommandDescription(cmd2));
348
- });
349
- if (commandList.length > 0) {
350
- output = output.concat(["Commands:", formatList(commandList), ""]);
351
- }
352
- return output.join(`
353
- `);
354
- }
355
- padWidth(cmd, helper) {
356
- return Math.max(helper.longestOptionTermLength(cmd, helper), helper.longestGlobalOptionTermLength(cmd, helper), helper.longestSubcommandTermLength(cmd, helper), helper.longestArgumentTermLength(cmd, helper));
357
- }
358
- wrap(str, width, indent, minColumnWidth = 40) {
359
- const indents = " \\f\\t\\v\xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF";
360
- const manualIndent = new RegExp(`[\\n][${indents}]+`);
361
- if (str.match(manualIndent))
362
- return str;
363
- const columnWidth = width - indent;
364
- if (columnWidth < minColumnWidth)
365
- return str;
366
- const leadingStr = str.slice(0, indent);
367
- const columnText = str.slice(indent).replace(`\r
368
- `, `
369
- `);
370
- const indentString = " ".repeat(indent);
371
- const zeroWidthSpace = "\u200B";
372
- const breaks = `\\s${zeroWidthSpace}`;
373
- const regex = new RegExp(`
374
- |.{1,${columnWidth - 1}}([${breaks}]|$)|[^${breaks}]+?([${breaks}]|$)`, "g");
375
- const lines = columnText.match(regex) || [];
376
- return leadingStr + lines.map((line, i) => {
377
- if (line === `
378
- `)
379
- return "";
380
- return (i > 0 ? indentString : "") + line.trimEnd();
381
- }).join(`
382
- `);
383
- }
384
- }
385
- exports.Help = Help;
386
- });
387
-
388
- // ../../node_modules/commander/lib/option.js
389
- var require_option = __commonJS((exports) => {
390
- var { InvalidArgumentError } = require_error();
391
-
392
- class Option {
393
- constructor(flags, description) {
394
- this.flags = flags;
395
- this.description = description || "";
396
- this.required = flags.includes("<");
397
- this.optional = flags.includes("[");
398
- this.variadic = /\w\.\.\.[>\]]$/.test(flags);
399
- this.mandatory = false;
400
- const optionFlags = splitOptionFlags(flags);
401
- this.short = optionFlags.shortFlag;
402
- this.long = optionFlags.longFlag;
403
- this.negate = false;
404
- if (this.long) {
405
- this.negate = this.long.startsWith("--no-");
406
- }
407
- this.defaultValue = undefined;
408
- this.defaultValueDescription = undefined;
409
- this.presetArg = undefined;
410
- this.envVar = undefined;
411
- this.parseArg = undefined;
412
- this.hidden = false;
413
- this.argChoices = undefined;
414
- this.conflictsWith = [];
415
- this.implied = undefined;
416
- }
417
- default(value, description) {
418
- this.defaultValue = value;
419
- this.defaultValueDescription = description;
420
- return this;
421
- }
422
- preset(arg) {
423
- this.presetArg = arg;
424
- return this;
425
- }
426
- conflicts(names) {
427
- this.conflictsWith = this.conflictsWith.concat(names);
428
- return this;
429
- }
430
- implies(impliedOptionValues) {
431
- let newImplied = impliedOptionValues;
432
- if (typeof impliedOptionValues === "string") {
433
- newImplied = { [impliedOptionValues]: true };
434
- }
435
- this.implied = Object.assign(this.implied || {}, newImplied);
436
- return this;
437
- }
438
- env(name) {
439
- this.envVar = name;
440
- return this;
441
- }
442
- argParser(fn) {
443
- this.parseArg = fn;
444
- return this;
445
- }
446
- makeOptionMandatory(mandatory = true) {
447
- this.mandatory = !!mandatory;
448
- return this;
449
- }
450
- hideHelp(hide = true) {
451
- this.hidden = !!hide;
452
- return this;
453
- }
454
- _concatValue(value, previous) {
455
- if (previous === this.defaultValue || !Array.isArray(previous)) {
456
- return [value];
457
- }
458
- return previous.concat(value);
459
- }
460
- choices(values) {
461
- this.argChoices = values.slice();
462
- this.parseArg = (arg, previous) => {
463
- if (!this.argChoices.includes(arg)) {
464
- throw new InvalidArgumentError(`Allowed choices are ${this.argChoices.join(", ")}.`);
465
- }
466
- if (this.variadic) {
467
- return this._concatValue(arg, previous);
468
- }
469
- return arg;
470
- };
471
- return this;
472
- }
473
- name() {
474
- if (this.long) {
475
- return this.long.replace(/^--/, "");
476
- }
477
- return this.short.replace(/^-/, "");
478
- }
479
- attributeName() {
480
- return camelcase(this.name().replace(/^no-/, ""));
481
- }
482
- is(arg) {
483
- return this.short === arg || this.long === arg;
484
- }
485
- isBoolean() {
486
- return !this.required && !this.optional && !this.negate;
487
- }
488
- }
489
-
490
- class DualOptions {
491
- constructor(options) {
492
- this.positiveOptions = new Map;
493
- this.negativeOptions = new Map;
494
- this.dualOptions = new Set;
495
- options.forEach((option) => {
496
- if (option.negate) {
497
- this.negativeOptions.set(option.attributeName(), option);
498
- } else {
499
- this.positiveOptions.set(option.attributeName(), option);
500
- }
501
- });
502
- this.negativeOptions.forEach((value, key) => {
503
- if (this.positiveOptions.has(key)) {
504
- this.dualOptions.add(key);
505
- }
506
- });
507
- }
508
- valueFromOption(value, option) {
509
- const optionKey = option.attributeName();
510
- if (!this.dualOptions.has(optionKey))
511
- return true;
512
- const preset = this.negativeOptions.get(optionKey).presetArg;
513
- const negativeValue = preset !== undefined ? preset : false;
514
- return option.negate === (negativeValue === value);
515
- }
516
- }
517
- function camelcase(str) {
518
- return str.split("-").reduce((str2, word) => {
519
- return str2 + word[0].toUpperCase() + word.slice(1);
520
- });
521
- }
522
- function splitOptionFlags(flags) {
523
- let shortFlag;
524
- let longFlag;
525
- const flagParts = flags.split(/[ |,]+/);
526
- if (flagParts.length > 1 && !/^[[<]/.test(flagParts[1]))
527
- shortFlag = flagParts.shift();
528
- longFlag = flagParts.shift();
529
- if (!shortFlag && /^-[^-]$/.test(longFlag)) {
530
- shortFlag = longFlag;
531
- longFlag = undefined;
532
- }
533
- return { shortFlag, longFlag };
534
- }
535
- exports.Option = Option;
536
- exports.DualOptions = DualOptions;
537
- });
538
-
539
- // ../../node_modules/commander/lib/suggestSimilar.js
540
- var require_suggestSimilar = __commonJS((exports) => {
541
- var maxDistance = 3;
542
- function editDistance(a, b) {
543
- if (Math.abs(a.length - b.length) > maxDistance)
544
- return Math.max(a.length, b.length);
545
- const d = [];
546
- for (let i = 0;i <= a.length; i++) {
547
- d[i] = [i];
548
- }
549
- for (let j = 0;j <= b.length; j++) {
550
- d[0][j] = j;
551
- }
552
- for (let j = 1;j <= b.length; j++) {
553
- for (let i = 1;i <= a.length; i++) {
554
- let cost = 1;
555
- if (a[i - 1] === b[j - 1]) {
556
- cost = 0;
557
- } else {
558
- cost = 1;
559
- }
560
- d[i][j] = Math.min(d[i - 1][j] + 1, d[i][j - 1] + 1, d[i - 1][j - 1] + cost);
561
- if (i > 1 && j > 1 && a[i - 1] === b[j - 2] && a[i - 2] === b[j - 1]) {
562
- d[i][j] = Math.min(d[i][j], d[i - 2][j - 2] + 1);
563
- }
564
- }
565
- }
566
- return d[a.length][b.length];
567
- }
568
- function suggestSimilar(word, candidates) {
569
- if (!candidates || candidates.length === 0)
570
- return "";
571
- candidates = Array.from(new Set(candidates));
572
- const searchingOptions = word.startsWith("--");
573
- if (searchingOptions) {
574
- word = word.slice(2);
575
- candidates = candidates.map((candidate) => candidate.slice(2));
576
- }
577
- let similar = [];
578
- let bestDistance = maxDistance;
579
- const minSimilarity = 0.4;
580
- candidates.forEach((candidate) => {
581
- if (candidate.length <= 1)
582
- return;
583
- const distance = editDistance(word, candidate);
584
- const length = Math.max(word.length, candidate.length);
585
- const similarity = (length - distance) / length;
586
- if (similarity > minSimilarity) {
587
- if (distance < bestDistance) {
588
- bestDistance = distance;
589
- similar = [candidate];
590
- } else if (distance === bestDistance) {
591
- similar.push(candidate);
592
- }
593
- }
594
- });
595
- similar.sort((a, b) => a.localeCompare(b));
596
- if (searchingOptions) {
597
- similar = similar.map((candidate) => `--${candidate}`);
598
- }
599
- if (similar.length > 1) {
600
- return `
601
- (Did you mean one of ${similar.join(", ")}?)`;
602
- }
603
- if (similar.length === 1) {
604
- return `
605
- (Did you mean ${similar[0]}?)`;
606
- }
607
- return "";
608
- }
609
- exports.suggestSimilar = suggestSimilar;
610
- });
611
-
612
- // ../../node_modules/commander/lib/command.js
613
- var require_command = __commonJS((exports) => {
614
- var EventEmitter = __require("events").EventEmitter;
615
- var childProcess = __require("child_process");
616
- var path = __require("path");
617
- var fs = __require("fs");
618
- var process2 = __require("process");
619
- var { Argument, humanReadableArgName } = require_argument();
620
- var { CommanderError } = require_error();
621
- var { Help } = require_help();
622
- var { Option, DualOptions } = require_option();
623
- var { suggestSimilar } = require_suggestSimilar();
624
-
625
- class Command extends EventEmitter {
626
- constructor(name) {
627
- super();
628
- this.commands = [];
629
- this.options = [];
630
- this.parent = null;
631
- this._allowUnknownOption = false;
632
- this._allowExcessArguments = true;
633
- this.registeredArguments = [];
634
- this._args = this.registeredArguments;
635
- this.args = [];
636
- this.rawArgs = [];
637
- this.processedArgs = [];
638
- this._scriptPath = null;
639
- this._name = name || "";
640
- this._optionValues = {};
641
- this._optionValueSources = {};
642
- this._storeOptionsAsProperties = false;
643
- this._actionHandler = null;
644
- this._executableHandler = false;
645
- this._executableFile = null;
646
- this._executableDir = null;
647
- this._defaultCommandName = null;
648
- this._exitCallback = null;
649
- this._aliases = [];
650
- this._combineFlagAndOptionalValue = true;
651
- this._description = "";
652
- this._summary = "";
653
- this._argsDescription = undefined;
654
- this._enablePositionalOptions = false;
655
- this._passThroughOptions = false;
656
- this._lifeCycleHooks = {};
657
- this._showHelpAfterError = false;
658
- this._showSuggestionAfterError = true;
659
- this._outputConfiguration = {
660
- writeOut: (str) => process2.stdout.write(str),
661
- writeErr: (str) => process2.stderr.write(str),
662
- getOutHelpWidth: () => process2.stdout.isTTY ? process2.stdout.columns : undefined,
663
- getErrHelpWidth: () => process2.stderr.isTTY ? process2.stderr.columns : undefined,
664
- outputError: (str, write) => write(str)
665
- };
666
- this._hidden = false;
667
- this._helpOption = undefined;
668
- this._addImplicitHelpCommand = undefined;
669
- this._helpCommand = undefined;
670
- this._helpConfiguration = {};
671
- }
672
- copyInheritedSettings(sourceCommand) {
673
- this._outputConfiguration = sourceCommand._outputConfiguration;
674
- this._helpOption = sourceCommand._helpOption;
675
- this._helpCommand = sourceCommand._helpCommand;
676
- this._helpConfiguration = sourceCommand._helpConfiguration;
677
- this._exitCallback = sourceCommand._exitCallback;
678
- this._storeOptionsAsProperties = sourceCommand._storeOptionsAsProperties;
679
- this._combineFlagAndOptionalValue = sourceCommand._combineFlagAndOptionalValue;
680
- this._allowExcessArguments = sourceCommand._allowExcessArguments;
681
- this._enablePositionalOptions = sourceCommand._enablePositionalOptions;
682
- this._showHelpAfterError = sourceCommand._showHelpAfterError;
683
- this._showSuggestionAfterError = sourceCommand._showSuggestionAfterError;
684
- return this;
685
- }
686
- _getCommandAndAncestors() {
687
- const result = [];
688
- for (let command = this;command; command = command.parent) {
689
- result.push(command);
690
- }
691
- return result;
692
- }
693
- command(nameAndArgs, actionOptsOrExecDesc, execOpts) {
694
- let desc = actionOptsOrExecDesc;
695
- let opts = execOpts;
696
- if (typeof desc === "object" && desc !== null) {
697
- opts = desc;
698
- desc = null;
699
- }
700
- opts = opts || {};
701
- const [, name, args] = nameAndArgs.match(/([^ ]+) *(.*)/);
702
- const cmd = this.createCommand(name);
703
- if (desc) {
704
- cmd.description(desc);
705
- cmd._executableHandler = true;
706
- }
707
- if (opts.isDefault)
708
- this._defaultCommandName = cmd._name;
709
- cmd._hidden = !!(opts.noHelp || opts.hidden);
710
- cmd._executableFile = opts.executableFile || null;
711
- if (args)
712
- cmd.arguments(args);
713
- this._registerCommand(cmd);
714
- cmd.parent = this;
715
- cmd.copyInheritedSettings(this);
716
- if (desc)
717
- return this;
718
- return cmd;
719
- }
720
- createCommand(name) {
721
- return new Command(name);
722
- }
723
- createHelp() {
724
- return Object.assign(new Help, this.configureHelp());
725
- }
726
- configureHelp(configuration) {
727
- if (configuration === undefined)
728
- return this._helpConfiguration;
729
- this._helpConfiguration = configuration;
730
- return this;
731
- }
732
- configureOutput(configuration) {
733
- if (configuration === undefined)
734
- return this._outputConfiguration;
735
- Object.assign(this._outputConfiguration, configuration);
736
- return this;
737
- }
738
- showHelpAfterError(displayHelp = true) {
739
- if (typeof displayHelp !== "string")
740
- displayHelp = !!displayHelp;
741
- this._showHelpAfterError = displayHelp;
742
- return this;
743
- }
744
- showSuggestionAfterError(displaySuggestion = true) {
745
- this._showSuggestionAfterError = !!displaySuggestion;
746
- return this;
747
- }
748
- addCommand(cmd, opts) {
749
- if (!cmd._name) {
750
- throw new Error(`Command passed to .addCommand() must have a name
751
- - specify the name in Command constructor or using .name()`);
752
- }
753
- opts = opts || {};
754
- if (opts.isDefault)
755
- this._defaultCommandName = cmd._name;
756
- if (opts.noHelp || opts.hidden)
757
- cmd._hidden = true;
758
- this._registerCommand(cmd);
759
- cmd.parent = this;
760
- cmd._checkForBrokenPassThrough();
761
- return this;
762
- }
763
- createArgument(name, description) {
764
- return new Argument(name, description);
765
- }
766
- argument(name, description, fn, defaultValue) {
767
- const argument = this.createArgument(name, description);
768
- if (typeof fn === "function") {
769
- argument.default(defaultValue).argParser(fn);
770
- } else {
771
- argument.default(fn);
772
- }
773
- this.addArgument(argument);
774
- return this;
775
- }
776
- arguments(names) {
777
- names.trim().split(/ +/).forEach((detail) => {
778
- this.argument(detail);
779
- });
780
- return this;
781
- }
782
- addArgument(argument) {
783
- const previousArgument = this.registeredArguments.slice(-1)[0];
784
- if (previousArgument && previousArgument.variadic) {
785
- throw new Error(`only the last argument can be variadic '${previousArgument.name()}'`);
786
- }
787
- if (argument.required && argument.defaultValue !== undefined && argument.parseArg === undefined) {
788
- throw new Error(`a default value for a required argument is never used: '${argument.name()}'`);
789
- }
790
- this.registeredArguments.push(argument);
791
- return this;
792
- }
793
- helpCommand(enableOrNameAndArgs, description) {
794
- if (typeof enableOrNameAndArgs === "boolean") {
795
- this._addImplicitHelpCommand = enableOrNameAndArgs;
796
- return this;
797
- }
798
- enableOrNameAndArgs = enableOrNameAndArgs ?? "help [command]";
799
- const [, helpName, helpArgs] = enableOrNameAndArgs.match(/([^ ]+) *(.*)/);
800
- const helpDescription = description ?? "display help for command";
801
- const helpCommand = this.createCommand(helpName);
802
- helpCommand.helpOption(false);
803
- if (helpArgs)
804
- helpCommand.arguments(helpArgs);
805
- if (helpDescription)
806
- helpCommand.description(helpDescription);
807
- this._addImplicitHelpCommand = true;
808
- this._helpCommand = helpCommand;
809
- return this;
810
- }
811
- addHelpCommand(helpCommand, deprecatedDescription) {
812
- if (typeof helpCommand !== "object") {
813
- this.helpCommand(helpCommand, deprecatedDescription);
814
- return this;
815
- }
816
- this._addImplicitHelpCommand = true;
817
- this._helpCommand = helpCommand;
818
- return this;
819
- }
820
- _getHelpCommand() {
821
- const hasImplicitHelpCommand = this._addImplicitHelpCommand ?? (this.commands.length && !this._actionHandler && !this._findCommand("help"));
822
- if (hasImplicitHelpCommand) {
823
- if (this._helpCommand === undefined) {
824
- this.helpCommand(undefined, undefined);
825
- }
826
- return this._helpCommand;
827
- }
828
- return null;
829
- }
830
- hook(event, listener) {
831
- const allowedValues = ["preSubcommand", "preAction", "postAction"];
832
- if (!allowedValues.includes(event)) {
833
- throw new Error(`Unexpected value for event passed to hook : '${event}'.
834
- Expecting one of '${allowedValues.join("', '")}'`);
835
- }
836
- if (this._lifeCycleHooks[event]) {
837
- this._lifeCycleHooks[event].push(listener);
838
- } else {
839
- this._lifeCycleHooks[event] = [listener];
840
- }
841
- return this;
842
- }
843
- exitOverride(fn) {
844
- if (fn) {
845
- this._exitCallback = fn;
846
- } else {
847
- this._exitCallback = (err) => {
848
- if (err.code !== "commander.executeSubCommandAsync") {
849
- throw err;
850
- } else {}
851
- };
852
- }
853
- return this;
854
- }
855
- _exit(exitCode, code, message) {
856
- if (this._exitCallback) {
857
- this._exitCallback(new CommanderError(exitCode, code, message));
858
- }
859
- process2.exit(exitCode);
860
- }
861
- action(fn) {
862
- const listener = (args) => {
863
- const expectedArgsCount = this.registeredArguments.length;
864
- const actionArgs = args.slice(0, expectedArgsCount);
865
- if (this._storeOptionsAsProperties) {
866
- actionArgs[expectedArgsCount] = this;
867
- } else {
868
- actionArgs[expectedArgsCount] = this.opts();
869
- }
870
- actionArgs.push(this);
871
- return fn.apply(this, actionArgs);
872
- };
873
- this._actionHandler = listener;
874
- return this;
875
- }
876
- createOption(flags, description) {
877
- return new Option(flags, description);
878
- }
879
- _callParseArg(target, value, previous, invalidArgumentMessage) {
880
- try {
881
- return target.parseArg(value, previous);
882
- } catch (err) {
883
- if (err.code === "commander.invalidArgument") {
884
- const message = `${invalidArgumentMessage} ${err.message}`;
885
- this.error(message, { exitCode: err.exitCode, code: err.code });
886
- }
887
- throw err;
888
- }
889
- }
890
- _registerOption(option) {
891
- const matchingOption = option.short && this._findOption(option.short) || option.long && this._findOption(option.long);
892
- if (matchingOption) {
893
- const matchingFlag = option.long && this._findOption(option.long) ? option.long : option.short;
894
- throw new Error(`Cannot add option '${option.flags}'${this._name && ` to command '${this._name}'`} due to conflicting flag '${matchingFlag}'
895
- - already used by option '${matchingOption.flags}'`);
896
- }
897
- this.options.push(option);
898
- }
899
- _registerCommand(command) {
900
- const knownBy = (cmd) => {
901
- return [cmd.name()].concat(cmd.aliases());
902
- };
903
- const alreadyUsed = knownBy(command).find((name) => this._findCommand(name));
904
- if (alreadyUsed) {
905
- const existingCmd = knownBy(this._findCommand(alreadyUsed)).join("|");
906
- const newCmd = knownBy(command).join("|");
907
- throw new Error(`cannot add command '${newCmd}' as already have command '${existingCmd}'`);
908
- }
909
- this.commands.push(command);
910
- }
911
- addOption(option) {
912
- this._registerOption(option);
913
- const oname = option.name();
914
- const name = option.attributeName();
915
- if (option.negate) {
916
- const positiveLongFlag = option.long.replace(/^--no-/, "--");
917
- if (!this._findOption(positiveLongFlag)) {
918
- this.setOptionValueWithSource(name, option.defaultValue === undefined ? true : option.defaultValue, "default");
919
- }
920
- } else if (option.defaultValue !== undefined) {
921
- this.setOptionValueWithSource(name, option.defaultValue, "default");
922
- }
923
- const handleOptionValue = (val, invalidValueMessage, valueSource) => {
924
- if (val == null && option.presetArg !== undefined) {
925
- val = option.presetArg;
926
- }
927
- const oldValue = this.getOptionValue(name);
928
- if (val !== null && option.parseArg) {
929
- val = this._callParseArg(option, val, oldValue, invalidValueMessage);
930
- } else if (val !== null && option.variadic) {
931
- val = option._concatValue(val, oldValue);
932
- }
933
- if (val == null) {
934
- if (option.negate) {
935
- val = false;
936
- } else if (option.isBoolean() || option.optional) {
937
- val = true;
938
- } else {
939
- val = "";
940
- }
941
- }
942
- this.setOptionValueWithSource(name, val, valueSource);
943
- };
944
- this.on("option:" + oname, (val) => {
945
- const invalidValueMessage = `error: option '${option.flags}' argument '${val}' is invalid.`;
946
- handleOptionValue(val, invalidValueMessage, "cli");
947
- });
948
- if (option.envVar) {
949
- this.on("optionEnv:" + oname, (val) => {
950
- const invalidValueMessage = `error: option '${option.flags}' value '${val}' from env '${option.envVar}' is invalid.`;
951
- handleOptionValue(val, invalidValueMessage, "env");
952
- });
953
- }
954
- return this;
955
- }
956
- _optionEx(config, flags, description, fn, defaultValue) {
957
- if (typeof flags === "object" && flags instanceof Option) {
958
- throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");
959
- }
960
- const option = this.createOption(flags, description);
961
- option.makeOptionMandatory(!!config.mandatory);
962
- if (typeof fn === "function") {
963
- option.default(defaultValue).argParser(fn);
964
- } else if (fn instanceof RegExp) {
965
- const regex = fn;
966
- fn = (val, def) => {
967
- const m = regex.exec(val);
968
- return m ? m[0] : def;
969
- };
970
- option.default(defaultValue).argParser(fn);
971
- } else {
972
- option.default(fn);
973
- }
974
- return this.addOption(option);
975
- }
976
- option(flags, description, parseArg, defaultValue) {
977
- return this._optionEx({}, flags, description, parseArg, defaultValue);
978
- }
979
- requiredOption(flags, description, parseArg, defaultValue) {
980
- return this._optionEx({ mandatory: true }, flags, description, parseArg, defaultValue);
981
- }
982
- combineFlagAndOptionalValue(combine = true) {
983
- this._combineFlagAndOptionalValue = !!combine;
984
- return this;
985
- }
986
- allowUnknownOption(allowUnknown = true) {
987
- this._allowUnknownOption = !!allowUnknown;
988
- return this;
989
- }
990
- allowExcessArguments(allowExcess = true) {
991
- this._allowExcessArguments = !!allowExcess;
992
- return this;
993
- }
994
- enablePositionalOptions(positional = true) {
995
- this._enablePositionalOptions = !!positional;
996
- return this;
997
- }
998
- passThroughOptions(passThrough = true) {
999
- this._passThroughOptions = !!passThrough;
1000
- this._checkForBrokenPassThrough();
1001
- return this;
1002
- }
1003
- _checkForBrokenPassThrough() {
1004
- if (this.parent && this._passThroughOptions && !this.parent._enablePositionalOptions) {
1005
- throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`);
1006
- }
1007
- }
1008
- storeOptionsAsProperties(storeAsProperties = true) {
1009
- if (this.options.length) {
1010
- throw new Error("call .storeOptionsAsProperties() before adding options");
1011
- }
1012
- if (Object.keys(this._optionValues).length) {
1013
- throw new Error("call .storeOptionsAsProperties() before setting option values");
1014
- }
1015
- this._storeOptionsAsProperties = !!storeAsProperties;
1016
- return this;
1017
- }
1018
- getOptionValue(key) {
1019
- if (this._storeOptionsAsProperties) {
1020
- return this[key];
1021
- }
1022
- return this._optionValues[key];
1023
- }
1024
- setOptionValue(key, value) {
1025
- return this.setOptionValueWithSource(key, value, undefined);
1026
- }
1027
- setOptionValueWithSource(key, value, source) {
1028
- if (this._storeOptionsAsProperties) {
1029
- this[key] = value;
1030
- } else {
1031
- this._optionValues[key] = value;
1032
- }
1033
- this._optionValueSources[key] = source;
1034
- return this;
1035
- }
1036
- getOptionValueSource(key) {
1037
- return this._optionValueSources[key];
1038
- }
1039
- getOptionValueSourceWithGlobals(key) {
1040
- let source;
1041
- this._getCommandAndAncestors().forEach((cmd) => {
1042
- if (cmd.getOptionValueSource(key) !== undefined) {
1043
- source = cmd.getOptionValueSource(key);
1044
- }
1045
- });
1046
- return source;
1047
- }
1048
- _prepareUserArgs(argv, parseOptions) {
1049
- if (argv !== undefined && !Array.isArray(argv)) {
1050
- throw new Error("first parameter to parse must be array or undefined");
1051
- }
1052
- parseOptions = parseOptions || {};
1053
- if (argv === undefined && parseOptions.from === undefined) {
1054
- if (process2.versions?.electron) {
1055
- parseOptions.from = "electron";
1056
- }
1057
- const execArgv = process2.execArgv ?? [];
1058
- if (execArgv.includes("-e") || execArgv.includes("--eval") || execArgv.includes("-p") || execArgv.includes("--print")) {
1059
- parseOptions.from = "eval";
1060
- }
1061
- }
1062
- if (argv === undefined) {
1063
- argv = process2.argv;
1064
- }
1065
- this.rawArgs = argv.slice();
1066
- let userArgs;
1067
- switch (parseOptions.from) {
1068
- case undefined:
1069
- case "node":
1070
- this._scriptPath = argv[1];
1071
- userArgs = argv.slice(2);
1072
- break;
1073
- case "electron":
1074
- if (process2.defaultApp) {
1075
- this._scriptPath = argv[1];
1076
- userArgs = argv.slice(2);
1077
- } else {
1078
- userArgs = argv.slice(1);
1079
- }
1080
- break;
1081
- case "user":
1082
- userArgs = argv.slice(0);
1083
- break;
1084
- case "eval":
1085
- userArgs = argv.slice(1);
1086
- break;
1087
- default:
1088
- throw new Error(`unexpected parse option { from: '${parseOptions.from}' }`);
1089
- }
1090
- if (!this._name && this._scriptPath)
1091
- this.nameFromFilename(this._scriptPath);
1092
- this._name = this._name || "program";
1093
- return userArgs;
1094
- }
1095
- parse(argv, parseOptions) {
1096
- const userArgs = this._prepareUserArgs(argv, parseOptions);
1097
- this._parseCommand([], userArgs);
1098
- return this;
1099
- }
1100
- async parseAsync(argv, parseOptions) {
1101
- const userArgs = this._prepareUserArgs(argv, parseOptions);
1102
- await this._parseCommand([], userArgs);
1103
- return this;
1104
- }
1105
- _executeSubCommand(subcommand, args) {
1106
- args = args.slice();
1107
- let launchWithNode = false;
1108
- const sourceExt = [".js", ".ts", ".tsx", ".mjs", ".cjs"];
1109
- function findFile(baseDir, baseName) {
1110
- const localBin = path.resolve(baseDir, baseName);
1111
- if (fs.existsSync(localBin))
1112
- return localBin;
1113
- if (sourceExt.includes(path.extname(baseName)))
1114
- return;
1115
- const foundExt = sourceExt.find((ext) => fs.existsSync(`${localBin}${ext}`));
1116
- if (foundExt)
1117
- return `${localBin}${foundExt}`;
1118
- return;
1119
- }
1120
- this._checkForMissingMandatoryOptions();
1121
- this._checkForConflictingOptions();
1122
- let executableFile = subcommand._executableFile || `${this._name}-${subcommand._name}`;
1123
- let executableDir = this._executableDir || "";
1124
- if (this._scriptPath) {
1125
- let resolvedScriptPath;
1126
- try {
1127
- resolvedScriptPath = fs.realpathSync(this._scriptPath);
1128
- } catch (err) {
1129
- resolvedScriptPath = this._scriptPath;
1130
- }
1131
- executableDir = path.resolve(path.dirname(resolvedScriptPath), executableDir);
1132
- }
1133
- if (executableDir) {
1134
- let localFile = findFile(executableDir, executableFile);
1135
- if (!localFile && !subcommand._executableFile && this._scriptPath) {
1136
- const legacyName = path.basename(this._scriptPath, path.extname(this._scriptPath));
1137
- if (legacyName !== this._name) {
1138
- localFile = findFile(executableDir, `${legacyName}-${subcommand._name}`);
1139
- }
1140
- }
1141
- executableFile = localFile || executableFile;
1142
- }
1143
- launchWithNode = sourceExt.includes(path.extname(executableFile));
1144
- let proc;
1145
- if (process2.platform !== "win32") {
1146
- if (launchWithNode) {
1147
- args.unshift(executableFile);
1148
- args = incrementNodeInspectorPort(process2.execArgv).concat(args);
1149
- proc = childProcess.spawn(process2.argv[0], args, { stdio: "inherit" });
1150
- } else {
1151
- proc = childProcess.spawn(executableFile, args, { stdio: "inherit" });
1152
- }
1153
- } else {
1154
- args.unshift(executableFile);
1155
- args = incrementNodeInspectorPort(process2.execArgv).concat(args);
1156
- proc = childProcess.spawn(process2.execPath, args, { stdio: "inherit" });
1157
- }
1158
- if (!proc.killed) {
1159
- const signals = ["SIGUSR1", "SIGUSR2", "SIGTERM", "SIGINT", "SIGHUP"];
1160
- signals.forEach((signal) => {
1161
- process2.on(signal, () => {
1162
- if (proc.killed === false && proc.exitCode === null) {
1163
- proc.kill(signal);
1164
- }
1165
- });
1166
- });
1167
- }
1168
- const exitCallback = this._exitCallback;
1169
- proc.on("close", (code) => {
1170
- code = code ?? 1;
1171
- if (!exitCallback) {
1172
- process2.exit(code);
1173
- } else {
1174
- exitCallback(new CommanderError(code, "commander.executeSubCommandAsync", "(close)"));
1175
- }
1176
- });
1177
- proc.on("error", (err) => {
1178
- if (err.code === "ENOENT") {
1179
- const executableDirMessage = executableDir ? `searched for local subcommand relative to directory '${executableDir}'` : "no directory for search for local subcommand, use .executableDir() to supply a custom directory";
1180
- const executableMissing = `'${executableFile}' does not exist
1181
- - if '${subcommand._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
1182
- - if the default executable name is not suitable, use the executableFile option to supply a custom name or path
1183
- - ${executableDirMessage}`;
1184
- throw new Error(executableMissing);
1185
- } else if (err.code === "EACCES") {
1186
- throw new Error(`'${executableFile}' not executable`);
1187
- }
1188
- if (!exitCallback) {
1189
- process2.exit(1);
1190
- } else {
1191
- const wrappedError = new CommanderError(1, "commander.executeSubCommandAsync", "(error)");
1192
- wrappedError.nestedError = err;
1193
- exitCallback(wrappedError);
1194
- }
1195
- });
1196
- this.runningCommand = proc;
1197
- }
1198
- _dispatchSubcommand(commandName, operands, unknown) {
1199
- const subCommand = this._findCommand(commandName);
1200
- if (!subCommand)
1201
- this.help({ error: true });
1202
- let promiseChain;
1203
- promiseChain = this._chainOrCallSubCommandHook(promiseChain, subCommand, "preSubcommand");
1204
- promiseChain = this._chainOrCall(promiseChain, () => {
1205
- if (subCommand._executableHandler) {
1206
- this._executeSubCommand(subCommand, operands.concat(unknown));
1207
- } else {
1208
- return subCommand._parseCommand(operands, unknown);
1209
- }
1210
- });
1211
- return promiseChain;
1212
- }
1213
- _dispatchHelpCommand(subcommandName) {
1214
- if (!subcommandName) {
1215
- this.help();
1216
- }
1217
- const subCommand = this._findCommand(subcommandName);
1218
- if (subCommand && !subCommand._executableHandler) {
1219
- subCommand.help();
1220
- }
1221
- return this._dispatchSubcommand(subcommandName, [], [this._getHelpOption()?.long ?? this._getHelpOption()?.short ?? "--help"]);
1222
- }
1223
- _checkNumberOfArguments() {
1224
- this.registeredArguments.forEach((arg, i) => {
1225
- if (arg.required && this.args[i] == null) {
1226
- this.missingArgument(arg.name());
1227
- }
1228
- });
1229
- if (this.registeredArguments.length > 0 && this.registeredArguments[this.registeredArguments.length - 1].variadic) {
1230
- return;
1231
- }
1232
- if (this.args.length > this.registeredArguments.length) {
1233
- this._excessArguments(this.args);
1234
- }
1235
- }
1236
- _processArguments() {
1237
- const myParseArg = (argument, value, previous) => {
1238
- let parsedValue = value;
1239
- if (value !== null && argument.parseArg) {
1240
- const invalidValueMessage = `error: command-argument value '${value}' is invalid for argument '${argument.name()}'.`;
1241
- parsedValue = this._callParseArg(argument, value, previous, invalidValueMessage);
1242
- }
1243
- return parsedValue;
1244
- };
1245
- this._checkNumberOfArguments();
1246
- const processedArgs = [];
1247
- this.registeredArguments.forEach((declaredArg, index) => {
1248
- let value = declaredArg.defaultValue;
1249
- if (declaredArg.variadic) {
1250
- if (index < this.args.length) {
1251
- value = this.args.slice(index);
1252
- if (declaredArg.parseArg) {
1253
- value = value.reduce((processed, v) => {
1254
- return myParseArg(declaredArg, v, processed);
1255
- }, declaredArg.defaultValue);
1256
- }
1257
- } else if (value === undefined) {
1258
- value = [];
1259
- }
1260
- } else if (index < this.args.length) {
1261
- value = this.args[index];
1262
- if (declaredArg.parseArg) {
1263
- value = myParseArg(declaredArg, value, declaredArg.defaultValue);
1264
- }
1265
- }
1266
- processedArgs[index] = value;
1267
- });
1268
- this.processedArgs = processedArgs;
1269
- }
1270
- _chainOrCall(promise, fn) {
1271
- if (promise && promise.then && typeof promise.then === "function") {
1272
- return promise.then(() => fn());
1273
- }
1274
- return fn();
1275
- }
1276
- _chainOrCallHooks(promise, event) {
1277
- let result = promise;
1278
- const hooks = [];
1279
- this._getCommandAndAncestors().reverse().filter((cmd) => cmd._lifeCycleHooks[event] !== undefined).forEach((hookedCommand) => {
1280
- hookedCommand._lifeCycleHooks[event].forEach((callback) => {
1281
- hooks.push({ hookedCommand, callback });
1282
- });
1283
- });
1284
- if (event === "postAction") {
1285
- hooks.reverse();
1286
- }
1287
- hooks.forEach((hookDetail) => {
1288
- result = this._chainOrCall(result, () => {
1289
- return hookDetail.callback(hookDetail.hookedCommand, this);
1290
- });
1291
- });
1292
- return result;
1293
- }
1294
- _chainOrCallSubCommandHook(promise, subCommand, event) {
1295
- let result = promise;
1296
- if (this._lifeCycleHooks[event] !== undefined) {
1297
- this._lifeCycleHooks[event].forEach((hook) => {
1298
- result = this._chainOrCall(result, () => {
1299
- return hook(this, subCommand);
1300
- });
1301
- });
1302
- }
1303
- return result;
1304
- }
1305
- _parseCommand(operands, unknown) {
1306
- const parsed = this.parseOptions(unknown);
1307
- this._parseOptionsEnv();
1308
- this._parseOptionsImplied();
1309
- operands = operands.concat(parsed.operands);
1310
- unknown = parsed.unknown;
1311
- this.args = operands.concat(unknown);
1312
- if (operands && this._findCommand(operands[0])) {
1313
- return this._dispatchSubcommand(operands[0], operands.slice(1), unknown);
1314
- }
1315
- if (this._getHelpCommand() && operands[0] === this._getHelpCommand().name()) {
1316
- return this._dispatchHelpCommand(operands[1]);
1317
- }
1318
- if (this._defaultCommandName) {
1319
- this._outputHelpIfRequested(unknown);
1320
- return this._dispatchSubcommand(this._defaultCommandName, operands, unknown);
1321
- }
1322
- if (this.commands.length && this.args.length === 0 && !this._actionHandler && !this._defaultCommandName) {
1323
- this.help({ error: true });
1324
- }
1325
- this._outputHelpIfRequested(parsed.unknown);
1326
- this._checkForMissingMandatoryOptions();
1327
- this._checkForConflictingOptions();
1328
- const checkForUnknownOptions = () => {
1329
- if (parsed.unknown.length > 0) {
1330
- this.unknownOption(parsed.unknown[0]);
1331
- }
1332
- };
1333
- const commandEvent = `command:${this.name()}`;
1334
- if (this._actionHandler) {
1335
- checkForUnknownOptions();
1336
- this._processArguments();
1337
- let promiseChain;
1338
- promiseChain = this._chainOrCallHooks(promiseChain, "preAction");
1339
- promiseChain = this._chainOrCall(promiseChain, () => this._actionHandler(this.processedArgs));
1340
- if (this.parent) {
1341
- promiseChain = this._chainOrCall(promiseChain, () => {
1342
- this.parent.emit(commandEvent, operands, unknown);
1343
- });
1344
- }
1345
- promiseChain = this._chainOrCallHooks(promiseChain, "postAction");
1346
- return promiseChain;
1347
- }
1348
- if (this.parent && this.parent.listenerCount(commandEvent)) {
1349
- checkForUnknownOptions();
1350
- this._processArguments();
1351
- this.parent.emit(commandEvent, operands, unknown);
1352
- } else if (operands.length) {
1353
- if (this._findCommand("*")) {
1354
- return this._dispatchSubcommand("*", operands, unknown);
1355
- }
1356
- if (this.listenerCount("command:*")) {
1357
- this.emit("command:*", operands, unknown);
1358
- } else if (this.commands.length) {
1359
- this.unknownCommand();
1360
- } else {
1361
- checkForUnknownOptions();
1362
- this._processArguments();
1363
- }
1364
- } else if (this.commands.length) {
1365
- checkForUnknownOptions();
1366
- this.help({ error: true });
1367
- } else {
1368
- checkForUnknownOptions();
1369
- this._processArguments();
1370
- }
1371
- }
1372
- _findCommand(name) {
1373
- if (!name)
1374
- return;
1375
- return this.commands.find((cmd) => cmd._name === name || cmd._aliases.includes(name));
1376
- }
1377
- _findOption(arg) {
1378
- return this.options.find((option) => option.is(arg));
1379
- }
1380
- _checkForMissingMandatoryOptions() {
1381
- this._getCommandAndAncestors().forEach((cmd) => {
1382
- cmd.options.forEach((anOption) => {
1383
- if (anOption.mandatory && cmd.getOptionValue(anOption.attributeName()) === undefined) {
1384
- cmd.missingMandatoryOptionValue(anOption);
1385
- }
1386
- });
1387
- });
1388
- }
1389
- _checkForConflictingLocalOptions() {
1390
- const definedNonDefaultOptions = this.options.filter((option) => {
1391
- const optionKey = option.attributeName();
1392
- if (this.getOptionValue(optionKey) === undefined) {
1393
- return false;
1394
- }
1395
- return this.getOptionValueSource(optionKey) !== "default";
1396
- });
1397
- const optionsWithConflicting = definedNonDefaultOptions.filter((option) => option.conflictsWith.length > 0);
1398
- optionsWithConflicting.forEach((option) => {
1399
- const conflictingAndDefined = definedNonDefaultOptions.find((defined) => option.conflictsWith.includes(defined.attributeName()));
1400
- if (conflictingAndDefined) {
1401
- this._conflictingOption(option, conflictingAndDefined);
1402
- }
1403
- });
1404
- }
1405
- _checkForConflictingOptions() {
1406
- this._getCommandAndAncestors().forEach((cmd) => {
1407
- cmd._checkForConflictingLocalOptions();
1408
- });
1409
- }
1410
- parseOptions(argv) {
1411
- const operands = [];
1412
- const unknown = [];
1413
- let dest = operands;
1414
- const args = argv.slice();
1415
- function maybeOption(arg) {
1416
- return arg.length > 1 && arg[0] === "-";
1417
- }
1418
- let activeVariadicOption = null;
1419
- while (args.length) {
1420
- const arg = args.shift();
1421
- if (arg === "--") {
1422
- if (dest === unknown)
1423
- dest.push(arg);
1424
- dest.push(...args);
1425
- break;
1426
- }
1427
- if (activeVariadicOption && !maybeOption(arg)) {
1428
- this.emit(`option:${activeVariadicOption.name()}`, arg);
1429
- continue;
1430
- }
1431
- activeVariadicOption = null;
1432
- if (maybeOption(arg)) {
1433
- const option = this._findOption(arg);
1434
- if (option) {
1435
- if (option.required) {
1436
- const value = args.shift();
1437
- if (value === undefined)
1438
- this.optionMissingArgument(option);
1439
- this.emit(`option:${option.name()}`, value);
1440
- } else if (option.optional) {
1441
- let value = null;
1442
- if (args.length > 0 && !maybeOption(args[0])) {
1443
- value = args.shift();
1444
- }
1445
- this.emit(`option:${option.name()}`, value);
1446
- } else {
1447
- this.emit(`option:${option.name()}`);
1448
- }
1449
- activeVariadicOption = option.variadic ? option : null;
1450
- continue;
1451
- }
1452
- }
1453
- if (arg.length > 2 && arg[0] === "-" && arg[1] !== "-") {
1454
- const option = this._findOption(`-${arg[1]}`);
1455
- if (option) {
1456
- if (option.required || option.optional && this._combineFlagAndOptionalValue) {
1457
- this.emit(`option:${option.name()}`, arg.slice(2));
1458
- } else {
1459
- this.emit(`option:${option.name()}`);
1460
- args.unshift(`-${arg.slice(2)}`);
1461
- }
1462
- continue;
1463
- }
1464
- }
1465
- if (/^--[^=]+=/.test(arg)) {
1466
- const index = arg.indexOf("=");
1467
- const option = this._findOption(arg.slice(0, index));
1468
- if (option && (option.required || option.optional)) {
1469
- this.emit(`option:${option.name()}`, arg.slice(index + 1));
1470
- continue;
1471
- }
1472
- }
1473
- if (maybeOption(arg)) {
1474
- dest = unknown;
1475
- }
1476
- if ((this._enablePositionalOptions || this._passThroughOptions) && operands.length === 0 && unknown.length === 0) {
1477
- if (this._findCommand(arg)) {
1478
- operands.push(arg);
1479
- if (args.length > 0)
1480
- unknown.push(...args);
1481
- break;
1482
- } else if (this._getHelpCommand() && arg === this._getHelpCommand().name()) {
1483
- operands.push(arg);
1484
- if (args.length > 0)
1485
- operands.push(...args);
1486
- break;
1487
- } else if (this._defaultCommandName) {
1488
- unknown.push(arg);
1489
- if (args.length > 0)
1490
- unknown.push(...args);
1491
- break;
1492
- }
1493
- }
1494
- if (this._passThroughOptions) {
1495
- dest.push(arg);
1496
- if (args.length > 0)
1497
- dest.push(...args);
1498
- break;
1499
- }
1500
- dest.push(arg);
1501
- }
1502
- return { operands, unknown };
1503
- }
1504
- opts() {
1505
- if (this._storeOptionsAsProperties) {
1506
- const result = {};
1507
- const len = this.options.length;
1508
- for (let i = 0;i < len; i++) {
1509
- const key = this.options[i].attributeName();
1510
- result[key] = key === this._versionOptionName ? this._version : this[key];
1511
- }
1512
- return result;
1513
- }
1514
- return this._optionValues;
1515
- }
1516
- optsWithGlobals() {
1517
- return this._getCommandAndAncestors().reduce((combinedOptions, cmd) => Object.assign(combinedOptions, cmd.opts()), {});
1518
- }
1519
- error(message, errorOptions) {
1520
- this._outputConfiguration.outputError(`${message}
1521
- `, this._outputConfiguration.writeErr);
1522
- if (typeof this._showHelpAfterError === "string") {
1523
- this._outputConfiguration.writeErr(`${this._showHelpAfterError}
1524
- `);
1525
- } else if (this._showHelpAfterError) {
1526
- this._outputConfiguration.writeErr(`
1527
- `);
1528
- this.outputHelp({ error: true });
1529
- }
1530
- const config = errorOptions || {};
1531
- const exitCode = config.exitCode || 1;
1532
- const code = config.code || "commander.error";
1533
- this._exit(exitCode, code, message);
1534
- }
1535
- _parseOptionsEnv() {
1536
- this.options.forEach((option) => {
1537
- if (option.envVar && option.envVar in process2.env) {
1538
- const optionKey = option.attributeName();
1539
- if (this.getOptionValue(optionKey) === undefined || ["default", "config", "env"].includes(this.getOptionValueSource(optionKey))) {
1540
- if (option.required || option.optional) {
1541
- this.emit(`optionEnv:${option.name()}`, process2.env[option.envVar]);
1542
- } else {
1543
- this.emit(`optionEnv:${option.name()}`);
1544
- }
1545
- }
1546
- }
1547
- });
1548
- }
1549
- _parseOptionsImplied() {
1550
- const dualHelper = new DualOptions(this.options);
1551
- const hasCustomOptionValue = (optionKey) => {
1552
- return this.getOptionValue(optionKey) !== undefined && !["default", "implied"].includes(this.getOptionValueSource(optionKey));
1553
- };
1554
- this.options.filter((option) => option.implied !== undefined && hasCustomOptionValue(option.attributeName()) && dualHelper.valueFromOption(this.getOptionValue(option.attributeName()), option)).forEach((option) => {
1555
- Object.keys(option.implied).filter((impliedKey) => !hasCustomOptionValue(impliedKey)).forEach((impliedKey) => {
1556
- this.setOptionValueWithSource(impliedKey, option.implied[impliedKey], "implied");
1557
- });
1558
- });
1559
- }
1560
- missingArgument(name) {
1561
- const message = `error: missing required argument '${name}'`;
1562
- this.error(message, { code: "commander.missingArgument" });
1563
- }
1564
- optionMissingArgument(option) {
1565
- const message = `error: option '${option.flags}' argument missing`;
1566
- this.error(message, { code: "commander.optionMissingArgument" });
1567
- }
1568
- missingMandatoryOptionValue(option) {
1569
- const message = `error: required option '${option.flags}' not specified`;
1570
- this.error(message, { code: "commander.missingMandatoryOptionValue" });
1571
- }
1572
- _conflictingOption(option, conflictingOption) {
1573
- const findBestOptionFromValue = (option2) => {
1574
- const optionKey = option2.attributeName();
1575
- const optionValue = this.getOptionValue(optionKey);
1576
- const negativeOption = this.options.find((target) => target.negate && optionKey === target.attributeName());
1577
- const positiveOption = this.options.find((target) => !target.negate && optionKey === target.attributeName());
1578
- if (negativeOption && (negativeOption.presetArg === undefined && optionValue === false || negativeOption.presetArg !== undefined && optionValue === negativeOption.presetArg)) {
1579
- return negativeOption;
1580
- }
1581
- return positiveOption || option2;
1582
- };
1583
- const getErrorMessage = (option2) => {
1584
- const bestOption = findBestOptionFromValue(option2);
1585
- const optionKey = bestOption.attributeName();
1586
- const source = this.getOptionValueSource(optionKey);
1587
- if (source === "env") {
1588
- return `environment variable '${bestOption.envVar}'`;
1589
- }
1590
- return `option '${bestOption.flags}'`;
1591
- };
1592
- const message = `error: ${getErrorMessage(option)} cannot be used with ${getErrorMessage(conflictingOption)}`;
1593
- this.error(message, { code: "commander.conflictingOption" });
1594
- }
1595
- unknownOption(flag) {
1596
- if (this._allowUnknownOption)
1597
- return;
1598
- let suggestion = "";
1599
- if (flag.startsWith("--") && this._showSuggestionAfterError) {
1600
- let candidateFlags = [];
1601
- let command = this;
1602
- do {
1603
- const moreFlags = command.createHelp().visibleOptions(command).filter((option) => option.long).map((option) => option.long);
1604
- candidateFlags = candidateFlags.concat(moreFlags);
1605
- command = command.parent;
1606
- } while (command && !command._enablePositionalOptions);
1607
- suggestion = suggestSimilar(flag, candidateFlags);
1608
- }
1609
- const message = `error: unknown option '${flag}'${suggestion}`;
1610
- this.error(message, { code: "commander.unknownOption" });
1611
- }
1612
- _excessArguments(receivedArgs) {
1613
- if (this._allowExcessArguments)
1614
- return;
1615
- const expected = this.registeredArguments.length;
1616
- const s = expected === 1 ? "" : "s";
1617
- const forSubcommand = this.parent ? ` for '${this.name()}'` : "";
1618
- const message = `error: too many arguments${forSubcommand}. Expected ${expected} argument${s} but got ${receivedArgs.length}.`;
1619
- this.error(message, { code: "commander.excessArguments" });
1620
- }
1621
- unknownCommand() {
1622
- const unknownName = this.args[0];
1623
- let suggestion = "";
1624
- if (this._showSuggestionAfterError) {
1625
- const candidateNames = [];
1626
- this.createHelp().visibleCommands(this).forEach((command) => {
1627
- candidateNames.push(command.name());
1628
- if (command.alias())
1629
- candidateNames.push(command.alias());
1630
- });
1631
- suggestion = suggestSimilar(unknownName, candidateNames);
1632
- }
1633
- const message = `error: unknown command '${unknownName}'${suggestion}`;
1634
- this.error(message, { code: "commander.unknownCommand" });
1635
- }
1636
- version(str, flags, description) {
1637
- if (str === undefined)
1638
- return this._version;
1639
- this._version = str;
1640
- flags = flags || "-V, --version";
1641
- description = description || "output the version number";
1642
- const versionOption = this.createOption(flags, description);
1643
- this._versionOptionName = versionOption.attributeName();
1644
- this._registerOption(versionOption);
1645
- this.on("option:" + versionOption.name(), () => {
1646
- this._outputConfiguration.writeOut(`${str}
1647
- `);
1648
- this._exit(0, "commander.version", str);
1649
- });
1650
- return this;
1651
- }
1652
- description(str, argsDescription) {
1653
- if (str === undefined && argsDescription === undefined)
1654
- return this._description;
1655
- this._description = str;
1656
- if (argsDescription) {
1657
- this._argsDescription = argsDescription;
1658
- }
1659
- return this;
1660
- }
1661
- summary(str) {
1662
- if (str === undefined)
1663
- return this._summary;
1664
- this._summary = str;
1665
- return this;
1666
- }
1667
- alias(alias) {
1668
- if (alias === undefined)
1669
- return this._aliases[0];
1670
- let command = this;
1671
- if (this.commands.length !== 0 && this.commands[this.commands.length - 1]._executableHandler) {
1672
- command = this.commands[this.commands.length - 1];
1673
- }
1674
- if (alias === command._name)
1675
- throw new Error("Command alias can't be the same as its name");
1676
- const matchingCommand = this.parent?._findCommand(alias);
1677
- if (matchingCommand) {
1678
- const existingCmd = [matchingCommand.name()].concat(matchingCommand.aliases()).join("|");
1679
- throw new Error(`cannot add alias '${alias}' to command '${this.name()}' as already have command '${existingCmd}'`);
1680
- }
1681
- command._aliases.push(alias);
1682
- return this;
1683
- }
1684
- aliases(aliases) {
1685
- if (aliases === undefined)
1686
- return this._aliases;
1687
- aliases.forEach((alias) => this.alias(alias));
1688
- return this;
1689
- }
1690
- usage(str) {
1691
- if (str === undefined) {
1692
- if (this._usage)
1693
- return this._usage;
1694
- const args = this.registeredArguments.map((arg) => {
1695
- return humanReadableArgName(arg);
1696
- });
1697
- return [].concat(this.options.length || this._helpOption !== null ? "[options]" : [], this.commands.length ? "[command]" : [], this.registeredArguments.length ? args : []).join(" ");
1698
- }
1699
- this._usage = str;
1700
- return this;
1701
- }
1702
- name(str) {
1703
- if (str === undefined)
1704
- return this._name;
1705
- this._name = str;
1706
- return this;
1707
- }
1708
- nameFromFilename(filename) {
1709
- this._name = path.basename(filename, path.extname(filename));
1710
- return this;
1711
- }
1712
- executableDir(path2) {
1713
- if (path2 === undefined)
1714
- return this._executableDir;
1715
- this._executableDir = path2;
1716
- return this;
1717
- }
1718
- helpInformation(contextOptions) {
1719
- const helper = this.createHelp();
1720
- if (helper.helpWidth === undefined) {
1721
- helper.helpWidth = contextOptions && contextOptions.error ? this._outputConfiguration.getErrHelpWidth() : this._outputConfiguration.getOutHelpWidth();
1722
- }
1723
- return helper.formatHelp(this, helper);
1724
- }
1725
- _getHelpContext(contextOptions) {
1726
- contextOptions = contextOptions || {};
1727
- const context = { error: !!contextOptions.error };
1728
- let write;
1729
- if (context.error) {
1730
- write = (arg) => this._outputConfiguration.writeErr(arg);
1731
- } else {
1732
- write = (arg) => this._outputConfiguration.writeOut(arg);
1733
- }
1734
- context.write = contextOptions.write || write;
1735
- context.command = this;
1736
- return context;
1737
- }
1738
- outputHelp(contextOptions) {
1739
- let deprecatedCallback;
1740
- if (typeof contextOptions === "function") {
1741
- deprecatedCallback = contextOptions;
1742
- contextOptions = undefined;
1743
- }
1744
- const context = this._getHelpContext(contextOptions);
1745
- this._getCommandAndAncestors().reverse().forEach((command) => command.emit("beforeAllHelp", context));
1746
- this.emit("beforeHelp", context);
1747
- let helpInformation = this.helpInformation(context);
1748
- if (deprecatedCallback) {
1749
- helpInformation = deprecatedCallback(helpInformation);
1750
- if (typeof helpInformation !== "string" && !Buffer.isBuffer(helpInformation)) {
1751
- throw new Error("outputHelp callback must return a string or a Buffer");
1752
- }
1753
- }
1754
- context.write(helpInformation);
1755
- if (this._getHelpOption()?.long) {
1756
- this.emit(this._getHelpOption().long);
1757
- }
1758
- this.emit("afterHelp", context);
1759
- this._getCommandAndAncestors().forEach((command) => command.emit("afterAllHelp", context));
1760
- }
1761
- helpOption(flags, description) {
1762
- if (typeof flags === "boolean") {
1763
- if (flags) {
1764
- this._helpOption = this._helpOption ?? undefined;
1765
- } else {
1766
- this._helpOption = null;
1767
- }
1768
- return this;
1769
- }
1770
- flags = flags ?? "-h, --help";
1771
- description = description ?? "display help for command";
1772
- this._helpOption = this.createOption(flags, description);
1773
- return this;
1774
- }
1775
- _getHelpOption() {
1776
- if (this._helpOption === undefined) {
1777
- this.helpOption(undefined, undefined);
1778
- }
1779
- return this._helpOption;
1780
- }
1781
- addHelpOption(option) {
1782
- this._helpOption = option;
1783
- return this;
1784
- }
1785
- help(contextOptions) {
1786
- this.outputHelp(contextOptions);
1787
- let exitCode = process2.exitCode || 0;
1788
- if (exitCode === 0 && contextOptions && typeof contextOptions !== "function" && contextOptions.error) {
1789
- exitCode = 1;
1790
- }
1791
- this._exit(exitCode, "commander.help", "(outputHelp)");
1792
- }
1793
- addHelpText(position, text) {
1794
- const allowedValues = ["beforeAll", "before", "after", "afterAll"];
1795
- if (!allowedValues.includes(position)) {
1796
- throw new Error(`Unexpected value for position to addHelpText.
1797
- Expecting one of '${allowedValues.join("', '")}'`);
1798
- }
1799
- const helpEvent = `${position}Help`;
1800
- this.on(helpEvent, (context) => {
1801
- let helpStr;
1802
- if (typeof text === "function") {
1803
- helpStr = text({ error: context.error, command: context.command });
1804
- } else {
1805
- helpStr = text;
1806
- }
1807
- if (helpStr) {
1808
- context.write(`${helpStr}
1809
- `);
1810
- }
1811
- });
1812
- return this;
1813
- }
1814
- _outputHelpIfRequested(args) {
1815
- const helpOption = this._getHelpOption();
1816
- const helpRequested = helpOption && args.find((arg) => helpOption.is(arg));
1817
- if (helpRequested) {
1818
- this.outputHelp();
1819
- this._exit(0, "commander.helpDisplayed", "(outputHelp)");
1820
- }
1821
- }
1822
- }
1823
- function incrementNodeInspectorPort(args) {
1824
- return args.map((arg) => {
1825
- if (!arg.startsWith("--inspect")) {
1826
- return arg;
1827
- }
1828
- let debugOption;
1829
- let debugHost = "127.0.0.1";
1830
- let debugPort = "9229";
1831
- let match;
1832
- if ((match = arg.match(/^(--inspect(-brk)?)$/)) !== null) {
1833
- debugOption = match[1];
1834
- } else if ((match = arg.match(/^(--inspect(-brk|-port)?)=([^:]+)$/)) !== null) {
1835
- debugOption = match[1];
1836
- if (/^\d+$/.test(match[3])) {
1837
- debugPort = match[3];
1838
- } else {
1839
- debugHost = match[3];
1840
- }
1841
- } else if ((match = arg.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/)) !== null) {
1842
- debugOption = match[1];
1843
- debugHost = match[3];
1844
- debugPort = match[4];
1845
- }
1846
- if (debugOption && debugPort !== "0") {
1847
- return `${debugOption}=${debugHost}:${parseInt(debugPort) + 1}`;
1848
- }
1849
- return arg;
1850
- });
1851
- }
1852
- exports.Command = Command;
1853
- });
1854
-
1855
- // ../../node_modules/commander/index.js
1856
- var require_commander = __commonJS((exports) => {
1857
- var { Argument } = require_argument();
1858
- var { Command } = require_command();
1859
- var { CommanderError, InvalidArgumentError } = require_error();
1860
- var { Help } = require_help();
1861
- var { Option } = require_option();
1862
- exports.program = new Command;
1863
- exports.createCommand = (name) => new Command(name);
1864
- exports.createOption = (flags, description) => new Option(flags, description);
1865
- exports.createArgument = (name, description) => new Argument(name, description);
1866
- exports.Command = Command;
1867
- exports.Option = Option;
1868
- exports.Argument = Argument;
1869
- exports.Help = Help;
1870
- exports.CommanderError = CommanderError;
1871
- exports.InvalidArgumentError = InvalidArgumentError;
1872
- exports.InvalidOptionArgumentError = InvalidArgumentError;
1873
- });
1874
-
1875
- // ../../node_modules/commander/esm.mjs
1876
- var import__ = __toESM(require_commander(), 1);
1877
- var {
1878
- program,
1879
- createCommand,
1880
- createArgument,
1881
- createOption,
1882
- CommanderError,
1883
- InvalidArgumentError,
1884
- InvalidOptionArgumentError,
1885
- Command,
1886
- Argument,
1887
- Option,
1888
- Help
1889
- } = import__.default;
1890
-
1891
- // ../../node_modules/chalk/source/vendor/ansi-styles/index.js
1892
- var ANSI_BACKGROUND_OFFSET = 10;
1893
- var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
1894
- var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
1895
- var wrapAnsi16m = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`;
1896
- var styles = {
1897
- modifier: {
1898
- reset: [0, 0],
1899
- bold: [1, 22],
1900
- dim: [2, 22],
1901
- italic: [3, 23],
1902
- underline: [4, 24],
1903
- overline: [53, 55],
1904
- inverse: [7, 27],
1905
- hidden: [8, 28],
1906
- strikethrough: [9, 29]
1907
- },
1908
- color: {
1909
- black: [30, 39],
1910
- red: [31, 39],
1911
- green: [32, 39],
1912
- yellow: [33, 39],
1913
- blue: [34, 39],
1914
- magenta: [35, 39],
1915
- cyan: [36, 39],
1916
- white: [37, 39],
1917
- blackBright: [90, 39],
1918
- gray: [90, 39],
1919
- grey: [90, 39],
1920
- redBright: [91, 39],
1921
- greenBright: [92, 39],
1922
- yellowBright: [93, 39],
1923
- blueBright: [94, 39],
1924
- magentaBright: [95, 39],
1925
- cyanBright: [96, 39],
1926
- whiteBright: [97, 39]
1927
- },
1928
- bgColor: {
1929
- bgBlack: [40, 49],
1930
- bgRed: [41, 49],
1931
- bgGreen: [42, 49],
1932
- bgYellow: [43, 49],
1933
- bgBlue: [44, 49],
1934
- bgMagenta: [45, 49],
1935
- bgCyan: [46, 49],
1936
- bgWhite: [47, 49],
1937
- bgBlackBright: [100, 49],
1938
- bgGray: [100, 49],
1939
- bgGrey: [100, 49],
1940
- bgRedBright: [101, 49],
1941
- bgGreenBright: [102, 49],
1942
- bgYellowBright: [103, 49],
1943
- bgBlueBright: [104, 49],
1944
- bgMagentaBright: [105, 49],
1945
- bgCyanBright: [106, 49],
1946
- bgWhiteBright: [107, 49]
1947
- }
1948
- };
1949
- var modifierNames = Object.keys(styles.modifier);
1950
- var foregroundColorNames = Object.keys(styles.color);
1951
- var backgroundColorNames = Object.keys(styles.bgColor);
1952
- var colorNames = [...foregroundColorNames, ...backgroundColorNames];
1953
- function assembleStyles() {
1954
- const codes = new Map;
1955
- for (const [groupName, group] of Object.entries(styles)) {
1956
- for (const [styleName, style] of Object.entries(group)) {
1957
- styles[styleName] = {
1958
- open: `\x1B[${style[0]}m`,
1959
- close: `\x1B[${style[1]}m`
1960
- };
1961
- group[styleName] = styles[styleName];
1962
- codes.set(style[0], style[1]);
1963
- }
1964
- Object.defineProperty(styles, groupName, {
1965
- value: group,
1966
- enumerable: false
1967
- });
1968
- }
1969
- Object.defineProperty(styles, "codes", {
1970
- value: codes,
1971
- enumerable: false
1972
- });
1973
- styles.color.close = "\x1B[39m";
1974
- styles.bgColor.close = "\x1B[49m";
1975
- styles.color.ansi = wrapAnsi16();
1976
- styles.color.ansi256 = wrapAnsi256();
1977
- styles.color.ansi16m = wrapAnsi16m();
1978
- styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
1979
- styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
1980
- styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
1981
- Object.defineProperties(styles, {
1982
- rgbToAnsi256: {
1983
- value(red, green, blue) {
1984
- if (red === green && green === blue) {
1985
- if (red < 8) {
1986
- return 16;
1987
- }
1988
- if (red > 248) {
1989
- return 231;
1990
- }
1991
- return Math.round((red - 8) / 247 * 24) + 232;
1992
- }
1993
- return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
1994
- },
1995
- enumerable: false
1996
- },
1997
- hexToRgb: {
1998
- value(hex) {
1999
- const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
2000
- if (!matches) {
2001
- return [0, 0, 0];
2002
- }
2003
- let [colorString] = matches;
2004
- if (colorString.length === 3) {
2005
- colorString = [...colorString].map((character) => character + character).join("");
2006
- }
2007
- const integer = Number.parseInt(colorString, 16);
2008
- return [
2009
- integer >> 16 & 255,
2010
- integer >> 8 & 255,
2011
- integer & 255
2012
- ];
2013
- },
2014
- enumerable: false
2015
- },
2016
- hexToAnsi256: {
2017
- value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
2018
- enumerable: false
2019
- },
2020
- ansi256ToAnsi: {
2021
- value(code) {
2022
- if (code < 8) {
2023
- return 30 + code;
2024
- }
2025
- if (code < 16) {
2026
- return 90 + (code - 8);
2027
- }
2028
- let red;
2029
- let green;
2030
- let blue;
2031
- if (code >= 232) {
2032
- red = ((code - 232) * 10 + 8) / 255;
2033
- green = red;
2034
- blue = red;
2035
- } else {
2036
- code -= 16;
2037
- const remainder = code % 36;
2038
- red = Math.floor(code / 36) / 5;
2039
- green = Math.floor(remainder / 6) / 5;
2040
- blue = remainder % 6 / 5;
2041
- }
2042
- const value = Math.max(red, green, blue) * 2;
2043
- if (value === 0) {
2044
- return 30;
2045
- }
2046
- let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
2047
- if (value === 2) {
2048
- result += 60;
2049
- }
2050
- return result;
2051
- },
2052
- enumerable: false
2053
- },
2054
- rgbToAnsi: {
2055
- value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
2056
- enumerable: false
2057
- },
2058
- hexToAnsi: {
2059
- value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
2060
- enumerable: false
2061
- }
2062
- });
2063
- return styles;
2064
- }
2065
- var ansiStyles = assembleStyles();
2066
- var ansi_styles_default = ansiStyles;
2067
-
2068
- // ../../node_modules/chalk/source/vendor/supports-color/index.js
2069
- import process2 from "process";
2070
- import os from "os";
2071
- import tty from "tty";
2072
- function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process2.argv) {
2073
- const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
2074
- const position = argv.indexOf(prefix + flag);
2075
- const terminatorPosition = argv.indexOf("--");
2076
- return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
2077
- }
2078
- var { env } = process2;
2079
- var flagForceColor;
2080
- if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
2081
- flagForceColor = 0;
2082
- } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
2083
- flagForceColor = 1;
2084
- }
2085
- function envForceColor() {
2086
- if ("FORCE_COLOR" in env) {
2087
- if (env.FORCE_COLOR === "true") {
2088
- return 1;
2089
- }
2090
- if (env.FORCE_COLOR === "false") {
2091
- return 0;
2092
- }
2093
- return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
2094
- }
2095
- }
2096
- function translateLevel(level) {
2097
- if (level === 0) {
2098
- return false;
2099
- }
2100
- return {
2101
- level,
2102
- hasBasic: true,
2103
- has256: level >= 2,
2104
- has16m: level >= 3
2105
- };
2106
- }
2107
- function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
2108
- const noFlagForceColor = envForceColor();
2109
- if (noFlagForceColor !== undefined) {
2110
- flagForceColor = noFlagForceColor;
2111
- }
2112
- const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
2113
- if (forceColor === 0) {
2114
- return 0;
2115
- }
2116
- if (sniffFlags) {
2117
- if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
2118
- return 3;
2119
- }
2120
- if (hasFlag("color=256")) {
2121
- return 2;
2122
- }
2123
- }
2124
- if ("TF_BUILD" in env && "AGENT_NAME" in env) {
2125
- return 1;
2126
- }
2127
- if (haveStream && !streamIsTTY && forceColor === undefined) {
2128
- return 0;
2129
- }
2130
- const min = forceColor || 0;
2131
- if (env.TERM === "dumb") {
2132
- return min;
2133
- }
2134
- if (process2.platform === "win32") {
2135
- const osRelease = os.release().split(".");
2136
- if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
2137
- return Number(osRelease[2]) >= 14931 ? 3 : 2;
2138
- }
2139
- return 1;
2140
- }
2141
- if ("CI" in env) {
2142
- if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => (key in env))) {
2143
- return 3;
2144
- }
2145
- if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => (sign in env)) || env.CI_NAME === "codeship") {
2146
- return 1;
2147
- }
2148
- return min;
2149
- }
2150
- if ("TEAMCITY_VERSION" in env) {
2151
- return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
2152
- }
2153
- if (env.COLORTERM === "truecolor") {
2154
- return 3;
2155
- }
2156
- if (env.TERM === "xterm-kitty") {
2157
- return 3;
2158
- }
2159
- if (env.TERM === "xterm-ghostty") {
2160
- return 3;
2161
- }
2162
- if (env.TERM === "wezterm") {
2163
- return 3;
2164
- }
2165
- if ("TERM_PROGRAM" in env) {
2166
- const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
2167
- switch (env.TERM_PROGRAM) {
2168
- case "iTerm.app": {
2169
- return version >= 3 ? 3 : 2;
2170
- }
2171
- case "Apple_Terminal": {
2172
- return 2;
2173
- }
2174
- }
2175
- }
2176
- if (/-256(color)?$/i.test(env.TERM)) {
2177
- return 2;
2178
- }
2179
- if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
2180
- return 1;
2181
- }
2182
- if ("COLORTERM" in env) {
2183
- return 1;
2184
- }
2185
- return min;
2186
- }
2187
- function createSupportsColor(stream, options = {}) {
2188
- const level = _supportsColor(stream, {
2189
- streamIsTTY: stream && stream.isTTY,
2190
- ...options
2191
- });
2192
- return translateLevel(level);
2193
- }
2194
- var supportsColor = {
2195
- stdout: createSupportsColor({ isTTY: tty.isatty(1) }),
2196
- stderr: createSupportsColor({ isTTY: tty.isatty(2) })
2197
- };
2198
- var supports_color_default = supportsColor;
2199
-
2200
- // ../../node_modules/chalk/source/utilities.js
2201
- function stringReplaceAll(string, substring, replacer) {
2202
- let index = string.indexOf(substring);
2203
- if (index === -1) {
2204
- return string;
2205
- }
2206
- const substringLength = substring.length;
2207
- let endIndex = 0;
2208
- let returnValue = "";
2209
- do {
2210
- returnValue += string.slice(endIndex, index) + substring + replacer;
2211
- endIndex = index + substringLength;
2212
- index = string.indexOf(substring, endIndex);
2213
- } while (index !== -1);
2214
- returnValue += string.slice(endIndex);
2215
- return returnValue;
2216
- }
2217
- function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
2218
- let endIndex = 0;
2219
- let returnValue = "";
2220
- do {
2221
- const gotCR = string[index - 1] === "\r";
2222
- returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? `\r
2223
- ` : `
2224
- `) + postfix;
2225
- endIndex = index + 1;
2226
- index = string.indexOf(`
2227
- `, endIndex);
2228
- } while (index !== -1);
2229
- returnValue += string.slice(endIndex);
2230
- return returnValue;
2231
- }
2232
-
2233
- // ../../node_modules/chalk/source/index.js
2234
- var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default;
2235
- var GENERATOR = Symbol("GENERATOR");
2236
- var STYLER = Symbol("STYLER");
2237
- var IS_EMPTY = Symbol("IS_EMPTY");
2238
- var levelMapping = [
2239
- "ansi",
2240
- "ansi",
2241
- "ansi256",
2242
- "ansi16m"
2243
- ];
2244
- var styles2 = Object.create(null);
2245
- var applyOptions = (object, options = {}) => {
2246
- if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
2247
- throw new Error("The `level` option should be an integer from 0 to 3");
2248
- }
2249
- const colorLevel = stdoutColor ? stdoutColor.level : 0;
2250
- object.level = options.level === undefined ? colorLevel : options.level;
2251
- };
2252
- var chalkFactory = (options) => {
2253
- const chalk = (...strings) => strings.join(" ");
2254
- applyOptions(chalk, options);
2255
- Object.setPrototypeOf(chalk, createChalk.prototype);
2256
- return chalk;
2257
- };
2258
- function createChalk(options) {
2259
- return chalkFactory(options);
2260
- }
2261
- Object.setPrototypeOf(createChalk.prototype, Function.prototype);
2262
- for (const [styleName, style] of Object.entries(ansi_styles_default)) {
2263
- styles2[styleName] = {
2264
- get() {
2265
- const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
2266
- Object.defineProperty(this, styleName, { value: builder });
2267
- return builder;
2268
- }
2269
- };
2270
- }
2271
- styles2.visible = {
2272
- get() {
2273
- const builder = createBuilder(this, this[STYLER], true);
2274
- Object.defineProperty(this, "visible", { value: builder });
2275
- return builder;
2276
- }
2277
- };
2278
- var getModelAnsi = (model, level, type, ...arguments_) => {
2279
- if (model === "rgb") {
2280
- if (level === "ansi16m") {
2281
- return ansi_styles_default[type].ansi16m(...arguments_);
2282
- }
2283
- if (level === "ansi256") {
2284
- return ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
2285
- }
2286
- return ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
2287
- }
2288
- if (model === "hex") {
2289
- return getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_));
2290
- }
2291
- return ansi_styles_default[type][model](...arguments_);
2292
- };
2293
- var usedModels = ["rgb", "hex", "ansi256"];
2294
- for (const model of usedModels) {
2295
- styles2[model] = {
2296
- get() {
2297
- const { level } = this;
2298
- return function(...arguments_) {
2299
- const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
2300
- return createBuilder(this, styler, this[IS_EMPTY]);
2301
- };
2302
- }
2303
- };
2304
- const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
2305
- styles2[bgModel] = {
2306
- get() {
2307
- const { level } = this;
2308
- return function(...arguments_) {
2309
- const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
2310
- return createBuilder(this, styler, this[IS_EMPTY]);
2311
- };
2312
- }
2313
- };
2314
- }
2315
- var proto = Object.defineProperties(() => {}, {
2316
- ...styles2,
2317
- level: {
2318
- enumerable: true,
2319
- get() {
2320
- return this[GENERATOR].level;
2321
- },
2322
- set(level) {
2323
- this[GENERATOR].level = level;
2324
- }
2325
- }
2326
- });
2327
- var createStyler = (open, close, parent) => {
2328
- let openAll;
2329
- let closeAll;
2330
- if (parent === undefined) {
2331
- openAll = open;
2332
- closeAll = close;
2333
- } else {
2334
- openAll = parent.openAll + open;
2335
- closeAll = close + parent.closeAll;
2336
- }
2337
- return {
2338
- open,
2339
- close,
2340
- openAll,
2341
- closeAll,
2342
- parent
2343
- };
2344
- };
2345
- var createBuilder = (self, _styler, _isEmpty) => {
2346
- const builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
2347
- Object.setPrototypeOf(builder, proto);
2348
- builder[GENERATOR] = self;
2349
- builder[STYLER] = _styler;
2350
- builder[IS_EMPTY] = _isEmpty;
2351
- return builder;
2352
- };
2353
- var applyStyle = (self, string) => {
2354
- if (self.level <= 0 || !string) {
2355
- return self[IS_EMPTY] ? "" : string;
2356
- }
2357
- let styler = self[STYLER];
2358
- if (styler === undefined) {
2359
- return string;
2360
- }
2361
- const { openAll, closeAll } = styler;
2362
- if (string.includes("\x1B")) {
2363
- while (styler !== undefined) {
2364
- string = stringReplaceAll(string, styler.close, styler.open);
2365
- styler = styler.parent;
2366
- }
2367
- }
2368
- const lfIndex = string.indexOf(`
2369
- `);
2370
- if (lfIndex !== -1) {
2371
- string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
2372
- }
2373
- return openAll + string + closeAll;
2374
- };
2375
- Object.defineProperties(createChalk.prototype, styles2);
2376
- var chalk = createChalk();
2377
- var chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
2378
- var source_default = chalk;
2379
-
2380
- // src/types/index.ts
2381
- class GitHubApiError extends Error {
2382
- statusCode;
2383
- errors;
2384
- documentationUrl;
2385
- constructor(message, statusCode, errors, documentationUrl) {
2386
- super(message);
2387
- this.name = "GitHubApiError";
2388
- this.statusCode = statusCode;
2389
- this.errors = errors;
2390
- this.documentationUrl = documentationUrl;
2391
- }
2392
- }
2393
-
2394
- // src/api/client.ts
2395
- var DEFAULT_BASE_URL = "https://api.github.com";
2396
- var API_VERSION = "2022-11-28";
2397
-
2398
- class GitHubClient {
2399
- token;
2400
- baseUrl;
2401
- constructor(config) {
2402
- if (!config.token) {
2403
- throw new Error("GitHub token is required");
2404
- }
2405
- this.token = config.token;
2406
- this.baseUrl = config.baseUrl || DEFAULT_BASE_URL;
2407
- }
2408
- buildUrl(path, params) {
2409
- const url = new URL(`${this.baseUrl}${path}`);
2410
- if (params) {
2411
- Object.entries(params).forEach(([key, value]) => {
2412
- if (value !== undefined && value !== null && value !== "") {
2413
- url.searchParams.append(key, String(value));
2414
- }
2415
- });
2416
- }
2417
- return url.toString();
2418
- }
2419
- async request(path, options = {}) {
2420
- const { method = "GET", params, body, headers = {} } = options;
2421
- const url = this.buildUrl(path, params);
2422
- const requestHeaders = {
2423
- Authorization: `Bearer ${this.token}`,
2424
- Accept: "application/vnd.github+json",
2425
- "X-GitHub-Api-Version": API_VERSION,
2426
- ...headers
2427
- };
2428
- if (body && ["POST", "PUT", "PATCH"].includes(method)) {
2429
- requestHeaders["Content-Type"] = "application/json";
2430
- }
2431
- const fetchOptions = {
2432
- method,
2433
- headers: requestHeaders
2434
- };
2435
- if (body && ["POST", "PUT", "PATCH"].includes(method)) {
2436
- fetchOptions.body = typeof body === "string" ? body : JSON.stringify(body);
2437
- }
2438
- const response = await fetch(url, fetchOptions);
2439
- if (response.status === 204) {
2440
- return {};
2441
- }
2442
- let data;
2443
- const contentType = response.headers.get("content-type") || "";
2444
- if (contentType.includes("application/json") || contentType.includes("application/vnd.github")) {
2445
- const text = await response.text();
2446
- if (text) {
2447
- try {
2448
- data = JSON.parse(text);
2449
- } catch {
2450
- data = text;
2451
- }
2452
- }
2453
- } else {
2454
- data = await response.text();
2455
- }
2456
- if (!response.ok) {
2457
- const errorData = data;
2458
- const errorMessage = errorData?.message || response.statusText;
2459
- throw new GitHubApiError(errorMessage, response.status, errorData?.errors, errorData?.documentation_url);
2460
- }
2461
- return data;
2462
- }
2463
- async get(path, params) {
2464
- return this.request(path, { method: "GET", params });
2465
- }
2466
- async post(path, body, params) {
2467
- return this.request(path, { method: "POST", body, params });
2468
- }
2469
- async put(path, body, params) {
2470
- return this.request(path, { method: "PUT", body, params });
2471
- }
2472
- async patch(path, body, params) {
2473
- return this.request(path, { method: "PATCH", body, params });
2474
- }
2475
- async delete(path, params) {
2476
- return this.request(path, { method: "DELETE", params });
2477
- }
2478
- getTokenPreview() {
2479
- if (this.token.length > 10) {
2480
- return `${this.token.substring(0, 6)}...${this.token.substring(this.token.length - 4)}`;
2481
- }
2482
- return "***";
2483
- }
2484
- }
2485
-
2486
- // src/api/repos.ts
2487
- class ReposApi {
2488
- client;
2489
- constructor(client) {
2490
- this.client = client;
2491
- }
2492
- async get(owner, repo) {
2493
- return this.client.get(`/repos/${owner}/${repo}`);
2494
- }
2495
- async list(username, options) {
2496
- return this.client.get(`/users/${username}/repos`, options);
2497
- }
2498
- async listOrg(org, options) {
2499
- return this.client.get(`/orgs/${org}/repos`, options);
2500
- }
2501
- async listForAuthenticatedUser(options) {
2502
- return this.client.get("/user/repos", options);
2503
- }
2504
- async create(name, options) {
2505
- return this.client.post("/user/repos", {
2506
- name,
2507
- ...options
2508
- });
2509
- }
2510
- async createInOrg(org, name, options) {
2511
- return this.client.post(`/orgs/${org}/repos`, {
2512
- name,
2513
- ...options
2514
- });
2515
- }
2516
- async delete(owner, repo) {
2517
- await this.client.delete(`/repos/${owner}/${repo}`);
2518
- }
2519
- async getContent(owner, repo, path, options) {
2520
- return this.client.get(`/repos/${owner}/${repo}/contents/${path}`, options);
2521
- }
2522
- async createOrUpdateFile(owner, repo, path, options) {
2523
- return this.client.put(`/repos/${owner}/${repo}/contents/${path}`, options);
2524
- }
2525
- async deleteFile(owner, repo, path, options) {
2526
- return this.client.delete(`/repos/${owner}/${repo}/contents/${path}`, options);
2527
- }
2528
- async listCommits(owner, repo, options) {
2529
- return this.client.get(`/repos/${owner}/${repo}/commits`, options);
2530
- }
2531
- async getCommit(owner, repo, ref) {
2532
- return this.client.get(`/repos/${owner}/${repo}/commits/${ref}`);
2533
- }
2534
- async listBranches(owner, repo, options) {
2535
- return this.client.get(`/repos/${owner}/${repo}/branches`, options);
2536
- }
2537
- async listTopics(owner, repo) {
2538
- return this.client.get(`/repos/${owner}/${repo}/topics`);
2539
- }
2540
- async replaceTopics(owner, repo, names) {
2541
- return this.client.put(`/repos/${owner}/${repo}/topics`, { names });
2542
- }
2543
- }
2544
-
2545
- // src/api/issues.ts
2546
- class IssuesApi {
2547
- client;
2548
- constructor(client) {
2549
- this.client = client;
2550
- }
2551
- async list(owner, repo, options) {
2552
- return this.client.get(`/repos/${owner}/${repo}/issues`, options);
2553
- }
2554
- async get(owner, repo, issueNumber) {
2555
- return this.client.get(`/repos/${owner}/${repo}/issues/${issueNumber}`);
2556
- }
2557
- async create(owner, repo, title, body, options) {
2558
- return this.client.post(`/repos/${owner}/${repo}/issues`, {
2559
- title,
2560
- body,
2561
- ...options
2562
- });
2563
- }
2564
- async update(owner, repo, issueNumber, options) {
2565
- return this.client.patch(`/repos/${owner}/${repo}/issues/${issueNumber}`, options);
2566
- }
2567
- async lock(owner, repo, issueNumber, lockReason) {
2568
- await this.client.put(`/repos/${owner}/${repo}/issues/${issueNumber}/lock`, {
2569
- lock_reason: lockReason
2570
- });
2571
- }
2572
- async unlock(owner, repo, issueNumber) {
2573
- await this.client.delete(`/repos/${owner}/${repo}/issues/${issueNumber}/lock`);
2574
- }
2575
- async listComments(owner, repo, issueNumber, options) {
2576
- return this.client.get(`/repos/${owner}/${repo}/issues/${issueNumber}/comments`, options);
2577
- }
2578
- async getComment(owner, repo, commentId) {
2579
- return this.client.get(`/repos/${owner}/${repo}/issues/comments/${commentId}`);
2580
- }
2581
- async createComment(owner, repo, issueNumber, body) {
2582
- return this.client.post(`/repos/${owner}/${repo}/issues/${issueNumber}/comments`, { body });
2583
- }
2584
- async updateComment(owner, repo, commentId, body) {
2585
- return this.client.patch(`/repos/${owner}/${repo}/issues/comments/${commentId}`, { body });
2586
- }
2587
- async deleteComment(owner, repo, commentId) {
2588
- await this.client.delete(`/repos/${owner}/${repo}/issues/comments/${commentId}`);
2589
- }
2590
- async addLabels(owner, repo, issueNumber, labels) {
2591
- await this.client.post(`/repos/${owner}/${repo}/issues/${issueNumber}/labels`, { labels });
2592
- }
2593
- async removeLabel(owner, repo, issueNumber, label) {
2594
- await this.client.delete(`/repos/${owner}/${repo}/issues/${issueNumber}/labels/${label}`);
2595
- }
2596
- async addAssignees(owner, repo, issueNumber, assignees) {
2597
- return this.client.post(`/repos/${owner}/${repo}/issues/${issueNumber}/assignees`, { assignees });
2598
- }
2599
- async removeAssignees(owner, repo, issueNumber, assignees) {
2600
- return this.client.request(`/repos/${owner}/${repo}/issues/${issueNumber}/assignees`, { method: "DELETE", body: { assignees } });
2601
- }
2602
- }
2603
-
2604
- // src/api/pulls.ts
2605
- class PullsApi {
2606
- client;
2607
- constructor(client) {
2608
- this.client = client;
2609
- }
2610
- async list(owner, repo, options) {
2611
- return this.client.get(`/repos/${owner}/${repo}/pulls`, options);
2612
- }
2613
- async get(owner, repo, prNumber) {
2614
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}`);
2615
- }
2616
- async create(owner, repo, title, head, base, body, options) {
2617
- return this.client.post(`/repos/${owner}/${repo}/pulls`, {
2618
- title,
2619
- head,
2620
- base,
2621
- body,
2622
- ...options
2623
- });
2624
- }
2625
- async update(owner, repo, prNumber, options) {
2626
- return this.client.patch(`/repos/${owner}/${repo}/pulls/${prNumber}`, options);
2627
- }
2628
- async merge(owner, repo, prNumber, options) {
2629
- return this.client.put(`/repos/${owner}/${repo}/pulls/${prNumber}/merge`, options || {});
2630
- }
2631
- async isMerged(owner, repo, prNumber) {
2632
- try {
2633
- await this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/merge`);
2634
- return true;
2635
- } catch {
2636
- return false;
2637
- }
2638
- }
2639
- async listCommits(owner, repo, prNumber, options) {
2640
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/commits`, options);
2641
- }
2642
- async listFiles(owner, repo, prNumber, options) {
2643
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/files`, options);
2644
- }
2645
- async listReviews(owner, repo, prNumber, options) {
2646
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/reviews`, options);
2647
- }
2648
- async getReview(owner, repo, prNumber, reviewId) {
2649
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/reviews/${reviewId}`);
2650
- }
2651
- async createReview(owner, repo, prNumber, body, event, options) {
2652
- return this.client.post(`/repos/${owner}/${repo}/pulls/${prNumber}/reviews`, {
2653
- body,
2654
- event,
2655
- ...options
2656
- });
2657
- }
2658
- async submitReview(owner, repo, prNumber, reviewId, event, body) {
2659
- return this.client.post(`/repos/${owner}/${repo}/pulls/${prNumber}/reviews/${reviewId}/events`, { event, body });
2660
- }
2661
- async dismissReview(owner, repo, prNumber, reviewId, message) {
2662
- return this.client.put(`/repos/${owner}/${repo}/pulls/${prNumber}/reviews/${reviewId}/dismissals`, { message });
2663
- }
2664
- async listReviewComments(owner, repo, prNumber, options) {
2665
- return this.client.get(`/repos/${owner}/${repo}/pulls/${prNumber}/comments`, options);
2666
- }
2667
- async requestReviewers(owner, repo, prNumber, reviewers, teamReviewers) {
2668
- return this.client.post(`/repos/${owner}/${repo}/pulls/${prNumber}/requested_reviewers`, {
2669
- reviewers,
2670
- team_reviewers: teamReviewers
2671
- });
2672
- }
2673
- async removeRequestedReviewers(owner, repo, prNumber, reviewers, teamReviewers) {
2674
- await this.client.request(`/repos/${owner}/${repo}/pulls/${prNumber}/requested_reviewers`, { method: "DELETE", body: { reviewers, team_reviewers: teamReviewers } });
2675
- }
2676
- }
2677
-
2678
- // src/api/users.ts
2679
- class UsersApi {
2680
- client;
2681
- constructor(client) {
2682
- this.client = client;
2683
- }
2684
- async getAuthenticated() {
2685
- return this.client.get("/user");
2686
- }
2687
- async get(username) {
2688
- return this.client.get(`/users/${username}`);
2689
- }
2690
- async listFollowers(username, options) {
2691
- return this.client.get(`/users/${username}/followers`, options);
2692
- }
2693
- async listFollowing(username, options) {
2694
- return this.client.get(`/users/${username}/following`, options);
2695
- }
2696
- async listMyFollowers(options) {
2697
- return this.client.get("/user/followers", options);
2698
- }
2699
- async listMyFollowing(options) {
2700
- return this.client.get("/user/following", options);
2701
- }
2702
- async isFollowing(username) {
2703
- try {
2704
- await this.client.get(`/user/following/${username}`);
2705
- return true;
2706
- } catch {
2707
- return false;
2708
- }
2709
- }
2710
- async checkFollowing(username, targetUser) {
2711
- try {
2712
- await this.client.get(`/users/${username}/following/${targetUser}`);
2713
- return true;
2714
- } catch {
2715
- return false;
2716
- }
2717
- }
2718
- async follow(username) {
2719
- await this.client.put(`/user/following/${username}`, {});
2720
- }
2721
- async unfollow(username) {
2722
- await this.client.delete(`/user/following/${username}`);
2723
- }
2724
- async listEmails(options) {
2725
- return this.client.get("/user/emails", options);
2726
- }
2727
- async listPublicEmails(options) {
2728
- return this.client.get("/user/public_emails", options);
2729
- }
2730
- async update(options) {
2731
- return this.client.patch("/user", options);
2732
- }
2733
- }
2734
-
2735
- // src/api/index.ts
2736
- class GitHub {
2737
- client;
2738
- repos;
2739
- issues;
2740
- pulls;
2741
- users;
2742
- constructor(config) {
2743
- this.client = new GitHubClient(config);
2744
- this.repos = new ReposApi(this.client);
2745
- this.issues = new IssuesApi(this.client);
2746
- this.pulls = new PullsApi(this.client);
2747
- this.users = new UsersApi(this.client);
2748
- }
2749
- static fromEnv() {
2750
- const token = process.env.GITHUB_TOKEN;
2751
- if (!token) {
2752
- throw new Error("GITHUB_TOKEN environment variable is required");
2753
- }
2754
- const baseUrl = process.env.GITHUB_BASE_URL;
2755
- return new GitHub({ token, baseUrl });
2756
- }
2757
- getTokenPreview() {
2758
- return this.client.getTokenPreview();
2759
- }
2760
- getClient() {
2761
- return this.client;
2762
- }
2763
- }
2764
-
2765
- // src/utils/config.ts
2766
- import { existsSync, readFileSync, writeFileSync, mkdirSync, readdirSync, rmSync } from "fs";
2767
- import { homedir } from "os";
2768
- import { join } from "path";
2769
- var CONNECTOR_NAME = "connect-github";
2770
- var DEFAULT_PROFILE = "default";
2771
- var profileOverride;
2772
- var CONFIG_DIR = join(homedir(), ".connect", CONNECTOR_NAME);
2773
- var PROFILES_DIR = join(CONFIG_DIR, "profiles");
2774
- var CURRENT_PROFILE_FILE = join(CONFIG_DIR, "current_profile");
2775
- function setProfileOverride(profile) {
2776
- profileOverride = profile;
2777
- }
2778
- function ensureConfigDir() {
2779
- if (!existsSync(CONFIG_DIR)) {
2780
- mkdirSync(CONFIG_DIR, { recursive: true });
2781
- }
2782
- if (!existsSync(PROFILES_DIR)) {
2783
- mkdirSync(PROFILES_DIR, { recursive: true });
2784
- }
2785
- }
2786
- function getProfilePath(profile) {
2787
- return join(PROFILES_DIR, `${profile}.json`);
2788
- }
2789
- function getCurrentProfile() {
2790
- if (profileOverride) {
2791
- return profileOverride;
2792
- }
2793
- ensureConfigDir();
2794
- if (existsSync(CURRENT_PROFILE_FILE)) {
2795
- try {
2796
- const profile = readFileSync(CURRENT_PROFILE_FILE, "utf-8").trim();
2797
- if (profile && profileExists(profile)) {
2798
- return profile;
2799
- }
2800
- } catch {}
2801
- }
2802
- return DEFAULT_PROFILE;
2803
- }
2804
- function setCurrentProfile(profile) {
2805
- ensureConfigDir();
2806
- if (!profileExists(profile) && profile !== DEFAULT_PROFILE) {
2807
- throw new Error(`Profile "${profile}" does not exist`);
2808
- }
2809
- writeFileSync(CURRENT_PROFILE_FILE, profile);
2810
- }
2811
- function profileExists(profile) {
2812
- return existsSync(getProfilePath(profile));
2813
- }
2814
- function listProfiles() {
2815
- ensureConfigDir();
2816
- if (!existsSync(PROFILES_DIR)) {
2817
- return [];
2818
- }
2819
- return readdirSync(PROFILES_DIR).filter((f) => f.endsWith(".json")).map((f) => f.replace(".json", "")).sort();
2820
- }
2821
- function createProfile(profile, config = {}) {
2822
- ensureConfigDir();
2823
- if (profileExists(profile)) {
2824
- return false;
2825
- }
2826
- if (!/^[a-zA-Z0-9_-]+$/.test(profile)) {
2827
- throw new Error("Profile name can only contain letters, numbers, hyphens, and underscores");
2828
- }
2829
- writeFileSync(getProfilePath(profile), JSON.stringify(config, null, 2));
2830
- return true;
2831
- }
2832
- function deleteProfile(profile) {
2833
- if (profile === DEFAULT_PROFILE) {
2834
- return false;
2835
- }
2836
- if (!profileExists(profile)) {
2837
- return false;
2838
- }
2839
- if (getCurrentProfile() === profile) {
2840
- setCurrentProfile(DEFAULT_PROFILE);
2841
- }
2842
- rmSync(getProfilePath(profile));
2843
- return true;
2844
- }
2845
- function loadProfile(profile) {
2846
- ensureConfigDir();
2847
- const profileName = profile || getCurrentProfile();
2848
- const profilePath = getProfilePath(profileName);
2849
- if (!existsSync(profilePath)) {
2850
- return {};
2851
- }
2852
- try {
2853
- return JSON.parse(readFileSync(profilePath, "utf-8"));
2854
- } catch {
2855
- return {};
2856
- }
2857
- }
2858
- function saveProfile(config, profile) {
2859
- ensureConfigDir();
2860
- const profileName = profile || getCurrentProfile();
2861
- writeFileSync(getProfilePath(profileName), JSON.stringify(config, null, 2));
2862
- }
2863
- function getToken() {
2864
- return process.env.GITHUB_TOKEN || loadProfile().token;
2865
- }
2866
- function setToken(token) {
2867
- const config = loadProfile();
2868
- config.token = token;
2869
- saveProfile(config);
2870
- }
2871
- function clearConfig() {
2872
- saveProfile({});
2873
- }
2874
- function getConfigDir() {
2875
- return CONFIG_DIR;
2876
- }
2877
-
2878
- // src/utils/output.ts
2879
- function formatOutput(data, format = "pretty") {
2880
- switch (format) {
2881
- case "json":
2882
- return JSON.stringify(data, null, 2);
2883
- case "table":
2884
- return formatAsTable(data);
2885
- case "pretty":
2886
- default:
2887
- return formatPretty(data);
2888
- }
2889
- }
2890
- function formatAsTable(data) {
2891
- if (!Array.isArray(data)) {
2892
- data = [data];
2893
- }
2894
- const items = data;
2895
- if (items.length === 0) {
2896
- return "No data";
2897
- }
2898
- const firstItem = items[0];
2899
- if (!firstItem || typeof firstItem !== "object") {
2900
- return "No data";
2901
- }
2902
- const keys = Object.keys(firstItem);
2903
- const colWidths = keys.map((key) => {
2904
- const maxValue = Math.max(key.length, ...items.map((item) => String(item[key] ?? "").length));
2905
- return Math.min(maxValue, 40);
2906
- });
2907
- const header = keys.map((key, i) => key.padEnd(colWidths[i] ?? 10)).join(" | ");
2908
- const separator = colWidths.map((w) => "-".repeat(w)).join("-+-");
2909
- const rows = items.map((item) => keys.map((key, i) => {
2910
- const value = String(item[key] ?? "");
2911
- const width = colWidths[i] ?? 10;
2912
- return value.length > width ? value.substring(0, width - 3) + "..." : value.padEnd(width);
2913
- }).join(" | "));
2914
- return [header, separator, ...rows].join(`
2915
- `);
2916
- }
2917
- function formatPretty(data) {
2918
- if (Array.isArray(data)) {
2919
- return data.map((item, i) => `${source_default.cyan(`[${i + 1}]`)} ${formatPrettyItem(item)}`).join(`
2920
-
2921
- `);
2922
- }
2923
- return formatPrettyItem(data);
2924
- }
2925
- function formatPrettyItem(item, indent = 0) {
2926
- if (item === null || item === undefined) {
2927
- return source_default.gray("null");
2928
- }
2929
- if (typeof item !== "object") {
2930
- return String(item);
2931
- }
2932
- const spaces = " ".repeat(indent);
2933
- const entries = Object.entries(item);
2934
- return entries.map(([key, value]) => {
2935
- if (Array.isArray(value)) {
2936
- if (value.length === 0) {
2937
- return `${spaces}${source_default.blue(key)}: ${source_default.gray("[]")}`;
2938
- }
2939
- if (typeof value[0] === "object") {
2940
- return `${spaces}${source_default.blue(key)}:
2941
- ${value.map((v) => formatPrettyItem(v, indent + 1)).join(`
2942
- `)}`;
2943
- }
2944
- return `${spaces}${source_default.blue(key)}: ${value.join(", ")}`;
2945
- }
2946
- if (typeof value === "object" && value !== null) {
2947
- return `${spaces}${source_default.blue(key)}:
2948
- ${formatPrettyItem(value, indent + 1)}`;
2949
- }
2950
- return `${spaces}${source_default.blue(key)}: ${source_default.white(String(value))}`;
2951
- }).join(`
2952
- `);
2953
- }
2954
- function success(message) {
2955
- console.log(source_default.green("\u2713"), message);
2956
- }
2957
- function error(message) {
2958
- console.error(source_default.red("\u2717"), message);
2959
- }
2960
- function warn(message) {
2961
- console.warn(source_default.yellow("\u26A0"), message);
2962
- }
2963
- function info(message) {
2964
- console.log(source_default.blue("\u2139"), message);
2965
- }
2966
- function print(data, format = "pretty") {
2967
- console.log(formatOutput(data, format));
2968
- }
2969
-
2970
- // src/cli/index.ts
2971
- var CONNECTOR_NAME2 = "connect-github";
2972
- var VERSION = "0.0.1";
2973
- var program2 = new Command;
2974
- program2.name(CONNECTOR_NAME2).description("GitHub API connector CLI").version(VERSION).option("-t, --token <token>", "GitHub token (overrides config)").option("-f, --format <format>", "Output format (json, pretty)", "pretty").option("-p, --profile <profile>", "Use a specific profile").hook("preAction", (thisCommand) => {
2975
- const opts = thisCommand.opts();
2976
- if (opts.profile) {
2977
- if (!profileExists(opts.profile)) {
2978
- error(`Profile "${opts.profile}" does not exist. Create it with "${CONNECTOR_NAME2} profile create ${opts.profile}"`);
2979
- process.exit(1);
2980
- }
2981
- setProfileOverride(opts.profile);
2982
- }
2983
- if (opts.token) {
2984
- process.env.GITHUB_TOKEN = opts.token;
2985
- }
2986
- });
2987
- function getFormat(cmd) {
2988
- const parent = cmd.parent;
2989
- return parent?.opts().format || "pretty";
2990
- }
2991
- function getClient() {
2992
- const token = getToken();
2993
- if (!token) {
2994
- error(`No GitHub token configured. Run "${CONNECTOR_NAME2} config set-token <token>" or set GITHUB_TOKEN environment variable.`);
2995
- process.exit(1);
2996
- }
2997
- return new GitHub({ token });
2998
- }
2999
- var profileCmd = program2.command("profile").description("Manage configuration profiles");
3000
- profileCmd.command("list").description("List all profiles").action(() => {
3001
- const profiles = listProfiles();
3002
- const current = getCurrentProfile();
3003
- if (profiles.length === 0) {
3004
- info('No profiles found. Use "profile create <name>" to create one.');
3005
- return;
3006
- }
3007
- success(`Profiles:`);
3008
- profiles.forEach((p) => {
3009
- const isActive = p === current ? source_default.green(" (active)") : "";
3010
- console.log(` ${p}${isActive}`);
3011
- });
3012
- });
3013
- profileCmd.command("use <name>").description("Switch to a profile").action((name) => {
3014
- if (!profileExists(name)) {
3015
- error(`Profile "${name}" does not exist. Create it with "profile create ${name}"`);
3016
- process.exit(1);
3017
- }
3018
- setCurrentProfile(name);
3019
- success(`Switched to profile: ${name}`);
3020
- });
3021
- profileCmd.command("create <name>").description("Create a new profile").option("--token <token>", "GitHub token").option("--use", "Switch to this profile after creation").action((name, opts) => {
3022
- if (profileExists(name)) {
3023
- error(`Profile "${name}" already exists`);
3024
- process.exit(1);
3025
- }
3026
- createProfile(name, {
3027
- token: opts.token
3028
- });
3029
- success(`Profile "${name}" created`);
3030
- if (opts.use) {
3031
- setCurrentProfile(name);
3032
- info(`Switched to profile: ${name}`);
3033
- }
3034
- });
3035
- profileCmd.command("delete <name>").description("Delete a profile").action((name) => {
3036
- if (name === "default") {
3037
- error("Cannot delete the default profile");
3038
- process.exit(1);
3039
- }
3040
- if (deleteProfile(name)) {
3041
- success(`Profile "${name}" deleted`);
3042
- } else {
3043
- error(`Profile "${name}" not found`);
3044
- process.exit(1);
3045
- }
3046
- });
3047
- profileCmd.command("show [name]").description("Show profile configuration").action((name) => {
3048
- const profileName = name || getCurrentProfile();
3049
- const config = loadProfile(profileName);
3050
- const active = getCurrentProfile();
3051
- console.log(source_default.bold(`Profile: ${profileName}${profileName === active ? source_default.green(" (active)") : ""}`));
3052
- info(`Token: ${config.token ? `${config.token.substring(0, 8)}...` : source_default.gray("not set")}`);
3053
- });
3054
- var configCmd = program2.command("config").description("Manage CLI configuration (for active profile)");
3055
- configCmd.command("set-token <token>").description("Set GitHub token").action((token) => {
3056
- setToken(token);
3057
- success(`Token saved to profile: ${getCurrentProfile()}`);
3058
- });
3059
- configCmd.command("show").description("Show current configuration").action(() => {
3060
- const profileName = getCurrentProfile();
3061
- const token = getToken();
3062
- console.log(source_default.bold(`Active Profile: ${profileName}`));
3063
- info(`Config directory: ${getConfigDir()}`);
3064
- info(`Token: ${token ? `${token.substring(0, 8)}...` : source_default.gray("not set")}`);
3065
- });
3066
- configCmd.command("clear").description("Clear configuration for active profile").action(() => {
3067
- clearConfig();
3068
- success(`Configuration cleared for profile: ${getCurrentProfile()}`);
3069
- });
3070
- var repoCmd = program2.command("repo").description("Manage repositories");
3071
- repoCmd.command("list [owner]").description("List repositories for a user/org (defaults to authenticated user)").option("--org", "Treat owner as an organization").option("-n, --per-page <number>", "Results per page", "30").option("--page <number>", "Page number", "1").option("--sort <sort>", "Sort by: created, updated, pushed, full_name", "updated").action(async (owner, opts) => {
3072
- try {
3073
- const client = getClient();
3074
- let repos;
3075
- if (!owner) {
3076
- repos = await client.repos.listForAuthenticatedUser({
3077
- per_page: parseInt(opts.perPage),
3078
- page: parseInt(opts.page),
3079
- sort: opts.sort
3080
- });
3081
- } else if (opts.org) {
3082
- repos = await client.repos.listOrg(owner, {
3083
- per_page: parseInt(opts.perPage),
3084
- page: parseInt(opts.page),
3085
- sort: opts.sort
3086
- });
3087
- } else {
3088
- repos = await client.repos.list(owner, {
3089
- per_page: parseInt(opts.perPage),
3090
- page: parseInt(opts.page),
3091
- sort: opts.sort
3092
- });
3093
- }
3094
- if (getFormat(repoCmd) === "json") {
3095
- print(repos, "json");
3096
- } else {
3097
- if (repos.length === 0) {
3098
- info("No repositories found");
3099
- return;
3100
- }
3101
- repos.forEach((repo) => {
3102
- const visibility = repo.private ? source_default.yellow("private") : source_default.green("public");
3103
- const stars = repo.stargazers_count > 0 ? source_default.yellow(`* ${repo.stargazers_count}`) : "";
3104
- console.log(`${source_default.cyan(repo.full_name)} ${visibility} ${stars}`);
3105
- if (repo.description) {
3106
- console.log(` ${source_default.gray(repo.description)}`);
3107
- }
3108
- });
3109
- }
3110
- } catch (err) {
3111
- error(String(err));
3112
- process.exit(1);
3113
- }
3114
- });
3115
- repoCmd.command("get <owner> <repo>").description("Get repository information").action(async (owner, repo) => {
3116
- try {
3117
- const client = getClient();
3118
- const result = await client.repos.get(owner, repo);
3119
- print(result, getFormat(repoCmd));
3120
- } catch (err) {
3121
- error(String(err));
3122
- process.exit(1);
3123
- }
3124
- });
3125
- repoCmd.command("create <name>").description("Create a new repository").option("-d, --description <description>", "Repository description").option("--private", "Create as private repository").option("--org <org>", "Create in an organization").option("--auto-init", "Initialize with README").action(async (name, opts) => {
3126
- try {
3127
- const client = getClient();
3128
- let result;
3129
- const options = {
3130
- description: opts.description,
3131
- private: opts.private,
3132
- auto_init: opts.autoInit
3133
- };
3134
- if (opts.org) {
3135
- result = await client.repos.createInOrg(opts.org, name, options);
3136
- } else {
3137
- result = await client.repos.create(name, options);
3138
- }
3139
- success(`Repository created: ${result.html_url}`);
3140
- print(result, getFormat(repoCmd));
3141
- } catch (err) {
3142
- error(String(err));
3143
- process.exit(1);
3144
- }
3145
- });
3146
- repoCmd.command("delete <owner> <repo>").description("Delete a repository").action(async (owner, repo) => {
3147
- try {
3148
- const client = getClient();
3149
- await client.repos.delete(owner, repo);
3150
- success(`Repository ${owner}/${repo} deleted`);
3151
- } catch (err) {
3152
- error(String(err));
3153
- process.exit(1);
3154
- }
3155
- });
3156
- repoCmd.command("content <owner> <repo> <path>").description("Get file or directory content").option("--ref <ref>", "Git ref (branch, tag, commit)").action(async (owner, repo, path, opts) => {
3157
- try {
3158
- const client = getClient();
3159
- const result = await client.repos.getContent(owner, repo, path, { ref: opts.ref });
3160
- if (!Array.isArray(result) && result.type === "file" && result.content) {
3161
- if (getFormat(repoCmd) === "json") {
3162
- print(result, "json");
3163
- } else {
3164
- const content = Buffer.from(result.content, "base64").toString("utf-8");
3165
- console.log(content);
3166
- }
3167
- } else {
3168
- print(result, getFormat(repoCmd));
3169
- }
3170
- } catch (err) {
3171
- error(String(err));
3172
- process.exit(1);
3173
- }
3174
- });
3175
- repoCmd.command("commits <owner> <repo>").description("List commits on a repository").option("--sha <sha>", "SHA or branch to start listing from").option("--path <path>", "Only commits containing this file path").option("--author <author>", "GitHub login or email to filter by").option("--since <since>", "Only commits after this date (ISO 8601)").option("--until <until>", "Only commits before this date (ISO 8601)").option("--limit <number>", "Maximum results", "10").action(async (owner, repo, opts) => {
3176
- try {
3177
- const client = getClient();
3178
- const commits = await client.repos.listCommits(owner, repo, {
3179
- sha: opts.sha,
3180
- path: opts.path,
3181
- author: opts.author,
3182
- since: opts.since,
3183
- until: opts.until,
3184
- per_page: parseInt(opts.limit, 10) || 10
3185
- });
3186
- if (getFormat(repoCmd) === "json") {
3187
- print(commits, "json");
3188
- } else {
3189
- if (commits.length === 0) {
3190
- info("No commits found.");
3191
- return;
3192
- }
3193
- for (const c of commits) {
3194
- const date = c.commit.author?.date ? new Date(c.commit.author.date).toLocaleDateString() : "";
3195
- const author = c.commit.author?.name || c.author?.login || "unknown";
3196
- const msg = c.commit.message.split(`
3197
- `)[0];
3198
- console.log(`${source_default.yellow(c.sha.slice(0, 7))} ${source_default.gray(date)} ${source_default.cyan(author)} ${msg}`);
3199
- }
3200
- info(`${commits.length} commit(s)`);
3201
- }
3202
- } catch (err) {
3203
- error(String(err));
3204
- process.exit(1);
3205
- }
3206
- });
3207
- repoCmd.command("commit <owner> <repo> <ref>").description("Get a single commit by SHA or ref").action(async (owner, repo, ref) => {
3208
- try {
3209
- const client = getClient();
3210
- const commit = await client.repos.getCommit(owner, repo, ref);
3211
- if (getFormat(repoCmd) === "json") {
3212
- print(commit, "json");
3213
- } else {
3214
- const msg = commit.commit.message.split(`
3215
- `)[0];
3216
- const author = commit.commit.author?.name || "unknown";
3217
- const date = commit.commit.author?.date || "";
3218
- console.log(`${source_default.yellow("Commit:")} ${commit.sha}`);
3219
- console.log(`${source_default.cyan("Author:")} ${author}`);
3220
- console.log(`${source_default.gray("Date:")} ${date}`);
3221
- console.log(`${source_default.white("Message:")} ${msg}`);
3222
- if (commit.parents.length > 0) {
3223
- console.log(`${source_default.gray("Parents:")} ${commit.parents.map((p) => p.sha.slice(0, 7)).join(", ")}`);
3224
- }
3225
- }
3226
- } catch (err) {
3227
- error(String(err));
3228
- process.exit(1);
3229
- }
3230
- });
3231
- repoCmd.command("branches <owner> <repo>").description("List branches for a repository").option("--protected", "Only show protected branches").option("--limit <number>", "Maximum results", "30").action(async (owner, repo, opts) => {
3232
- try {
3233
- const client = getClient();
3234
- const branches = await client.repos.listBranches(owner, repo, {
3235
- protected: opts.protected,
3236
- per_page: parseInt(opts.limit, 10) || 30
3237
- });
3238
- if (getFormat(repoCmd) === "json") {
3239
- print(branches, "json");
3240
- } else {
3241
- if (branches.length === 0) {
3242
- info("No branches found.");
3243
- return;
3244
- }
3245
- for (const b of branches) {
3246
- const prot = b.protected ? source_default.yellow(" [protected]") : "";
3247
- console.log(`${source_default.cyan(b.name)}${prot} ${source_default.gray(b.commit.sha.slice(0, 7))}`);
3248
- }
3249
- info(`${branches.length} branch(es)`);
3250
- }
3251
- } catch (err) {
3252
- error(String(err));
3253
- process.exit(1);
3254
- }
3255
- });
3256
- var issueCmd = program2.command("issue").description("Manage issues");
3257
- issueCmd.command("list <owner> <repo>").description("List issues in a repository").option("--state <state>", "Filter by state: open, closed, all", "open").option("--labels <labels>", "Filter by labels (comma-separated)").option("-n, --per-page <number>", "Results per page", "30").option("--page <number>", "Page number", "1").action(async (owner, repo, opts) => {
3258
- try {
3259
- const client = getClient();
3260
- const issues = await client.issues.list(owner, repo, {
3261
- state: opts.state,
3262
- labels: opts.labels,
3263
- per_page: parseInt(opts.perPage),
3264
- page: parseInt(opts.page)
3265
- });
3266
- if (getFormat(issueCmd) === "json") {
3267
- print(issues, "json");
3268
- } else {
3269
- if (issues.length === 0) {
3270
- info("No issues found");
3271
- return;
3272
- }
3273
- issues.forEach((issue) => {
3274
- const state = issue.state === "open" ? source_default.green("open") : source_default.red("closed");
3275
- const labels = issue.labels.map((l) => source_default.cyan(l.name)).join(", ");
3276
- console.log(`#${issue.number} ${state} ${source_default.bold(issue.title)}`);
3277
- if (labels)
3278
- console.log(` Labels: ${labels}`);
3279
- if (issue.assignee)
3280
- console.log(` Assignee: ${source_default.yellow(issue.assignee.login)}`);
3281
- });
3282
- }
3283
- } catch (err) {
3284
- error(String(err));
3285
- process.exit(1);
3286
- }
3287
- });
3288
- issueCmd.command("get <owner> <repo> <number>").description("Get an issue").action(async (owner, repo, number) => {
3289
- try {
3290
- const client = getClient();
3291
- const result = await client.issues.get(owner, repo, parseInt(number));
3292
- print(result, getFormat(issueCmd));
3293
- } catch (err) {
3294
- error(String(err));
3295
- process.exit(1);
3296
- }
3297
- });
3298
- issueCmd.command("create <owner> <repo>").description("Create an issue").requiredOption("-t, --title <title>", "Issue title").option("-b, --body <body>", "Issue body").option("--labels <labels>", "Labels (comma-separated)").option("--assignees <assignees>", "Assignees (comma-separated)").action(async (owner, repo, opts) => {
3299
- try {
3300
- const client = getClient();
3301
- const result = await client.issues.create(owner, repo, opts.title, opts.body, {
3302
- labels: opts.labels?.split(",").map((l) => l.trim()),
3303
- assignees: opts.assignees?.split(",").map((a) => a.trim())
3304
- });
3305
- success(`Issue created: ${result.html_url}`);
3306
- print(result, getFormat(issueCmd));
3307
- } catch (err) {
3308
- error(String(err));
3309
- process.exit(1);
3310
- }
3311
- });
3312
- issueCmd.command("close <owner> <repo> <number>").description("Close an issue").option("--reason <reason>", "Close reason: completed, not_planned", "completed").action(async (owner, repo, number, opts) => {
3313
- try {
3314
- const client = getClient();
3315
- await client.issues.update(owner, repo, parseInt(number), {
3316
- state: "closed",
3317
- state_reason: opts.reason
3318
- });
3319
- success(`Issue #${number} closed`);
3320
- } catch (err) {
3321
- error(String(err));
3322
- process.exit(1);
3323
- }
3324
- });
3325
- issueCmd.command("comment <owner> <repo> <number>").description("Add a comment to an issue").requiredOption("-b, --body <body>", "Comment body").action(async (owner, repo, number, opts) => {
3326
- try {
3327
- const client = getClient();
3328
- const result = await client.issues.createComment(owner, repo, parseInt(number), opts.body);
3329
- success(`Comment added: ${result.html_url}`);
3330
- } catch (err) {
3331
- error(String(err));
3332
- process.exit(1);
3333
- }
3334
- });
3335
- issueCmd.command("comments <owner> <repo> <number>").description("List comments on an issue").action(async (owner, repo, number) => {
3336
- try {
3337
- const client = getClient();
3338
- const comments = await client.issues.listComments(owner, repo, parseInt(number));
3339
- if (getFormat(issueCmd) === "json") {
3340
- print(comments, "json");
3341
- } else {
3342
- if (comments.length === 0) {
3343
- info("No comments");
3344
- return;
3345
- }
3346
- comments.forEach((comment) => {
3347
- console.log(`${source_default.cyan(comment.user.login)} ${source_default.gray(comment.created_at)}`);
3348
- console.log(` ${comment.body}`);
3349
- console.log();
3350
- });
3351
- }
3352
- } catch (err) {
3353
- error(String(err));
3354
- process.exit(1);
3355
- }
3356
- });
3357
- var prCmd = program2.command("pr").description("Manage pull requests");
3358
- prCmd.command("list <owner> <repo>").description("List pull requests").option("--state <state>", "Filter by state: open, closed, all", "open").option("--base <base>", "Filter by base branch").option("--head <head>", "Filter by head branch").option("-n, --per-page <number>", "Results per page", "30").option("--page <number>", "Page number", "1").action(async (owner, repo, opts) => {
3359
- try {
3360
- const client = getClient();
3361
- const prs = await client.pulls.list(owner, repo, {
3362
- state: opts.state,
3363
- base: opts.base,
3364
- head: opts.head,
3365
- per_page: parseInt(opts.perPage),
3366
- page: parseInt(opts.page)
3367
- });
3368
- if (getFormat(prCmd) === "json") {
3369
- print(prs, "json");
3370
- } else {
3371
- if (prs.length === 0) {
3372
- info("No pull requests found");
3373
- return;
3374
- }
3375
- prs.forEach((pr) => {
3376
- const state = pr.state === "open" ? source_default.green("open") : source_default.red("closed");
3377
- const merged = pr.merged ? source_default.magenta(" [merged]") : "";
3378
- const draft = pr.draft ? source_default.gray(" [draft]") : "";
3379
- console.log(`#${pr.number} ${state}${merged}${draft} ${source_default.bold(pr.title)}`);
3380
- console.log(` ${source_default.cyan(pr.head.ref)} -> ${source_default.cyan(pr.base.ref)}`);
3381
- if (pr.user)
3382
- console.log(` Author: ${source_default.yellow(pr.user.login)}`);
3383
- });
3384
- }
3385
- } catch (err) {
3386
- error(String(err));
3387
- process.exit(1);
3388
- }
3389
- });
3390
- prCmd.command("get <owner> <repo> <number>").description("Get a pull request").action(async (owner, repo, number) => {
3391
- try {
3392
- const client = getClient();
3393
- const result = await client.pulls.get(owner, repo, parseInt(number));
3394
- print(result, getFormat(prCmd));
3395
- } catch (err) {
3396
- error(String(err));
3397
- process.exit(1);
3398
- }
3399
- });
3400
- prCmd.command("create <owner> <repo>").description("Create a pull request").requiredOption("-t, --title <title>", "PR title").requiredOption("--head <head>", "Head branch").requiredOption("--base <base>", "Base branch").option("-b, --body <body>", "PR body").option("--draft", "Create as draft").action(async (owner, repo, opts) => {
3401
- try {
3402
- const client = getClient();
3403
- const result = await client.pulls.create(owner, repo, opts.title, opts.head, opts.base, opts.body, { draft: opts.draft });
3404
- success(`Pull request created: ${result.html_url}`);
3405
- print(result, getFormat(prCmd));
3406
- } catch (err) {
3407
- error(String(err));
3408
- process.exit(1);
3409
- }
3410
- });
3411
- prCmd.command("merge <owner> <repo> <number>").description("Merge a pull request").option("--method <method>", "Merge method: merge, squash, rebase", "merge").option("--title <title>", "Commit title").option("--message <message>", "Commit message").action(async (owner, repo, number, opts) => {
3412
- try {
3413
- const client = getClient();
3414
- const result = await client.pulls.merge(owner, repo, parseInt(number), {
3415
- merge_method: opts.method,
3416
- commit_title: opts.title,
3417
- commit_message: opts.message
3418
- });
3419
- if (result.merged) {
3420
- success(`Pull request #${number} merged`);
3421
- } else {
3422
- warn(`Merge result: ${result.message}`);
3423
- }
3424
- } catch (err) {
3425
- error(String(err));
3426
- process.exit(1);
3427
- }
3428
- });
3429
- prCmd.command("reviews <owner> <repo> <number>").description("List reviews on a pull request").action(async (owner, repo, number) => {
3430
- try {
3431
- const client = getClient();
3432
- const reviews = await client.pulls.listReviews(owner, repo, parseInt(number));
3433
- if (getFormat(prCmd) === "json") {
3434
- print(reviews, "json");
3435
- } else {
3436
- if (reviews.length === 0) {
3437
- info("No reviews");
3438
- return;
3439
- }
3440
- reviews.forEach((review) => {
3441
- const stateColor = review.state === "APPROVED" ? source_default.green : review.state === "CHANGES_REQUESTED" ? source_default.red : source_default.gray;
3442
- console.log(`${source_default.cyan(review.user.login)} ${stateColor(review.state)}`);
3443
- if (review.body)
3444
- console.log(` ${review.body}`);
3445
- });
3446
- }
3447
- } catch (err) {
3448
- error(String(err));
3449
- process.exit(1);
3450
- }
3451
- });
3452
- prCmd.command("review <owner> <repo> <number>").description("Create a review on a pull request").option("-b, --body <body>", "Review body").option("--approve", "Approve the PR").option("--request-changes", "Request changes").option("--comment", "Just comment (no approval)").action(async (owner, repo, number, opts) => {
3453
- try {
3454
- const client = getClient();
3455
- let event = "COMMENT";
3456
- if (opts.approve)
3457
- event = "APPROVE";
3458
- if (opts.requestChanges)
3459
- event = "REQUEST_CHANGES";
3460
- const result = await client.pulls.createReview(owner, repo, parseInt(number), opts.body, event);
3461
- success(`Review submitted: ${result.state}`);
3462
- } catch (err) {
3463
- error(String(err));
3464
- process.exit(1);
3465
- }
3466
- });
3467
- var userCmd = program2.command("user").description("User information");
3468
- userCmd.command("info [username]").description("Get user information (defaults to authenticated user)").action(async (username) => {
3469
- try {
3470
- const client = getClient();
3471
- const result = username ? await client.users.get(username) : await client.users.getAuthenticated();
3472
- print(result, getFormat(userCmd));
3473
- } catch (err) {
3474
- error(String(err));
3475
- process.exit(1);
3476
- }
3477
- });
3478
- userCmd.command("followers [username]").description("List followers").option("-n, --per-page <number>", "Results per page", "30").action(async (username, opts) => {
3479
- try {
3480
- const client = getClient();
3481
- const followers = username ? await client.users.listFollowers(username, { per_page: parseInt(opts.perPage) }) : await client.users.listMyFollowers({ per_page: parseInt(opts.perPage) });
3482
- if (getFormat(userCmd) === "json") {
3483
- print(followers, "json");
3484
- } else {
3485
- if (followers.length === 0) {
3486
- info("No followers");
3487
- return;
3488
- }
3489
- followers.forEach((user) => {
3490
- console.log(`${source_default.cyan(user.login)}`);
3491
- });
3492
- }
3493
- } catch (err) {
3494
- error(String(err));
3495
- process.exit(1);
3496
- }
3497
- });
3498
- userCmd.command("following [username]").description("List users being followed").option("-n, --per-page <number>", "Results per page", "30").action(async (username, opts) => {
3499
- try {
3500
- const client = getClient();
3501
- const following = username ? await client.users.listFollowing(username, { per_page: parseInt(opts.perPage) }) : await client.users.listMyFollowing({ per_page: parseInt(opts.perPage) });
3502
- if (getFormat(userCmd) === "json") {
3503
- print(following, "json");
3504
- } else {
3505
- if (following.length === 0) {
3506
- info("Not following anyone");
3507
- return;
3508
- }
3509
- following.forEach((user) => {
3510
- console.log(`${source_default.cyan(user.login)}`);
3511
- });
3512
- }
3513
- } catch (err) {
3514
- error(String(err));
3515
- process.exit(1);
3516
- }
3517
- });
3518
- program2.parse();