@portel/photon 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/README.md +287 -1160
  2. package/dist/auto-ui/beam.d.ts +9 -0
  3. package/dist/auto-ui/beam.d.ts.map +1 -0
  4. package/dist/auto-ui/beam.js +2381 -0
  5. package/dist/auto-ui/beam.js.map +1 -0
  6. package/dist/auto-ui/components/card.d.ts +13 -0
  7. package/dist/auto-ui/components/card.d.ts.map +1 -0
  8. package/dist/auto-ui/components/card.js +64 -0
  9. package/dist/auto-ui/components/card.js.map +1 -0
  10. package/dist/auto-ui/components/form.d.ts +15 -0
  11. package/dist/auto-ui/components/form.d.ts.map +1 -0
  12. package/dist/auto-ui/components/form.js +72 -0
  13. package/dist/auto-ui/components/form.js.map +1 -0
  14. package/dist/auto-ui/components/list.d.ts +13 -0
  15. package/dist/auto-ui/components/list.d.ts.map +1 -0
  16. package/dist/auto-ui/components/list.js +58 -0
  17. package/dist/auto-ui/components/list.js.map +1 -0
  18. package/dist/auto-ui/components/progress.d.ts +18 -0
  19. package/dist/auto-ui/components/progress.d.ts.map +1 -0
  20. package/dist/auto-ui/components/progress.js +125 -0
  21. package/dist/auto-ui/components/progress.js.map +1 -0
  22. package/dist/auto-ui/components/table.d.ts +13 -0
  23. package/dist/auto-ui/components/table.d.ts.map +1 -0
  24. package/dist/auto-ui/components/table.js +82 -0
  25. package/dist/auto-ui/components/table.js.map +1 -0
  26. package/dist/auto-ui/components/tree.d.ts +13 -0
  27. package/dist/auto-ui/components/tree.d.ts.map +1 -0
  28. package/dist/auto-ui/components/tree.js +61 -0
  29. package/dist/auto-ui/components/tree.js.map +1 -0
  30. package/dist/auto-ui/daemon-tools.d.ts +45 -0
  31. package/dist/auto-ui/daemon-tools.d.ts.map +1 -0
  32. package/dist/auto-ui/daemon-tools.js +580 -0
  33. package/dist/auto-ui/daemon-tools.js.map +1 -0
  34. package/dist/auto-ui/design-system/index.d.ts +21 -0
  35. package/dist/auto-ui/design-system/index.d.ts.map +1 -0
  36. package/dist/auto-ui/design-system/index.js +27 -0
  37. package/dist/auto-ui/design-system/index.js.map +1 -0
  38. package/dist/auto-ui/design-system/tokens.d.ts +9 -0
  39. package/dist/auto-ui/design-system/tokens.d.ts.map +1 -0
  40. package/dist/auto-ui/design-system/tokens.js +27 -0
  41. package/dist/auto-ui/design-system/tokens.js.map +1 -0
  42. package/dist/auto-ui/design-system/transaction-ui.d.ts +70 -0
  43. package/dist/auto-ui/design-system/transaction-ui.d.ts.map +1 -0
  44. package/dist/auto-ui/design-system/transaction-ui.js +982 -0
  45. package/dist/auto-ui/design-system/transaction-ui.js.map +1 -0
  46. package/dist/auto-ui/frontend/index.html +84 -0
  47. package/dist/auto-ui/index.d.ts +21 -0
  48. package/dist/auto-ui/index.d.ts.map +1 -0
  49. package/dist/auto-ui/index.js +25 -0
  50. package/dist/auto-ui/index.js.map +1 -0
  51. package/dist/auto-ui/openapi-generator.d.ts +71 -0
  52. package/dist/auto-ui/openapi-generator.d.ts.map +1 -0
  53. package/dist/auto-ui/openapi-generator.js +223 -0
  54. package/dist/auto-ui/openapi-generator.js.map +1 -0
  55. package/dist/auto-ui/photon-bridge.d.ts +159 -0
  56. package/dist/auto-ui/photon-bridge.d.ts.map +1 -0
  57. package/dist/auto-ui/photon-bridge.js +262 -0
  58. package/dist/auto-ui/photon-bridge.js.map +1 -0
  59. package/dist/auto-ui/photon-host.d.ts +113 -0
  60. package/dist/auto-ui/photon-host.d.ts.map +1 -0
  61. package/dist/auto-ui/photon-host.js +284 -0
  62. package/dist/auto-ui/photon-host.js.map +1 -0
  63. package/dist/auto-ui/platform-compat.d.ts +71 -0
  64. package/dist/auto-ui/platform-compat.d.ts.map +1 -0
  65. package/dist/auto-ui/platform-compat.js +574 -0
  66. package/dist/auto-ui/platform-compat.js.map +1 -0
  67. package/dist/auto-ui/playground-html.d.ts +15 -0
  68. package/dist/auto-ui/playground-html.d.ts.map +1 -0
  69. package/dist/auto-ui/playground-html.js +1113 -0
  70. package/dist/auto-ui/playground-html.js.map +1 -0
  71. package/dist/auto-ui/playground-server.d.ts +7 -0
  72. package/dist/auto-ui/playground-server.d.ts.map +1 -0
  73. package/dist/auto-ui/playground-server.js +840 -0
  74. package/dist/auto-ui/playground-server.js.map +1 -0
  75. package/dist/auto-ui/registry.d.ts +13 -0
  76. package/dist/auto-ui/registry.d.ts.map +1 -0
  77. package/dist/auto-ui/registry.js +62 -0
  78. package/dist/auto-ui/registry.js.map +1 -0
  79. package/dist/auto-ui/renderer.d.ts +14 -0
  80. package/dist/auto-ui/renderer.d.ts.map +1 -0
  81. package/dist/auto-ui/renderer.js +88 -0
  82. package/dist/auto-ui/renderer.js.map +1 -0
  83. package/dist/auto-ui/rendering/components.d.ts +29 -0
  84. package/dist/auto-ui/rendering/components.d.ts.map +1 -0
  85. package/dist/auto-ui/rendering/components.js +773 -0
  86. package/dist/auto-ui/rendering/components.js.map +1 -0
  87. package/dist/auto-ui/rendering/field-analyzer.d.ts +48 -0
  88. package/dist/auto-ui/rendering/field-analyzer.d.ts.map +1 -0
  89. package/dist/auto-ui/rendering/field-analyzer.js +270 -0
  90. package/dist/auto-ui/rendering/field-analyzer.js.map +1 -0
  91. package/dist/auto-ui/rendering/field-renderers.d.ts +64 -0
  92. package/dist/auto-ui/rendering/field-renderers.d.ts.map +1 -0
  93. package/dist/auto-ui/rendering/field-renderers.js +317 -0
  94. package/dist/auto-ui/rendering/field-renderers.js.map +1 -0
  95. package/dist/auto-ui/rendering/index.d.ts +28 -0
  96. package/dist/auto-ui/rendering/index.d.ts.map +1 -0
  97. package/dist/auto-ui/rendering/index.js +60 -0
  98. package/dist/auto-ui/rendering/index.js.map +1 -0
  99. package/dist/auto-ui/rendering/layout-selector.d.ts +48 -0
  100. package/dist/auto-ui/rendering/layout-selector.d.ts.map +1 -0
  101. package/dist/auto-ui/rendering/layout-selector.js +352 -0
  102. package/dist/auto-ui/rendering/layout-selector.js.map +1 -0
  103. package/dist/auto-ui/rendering/template-engine.d.ts +41 -0
  104. package/dist/auto-ui/rendering/template-engine.d.ts.map +1 -0
  105. package/dist/auto-ui/rendering/template-engine.js +238 -0
  106. package/dist/auto-ui/rendering/template-engine.js.map +1 -0
  107. package/dist/auto-ui/streamable-http-transport.d.ts +79 -0
  108. package/dist/auto-ui/streamable-http-transport.d.ts.map +1 -0
  109. package/dist/auto-ui/streamable-http-transport.js +1314 -0
  110. package/dist/auto-ui/streamable-http-transport.js.map +1 -0
  111. package/dist/auto-ui/types.d.ts +310 -0
  112. package/dist/auto-ui/types.d.ts.map +1 -0
  113. package/dist/auto-ui/types.js +71 -0
  114. package/dist/auto-ui/types.js.map +1 -0
  115. package/dist/beam.bundle.js +13506 -0
  116. package/dist/beam.bundle.js.map +7 -0
  117. package/dist/claude-code-plugin.d.ts.map +1 -1
  118. package/dist/claude-code-plugin.js +30 -30
  119. package/dist/claude-code-plugin.js.map +1 -1
  120. package/dist/cli/commands/info.d.ts +11 -0
  121. package/dist/cli/commands/info.d.ts.map +1 -0
  122. package/dist/cli/commands/info.js +313 -0
  123. package/dist/cli/commands/info.js.map +1 -0
  124. package/dist/cli/commands/marketplace.d.ts +11 -0
  125. package/dist/cli/commands/marketplace.d.ts.map +1 -0
  126. package/dist/cli/commands/marketplace.js +198 -0
  127. package/dist/cli/commands/marketplace.js.map +1 -0
  128. package/dist/cli/commands/package-app.d.ts +9 -0
  129. package/dist/cli/commands/package-app.d.ts.map +1 -0
  130. package/dist/cli/commands/package-app.js +191 -0
  131. package/dist/cli/commands/package-app.js.map +1 -0
  132. package/dist/cli/commands/package.d.ts +11 -0
  133. package/dist/cli/commands/package.d.ts.map +1 -0
  134. package/dist/cli/commands/package.js +573 -0
  135. package/dist/cli/commands/package.js.map +1 -0
  136. package/dist/cli-alias.d.ts.map +1 -1
  137. package/dist/cli-alias.js +30 -28
  138. package/dist/cli-alias.js.map +1 -1
  139. package/dist/cli-formatter.d.ts +8 -24
  140. package/dist/cli-formatter.d.ts.map +1 -1
  141. package/dist/cli-formatter.js +8 -325
  142. package/dist/cli-formatter.js.map +1 -1
  143. package/dist/cli.d.ts +15 -1
  144. package/dist/cli.d.ts.map +1 -1
  145. package/dist/cli.js +1157 -1132
  146. package/dist/cli.js.map +1 -1
  147. package/dist/daemon/client.d.ts +81 -0
  148. package/dist/daemon/client.d.ts.map +1 -1
  149. package/dist/daemon/client.js +583 -13
  150. package/dist/daemon/client.js.map +1 -1
  151. package/dist/daemon/manager.d.ts +46 -12
  152. package/dist/daemon/manager.d.ts.map +1 -1
  153. package/dist/daemon/manager.js +102 -61
  154. package/dist/daemon/manager.js.map +1 -1
  155. package/dist/daemon/protocol.d.ts +74 -6
  156. package/dist/daemon/protocol.d.ts.map +1 -1
  157. package/dist/daemon/protocol.js +76 -1
  158. package/dist/daemon/protocol.js.map +1 -1
  159. package/dist/daemon/server.d.ts +6 -6
  160. package/dist/daemon/server.js +778 -117
  161. package/dist/daemon/server.js.map +1 -1
  162. package/dist/daemon/session-manager.d.ts +8 -1
  163. package/dist/daemon/session-manager.d.ts.map +1 -1
  164. package/dist/daemon/session-manager.js +32 -9
  165. package/dist/daemon/session-manager.js.map +1 -1
  166. package/dist/deploy/cloudflare.d.ts +12 -0
  167. package/dist/deploy/cloudflare.d.ts.map +1 -0
  168. package/dist/deploy/cloudflare.js +216 -0
  169. package/dist/deploy/cloudflare.js.map +1 -0
  170. package/dist/index.d.ts +1 -0
  171. package/dist/index.d.ts.map +1 -1
  172. package/dist/index.js +3 -0
  173. package/dist/index.js.map +1 -1
  174. package/dist/loader.d.ts +172 -15
  175. package/dist/loader.d.ts.map +1 -1
  176. package/dist/loader.js +1132 -267
  177. package/dist/loader.js.map +1 -1
  178. package/dist/markdown-utils.d.ts +8 -0
  179. package/dist/markdown-utils.d.ts.map +1 -0
  180. package/dist/markdown-utils.js +63 -0
  181. package/dist/markdown-utils.js.map +1 -0
  182. package/dist/marketplace-manager.d.ts +10 -0
  183. package/dist/marketplace-manager.d.ts.map +1 -1
  184. package/dist/marketplace-manager.js +112 -28
  185. package/dist/marketplace-manager.js.map +1 -1
  186. package/dist/mcp-client.d.ts +9 -0
  187. package/dist/mcp-client.d.ts.map +1 -0
  188. package/dist/mcp-client.js +11 -0
  189. package/dist/mcp-client.js.map +1 -0
  190. package/dist/mcp-elicitation.d.ts +32 -0
  191. package/dist/mcp-elicitation.d.ts.map +1 -0
  192. package/dist/mcp-elicitation.js +26 -0
  193. package/dist/mcp-elicitation.js.map +1 -0
  194. package/dist/path-resolver.d.ts +9 -12
  195. package/dist/path-resolver.d.ts.map +1 -1
  196. package/dist/path-resolver.js +13 -43
  197. package/dist/path-resolver.js.map +1 -1
  198. package/dist/photon-cli-runner.d.ts.map +1 -1
  199. package/dist/photon-cli-runner.js +216 -73
  200. package/dist/photon-cli-runner.js.map +1 -1
  201. package/dist/photon-doc-extractor.d.ts +88 -0
  202. package/dist/photon-doc-extractor.d.ts.map +1 -1
  203. package/dist/photon-doc-extractor.js +536 -27
  204. package/dist/photon-doc-extractor.js.map +1 -1
  205. package/dist/photons/maker.photon.d.ts +182 -0
  206. package/dist/photons/maker.photon.d.ts.map +1 -0
  207. package/dist/photons/maker.photon.js +504 -0
  208. package/dist/photons/maker.photon.js.map +1 -0
  209. package/dist/photons/maker.photon.ts +626 -0
  210. package/dist/photons/marketplace.photon.d.ts +110 -0
  211. package/dist/photons/marketplace.photon.d.ts.map +1 -0
  212. package/dist/photons/marketplace.photon.js +260 -0
  213. package/dist/photons/marketplace.photon.js.map +1 -0
  214. package/dist/photons/marketplace.photon.ts +378 -0
  215. package/dist/photons/tunnel.photon.d.ts +80 -0
  216. package/dist/photons/tunnel.photon.d.ts.map +1 -0
  217. package/dist/photons/tunnel.photon.js +269 -0
  218. package/dist/photons/tunnel.photon.js.map +1 -0
  219. package/dist/photons/tunnel.photon.ts +345 -0
  220. package/dist/security-scanner.d.ts.map +1 -1
  221. package/dist/security-scanner.js +18 -15
  222. package/dist/security-scanner.js.map +1 -1
  223. package/dist/serv/auth/jwt.d.ts +89 -0
  224. package/dist/serv/auth/jwt.d.ts.map +1 -0
  225. package/dist/serv/auth/jwt.js +239 -0
  226. package/dist/serv/auth/jwt.js.map +1 -0
  227. package/dist/serv/auth/oauth.d.ts +117 -0
  228. package/dist/serv/auth/oauth.d.ts.map +1 -0
  229. package/dist/serv/auth/oauth.js +395 -0
  230. package/dist/serv/auth/oauth.js.map +1 -0
  231. package/dist/serv/auth/well-known.d.ts +60 -0
  232. package/dist/serv/auth/well-known.d.ts.map +1 -0
  233. package/dist/serv/auth/well-known.js +154 -0
  234. package/dist/serv/auth/well-known.js.map +1 -0
  235. package/dist/serv/db/d1-client.d.ts +65 -0
  236. package/dist/serv/db/d1-client.d.ts.map +1 -0
  237. package/dist/serv/db/d1-client.js +137 -0
  238. package/dist/serv/db/d1-client.js.map +1 -0
  239. package/dist/serv/db/d1-stores.d.ts +62 -0
  240. package/dist/serv/db/d1-stores.d.ts.map +1 -0
  241. package/dist/serv/db/d1-stores.js +307 -0
  242. package/dist/serv/db/d1-stores.js.map +1 -0
  243. package/dist/serv/index.d.ts +114 -0
  244. package/dist/serv/index.d.ts.map +1 -0
  245. package/dist/serv/index.js +172 -0
  246. package/dist/serv/index.js.map +1 -0
  247. package/dist/serv/local.d.ts +118 -0
  248. package/dist/serv/local.d.ts.map +1 -0
  249. package/dist/serv/local.js +392 -0
  250. package/dist/serv/local.js.map +1 -0
  251. package/dist/serv/middleware/auth.d.ts +66 -0
  252. package/dist/serv/middleware/auth.d.ts.map +1 -0
  253. package/dist/serv/middleware/auth.js +178 -0
  254. package/dist/serv/middleware/auth.js.map +1 -0
  255. package/dist/serv/middleware/tenant.d.ts +94 -0
  256. package/dist/serv/middleware/tenant.d.ts.map +1 -0
  257. package/dist/serv/middleware/tenant.js +152 -0
  258. package/dist/serv/middleware/tenant.js.map +1 -0
  259. package/dist/serv/runtime/executor.d.ts +76 -0
  260. package/dist/serv/runtime/executor.d.ts.map +1 -0
  261. package/dist/serv/runtime/executor.js +105 -0
  262. package/dist/serv/runtime/executor.js.map +1 -0
  263. package/dist/serv/runtime/index.d.ts +8 -0
  264. package/dist/serv/runtime/index.d.ts.map +1 -0
  265. package/dist/serv/runtime/index.js +10 -0
  266. package/dist/serv/runtime/index.js.map +1 -0
  267. package/dist/serv/runtime/oauth-context.d.ts +121 -0
  268. package/dist/serv/runtime/oauth-context.d.ts.map +1 -0
  269. package/dist/serv/runtime/oauth-context.js +153 -0
  270. package/dist/serv/runtime/oauth-context.js.map +1 -0
  271. package/dist/serv/session/kv-store.d.ts +54 -0
  272. package/dist/serv/session/kv-store.d.ts.map +1 -0
  273. package/dist/serv/session/kv-store.js +149 -0
  274. package/dist/serv/session/kv-store.js.map +1 -0
  275. package/dist/serv/session/store.d.ts +113 -0
  276. package/dist/serv/session/store.d.ts.map +1 -0
  277. package/dist/serv/session/store.js +284 -0
  278. package/dist/serv/session/store.js.map +1 -0
  279. package/dist/serv/types/index.d.ts +147 -0
  280. package/dist/serv/types/index.d.ts.map +1 -0
  281. package/dist/serv/types/index.js +8 -0
  282. package/dist/serv/types/index.js.map +1 -0
  283. package/dist/serv/vault/token-vault.d.ts +102 -0
  284. package/dist/serv/vault/token-vault.d.ts.map +1 -0
  285. package/dist/serv/vault/token-vault.js +177 -0
  286. package/dist/serv/vault/token-vault.js.map +1 -0
  287. package/dist/server.d.ts +173 -0
  288. package/dist/server.d.ts.map +1 -1
  289. package/dist/server.js +1622 -86
  290. package/dist/server.js.map +1 -1
  291. package/dist/shared/cli-sections.d.ts +6 -0
  292. package/dist/shared/cli-sections.d.ts.map +1 -0
  293. package/dist/shared/cli-sections.js +16 -0
  294. package/dist/shared/cli-sections.js.map +1 -0
  295. package/dist/shared/cli-utils.d.ts +81 -0
  296. package/dist/shared/cli-utils.d.ts.map +1 -0
  297. package/dist/shared/cli-utils.js +174 -0
  298. package/dist/shared/cli-utils.js.map +1 -0
  299. package/dist/shared/config-docs.d.ts +6 -0
  300. package/dist/shared/config-docs.d.ts.map +1 -0
  301. package/dist/shared/config-docs.js +6 -0
  302. package/dist/shared/config-docs.js.map +1 -0
  303. package/dist/shared/error-handler.d.ts +128 -0
  304. package/dist/shared/error-handler.d.ts.map +1 -0
  305. package/dist/shared/error-handler.js +342 -0
  306. package/dist/shared/error-handler.js.map +1 -0
  307. package/dist/shared/logger.d.ts +42 -0
  308. package/dist/shared/logger.d.ts.map +1 -0
  309. package/dist/shared/logger.js +123 -0
  310. package/dist/shared/logger.js.map +1 -0
  311. package/dist/shared/performance.d.ts +65 -0
  312. package/dist/shared/performance.d.ts.map +1 -0
  313. package/dist/shared/performance.js +136 -0
  314. package/dist/shared/performance.js.map +1 -0
  315. package/dist/shared/task-runner.d.ts +2 -0
  316. package/dist/shared/task-runner.d.ts.map +1 -0
  317. package/dist/shared/task-runner.js +16 -0
  318. package/dist/shared/task-runner.js.map +1 -0
  319. package/dist/shared/validation.d.ts +6 -0
  320. package/dist/shared/validation.d.ts.map +1 -0
  321. package/dist/shared/validation.js +6 -0
  322. package/dist/shared/validation.js.map +1 -0
  323. package/dist/shared-utils.d.ts +63 -0
  324. package/dist/shared-utils.d.ts.map +1 -0
  325. package/dist/shared-utils.js +123 -0
  326. package/dist/shared-utils.js.map +1 -0
  327. package/dist/template-manager.d.ts +23 -2
  328. package/dist/template-manager.d.ts.map +1 -1
  329. package/dist/template-manager.js +177 -88
  330. package/dist/template-manager.js.map +1 -1
  331. package/dist/test-client.d.ts.map +1 -1
  332. package/dist/test-client.js +10 -8
  333. package/dist/test-client.js.map +1 -1
  334. package/dist/test-runner.d.ts +52 -0
  335. package/dist/test-runner.d.ts.map +1 -0
  336. package/dist/test-runner.js +785 -0
  337. package/dist/test-runner.js.map +1 -0
  338. package/dist/testing.d.ts +103 -0
  339. package/dist/testing.d.ts.map +1 -0
  340. package/dist/testing.js +163 -0
  341. package/dist/testing.js.map +1 -0
  342. package/dist/version-checker.d.ts.map +1 -1
  343. package/dist/version-checker.js +2 -2
  344. package/dist/version-checker.js.map +1 -1
  345. package/dist/version.d.ts +2 -0
  346. package/dist/version.d.ts.map +1 -0
  347. package/dist/version.js +5 -0
  348. package/dist/version.js.map +1 -0
  349. package/dist/watcher.d.ts +6 -3
  350. package/dist/watcher.d.ts.map +1 -1
  351. package/dist/watcher.js +49 -10
  352. package/dist/watcher.js.map +1 -1
  353. package/package.json +47 -7
  354. package/templates/cloudflare/worker.ts.template +381 -0
  355. package/templates/cloudflare/wrangler.toml.template +9 -0
  356. package/dist/base.d.ts +0 -58
  357. package/dist/base.d.ts.map +0 -1
  358. package/dist/base.js +0 -92
  359. package/dist/base.js.map +0 -1
  360. package/dist/dependency-manager.d.ts +0 -49
  361. package/dist/dependency-manager.d.ts.map +0 -1
  362. package/dist/dependency-manager.js +0 -165
  363. package/dist/dependency-manager.js.map +0 -1
  364. package/dist/registry-manager.d.ts +0 -76
  365. package/dist/registry-manager.d.ts.map +0 -1
  366. package/dist/registry-manager.js +0 -220
  367. package/dist/registry-manager.js.map +0 -1
  368. package/dist/schema-extractor.d.ts +0 -110
  369. package/dist/schema-extractor.d.ts.map +0 -1
  370. package/dist/schema-extractor.js +0 -727
  371. package/dist/schema-extractor.js.map +0 -1
  372. package/dist/test-marketplace-sources.d.ts +0 -5
  373. package/dist/test-marketplace-sources.d.ts.map +0 -1
  374. package/dist/test-marketplace-sources.js +0 -53
  375. package/dist/test-marketplace-sources.js.map +0 -1
  376. package/dist/types.d.ts +0 -109
  377. package/dist/types.d.ts.map +0 -1
  378. package/dist/types.js +0 -12
  379. package/dist/types.js.map +0 -1
@@ -0,0 +1,573 @@
1
+ /**
2
+ * Package CLI Commands
3
+ *
4
+ * Commands for managing photon packages: add, remove, upgrade, clear-cache
5
+ */
6
+ import * as path from 'path';
7
+ import * as fs from 'fs/promises';
8
+ import { existsSync } from 'fs';
9
+ import * as os from 'os';
10
+ import { SchemaExtractor, loadPhotonMCPConfig, setMCPServerConfig, resolveMCPSource, } from '@portel/photon-core';
11
+ import { resolvePhotonPath, ensureWorkingDir } from '../../path-resolver.js';
12
+ import { getErrorMessage } from '../../shared/error-handler.js';
13
+ import { logger } from '../../shared/logger.js';
14
+ import { createReadline, promptConfirm, promptChoice } from '../../shared/cli-utils.js';
15
+ // ══════════════════════════════════════════════════════════════════════════════
16
+ // HELPER FUNCTIONS
17
+ // ══════════════════════════════════════════════════════════════════════════════
18
+ /**
19
+ * Prompt for yes/no with default
20
+ */
21
+ async function promptYesNo(message, defaultYes = true) {
22
+ return promptConfirm(message, defaultYes);
23
+ }
24
+ /**
25
+ * Prompt for environment variables for an MCP
26
+ */
27
+ async function promptEnvVars(mcpName, serverConfig) {
28
+ const envVars = {};
29
+ // Common env var patterns based on MCP name
30
+ const commonPatterns = {
31
+ slack: ['SLACK_BOT_TOKEN', 'SLACK_TEAM_ID'],
32
+ github: ['GITHUB_TOKEN', 'GITHUB_PERSONAL_ACCESS_TOKEN'],
33
+ filesystem: [], // No tokens needed
34
+ postgres: ['POSTGRES_CONNECTION_STRING', 'DATABASE_URL'],
35
+ sqlite: [], // No tokens needed
36
+ brave: ['BRAVE_API_KEY'],
37
+ fetch: [], // No tokens needed
38
+ memory: [], // No tokens needed
39
+ puppeteer: [], // No tokens needed
40
+ google: ['GOOGLE_API_KEY'],
41
+ openai: ['OPENAI_API_KEY'],
42
+ anthropic: ['ANTHROPIC_API_KEY'],
43
+ };
44
+ // Find matching pattern
45
+ const lowerName = mcpName.toLowerCase();
46
+ let suggestedVars = [];
47
+ for (const [pattern, vars] of Object.entries(commonPatterns)) {
48
+ if (lowerName.includes(pattern)) {
49
+ suggestedVars = vars;
50
+ break;
51
+ }
52
+ }
53
+ if (suggestedVars.length === 0) {
54
+ // No known env vars needed
55
+ return envVars;
56
+ }
57
+ console.error(`\n Environment variables for ${mcpName}:`);
58
+ const rl = createReadline();
59
+ for (const varName of suggestedVars) {
60
+ const existingValue = process.env[varName];
61
+ const hint = existingValue ? ` (found in env)` : '';
62
+ const value = await new Promise((resolve) => {
63
+ rl.question(` ${varName}${hint}: `, (answer) => {
64
+ resolve(answer.trim());
65
+ });
66
+ });
67
+ if (value) {
68
+ // Store as reference if it looks like an env var reference
69
+ if (value.startsWith('$')) {
70
+ envVars[varName] = value.replace('$', '${') + '}';
71
+ }
72
+ else {
73
+ envVars[varName] = value;
74
+ }
75
+ }
76
+ else if (existingValue) {
77
+ // Use env var reference
78
+ envVars[varName] = `\${${varName}}`;
79
+ }
80
+ }
81
+ rl.close();
82
+ return envVars;
83
+ }
84
+ /**
85
+ * Setup MCP dependencies for a photon
86
+ */
87
+ async function setupMCPDependencies(source, photonName, options = {}) {
88
+ const extractor = new SchemaExtractor();
89
+ const mcpDeps = extractor.extractMCPDependencies(source);
90
+ if (mcpDeps.length === 0) {
91
+ return { configured: [], skipped: [] };
92
+ }
93
+ // Load existing config
94
+ const config = await loadPhotonMCPConfig();
95
+ const configured = [];
96
+ const skipped = [];
97
+ // Check which MCPs need configuration
98
+ const unconfigured = mcpDeps.filter((dep) => !config.mcpServers[dep.name]);
99
+ if (unconfigured.length === 0) {
100
+ console.error(`\n✓ All ${mcpDeps.length} MCP dependencies already configured`);
101
+ return { configured: mcpDeps.map((d) => d.name), skipped: [] };
102
+ }
103
+ console.error(`\n📦 Found ${mcpDeps.length} MCP dependencies:`);
104
+ for (const dep of mcpDeps) {
105
+ const status = config.mcpServers[dep.name] ? '✓' : '○';
106
+ console.error(` ${status} ${dep.name} (${dep.source})`);
107
+ }
108
+ if (options.skipPrompts) {
109
+ // Auto-configure all without prompting
110
+ for (const dep of unconfigured) {
111
+ const serverConfig = resolveMCPSource(dep.name, dep.source, dep.sourceType);
112
+ await setMCPServerConfig(dep.name, serverConfig);
113
+ configured.push(dep.name);
114
+ }
115
+ console.error(`\n✓ Auto-configured ${configured.length} MCP(s) in ~/.photon/config.json`);
116
+ return { configured, skipped };
117
+ }
118
+ // Interactive setup for each unconfigured MCP
119
+ console.error(`\n${unconfigured.length} MCP(s) need configuration:\n`);
120
+ for (const dep of unconfigured) {
121
+ const shouldConfigure = await promptYesNo(`Configure ${dep.name}? (${dep.source})`, true);
122
+ if (!shouldConfigure) {
123
+ skipped.push(dep.name);
124
+ console.error(` Skipped ${dep.name}`);
125
+ continue;
126
+ }
127
+ // Generate default config from @mcp source
128
+ const serverConfig = resolveMCPSource(dep.name, dep.source, dep.sourceType);
129
+ // Ask for environment variables
130
+ const envVars = await promptEnvVars(dep.name, serverConfig);
131
+ if (Object.keys(envVars).length > 0) {
132
+ serverConfig.env = { ...serverConfig.env, ...envVars };
133
+ }
134
+ // Save to config
135
+ await setMCPServerConfig(dep.name, serverConfig);
136
+ configured.push(dep.name);
137
+ console.error(` ✓ Configured ${dep.name}`);
138
+ }
139
+ if (configured.length > 0) {
140
+ console.error(`\n✓ Saved ${configured.length} MCP(s) to ~/.photon/config.json`);
141
+ }
142
+ if (skipped.length > 0) {
143
+ console.error(`\n⚠️ Skipped MCPs can be configured later with:`);
144
+ console.error(` photon config mcp <name>`);
145
+ }
146
+ return { configured, skipped };
147
+ }
148
+ // ══════════════════════════════════════════════════════════════════════════════
149
+ // COMMANDS
150
+ // ══════════════════════════════════════════════════════════════════════════════
151
+ /**
152
+ * Register package management commands
153
+ */
154
+ export function registerPackageCommands(program, defaultWorkingDir) {
155
+ // Add command: add an MCP from a marketplace
156
+ program
157
+ .command('add', { hidden: true })
158
+ .argument('<name>', 'MCP name to add')
159
+ .option('--marketplace <name>', 'Specific marketplace to use')
160
+ .option('-y, --yes', 'Automatically select first suggestion without prompting')
161
+ .option('--skip-mcp-setup', 'Skip MCP dependency configuration')
162
+ .description('Add an MCP from a marketplace')
163
+ .action(async (name, options, command) => {
164
+ try {
165
+ // Get working directory from global options
166
+ const workingDir = command.parent?.opts().dir || defaultWorkingDir;
167
+ await ensureWorkingDir(workingDir);
168
+ const { MarketplaceManager } = await import('../../marketplace-manager.js');
169
+ const manager = new MarketplaceManager();
170
+ await manager.initialize();
171
+ // Check for conflicts
172
+ let conflict = await manager.checkConflict(name, options.marketplace);
173
+ if (!conflict.sources || conflict.sources.length === 0) {
174
+ logger.error(`MCP '${name}' not found in any enabled marketplace\n`);
175
+ // Search for similar names
176
+ const searchResults = await manager.search(name);
177
+ if (searchResults.size > 0) {
178
+ console.error(`Did you mean one of these?\n`);
179
+ // Convert search results to array for selection
180
+ const suggestions = [];
181
+ let count = 0;
182
+ for (const [mcpName, sources] of searchResults) {
183
+ if (count >= 5)
184
+ break; // Limit to 5 suggestions
185
+ const source = sources[0]; // Use first marketplace
186
+ const version = source.metadata?.version || 'unknown';
187
+ const description = source.metadata?.description || 'No description';
188
+ suggestions.push({ name: mcpName, version, description });
189
+ console.error(` [${count + 1}] ${mcpName} (v${version})`);
190
+ console.error(` ${description}`);
191
+ count++;
192
+ }
193
+ // Interactive selection or auto-select with -y
194
+ let selectedIndex;
195
+ if (options.yes) {
196
+ // Auto-select first suggestion
197
+ selectedIndex = 0;
198
+ }
199
+ else {
200
+ // Interactive selection
201
+ const choice = await promptChoice(`\nWhich one? [1-${suggestions.length}] (or press Enter to cancel): `, suggestions.length, true);
202
+ if (choice === null) {
203
+ console.error('\nCancelled.');
204
+ process.exit(0);
205
+ }
206
+ selectedIndex = choice - 1;
207
+ }
208
+ // Update name to the selected MCP
209
+ name = suggestions[selectedIndex].name;
210
+ console.error(`\n✓ Selected: ${name}`);
211
+ // Re-check for conflicts with the new name
212
+ conflict = await manager.checkConflict(name, options.marketplace);
213
+ if (!conflict.sources || conflict.sources.length === 0) {
214
+ logger.error(`MCP '${name}' is no longer available`);
215
+ process.exit(1);
216
+ }
217
+ }
218
+ else {
219
+ console.error(`Run 'photon info' to see all available MCPs`);
220
+ process.exit(1);
221
+ }
222
+ }
223
+ // Check if already exists locally
224
+ const filePath = path.join(workingDir, `${name}.photon.ts`);
225
+ const fileName = `${name}.photon.ts`;
226
+ if (existsSync(filePath)) {
227
+ console.error(`⚠️ MCP '${name}' already exists`);
228
+ console.error(`Use 'photon upgrade ${name}' to update it`);
229
+ process.exit(1);
230
+ }
231
+ // Handle conflicts
232
+ let selectedMarketplace;
233
+ let selectedMetadata;
234
+ if (conflict.hasConflict) {
235
+ console.error(`⚠️ MCP '${name}' found in multiple marketplaces:\n`);
236
+ conflict.sources.forEach((source, index) => {
237
+ const marker = source.marketplace.name === conflict.recommendation ? '→' : ' ';
238
+ const version = source.metadata?.version || 'unknown';
239
+ console.error(` ${marker} [${index + 1}] ${source.marketplace.name} (v${version})`);
240
+ console.error(` ${source.marketplace.repo || source.marketplace.url}`);
241
+ });
242
+ if (conflict.recommendation) {
243
+ console.error(`\n💡 Recommended: ${conflict.recommendation} (newest version)`);
244
+ }
245
+ // Get default choice (recommended or first)
246
+ const recommendedIndex = conflict.sources.findIndex((s) => s.marketplace.name === conflict.recommendation);
247
+ const defaultChoice = recommendedIndex !== -1 ? recommendedIndex + 1 : 1;
248
+ // Interactive selection
249
+ const choice = await promptChoice(`\nWhich marketplace? [1-${conflict.sources.length}] (default: ${defaultChoice}): `, conflict.sources.length, { defaultChoice });
250
+ const selectedIndex = (choice ?? defaultChoice) - 1;
251
+ const selectedSource = conflict.sources[selectedIndex];
252
+ selectedMarketplace = selectedSource.marketplace;
253
+ selectedMetadata = selectedSource.metadata;
254
+ console.error(`\n✓ Using: ${selectedMarketplace.name}`);
255
+ }
256
+ else {
257
+ selectedMarketplace = conflict.sources[0].marketplace;
258
+ selectedMetadata = conflict.sources[0].metadata;
259
+ console.error(`Adding ${name} from ${selectedMarketplace.name}...`);
260
+ }
261
+ // Fetch content from selected marketplace
262
+ const result = await manager.fetchMCP(name);
263
+ if (!result) {
264
+ logger.error(`Failed to fetch MCP content`);
265
+ process.exit(1);
266
+ }
267
+ const content = result.content;
268
+ // Write file
269
+ await fs.writeFile(filePath, content, 'utf-8');
270
+ // Save installation metadata if we have it
271
+ if (selectedMetadata) {
272
+ const { calculateHash } = await import('../../marketplace-manager.js');
273
+ const contentHash = calculateHash(content);
274
+ await manager.savePhotonMetadata(fileName, selectedMarketplace, selectedMetadata, contentHash);
275
+ // Download assets if present
276
+ if (selectedMetadata.assets && selectedMetadata.assets.length > 0) {
277
+ console.error(`\n📦 Downloading assets...`);
278
+ const assets = await manager.fetchAssets(selectedMarketplace, selectedMetadata.assets);
279
+ for (const [assetPath, content] of assets) {
280
+ const targetPath = path.join(workingDir, assetPath);
281
+ const targetDir = path.dirname(targetPath);
282
+ await fs.mkdir(targetDir, { recursive: true });
283
+ await fs.writeFile(targetPath, content, 'utf-8');
284
+ console.error(` 📄 ${assetPath}`);
285
+ }
286
+ }
287
+ }
288
+ console.error(`✅ Added ${name} from ${selectedMarketplace.name}`);
289
+ if (selectedMetadata?.version) {
290
+ console.error(`Version: ${selectedMetadata.version}`);
291
+ }
292
+ console.error(`Location: ${filePath}`);
293
+ // Setup MCP dependencies if present
294
+ if (!options.skipMcpSetup) {
295
+ const { configured, skipped } = await setupMCPDependencies(content, name, {
296
+ skipPrompts: options.yes,
297
+ });
298
+ if (skipped.length > 0) {
299
+ console.error(`\n⚠️ Some MCPs were not configured. Run:`);
300
+ console.error(` photon mcp ${name}`);
301
+ console.error(` to see configuration requirements.`);
302
+ }
303
+ }
304
+ console.error(`\nRun with: photon mcp ${name}`);
305
+ console.error(`\nTo customize: Copy to a new name and run with --dev for hot reload`);
306
+ }
307
+ catch (error) {
308
+ logger.error(`Error: ${getErrorMessage(error)}`);
309
+ process.exit(1);
310
+ }
311
+ });
312
+ // Remove command: remove an installed photon
313
+ program
314
+ .command('remove', { hidden: true })
315
+ .argument('<name>', 'MCP name to remove')
316
+ .alias('rm')
317
+ .option('--keep-cache', 'Keep compiled cache for this photon')
318
+ .description('Remove an installed photon')
319
+ .action(async (name, options, command) => {
320
+ try {
321
+ const { printInfo, printSuccess, printError } = await import('../../cli-formatter.js');
322
+ const workingDir = command.parent?.opts().dir || defaultWorkingDir;
323
+ // Find the photon file
324
+ const filePath = await resolvePhotonPath(name, workingDir);
325
+ if (!filePath) {
326
+ printError(`Photon not found: ${name}`);
327
+ printInfo(`Searched in: ${workingDir}`);
328
+ printInfo(`Tip: Use 'photon info' to see installed photons`);
329
+ process.exit(1);
330
+ }
331
+ printInfo(`Removing ${name}...`);
332
+ // Remove the .photon.ts file
333
+ await fs.unlink(filePath);
334
+ printSuccess(`Removed ${name}.photon.ts`);
335
+ // Clear compiled cache unless --keep-cache
336
+ if (!options.keepCache) {
337
+ const cacheDir = path.join(os.homedir(), '.cache', 'photon-mcp', 'compiled');
338
+ const cachedFiles = [
339
+ path.join(cacheDir, `${name}.js`),
340
+ path.join(cacheDir, `${name}.js.map`),
341
+ ];
342
+ for (const cachedFile of cachedFiles) {
343
+ try {
344
+ await fs.unlink(cachedFile);
345
+ }
346
+ catch {
347
+ // Ignore if cache doesn't exist
348
+ }
349
+ }
350
+ printSuccess(`Cleared cache`);
351
+ }
352
+ console.log('');
353
+ printSuccess(`Successfully removed ${name}`);
354
+ printInfo(`To reinstall: photon add ${name}`);
355
+ }
356
+ catch (error) {
357
+ const { printError } = await import('../../cli-formatter.js');
358
+ printError(getErrorMessage(error));
359
+ process.exit(1);
360
+ }
361
+ });
362
+ // Upgrade command: update MCPs from marketplace
363
+ program
364
+ .command('upgrade', { hidden: true })
365
+ .argument('[name]', 'MCP name to upgrade (upgrades all if omitted)')
366
+ .option('--check', 'Check for updates without upgrading')
367
+ .alias('up')
368
+ .description('Upgrade MCP(s) from marketplaces')
369
+ .action(async (name, options, command) => {
370
+ try {
371
+ const { formatOutput, printInfo, printSuccess, printWarning, printError, STATUS } = await import('../../cli-formatter.js');
372
+ // Get working directory from global options
373
+ const workingDir = command.parent?.opts().dir || defaultWorkingDir;
374
+ const { VersionChecker } = await import('../../version-checker.js');
375
+ const checker = new VersionChecker();
376
+ await checker.initialize();
377
+ if (name) {
378
+ // Upgrade single MCP
379
+ const filePath = await resolvePhotonPath(name, workingDir);
380
+ if (!filePath) {
381
+ printError(`MCP not found: ${name}`);
382
+ printInfo(`Searched in: ${workingDir}`);
383
+ process.exit(1);
384
+ }
385
+ printInfo(`Checking ${name} for updates...`);
386
+ const versionInfo = await checker.checkForUpdate(name, filePath);
387
+ if (!versionInfo.local) {
388
+ printWarning('Could not determine local version');
389
+ return;
390
+ }
391
+ if (!versionInfo.remote) {
392
+ printWarning('Not found in any marketplace. This might be a local-only MCP.');
393
+ return;
394
+ }
395
+ if (options.check) {
396
+ const tableData = [
397
+ {
398
+ name,
399
+ local: versionInfo.local,
400
+ remote: versionInfo.remote,
401
+ status: versionInfo.needsUpdate ? STATUS.UPDATE : STATUS.OK,
402
+ },
403
+ ];
404
+ formatOutput(tableData, 'table');
405
+ return;
406
+ }
407
+ if (!versionInfo.needsUpdate) {
408
+ printSuccess(`Already up to date (${versionInfo.local})`);
409
+ return;
410
+ }
411
+ printInfo(`Upgrading ${name}: ${versionInfo.local} → ${versionInfo.remote}`);
412
+ const success = await checker.updateMCP(name, filePath);
413
+ if (success) {
414
+ printSuccess(`Successfully upgraded ${name} to ${versionInfo.remote}`);
415
+ }
416
+ else {
417
+ printError(`Failed to upgrade ${name}`);
418
+ process.exit(1);
419
+ }
420
+ }
421
+ else {
422
+ // Check/upgrade all MCPs
423
+ printInfo(`Checking all MCPs in ${workingDir}...\n`);
424
+ const updates = await checker.checkAllUpdates(workingDir);
425
+ if (updates.size === 0) {
426
+ printInfo('No MCPs found');
427
+ return;
428
+ }
429
+ const needsUpdate = [];
430
+ // Build table data
431
+ const tableData = [];
432
+ for (const [mcpName, info] of updates) {
433
+ if (info.needsUpdate) {
434
+ needsUpdate.push(mcpName);
435
+ tableData.push({
436
+ name: mcpName,
437
+ local: info.local || '-',
438
+ remote: info.remote || '-',
439
+ status: STATUS.UPDATE,
440
+ });
441
+ }
442
+ else if (info.local && info.remote) {
443
+ tableData.push({
444
+ name: mcpName,
445
+ local: info.local,
446
+ remote: info.remote,
447
+ status: STATUS.OK,
448
+ });
449
+ }
450
+ else {
451
+ tableData.push({
452
+ name: mcpName,
453
+ local: info.local || '-',
454
+ remote: info.remote || 'local only',
455
+ status: STATUS.UNKNOWN,
456
+ });
457
+ }
458
+ }
459
+ formatOutput(tableData, 'table');
460
+ if (needsUpdate.length === 0) {
461
+ console.log('');
462
+ printSuccess('All MCPs are up to date!');
463
+ return;
464
+ }
465
+ if (options.check) {
466
+ console.log('');
467
+ printInfo(`${needsUpdate.length} MCP(s) have updates available`);
468
+ printInfo(`Run 'photon upgrade' to upgrade all`);
469
+ return;
470
+ }
471
+ // Upgrade all that need updates
472
+ console.log('');
473
+ printInfo(`Upgrading ${needsUpdate.length} MCP(s)...`);
474
+ for (const mcpName of needsUpdate) {
475
+ const filePath = path.join(workingDir, `${mcpName}.photon.ts`);
476
+ const success = await checker.updateMCP(mcpName, filePath);
477
+ if (success) {
478
+ printSuccess(`Upgraded ${mcpName}`);
479
+ }
480
+ else {
481
+ printError(`Failed to upgrade ${mcpName}`);
482
+ }
483
+ }
484
+ }
485
+ }
486
+ catch (error) {
487
+ const { printError } = await import('../../cli-formatter.js');
488
+ printError(getErrorMessage(error));
489
+ process.exit(1);
490
+ }
491
+ });
492
+ // Clear-cache command: clear compiled photon cache
493
+ program
494
+ .command('clear-cache', { hidden: true })
495
+ .argument('[name]', 'MCP name to clear cache for (clears all if omitted)')
496
+ .alias('clean')
497
+ .description('Clear compiled photon cache')
498
+ .action(async (name, options, command) => {
499
+ try {
500
+ const { printInfo, printSuccess, printError } = await import('../../cli-formatter.js');
501
+ const cacheDir = path.join(os.homedir(), '.cache', 'photon-mcp', 'compiled');
502
+ if (name) {
503
+ // Clear cache for specific photon
504
+ const workingDir = command.parent?.opts().dir || defaultWorkingDir;
505
+ const filePath = await resolvePhotonPath(name, workingDir);
506
+ if (!filePath) {
507
+ printError(`Photon not found: ${name}`);
508
+ printInfo(`Tip: Use 'photon info' to see installed photons`);
509
+ process.exit(1);
510
+ }
511
+ printInfo(`Clearing cache for ${name}...`);
512
+ const cachedFiles = [
513
+ path.join(cacheDir, `${name}.js`),
514
+ path.join(cacheDir, `${name}.js.map`),
515
+ ];
516
+ let cleared = false;
517
+ for (const cachedFile of cachedFiles) {
518
+ try {
519
+ await fs.unlink(cachedFile);
520
+ cleared = true;
521
+ }
522
+ catch {
523
+ // Ignore if file doesn't exist
524
+ }
525
+ }
526
+ if (cleared) {
527
+ printSuccess(`Cleared cache for ${name}`);
528
+ }
529
+ else {
530
+ printInfo(`No cache found for ${name}`);
531
+ }
532
+ }
533
+ else {
534
+ // Clear all cache
535
+ printInfo('Clearing all compiled photon cache...');
536
+ try {
537
+ const files = await fs.readdir(cacheDir);
538
+ let count = 0;
539
+ for (const file of files) {
540
+ const filePath = path.join(cacheDir, file);
541
+ try {
542
+ await fs.unlink(filePath);
543
+ count++;
544
+ }
545
+ catch {
546
+ // Ignore errors
547
+ }
548
+ }
549
+ if (count > 0) {
550
+ printSuccess(`Cleared ${count} cached file(s)`);
551
+ }
552
+ else {
553
+ printInfo(`Cache is already empty`);
554
+ }
555
+ }
556
+ catch (error) {
557
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'ENOENT') {
558
+ printInfo(`No cache directory found`);
559
+ }
560
+ else {
561
+ throw error;
562
+ }
563
+ }
564
+ }
565
+ }
566
+ catch (error) {
567
+ const { printError } = await import('../../cli-formatter.js');
568
+ printError(getErrorMessage(error));
569
+ process.exit(1);
570
+ }
571
+ });
572
+ }
573
+ //# sourceMappingURL=package.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.js","sourceRoot":"","sources":["../../../src/cli/commands/package.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-alias.d.ts","sourceRoot":"","sources":["../src/cli-alias.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH;;GAEG;AACH,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCvF;AAoFD;;GAEG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBlE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqDjD"}
1
+ {"version":3,"file":"cli-alias.d.ts","sourceRoot":"","sources":["../src/cli-alias.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH;;GAEG;AACH,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCvF;AA8FD;;GAEG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBlE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAqDjD"}