@hubspot/cli 8.2.0 → 8.2.1-experimental.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 (768) hide show
  1. package/api/migrate.js +8 -4
  2. package/api/releases.d.ts +36 -0
  3. package/api/releases.js +41 -0
  4. package/bin/cli.js +12 -6
  5. package/commands/account/auth.d.ts +3 -1
  6. package/commands/account/auth.js +25 -7
  7. package/commands/account/clean.js +7 -6
  8. package/commands/account/createOverride.js +10 -7
  9. package/commands/account/info.js +36 -17
  10. package/commands/account/link.d.ts +4 -0
  11. package/commands/account/link.js +87 -0
  12. package/commands/account/list.js +32 -76
  13. package/commands/account/remove.js +4 -3
  14. package/commands/account/removeOverride.js +11 -10
  15. package/commands/account/rename.js +5 -6
  16. package/commands/account/unlink.d.ts +4 -0
  17. package/commands/account/unlink.js +68 -0
  18. package/commands/account/use.js +75 -6
  19. package/commands/account.js +4 -0
  20. package/commands/api.d.ts +13 -0
  21. package/commands/api.js +161 -0
  22. package/commands/app/logDetails.d.ts +9 -0
  23. package/commands/app/logDetails.js +86 -0
  24. package/commands/app/logs.d.ts +13 -0
  25. package/commands/app/logs.js +126 -0
  26. package/commands/app/migrate.js +13 -13
  27. package/commands/app/secret/add.js +6 -7
  28. package/commands/app/secret/delete.js +9 -10
  29. package/commands/app/secret/list.js +6 -7
  30. package/commands/app/secret/update.js +8 -9
  31. package/commands/app.js +8 -1
  32. package/commands/auth.js +20 -16
  33. package/commands/cms/app/create.js +9 -5
  34. package/commands/cms/convertFields.js +8 -8
  35. package/commands/cms/delete.js +2 -3
  36. package/commands/cms/fetch.js +7 -7
  37. package/commands/cms/function/create.js +9 -5
  38. package/commands/cms/function/deploy.js +2 -3
  39. package/commands/cms/function/list.js +11 -7
  40. package/commands/cms/function/logs.js +17 -23
  41. package/commands/cms/function/server.js +16 -10
  42. package/commands/cms/getReactModule.js +7 -8
  43. package/commands/cms/lighthouseScore.js +25 -24
  44. package/commands/cms/lint.js +4 -5
  45. package/commands/cms/list.js +5 -6
  46. package/commands/cms/module/create.js +15 -5
  47. package/commands/cms/module/marketplace-validate.js +7 -8
  48. package/commands/cms/mv.js +2 -3
  49. package/commands/cms/template/create.js +10 -6
  50. package/commands/cms/theme/create.js +5 -5
  51. package/commands/cms/theme/generate-selectors.js +5 -4
  52. package/commands/cms/theme/marketplace-validate.js +8 -9
  53. package/commands/cms/theme/preview.js +24 -9
  54. package/commands/cms/upload.js +15 -12
  55. package/commands/cms/watch.js +5 -5
  56. package/commands/cms/webpack/create.js +5 -5
  57. package/commands/completion.js +3 -5
  58. package/commands/config/migrate.js +6 -7
  59. package/commands/config/set.js +29 -11
  60. package/commands/customObject/create.js +4 -5
  61. package/commands/customObject/createSchema.js +6 -8
  62. package/commands/customObject/deleteSchema.js +4 -5
  63. package/commands/customObject/fetchAllSchemas.js +2 -3
  64. package/commands/customObject/fetchSchema.js +2 -3
  65. package/commands/customObject/listSchemas.js +2 -3
  66. package/commands/customObject/updateSchema.js +6 -8
  67. package/commands/doctor.js +8 -8
  68. package/commands/feedback.js +6 -4
  69. package/commands/filemanager/fetch.js +5 -6
  70. package/commands/filemanager/upload.js +5 -5
  71. package/commands/getStarted.js +34 -38
  72. package/commands/hubdb/clear.js +6 -3
  73. package/commands/hubdb/create.js +4 -5
  74. package/commands/hubdb/delete.js +9 -6
  75. package/commands/hubdb/fetch.js +6 -3
  76. package/commands/hubdb/list.d.ts +1 -1
  77. package/commands/hubdb/list.js +23 -22
  78. package/commands/init.js +18 -15
  79. package/commands/mcp/setup.d.ts +2 -0
  80. package/commands/mcp/setup.js +35 -8
  81. package/commands/mcp/start.js +2 -3
  82. package/commands/open.js +4 -5
  83. package/commands/project/add.js +19 -13
  84. package/commands/project/appInstallStatus.d.ts +5 -0
  85. package/commands/project/appInstallStatus.js +139 -0
  86. package/commands/project/create.js +37 -22
  87. package/commands/project/delete.d.ts +7 -0
  88. package/commands/project/delete.js +74 -0
  89. package/commands/project/deploy.d.ts +2 -1
  90. package/commands/project/deploy.js +72 -50
  91. package/commands/project/dev/index.d.ts +3 -3
  92. package/commands/project/dev/index.js +40 -73
  93. package/commands/project/dev/unifiedFlow.js +81 -22
  94. package/commands/project/download.js +15 -12
  95. package/commands/project/info.d.ts +5 -0
  96. package/commands/project/info.js +73 -0
  97. package/commands/project/installApp.d.ts +8 -0
  98. package/commands/project/installApp.js +185 -0
  99. package/commands/project/installDeps.js +17 -11
  100. package/commands/project/lint.js +57 -19
  101. package/commands/project/list.d.ts +2 -2
  102. package/commands/project/list.js +15 -14
  103. package/commands/project/listBuilds.d.ts +3 -2
  104. package/commands/project/listBuilds.js +50 -19
  105. package/commands/project/logs.js +7 -10
  106. package/commands/project/migrate.js +30 -28
  107. package/commands/project/open.js +20 -13
  108. package/commands/project/profile/add.d.ts +2 -1
  109. package/commands/project/profile/add.js +42 -13
  110. package/commands/project/profile/delete.d.ts +1 -1
  111. package/commands/project/profile/delete.js +23 -15
  112. package/commands/project/release/create.d.ts +8 -0
  113. package/commands/project/release/create.js +156 -0
  114. package/commands/project/release/info.d.ts +7 -0
  115. package/commands/project/release/info.js +148 -0
  116. package/commands/project/release/list.d.ts +7 -0
  117. package/commands/project/release/list.js +119 -0
  118. package/commands/project/release.d.ts +3 -0
  119. package/commands/project/release.js +20 -0
  120. package/commands/project/updateDeps.js +15 -11
  121. package/commands/project/upload.d.ts +7 -1
  122. package/commands/project/upload.js +159 -35
  123. package/commands/project/validate.d.ts +1 -1
  124. package/commands/project/validate.js +23 -106
  125. package/commands/project/watch.js +27 -29
  126. package/commands/project.js +17 -4
  127. package/commands/sandbox/create.js +18 -45
  128. package/commands/sandbox/delete.js +15 -17
  129. package/commands/secret/addSecret.js +6 -7
  130. package/commands/secret/deleteSecret.js +5 -6
  131. package/commands/secret/listSecret.js +2 -3
  132. package/commands/secret/updateSecret.js +4 -5
  133. package/commands/testAccount/create.d.ts +3 -2
  134. package/commands/testAccount/create.js +30 -22
  135. package/commands/testAccount/createConfig.js +7 -8
  136. package/commands/testAccount/delete.js +27 -18
  137. package/commands/testAccount/importData.d.ts +1 -1
  138. package/commands/testAccount/importData.js +6 -7
  139. package/commands/upgrade.js +11 -10
  140. package/lang/en.d.ts +573 -54
  141. package/lang/en.js +614 -79
  142. package/lib/CLIWebSocketServer.d.ts +5 -3
  143. package/lib/CLIWebSocketServer.js +31 -4
  144. package/lib/accountAuth.d.ts +3 -1
  145. package/lib/accountAuth.js +47 -17
  146. package/lib/accountTargetDiscovery.d.ts +15 -0
  147. package/lib/accountTargetDiscovery.js +175 -0
  148. package/lib/api/usageTracking.d.ts +30 -0
  149. package/lib/api/usageTracking.js +11 -0
  150. package/lib/app/install.d.ts +22 -0
  151. package/lib/app/install.js +42 -0
  152. package/lib/app/logs.d.ts +38 -0
  153. package/lib/app/logs.js +225 -0
  154. package/lib/app/migrate.js +23 -12
  155. package/lib/app/urls.d.ts +2 -0
  156. package/lib/app/urls.js +7 -1
  157. package/lib/auth/awaitPersonalAccessKeyOverWebsocket.d.ts +4 -0
  158. package/lib/auth/awaitPersonalAccessKeyOverWebsocket.js +146 -0
  159. package/lib/buildAccount.d.ts +1 -6
  160. package/lib/buildAccount.js +10 -43
  161. package/lib/cms/serverlessDevRuntime.d.ts +1 -0
  162. package/lib/cms/serverlessDevRuntime.js +72 -0
  163. package/lib/commonOpts.js +6 -2
  164. package/lib/configOptions.d.ts +10 -10
  165. package/lib/configOptions.js +10 -11
  166. package/lib/constants.d.ts +14 -3
  167. package/lib/constants.js +16 -3
  168. package/lib/dependencyManagement.js +10 -17
  169. package/lib/doctor/Diagnosis.js +5 -5
  170. package/lib/doctor/DiagnosticInfoBuilder.d.ts +2 -2
  171. package/lib/doctor/DiagnosticInfoBuilder.js +8 -8
  172. package/lib/doctor/Doctor.d.ts +1 -0
  173. package/lib/doctor/Doctor.js +40 -16
  174. package/lib/errorHandlers/index.js +4 -3
  175. package/lib/errorHandlers/suppressError.js +4 -0
  176. package/lib/errors/ProjectErrors.d.ts +0 -6
  177. package/lib/errors/ProjectErrors.js +0 -12
  178. package/lib/errors/ProjectValidationError.d.ts +2 -1
  179. package/lib/errors/ProjectValidationError.js +3 -1
  180. package/lib/errors/PromptExitError.d.ts +6 -0
  181. package/lib/errors/PromptExitError.js +11 -0
  182. package/lib/getStartedV2Actions.js +19 -22
  183. package/lib/hasFeature.js +1 -2
  184. package/lib/importData.js +3 -4
  185. package/lib/jsonOutput.d.ts +195 -0
  186. package/lib/jsonOutput.js +171 -0
  187. package/lib/link/accountTableUtils.d.ts +10 -0
  188. package/lib/link/accountTableUtils.js +39 -0
  189. package/lib/link/index.d.ts +18 -0
  190. package/lib/link/index.js +185 -0
  191. package/lib/link/linkUtils.d.ts +5 -0
  192. package/lib/link/linkUtils.js +49 -0
  193. package/lib/link/prompts.d.ts +7 -0
  194. package/lib/link/prompts.js +126 -0
  195. package/lib/link/renderLinkedAccountsTable.d.ts +2 -0
  196. package/lib/link/renderLinkedAccountsTable.js +14 -0
  197. package/lib/link/warnIfLinkedDirectory.d.ts +1 -0
  198. package/lib/link/warnIfLinkedDirectory.js +9 -0
  199. package/lib/links.js +6 -5
  200. package/lib/mcp/clients.d.ts +13 -0
  201. package/lib/mcp/clients.js +62 -0
  202. package/lib/mcp/promotion.d.ts +3 -0
  203. package/lib/mcp/promotion.js +109 -0
  204. package/lib/mcp/setup.d.ts +8 -2
  205. package/lib/mcp/setup.js +123 -38
  206. package/lib/middleware/autoUpdateMiddleware.js +6 -3
  207. package/lib/middleware/commandTargetingUtils.js +1 -0
  208. package/lib/npm/npmCli.d.ts +1 -0
  209. package/lib/npm/npmCli.js +13 -0
  210. package/lib/npm/packageJson.js +1 -1
  211. package/lib/process.d.ts +1 -1
  212. package/lib/process.js +10 -3
  213. package/lib/projects/ProjectLogsManager.js +7 -7
  214. package/lib/projects/builds.d.ts +2 -0
  215. package/lib/projects/builds.js +22 -0
  216. package/lib/projects/components.js +15 -4
  217. package/lib/projects/config.d.ts +6 -5
  218. package/lib/projects/config.js +7 -38
  219. package/lib/projects/create/index.js +2 -2
  220. package/lib/projects/create/legacy.js +2 -2
  221. package/lib/projects/create/v2.js +5 -5
  222. package/lib/projects/delete.d.ts +13 -0
  223. package/lib/projects/delete.js +193 -0
  224. package/lib/projects/deploy.d.ts +1 -1
  225. package/lib/projects/deploy.js +2 -2
  226. package/lib/projects/installApp.d.ts +58 -0
  227. package/lib/projects/installApp.js +283 -0
  228. package/lib/projects/localDev/AppDevModeInterface.d.ts +0 -3
  229. package/lib/projects/localDev/AppDevModeInterface.js +35 -53
  230. package/lib/projects/localDev/DevSessionManager.d.ts +8 -5
  231. package/lib/projects/localDev/DevSessionManager.js +35 -49
  232. package/lib/projects/localDev/LocalDevLogger.d.ts +4 -0
  233. package/lib/projects/localDev/LocalDevLogger.js +18 -0
  234. package/lib/projects/localDev/LocalDevProcess.d.ts +11 -1
  235. package/lib/projects/localDev/LocalDevProcess.js +104 -19
  236. package/lib/projects/localDev/LocalDevState.d.ts +9 -2
  237. package/lib/projects/localDev/LocalDevState.js +21 -1
  238. package/lib/projects/localDev/LocalDevWatcher.js +1 -1
  239. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +1 -0
  240. package/lib/projects/localDev/LocalDevWebsocketServer.js +24 -2
  241. package/lib/projects/localDev/UIExtensionsDevModeInterface.js +2 -0
  242. package/lib/projects/localDev/helpers/account.d.ts +1 -7
  243. package/lib/projects/localDev/helpers/account.js +12 -100
  244. package/lib/projects/localDev/helpers/process.d.ts +1 -1
  245. package/lib/projects/localDev/helpers/process.js +4 -10
  246. package/lib/projects/localDev/helpers/project.d.ts +8 -6
  247. package/lib/projects/localDev/helpers/project.js +80 -29
  248. package/lib/projects/localDev/localDevWebsocketServerUtils.d.ts +2 -1
  249. package/lib/projects/localDev/localDevWebsocketServerUtils.js +3 -0
  250. package/lib/projects/npmAuditOnUpload.d.ts +10 -0
  251. package/lib/projects/npmAuditOnUpload.js +73 -0
  252. package/lib/projects/pollProjectBuildAndDeploy.d.ts +5 -1
  253. package/lib/projects/pollProjectBuildAndDeploy.js +3 -2
  254. package/lib/projects/preview.d.ts +7 -0
  255. package/lib/projects/preview.js +48 -0
  256. package/lib/projects/projectInfo.d.ts +5 -0
  257. package/lib/projects/projectInfo.js +82 -0
  258. package/lib/projects/projectProfiles.d.ts +2 -3
  259. package/lib/projects/projectProfiles.js +5 -20
  260. package/lib/projects/release.d.ts +4 -0
  261. package/lib/projects/release.js +90 -0
  262. package/lib/projects/ui.d.ts +1 -0
  263. package/lib/projects/ui.js +14 -0
  264. package/lib/projects/uieLinting.d.ts +21 -3
  265. package/lib/projects/uieLinting.js +129 -28
  266. package/lib/projects/upload.d.ts +12 -2
  267. package/lib/projects/upload.js +59 -13
  268. package/lib/projects/urls.d.ts +0 -1
  269. package/lib/projects/urls.js +6 -13
  270. package/lib/projects/validate.d.ts +9 -0
  271. package/lib/projects/validate.js +96 -0
  272. package/lib/projects/validateLintConfigOnUpload.d.ts +9 -0
  273. package/lib/projects/validateLintConfigOnUpload.js +45 -0
  274. package/lib/projects/workspaces.d.ts +60 -0
  275. package/lib/projects/workspaces.js +411 -0
  276. package/lib/prompts/createApiSamplePrompt.js +4 -0
  277. package/lib/prompts/downloadProjectPrompt.js +11 -10
  278. package/lib/prompts/installAppPrompt.js +3 -2
  279. package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -5
  280. package/lib/prompts/personalAccessKeyPrompt.js +10 -7
  281. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -0
  282. package/lib/prompts/projectDevTargetAccountPrompt.js +26 -18
  283. package/lib/prompts/projectProfilePrompt.d.ts +2 -0
  284. package/lib/prompts/projectProfilePrompt.js +46 -0
  285. package/lib/prompts/projectsLogsPrompt.js +3 -0
  286. package/lib/prompts/promptUtils.js +4 -2
  287. package/lib/prompts/selectAppPrompt.js +1 -0
  288. package/lib/prompts/selectHubDBTablePrompt.js +8 -4
  289. package/lib/prompts/selectPublicAppForMigrationPrompt.js +12 -6
  290. package/lib/prompts/setAsDefaultAccountPrompt.js +2 -1
  291. package/lib/sandboxes.d.ts +1 -9
  292. package/lib/sandboxes.js +0 -21
  293. package/lib/serverlessLogs.js +2 -2
  294. package/lib/theme/cmsDevServerProcess.d.ts +2 -0
  295. package/lib/theme/cmsDevServerProcess.js +8 -7
  296. package/lib/theme/migrate.d.ts +1 -1
  297. package/lib/theme/migrate.js +2 -9
  298. package/lib/ui/SpinniesManager.d.ts +1 -0
  299. package/lib/ui/SpinniesManager.js +22 -6
  300. package/lib/ui/accountTable.d.ts +8 -0
  301. package/lib/ui/accountTable.js +67 -0
  302. package/lib/ui/appLogs.d.ts +32 -0
  303. package/lib/ui/appLogs.js +175 -0
  304. package/lib/ui/spinniesUtils.d.ts +0 -1
  305. package/lib/ui/spinniesUtils.js +6 -16
  306. package/lib/usageTracking.d.ts +10 -20
  307. package/lib/usageTracking.js +77 -30
  308. package/lib/yargs/makeWrappedYargsHandler.d.ts +7 -0
  309. package/lib/yargs/makeWrappedYargsHandler.js +179 -0
  310. package/lib/yargs/makeYargsBuilder.d.ts +13 -0
  311. package/lib/yargs/makeYargsBuilder.js +33 -0
  312. package/lib/yargs/parseYargsOrExit.d.ts +4 -0
  313. package/lib/yargs/parseYargsOrExit.js +25 -0
  314. package/lib/yargs/strictEnforceBoolean.d.ts +1 -0
  315. package/lib/yargs/strictEnforceBoolean.js +13 -0
  316. package/lib/yargsUtils.d.ts +3 -16
  317. package/lib/yargsUtils.js +3 -48
  318. package/mcp-server/Tool.d.ts +20 -0
  319. package/mcp-server/Tool.js +79 -0
  320. package/mcp-server/server.js +47 -3
  321. package/mcp-server/tools/cms/HsCreateFunctionTool.d.ts +5 -3
  322. package/mcp-server/tools/cms/HsCreateFunctionTool.js +18 -23
  323. package/mcp-server/tools/cms/HsCreateModuleTool.d.ts +5 -3
  324. package/mcp-server/tools/cms/HsCreateModuleTool.js +21 -26
  325. package/mcp-server/tools/cms/HsCreateTemplateTool.d.ts +5 -3
  326. package/mcp-server/tools/cms/HsCreateTemplateTool.js +16 -16
  327. package/mcp-server/tools/cms/HsFunctionLogsTool.d.ts +5 -3
  328. package/mcp-server/tools/cms/HsFunctionLogsTool.js +16 -15
  329. package/mcp-server/tools/cms/HsListFunctionsTool.d.ts +5 -3
  330. package/mcp-server/tools/cms/HsListFunctionsTool.js +14 -13
  331. package/mcp-server/tools/cms/HsListTool.d.ts +5 -3
  332. package/mcp-server/tools/cms/HsListTool.js +14 -16
  333. package/mcp-server/tools/index.d.ts +3 -2
  334. package/mcp-server/tools/index.js +26 -22
  335. package/mcp-server/tools/project/AddFeatureToProjectTool.d.ts +8 -4
  336. package/mcp-server/tools/project/AddFeatureToProjectTool.js +16 -15
  337. package/mcp-server/tools/project/AuthAccountTool.d.ts +18 -0
  338. package/mcp-server/tools/project/AuthAccountTool.js +78 -0
  339. package/mcp-server/tools/project/CreateProjectTool.d.ts +8 -4
  340. package/mcp-server/tools/project/CreateProjectTool.js +21 -17
  341. package/mcp-server/tools/project/CreateTestAccountTool.d.ts +5 -3
  342. package/mcp-server/tools/project/CreateTestAccountTool.js +35 -24
  343. package/mcp-server/tools/project/DeployProjectTool.d.ts +5 -3
  344. package/mcp-server/tools/project/DeployProjectTool.js +14 -16
  345. package/mcp-server/tools/project/DocFetchTool.d.ts +4 -2
  346. package/mcp-server/tools/project/DocFetchTool.js +8 -6
  347. package/mcp-server/tools/project/DocsSearchTool.d.ts +9 -3
  348. package/mcp-server/tools/project/DocsSearchTool.js +39 -15
  349. package/mcp-server/tools/project/FindProjectsTool.d.ts +15 -0
  350. package/mcp-server/tools/project/FindProjectsTool.js +60 -0
  351. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.d.ts +6 -3
  352. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.js +16 -13
  353. package/mcp-server/tools/project/GetApplicationInfoTool.d.ts +6 -3
  354. package/mcp-server/tools/project/GetApplicationInfoTool.js +19 -14
  355. package/mcp-server/tools/project/GetBuildLogsTool.d.ts +4 -2
  356. package/mcp-server/tools/project/GetBuildLogsTool.js +19 -14
  357. package/mcp-server/tools/project/GetBuildStatusTool.d.ts +4 -2
  358. package/mcp-server/tools/project/GetBuildStatusTool.js +19 -14
  359. package/mcp-server/tools/project/GetConfigValuesTool.d.ts +6 -3
  360. package/mcp-server/tools/project/GetConfigValuesTool.js +20 -13
  361. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +4 -2
  362. package/mcp-server/tools/project/GuidedWalkthroughTool.js +4 -6
  363. package/mcp-server/tools/project/UploadProjectTools.d.ts +5 -3
  364. package/mcp-server/tools/project/UploadProjectTools.js +21 -20
  365. package/mcp-server/tools/project/ValidateProjectTool.d.ts +5 -3
  366. package/mcp-server/tools/project/ValidateProjectTool.js +13 -10
  367. package/mcp-server/tools/project/constants.d.ts +3 -1
  368. package/mcp-server/tools/project/constants.js +3 -1
  369. package/mcp-server/types.d.ts +0 -7
  370. package/mcp-server/types.js +1 -13
  371. package/mcp-server/utils/command.d.ts +25 -2
  372. package/mcp-server/utils/command.js +68 -16
  373. package/mcp-server/utils/config.js +6 -0
  374. package/mcp-server/utils/logger.d.ts +13 -0
  375. package/mcp-server/utils/logger.js +59 -0
  376. package/mcp-server/utils/toolUsageTracking.js +28 -11
  377. package/package.json +25 -17
  378. package/types/AccountTargets.d.ts +37 -0
  379. package/types/AccountTargets.js +12 -0
  380. package/types/Link.d.ts +32 -0
  381. package/types/Link.js +5 -0
  382. package/types/LocalDev.d.ts +15 -2
  383. package/types/PackageJson.d.ts +1 -0
  384. package/types/ProjectComponents.d.ts +2 -1
  385. package/types/Projects.d.ts +25 -5
  386. package/types/Prompts.d.ts +1 -0
  387. package/types/Yargs.d.ts +23 -2
  388. package/ui/components/ActionSection.d.ts +1 -1
  389. package/ui/components/InputField.d.ts +1 -1
  390. package/ui/components/SelectInput.d.ts +1 -1
  391. package/ui/components/StatusIcon.d.ts +1 -1
  392. package/ui/components/Table.d.ts +5 -5
  393. package/ui/components/getStarted/GetStartedFlow.d.ts +1 -1
  394. package/ui/components/getStarted/screens/InstallationScreen.d.ts +1 -1
  395. package/ui/components/getStarted/screens/ProjectSetupScreen.d.ts +1 -1
  396. package/ui/components/getStarted/screens/UploadScreen.d.ts +1 -1
  397. package/api/__tests__/migrate.test.d.ts +0 -1
  398. package/api/__tests__/migrate.test.js +0 -199
  399. package/commands/__tests__/account.test.d.ts +0 -1
  400. package/commands/__tests__/account.test.js +0 -69
  401. package/commands/__tests__/auth.test.d.ts +0 -1
  402. package/commands/__tests__/auth.test.js +0 -43
  403. package/commands/__tests__/cms.test.d.ts +0 -1
  404. package/commands/__tests__/cms.test.js +0 -87
  405. package/commands/__tests__/config.test.d.ts +0 -1
  406. package/commands/__tests__/config.test.js +0 -44
  407. package/commands/__tests__/customObject.test.d.ts +0 -1
  408. package/commands/__tests__/customObject.test.js +0 -68
  409. package/commands/__tests__/doctor.test.d.ts +0 -1
  410. package/commands/__tests__/doctor.test.js +0 -132
  411. package/commands/__tests__/feedback.test.d.ts +0 -1
  412. package/commands/__tests__/feedback.test.js +0 -24
  413. package/commands/__tests__/filemanager.test.d.ts +0 -1
  414. package/commands/__tests__/filemanager.test.js +0 -45
  415. package/commands/__tests__/getStarted.test.d.ts +0 -1
  416. package/commands/__tests__/getStarted.test.js +0 -173
  417. package/commands/__tests__/hubdb.test.d.ts +0 -1
  418. package/commands/__tests__/hubdb.test.js +0 -50
  419. package/commands/__tests__/init.test.d.ts +0 -1
  420. package/commands/__tests__/init.test.js +0 -42
  421. package/commands/__tests__/mcp.test.d.ts +0 -1
  422. package/commands/__tests__/mcp.test.js +0 -46
  423. package/commands/__tests__/open.test.d.ts +0 -1
  424. package/commands/__tests__/open.test.js +0 -58
  425. package/commands/__tests__/project.test.d.ts +0 -1
  426. package/commands/__tests__/project.test.js +0 -125
  427. package/commands/__tests__/sandbox.test.d.ts +0 -1
  428. package/commands/__tests__/sandbox.test.js +0 -44
  429. package/commands/__tests__/secret.test.d.ts +0 -1
  430. package/commands/__tests__/secret.test.js +0 -49
  431. package/commands/__tests__/testAccount.test.d.ts +0 -1
  432. package/commands/__tests__/testAccount.test.js +0 -57
  433. package/commands/__tests__/upgrade.test.d.ts +0 -1
  434. package/commands/__tests__/upgrade.test.js +0 -309
  435. package/commands/account/__tests__/auth.test.d.ts +0 -1
  436. package/commands/account/__tests__/auth.test.js +0 -206
  437. package/commands/account/__tests__/clean.test.d.ts +0 -1
  438. package/commands/account/__tests__/clean.test.js +0 -28
  439. package/commands/account/__tests__/createOverride.test.d.ts +0 -1
  440. package/commands/account/__tests__/createOverride.test.js +0 -32
  441. package/commands/account/__tests__/info.test.d.ts +0 -1
  442. package/commands/account/__tests__/info.test.js +0 -28
  443. package/commands/account/__tests__/list.test.d.ts +0 -1
  444. package/commands/account/__tests__/list.test.js +0 -153
  445. package/commands/account/__tests__/remove.test.d.ts +0 -1
  446. package/commands/account/__tests__/remove.test.js +0 -36
  447. package/commands/account/__tests__/removeOverride.d.ts +0 -1
  448. package/commands/account/__tests__/removeOverride.js +0 -25
  449. package/commands/account/__tests__/rename.test.d.ts +0 -1
  450. package/commands/account/__tests__/rename.test.js +0 -82
  451. package/commands/account/__tests__/use.test.d.ts +0 -1
  452. package/commands/account/__tests__/use.test.js +0 -170
  453. package/commands/app/__tests__/migrate.test.d.ts +0 -1
  454. package/commands/app/__tests__/migrate.test.js +0 -111
  455. package/commands/app/secret/__tests__/add.test.d.ts +0 -1
  456. package/commands/app/secret/__tests__/add.test.js +0 -140
  457. package/commands/app/secret/__tests__/delete.test.d.ts +0 -1
  458. package/commands/app/secret/__tests__/delete.test.js +0 -28
  459. package/commands/app/secret/__tests__/list.test.d.ts +0 -1
  460. package/commands/app/secret/__tests__/list.test.js +0 -25
  461. package/commands/app/secret/__tests__/update.test.d.ts +0 -1
  462. package/commands/app/secret/__tests__/update.test.js +0 -28
  463. package/commands/cms/__tests__/delete.test.d.ts +0 -1
  464. package/commands/cms/__tests__/delete.test.js +0 -39
  465. package/commands/cms/__tests__/fetch.test.d.ts +0 -1
  466. package/commands/cms/__tests__/fetch.test.js +0 -156
  467. package/commands/cms/__tests__/function.test.d.ts +0 -1
  468. package/commands/cms/__tests__/function.test.js +0 -50
  469. package/commands/cms/__tests__/lint.test.d.ts +0 -1
  470. package/commands/cms/__tests__/lint.test.js +0 -33
  471. package/commands/cms/__tests__/list.test.d.ts +0 -1
  472. package/commands/cms/__tests__/list.test.js +0 -42
  473. package/commands/cms/__tests__/module.test.d.ts +0 -1
  474. package/commands/cms/__tests__/module.test.js +0 -45
  475. package/commands/cms/__tests__/mv.test.d.ts +0 -1
  476. package/commands/cms/__tests__/mv.test.js +0 -46
  477. package/commands/cms/__tests__/theme.test.d.ts +0 -1
  478. package/commands/cms/__tests__/theme.test.js +0 -54
  479. package/commands/cms/__tests__/upload.test.d.ts +0 -1
  480. package/commands/cms/__tests__/upload.test.js +0 -308
  481. package/commands/cms/__tests__/watch.test.d.ts +0 -1
  482. package/commands/cms/__tests__/watch.test.js +0 -204
  483. package/commands/cms/function/__tests__/logs.test.d.ts +0 -1
  484. package/commands/cms/function/__tests__/logs.test.js +0 -70
  485. package/commands/cms/theme/__tests__/generate-selectors.test.d.ts +0 -1
  486. package/commands/cms/theme/__tests__/generate-selectors.test.js +0 -28
  487. package/commands/cms/theme/__tests__/marketplace-validate.test.d.ts +0 -1
  488. package/commands/cms/theme/__tests__/marketplace-validate.test.js +0 -36
  489. package/commands/cms/theme/__tests__/preview.test.d.ts +0 -1
  490. package/commands/cms/theme/__tests__/preview.test.js +0 -54
  491. package/commands/customObject/__tests__/create.test.d.ts +0 -1
  492. package/commands/customObject/__tests__/create.test.js +0 -40
  493. package/commands/customObject/__tests__/createSchema.test.d.ts +0 -1
  494. package/commands/customObject/__tests__/createSchema.test.js +0 -28
  495. package/commands/customObject/__tests__/deleteSchema.test.d.ts +0 -1
  496. package/commands/customObject/__tests__/deleteSchema.test.js +0 -42
  497. package/commands/customObject/__tests__/fetch-all-schemas.test.d.ts +0 -1
  498. package/commands/customObject/__tests__/fetch-all-schemas.test.js +0 -41
  499. package/commands/customObject/__tests__/fetchSchema.test.d.ts +0 -1
  500. package/commands/customObject/__tests__/fetchSchema.test.js +0 -45
  501. package/commands/customObject/__tests__/listSchemas.test.d.ts +0 -1
  502. package/commands/customObject/__tests__/listSchemas.test.js +0 -29
  503. package/commands/customObject/__tests__/updateSchema.test.d.ts +0 -1
  504. package/commands/customObject/__tests__/updateSchema.test.js +0 -40
  505. package/commands/filemanager/__tests__/fetch.test.d.ts +0 -1
  506. package/commands/filemanager/__tests__/fetch.test.js +0 -32
  507. package/commands/filemanager/__tests__/upload.test.d.ts +0 -1
  508. package/commands/filemanager/__tests__/upload.test.js +0 -191
  509. package/commands/hubdb/__tests__/clear.test.d.ts +0 -1
  510. package/commands/hubdb/__tests__/clear.test.js +0 -28
  511. package/commands/hubdb/__tests__/create.test.d.ts +0 -1
  512. package/commands/hubdb/__tests__/create.test.js +0 -28
  513. package/commands/hubdb/__tests__/delete.test.d.ts +0 -1
  514. package/commands/hubdb/__tests__/delete.test.js +0 -28
  515. package/commands/hubdb/__tests__/fetch.test.d.ts +0 -1
  516. package/commands/hubdb/__tests__/fetch.test.js +0 -28
  517. package/commands/hubdb/__tests__/list.test.d.ts +0 -1
  518. package/commands/hubdb/__tests__/list.test.js +0 -88
  519. package/commands/mcp/__tests__/setup.test.d.ts +0 -1
  520. package/commands/mcp/__tests__/setup.test.js +0 -26
  521. package/commands/mcp/__tests__/start.test.d.ts +0 -1
  522. package/commands/mcp/__tests__/start.test.js +0 -144
  523. package/commands/project/__tests__/add.test.d.ts +0 -1
  524. package/commands/project/__tests__/add.test.js +0 -107
  525. package/commands/project/__tests__/create.test.d.ts +0 -1
  526. package/commands/project/__tests__/create.test.js +0 -97
  527. package/commands/project/__tests__/deploy.test.d.ts +0 -1
  528. package/commands/project/__tests__/deploy.test.js +0 -307
  529. package/commands/project/__tests__/dev.test.d.ts +0 -1
  530. package/commands/project/__tests__/dev.test.js +0 -273
  531. package/commands/project/__tests__/devUnifiedFlow.test.d.ts +0 -1
  532. package/commands/project/__tests__/devUnifiedFlow.test.js +0 -434
  533. package/commands/project/__tests__/download.test.d.ts +0 -1
  534. package/commands/project/__tests__/download.test.js +0 -39
  535. package/commands/project/__tests__/installDeps.test.d.ts +0 -1
  536. package/commands/project/__tests__/installDeps.test.js +0 -140
  537. package/commands/project/__tests__/lint.test.d.ts +0 -1
  538. package/commands/project/__tests__/lint.test.js +0 -704
  539. package/commands/project/__tests__/list.test.d.ts +0 -1
  540. package/commands/project/__tests__/list.test.js +0 -31
  541. package/commands/project/__tests__/listBuilds.test.d.ts +0 -1
  542. package/commands/project/__tests__/listBuilds.test.js +0 -38
  543. package/commands/project/__tests__/logs.test.d.ts +0 -1
  544. package/commands/project/__tests__/logs.test.js +0 -202
  545. package/commands/project/__tests__/migrate.test.d.ts +0 -1
  546. package/commands/project/__tests__/migrate.test.js +0 -106
  547. package/commands/project/__tests__/open.test.d.ts +0 -1
  548. package/commands/project/__tests__/open.test.js +0 -39
  549. package/commands/project/__tests__/profile.test.d.ts +0 -1
  550. package/commands/project/__tests__/profile.test.js +0 -42
  551. package/commands/project/__tests__/updateDeps.test.d.ts +0 -1
  552. package/commands/project/__tests__/updateDeps.test.js +0 -140
  553. package/commands/project/__tests__/upload.test.d.ts +0 -1
  554. package/commands/project/__tests__/upload.test.js +0 -234
  555. package/commands/project/__tests__/validate.test.d.ts +0 -1
  556. package/commands/project/__tests__/validate.test.js +0 -381
  557. package/commands/project/__tests__/watch.test.d.ts +0 -1
  558. package/commands/project/__tests__/watch.test.js +0 -35
  559. package/commands/project/dev/deprecatedFlow.d.ts +0 -11
  560. package/commands/project/dev/deprecatedFlow.js +0 -135
  561. package/commands/sandbox/__tests__/create.test.d.ts +0 -1
  562. package/commands/sandbox/__tests__/create.test.js +0 -245
  563. package/commands/sandbox/__tests__/delete.test.d.ts +0 -1
  564. package/commands/sandbox/__tests__/delete.test.js +0 -31
  565. package/commands/secret/__tests__/addSecret.test.d.ts +0 -1
  566. package/commands/secret/__tests__/addSecret.test.js +0 -162
  567. package/commands/secret/__tests__/deleteSecret.test.d.ts +0 -1
  568. package/commands/secret/__tests__/deleteSecret.test.js +0 -41
  569. package/commands/secret/__tests__/listSecret.test.d.ts +0 -1
  570. package/commands/secret/__tests__/listSecret.test.js +0 -29
  571. package/commands/secret/__tests__/updateSecret.test.d.ts +0 -1
  572. package/commands/secret/__tests__/updateSecret.test.js +0 -29
  573. package/commands/testAccount/__tests__/create.test.d.ts +0 -1
  574. package/commands/testAccount/__tests__/create.test.js +0 -106
  575. package/commands/testAccount/__tests__/createConfig.test.d.ts +0 -1
  576. package/commands/testAccount/__tests__/createConfig.test.js +0 -32
  577. package/commands/testAccount/__tests__/delete.test.d.ts +0 -1
  578. package/commands/testAccount/__tests__/delete.test.js +0 -29
  579. package/commands/testAccount/__tests__/importData.test.d.ts +0 -1
  580. package/commands/testAccount/__tests__/importData.test.js +0 -92
  581. package/lib/__tests__/CLIWebSocketServer.test.d.ts +0 -1
  582. package/lib/__tests__/CLIWebSocketServer.test.js +0 -252
  583. package/lib/__tests__/accountAuth.test.d.ts +0 -1
  584. package/lib/__tests__/accountAuth.test.js +0 -258
  585. package/lib/__tests__/accountTypes.test.d.ts +0 -1
  586. package/lib/__tests__/accountTypes.test.js +0 -98
  587. package/lib/__tests__/buildAccount.test.d.ts +0 -1
  588. package/lib/__tests__/buildAccount.test.js +0 -262
  589. package/lib/__tests__/cliUpgradeUtils.test.d.ts +0 -1
  590. package/lib/__tests__/cliUpgradeUtils.test.js +0 -131
  591. package/lib/__tests__/commandSuggestion.test.d.ts +0 -1
  592. package/lib/__tests__/commandSuggestion.test.js +0 -121
  593. package/lib/__tests__/commonOpts.test.d.ts +0 -1
  594. package/lib/__tests__/commonOpts.test.js +0 -80
  595. package/lib/__tests__/dependencyManagement.test.d.ts +0 -1
  596. package/lib/__tests__/dependencyManagement.test.js +0 -1067
  597. package/lib/__tests__/developerTestAccounts.test.d.ts +0 -1
  598. package/lib/__tests__/developerTestAccounts.test.js +0 -156
  599. package/lib/__tests__/hasFeature.test.d.ts +0 -1
  600. package/lib/__tests__/hasFeature.test.js +0 -167
  601. package/lib/__tests__/http.test.d.ts +0 -1
  602. package/lib/__tests__/http.test.js +0 -40
  603. package/lib/__tests__/importData.test.d.ts +0 -1
  604. package/lib/__tests__/importData.test.js +0 -98
  605. package/lib/__tests__/npmCli.test.d.ts +0 -1
  606. package/lib/__tests__/npmCli.test.js +0 -84
  607. package/lib/__tests__/oauth.test.d.ts +0 -1
  608. package/lib/__tests__/oauth.test.js +0 -109
  609. package/lib/__tests__/parsing.test.d.ts +0 -1
  610. package/lib/__tests__/parsing.test.js +0 -34
  611. package/lib/__tests__/polling.test.d.ts +0 -1
  612. package/lib/__tests__/polling.test.js +0 -76
  613. package/lib/__tests__/process.test.d.ts +0 -1
  614. package/lib/__tests__/process.test.js +0 -89
  615. package/lib/__tests__/sandboxSync.test.d.ts +0 -1
  616. package/lib/__tests__/sandboxSync.test.js +0 -147
  617. package/lib/__tests__/sandboxes.test.d.ts +0 -1
  618. package/lib/__tests__/sandboxes.test.js +0 -156
  619. package/lib/__tests__/serverlessLogs.test.d.ts +0 -1
  620. package/lib/__tests__/serverlessLogs.test.js +0 -163
  621. package/lib/__tests__/usageTracking.test.d.ts +0 -1
  622. package/lib/__tests__/usageTracking.test.js +0 -197
  623. package/lib/__tests__/validation.test.d.ts +0 -1
  624. package/lib/__tests__/validation.test.js +0 -143
  625. package/lib/__tests__/yargsUtils.test.d.ts +0 -1
  626. package/lib/__tests__/yargsUtils.test.js +0 -124
  627. package/lib/app/__tests__/migrate.test.d.ts +0 -1
  628. package/lib/app/__tests__/migrate.test.js +0 -638
  629. package/lib/doctor/__tests__/Diagnosis.test.d.ts +0 -1
  630. package/lib/doctor/__tests__/Diagnosis.test.js +0 -84
  631. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.d.ts +0 -1
  632. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +0 -177
  633. package/lib/doctor/__tests__/Doctor.test.d.ts +0 -1
  634. package/lib/doctor/__tests__/Doctor.test.js +0 -560
  635. package/lib/errorHandlers/__tests__/index.test.d.ts +0 -1
  636. package/lib/errorHandlers/__tests__/index.test.js +0 -278
  637. package/lib/mcp/__tests__/setup.test.d.ts +0 -1
  638. package/lib/mcp/__tests__/setup.test.js +0 -523
  639. package/lib/middleware/__tests__/commandTargetingUtils.test.d.ts +0 -1
  640. package/lib/middleware/__tests__/commandTargetingUtils.test.js +0 -99
  641. package/lib/middleware/__tests__/configMiddleware.test.d.ts +0 -1
  642. package/lib/middleware/__tests__/configMiddleware.test.js +0 -118
  643. package/lib/middleware/__tests__/gitMiddleware.test.d.ts +0 -1
  644. package/lib/middleware/__tests__/gitMiddleware.test.js +0 -43
  645. package/lib/middleware/__tests__/requestMiddleware.test.d.ts +0 -1
  646. package/lib/middleware/__tests__/requestMiddleware.test.js +0 -15
  647. package/lib/middleware/__tests__/usageTrackingMiddleware.test.d.ts +0 -1
  648. package/lib/middleware/__tests__/usageTrackingMiddleware.test.js +0 -44
  649. package/lib/middleware/__tests__/yargsChecksMiddleware.test.d.ts +0 -1
  650. package/lib/middleware/__tests__/yargsChecksMiddleware.test.js +0 -39
  651. package/lib/projects/__tests__/AppDevModeInterface.test.d.ts +0 -1
  652. package/lib/projects/__tests__/AppDevModeInterface.test.js +0 -541
  653. package/lib/projects/__tests__/DevServerManager.test.d.ts +0 -1
  654. package/lib/projects/__tests__/DevServerManager.test.js +0 -185
  655. package/lib/projects/__tests__/DevSessionManager.test.d.ts +0 -1
  656. package/lib/projects/__tests__/DevSessionManager.test.js +0 -250
  657. package/lib/projects/__tests__/LocalDevProcess.test.d.ts +0 -1
  658. package/lib/projects/__tests__/LocalDevProcess.test.js +0 -481
  659. package/lib/projects/__tests__/LocalDevWebsocketServer.test.d.ts +0 -1
  660. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +0 -231
  661. package/lib/projects/__tests__/ProjectLogsManager.test.d.ts +0 -1
  662. package/lib/projects/__tests__/ProjectLogsManager.test.js +0 -302
  663. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.d.ts +0 -1
  664. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.js +0 -160
  665. package/lib/projects/__tests__/components.test.d.ts +0 -1
  666. package/lib/projects/__tests__/components.test.js +0 -426
  667. package/lib/projects/__tests__/deploy.test.d.ts +0 -1
  668. package/lib/projects/__tests__/deploy.test.js +0 -231
  669. package/lib/projects/__tests__/localDevProjectHelpers.test.d.ts +0 -1
  670. package/lib/projects/__tests__/localDevProjectHelpers.test.js +0 -120
  671. package/lib/projects/__tests__/platformVersion.test.d.ts +0 -1
  672. package/lib/projects/__tests__/platformVersion.test.js +0 -63
  673. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.d.ts +0 -1
  674. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.js +0 -328
  675. package/lib/projects/__tests__/projectProfiles.test.d.ts +0 -1
  676. package/lib/projects/__tests__/projectProfiles.test.js +0 -441
  677. package/lib/projects/__tests__/projects.test.d.ts +0 -1
  678. package/lib/projects/__tests__/projects.test.js +0 -58
  679. package/lib/projects/__tests__/structure.test.d.ts +0 -1
  680. package/lib/projects/__tests__/structure.test.js +0 -210
  681. package/lib/projects/__tests__/uieLinting.test.d.ts +0 -1
  682. package/lib/projects/__tests__/uieLinting.test.js +0 -631
  683. package/lib/projects/__tests__/upload.test.d.ts +0 -1
  684. package/lib/projects/__tests__/upload.test.js +0 -183
  685. package/lib/projects/add/__tests__/legacyAddComponent.test.d.ts +0 -1
  686. package/lib/projects/add/__tests__/legacyAddComponent.test.js +0 -245
  687. package/lib/projects/add/__tests__/v2AddComponent.test.d.ts +0 -1
  688. package/lib/projects/add/__tests__/v2AddComponent.test.js +0 -343
  689. package/lib/projects/create/__tests__/legacy.test.d.ts +0 -1
  690. package/lib/projects/create/__tests__/legacy.test.js +0 -72
  691. package/lib/projects/create/__tests__/v2.test.d.ts +0 -1
  692. package/lib/projects/create/__tests__/v2.test.js +0 -257
  693. package/lib/projects/localDev/DevServerManager_DEPRECATED.d.ts +0 -40
  694. package/lib/projects/localDev/DevServerManager_DEPRECATED.js +0 -128
  695. package/lib/projects/localDev/LocalDevManager_DEPRECATED.d.ts +0 -59
  696. package/lib/projects/localDev/LocalDevManager_DEPRECATED.js +0 -383
  697. package/lib/projects/platformVersion.d.ts +0 -9
  698. package/lib/projects/platformVersion.js +0 -39
  699. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.d.ts +0 -1
  700. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.js +0 -157
  701. package/lib/prompts/__tests__/createFunctionPrompt.test.d.ts +0 -1
  702. package/lib/prompts/__tests__/createFunctionPrompt.test.js +0 -129
  703. package/lib/prompts/__tests__/createModulePrompt.test.d.ts +0 -1
  704. package/lib/prompts/__tests__/createModulePrompt.test.js +0 -187
  705. package/lib/prompts/__tests__/createTemplatePrompt.test.d.ts +0 -1
  706. package/lib/prompts/__tests__/createTemplatePrompt.test.js +0 -102
  707. package/lib/prompts/__tests__/downloadProjectPrompt.test.d.ts +0 -1
  708. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +0 -31
  709. package/lib/prompts/__tests__/projectAddPrompt.test.d.ts +0 -1
  710. package/lib/prompts/__tests__/projectAddPrompt.test.js +0 -143
  711. package/lib/prompts/__tests__/projectsLogsPrompt.test.d.ts +0 -1
  712. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +0 -37
  713. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.d.ts +0 -1
  714. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.js +0 -160
  715. package/lib/sandboxSync.d.ts +0 -4
  716. package/lib/sandboxSync.js +0 -102
  717. package/lib/theme/__tests__/migrate.test.d.ts +0 -1
  718. package/lib/theme/__tests__/migrate.test.js +0 -256
  719. package/lib/ui/__tests__/SpinniesManager.test.d.ts +0 -1
  720. package/lib/ui/__tests__/SpinniesManager.test.js +0 -488
  721. package/lib/ui/__tests__/removeAnsiCodes.test.d.ts +0 -1
  722. package/lib/ui/__tests__/removeAnsiCodes.test.js +0 -84
  723. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.d.ts +0 -1
  724. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.js +0 -254
  725. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.d.ts +0 -1
  726. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.js +0 -227
  727. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.d.ts +0 -1
  728. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.js +0 -208
  729. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.d.ts +0 -1
  730. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.js +0 -186
  731. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.d.ts +0 -1
  732. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.js +0 -124
  733. package/mcp-server/tools/cms/__tests__/HsListTool.test.d.ts +0 -1
  734. package/mcp-server/tools/cms/__tests__/HsListTool.test.js +0 -124
  735. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.d.ts +0 -1
  736. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.js +0 -157
  737. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.d.ts +0 -1
  738. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +0 -132
  739. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.d.ts +0 -1
  740. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.js +0 -461
  741. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.d.ts +0 -1
  742. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.js +0 -125
  743. package/mcp-server/tools/project/__tests__/DocFetchTool.test.d.ts +0 -1
  744. package/mcp-server/tools/project/__tests__/DocFetchTool.test.js +0 -125
  745. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.d.ts +0 -1
  746. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.js +0 -210
  747. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.d.ts +0 -1
  748. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.js +0 -146
  749. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.d.ts +0 -1
  750. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.js +0 -124
  751. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.d.ts +0 -1
  752. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.js +0 -307
  753. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.d.ts +0 -1
  754. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.js +0 -242
  755. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.d.ts +0 -1
  756. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +0 -209
  757. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.d.ts +0 -1
  758. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +0 -158
  759. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.d.ts +0 -1
  760. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +0 -187
  761. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.d.ts +0 -1
  762. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +0 -118
  763. package/mcp-server/utils/__tests__/command.test.d.ts +0 -1
  764. package/mcp-server/utils/__tests__/command.test.js +0 -275
  765. package/mcp-server/utils/__tests__/content.test.d.ts +0 -1
  766. package/mcp-server/utils/__tests__/content.test.js +0 -164
  767. package/mcp-server/utils/__tests__/feedbackTracking.test.d.ts +0 -1
  768. package/mcp-server/utils/__tests__/feedbackTracking.test.js +0 -69
package/lib/commonOpts.js CHANGED
@@ -72,12 +72,16 @@ export function addUseEnvironmentOptions(yargs) {
72
72
  return yargs;
73
73
  }
74
74
  export function addJSONOutputOptions(yargs) {
75
- return yargs.option('json', {
75
+ yargs.option('json', {
76
76
  alias: 'format-output-as-json',
77
77
  describe: lib.commonOpts.options.jsonOutput,
78
78
  type: 'boolean',
79
- hidden: true,
80
79
  });
80
+ yargs.option('json-schema', {
81
+ describe: lib.commonOpts.options.jsonSchema,
82
+ type: 'boolean',
83
+ });
84
+ return yargs;
81
85
  }
82
86
  // Remove this once we've upgraded to yargs 18.0.0
83
87
  function uiBetaTagWithColor(message) {
@@ -1,21 +1,21 @@
1
1
  import { CmsPublishMode } from '@hubspot/local-dev-lib/types/Files';
2
- export declare function setAllowUsageTracking({ accountId, allowUsageTracking, }: {
2
+ export declare function setAllowUsageTracking({ allowUsageTracking, }: {
3
3
  accountId: number;
4
4
  allowUsageTracking?: boolean;
5
- }): Promise<void>;
6
- export declare function setAllowAutoUpdates({ accountId, allowAutoUpdates, }: {
5
+ }): Promise<boolean>;
6
+ export declare function setAllowAutoUpdates({ allowAutoUpdates, }: {
7
7
  accountId: number;
8
8
  allowAutoUpdates?: boolean;
9
- }): Promise<void>;
10
- export declare function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMode, }: {
9
+ }): Promise<boolean>;
10
+ export declare function setDefaultCmsPublishMode({ defaultCmsPublishMode, }: {
11
11
  accountId: number;
12
12
  defaultCmsPublishMode?: CmsPublishMode;
13
- }): Promise<void>;
14
- export declare function setHttpTimeout({ accountId, httpTimeout, }: {
13
+ }): Promise<CmsPublishMode>;
14
+ export declare function setHttpTimeout({ httpTimeout, }: {
15
15
  accountId: number;
16
16
  httpTimeout?: string;
17
- }): Promise<void>;
18
- export declare function setAutoOpenBrowser({ accountId, autoOpenBrowser, }: {
17
+ }): Promise<string>;
18
+ export declare function setAutoOpenBrowser({ autoOpenBrowser, }: {
19
19
  accountId: number;
20
20
  autoOpenBrowser: boolean;
21
- }): Promise<void>;
21
+ }): Promise<boolean>;
@@ -1,7 +1,6 @@
1
1
  import { updateAllowUsageTracking, updateAllowAutoUpdates, updateDefaultCmsPublishMode, updateHttpTimeout, updateAutoOpenBrowser, } from '@hubspot/local-dev-lib/config';
2
2
  import { CMS_PUBLISH_MODE } from '@hubspot/local-dev-lib/constants/files';
3
3
  import { commaSeparatedValues } from '@hubspot/local-dev-lib/text';
4
- import { trackCommandUsage } from './usageTracking.js';
5
4
  import { promptUser, listPrompt } from './prompts/promptUtils.js';
6
5
  import { lib } from '../lang/en.js';
7
6
  import { uiLogger } from './ui/logger.js';
@@ -23,8 +22,7 @@ async function enableOrDisableBooleanFieldPrompt(fieldName) {
23
22
  });
24
23
  return isEnabled;
25
24
  }
26
- export async function setAllowUsageTracking({ accountId, allowUsageTracking, }) {
27
- trackCommandUsage('config-set-allow-usage-tracking', undefined, accountId);
25
+ export async function setAllowUsageTracking({ allowUsageTracking, }) {
28
26
  let isEnabled;
29
27
  if (typeof allowUsageTracking === 'boolean') {
30
28
  isEnabled = allowUsageTracking;
@@ -34,9 +32,9 @@ export async function setAllowUsageTracking({ accountId, allowUsageTracking, })
34
32
  }
35
33
  updateAllowUsageTracking(isEnabled);
36
34
  uiLogger.success(lib.configOptions.setAllowUsageTracking.success(isEnabled.toString()));
35
+ return isEnabled;
37
36
  }
38
- export async function setAllowAutoUpdates({ accountId, allowAutoUpdates, }) {
39
- trackCommandUsage('config-set-allow-auto-updates', undefined, accountId);
37
+ export async function setAllowAutoUpdates({ allowAutoUpdates, }) {
40
38
  let isEnabled;
41
39
  if (typeof allowAutoUpdates === 'boolean') {
42
40
  isEnabled = allowAutoUpdates;
@@ -46,6 +44,7 @@ export async function setAllowAutoUpdates({ accountId, allowAutoUpdates, }) {
46
44
  }
47
45
  updateAllowAutoUpdates(isEnabled);
48
46
  uiLogger.success(lib.configOptions.setAllowAutoUpdates.success(isEnabled.toString()));
47
+ return isEnabled;
49
48
  }
50
49
  const ALL_CMS_PUBLISH_MODES = Object.values(CMS_PUBLISH_MODE);
51
50
  async function selectCmsPublishMode() {
@@ -55,8 +54,7 @@ async function selectCmsPublishMode() {
55
54
  });
56
55
  return cmsPublishMode;
57
56
  }
58
- export async function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMode, }) {
59
- trackCommandUsage('config-set-default-mode', undefined, accountId);
57
+ export async function setDefaultCmsPublishMode({ defaultCmsPublishMode, }) {
60
58
  let newDefault;
61
59
  if (!defaultCmsPublishMode) {
62
60
  newDefault = await selectCmsPublishMode();
@@ -71,6 +69,7 @@ export async function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMod
71
69
  }
72
70
  updateDefaultCmsPublishMode(newDefault);
73
71
  uiLogger.success(lib.configOptions.setDefaultCmsPublishMode.success(newDefault));
72
+ return newDefault;
74
73
  }
75
74
  async function enterTimeout() {
76
75
  const { timeout } = await promptUser([
@@ -90,8 +89,7 @@ async function enterTimeout() {
90
89
  ]);
91
90
  return timeout;
92
91
  }
93
- export async function setHttpTimeout({ accountId, httpTimeout, }) {
94
- trackCommandUsage('config-set-http-timeout', undefined, accountId);
92
+ export async function setHttpTimeout({ httpTimeout, }) {
95
93
  let newHttpTimeout;
96
94
  if (!httpTimeout) {
97
95
  newHttpTimeout = await enterTimeout();
@@ -101,11 +99,12 @@ export async function setHttpTimeout({ accountId, httpTimeout, }) {
101
99
  }
102
100
  updateHttpTimeout(newHttpTimeout);
103
101
  uiLogger.success(lib.configOptions.setHttpTimeout.success(newHttpTimeout));
102
+ return newHttpTimeout;
104
103
  }
105
- export async function setAutoOpenBrowser({ accountId, autoOpenBrowser, }) {
106
- trackCommandUsage('config-set-auto-open-browser', undefined, accountId);
104
+ export async function setAutoOpenBrowser({ autoOpenBrowser, }) {
107
105
  updateAutoOpenBrowser(autoOpenBrowser);
108
106
  uiLogger.success(autoOpenBrowser
109
107
  ? lib.configOptions.setAutoOpenBrowser.enabled
110
108
  : lib.configOptions.setAutoOpenBrowser.disabled);
109
+ return autoOpenBrowser;
111
110
  }
@@ -1,9 +1,11 @@
1
1
  export declare const HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH: "HubSpot/hubspot-project-components";
2
+ export declare const MAX_LOG_FILES = 10;
2
3
  export declare const DEFAULT_PROJECT_TEMPLATE_BRANCH: "main";
3
4
  export declare const FEEDBACK_INTERVAL: 10;
4
5
  export declare const HUBSPOT_FOLDER: "@hubspot";
5
6
  export declare const MARKETPLACE_FOLDER: "@marketplace";
6
7
  export declare const DEFAULT_POLLING_DELAY = 2000;
8
+ export declare const PREVIEW_POLL_TIMEOUT: number;
7
9
  export declare const PROJECT_CONFIG_FILE: "hsproject.json";
8
10
  export declare const PROJECT_BUILD_STATES: {
9
11
  readonly BUILDING: "BUILDING";
@@ -77,12 +79,10 @@ export declare const APP_AUTH_TYPES: {
77
79
  };
78
80
  export declare const FEATURES: {
79
81
  readonly UNIFIED_APPS: "Developers:UnifiedApps:PrivateBeta";
80
- readonly SANDBOXES_V2: "sandboxes:v2:enabled";
81
- readonly SANDBOXES_V2_CLI: "sandboxes:v2:cliEnabled";
82
82
  readonly APP_EVENTS: "Developers:UnifiedApps:AppEventsAccess";
83
- readonly APPS_HOME: "UIE:AppHome";
84
83
  readonly THEME_MIGRATION_2025_2: "Developers:ProjectThemeMigrations:2025.2";
85
84
  readonly AGENT_TOOLS: "ThirdPartyAgentTools";
85
+ readonly APP_ACTIONS: "Developers:AppActions";
86
86
  };
87
87
  export declare const LOCAL_DEV_UI_MESSAGE_SEND_TYPES: {
88
88
  UPLOAD_SUCCESS: string;
@@ -94,6 +94,7 @@ export declare const LOCAL_DEV_UI_MESSAGE_SEND_TYPES: {
94
94
  UPDATE_PROJECT_DATA: string;
95
95
  UPDATE_UPLOAD_WARNINGS: string;
96
96
  DEV_SERVERS_STARTED: string;
97
+ UPLOAD_IN_PROGRESS: string;
97
98
  };
98
99
  export declare const LOCAL_DEV_UI_MESSAGE_RECEIVE_TYPES: {
99
100
  UPLOAD: string;
@@ -102,6 +103,7 @@ export declare const LOCAL_DEV_UI_MESSAGE_RECEIVE_TYPES: {
102
103
  APP_INSTALL_SUCCESS: string;
103
104
  APP_INSTALL_INITIATED: string;
104
105
  APP_INSTALL_FAILURE: string;
106
+ SET_AUTO_UPLOAD: string;
105
107
  };
106
108
  export declare const APP_INSTALLATION_STATES: {
107
109
  readonly NOT_INSTALLED: "NOT_INSTALLED";
@@ -126,6 +128,14 @@ export declare const LOCAL_DEV_SERVER_MESSAGE_TYPES: {
126
128
  readonly OAUTH_APP_INSTALL_INITIATED: "APP_INSTALL_INITIATED";
127
129
  };
128
130
  export declare const LOCAL_DEV_WEBSOCKET_SERVER_INSTANCE_ID = "local-dev-ui-websocket-server";
131
+ export declare const ACCOUNT_AUTH_UI_MESSAGE_SEND_TYPES: {
132
+ readonly AUTH_RECEIVED: "server:authReceived";
133
+ readonly AUTH_FAILED: "server:authFailed";
134
+ };
135
+ export declare const ACCOUNT_AUTH_UI_MESSAGE_RECEIVE_TYPES: {
136
+ readonly PERSONAL_ACCESS_KEY: "client:personalAccessKey";
137
+ };
138
+ export declare const ACCOUNT_AUTH_WEBSOCKET_SERVER_VERSION = 1;
129
139
  export declare const CONFIG_LOCAL_STATE_FLAGS: {
130
140
  readonly LOCAL_DEV_UI_WELCOME: "LOCAL_DEV_UI_WELCOME";
131
141
  };
@@ -145,3 +155,4 @@ export declare const ACCOUNT_LEVELS: {
145
155
  };
146
156
  export declare const ACCOUNT_LEVEL_CHOICES: readonly ["FREE", "STARTER", "PROFESSIONAL", "ENTERPRISE"];
147
157
  export declare const FEEDBACK_URL = "https://developers.hubspot.com/feedback";
158
+ export declare const LOCAL_DEV_DEFAULT_PORT = 4828;
package/lib/constants.js CHANGED
@@ -1,9 +1,11 @@
1
1
  export const HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH = 'HubSpot/hubspot-project-components';
2
+ export const MAX_LOG_FILES = 10;
2
3
  export const DEFAULT_PROJECT_TEMPLATE_BRANCH = 'main';
3
4
  export const FEEDBACK_INTERVAL = 10;
4
5
  export const HUBSPOT_FOLDER = '@hubspot';
5
6
  export const MARKETPLACE_FOLDER = '@marketplace';
6
7
  export const DEFAULT_POLLING_DELAY = 2000;
8
+ export const PREVIEW_POLL_TIMEOUT = 5 * 60 * 1000;
7
9
  export const PROJECT_CONFIG_FILE = 'hsproject.json';
8
10
  export const PROJECT_BUILD_STATES = {
9
11
  BUILDING: 'BUILDING',
@@ -69,12 +71,10 @@ export const APP_AUTH_TYPES = {
69
71
  };
70
72
  export const FEATURES = {
71
73
  UNIFIED_APPS: 'Developers:UnifiedApps:PrivateBeta',
72
- SANDBOXES_V2: 'sandboxes:v2:enabled',
73
- SANDBOXES_V2_CLI: 'sandboxes:v2:cliEnabled',
74
74
  APP_EVENTS: 'Developers:UnifiedApps:AppEventsAccess',
75
- APPS_HOME: 'UIE:AppHome',
76
75
  THEME_MIGRATION_2025_2: 'Developers:ProjectThemeMigrations:2025.2',
77
76
  AGENT_TOOLS: 'ThirdPartyAgentTools',
77
+ APP_ACTIONS: 'Developers:AppActions',
78
78
  };
79
79
  export const LOCAL_DEV_UI_MESSAGE_SEND_TYPES = {
80
80
  UPLOAD_SUCCESS: 'server:uploadSuccess',
@@ -86,6 +86,7 @@ export const LOCAL_DEV_UI_MESSAGE_SEND_TYPES = {
86
86
  UPDATE_PROJECT_DATA: 'server:updateProjectData',
87
87
  UPDATE_UPLOAD_WARNINGS: 'server:updateUploadWarnings',
88
88
  DEV_SERVERS_STARTED: 'server:devServersStarted',
89
+ UPLOAD_IN_PROGRESS: 'server:uploadInProgress',
89
90
  };
90
91
  export const LOCAL_DEV_UI_MESSAGE_RECEIVE_TYPES = {
91
92
  UPLOAD: 'client:upload',
@@ -94,6 +95,7 @@ export const LOCAL_DEV_UI_MESSAGE_RECEIVE_TYPES = {
94
95
  APP_INSTALL_SUCCESS: 'client:installSuccess',
95
96
  APP_INSTALL_INITIATED: 'client:installInitiated',
96
97
  APP_INSTALL_FAILURE: 'client:installFailure',
98
+ SET_AUTO_UPLOAD: 'client:setAutoUpload',
97
99
  };
98
100
  export const APP_INSTALLATION_STATES = {
99
101
  NOT_INSTALLED: 'NOT_INSTALLED',
@@ -118,6 +120,14 @@ export const LOCAL_DEV_SERVER_MESSAGE_TYPES = {
118
120
  OAUTH_APP_INSTALL_INITIATED: 'APP_INSTALL_INITIATED',
119
121
  };
120
122
  export const LOCAL_DEV_WEBSOCKET_SERVER_INSTANCE_ID = 'local-dev-ui-websocket-server';
123
+ export const ACCOUNT_AUTH_UI_MESSAGE_SEND_TYPES = {
124
+ AUTH_RECEIVED: 'server:authReceived',
125
+ AUTH_FAILED: 'server:authFailed',
126
+ };
127
+ export const ACCOUNT_AUTH_UI_MESSAGE_RECEIVE_TYPES = {
128
+ PERSONAL_ACCESS_KEY: 'client:personalAccessKey',
129
+ };
130
+ export const ACCOUNT_AUTH_WEBSOCKET_SERVER_VERSION = 1;
121
131
  export const CONFIG_LOCAL_STATE_FLAGS = {
122
132
  LOCAL_DEV_UI_WELCOME: 'LOCAL_DEV_UI_WELCOME',
123
133
  };
@@ -146,3 +156,6 @@ export const ACCOUNT_LEVEL_CHOICES = [
146
156
  ACCOUNT_LEVELS.ENTERPRISE,
147
157
  ];
148
158
  export const FEEDBACK_URL = 'https://developers.hubspot.com/feedback';
159
+ // TODO: remove this constant and use PORT_MANAGER_SERVER_PORT from
160
+ // @hubspot/local-dev-lib once LDL changes its default to 4828.
161
+ export const LOCAL_DEV_DEFAULT_PORT = 4828;
@@ -5,7 +5,7 @@ import { exec as execAsync } from 'node:child_process';
5
5
  import { getProjectConfig } from './projects/config.js';
6
6
  import { commands } from '../lang/en.js';
7
7
  import SpinniesManager from './ui/SpinniesManager.js';
8
- import { isGloballyInstalled, executeInstall, executeUpdate, DEFAULT_PACKAGE_MANAGER, } from './npm/npmCli.js';
8
+ import { isGloballyInstalled, executeInstall, executeUpdate, getNpmExecErrorOutput, DEFAULT_PACKAGE_MANAGER, } from './npm/npmCli.js';
9
9
  import { findAllPackageJsonFilesInProjectCached, safeGetPackageJsonCached, } from './npm/packageJson.js';
10
10
  import { getNpmWorkspaceDirectoryForPackageAtLocationCached } from './npm/workspaces.js';
11
11
  class NoPackageJsonFilesError extends Error {
@@ -106,9 +106,9 @@ async function installPackagesInDirectory({ directory, packages, dev = false, np
106
106
  SpinniesManager.fail(spinner, {
107
107
  text: commands.project.installDeps.installingDependenciesFailed(relativeDir),
108
108
  });
109
- throw new Error(commands.project.installDeps.installingDependenciesFailed(relativeDir), {
110
- cause: e,
111
- });
109
+ const npmErrorOutput = getNpmExecErrorOutput(e);
110
+ throw new Error(npmErrorOutput ||
111
+ commands.project.installDeps.installingDependenciesFailed(relativeDir), npmErrorOutput ? undefined : { cause: e });
112
112
  }
113
113
  }
114
114
  export async function updatePackages({ packages, installLocations, }) {
@@ -176,27 +176,20 @@ async function updatePackagesInDirectory({ directory, packages, npmWorkspaceDire
176
176
  SpinniesManager.fail(spinner, {
177
177
  text: commands.project.updateDeps.updatingDependenciesFailed(relativeDir),
178
178
  });
179
- throw new Error(commands.project.updateDeps.updatingDependenciesFailed(relativeDir), {
180
- cause: e,
181
- });
179
+ const npmErrorOutput = getNpmExecErrorOutput(e);
180
+ throw new Error(npmErrorOutput ||
181
+ commands.project.updateDeps.updatingDependenciesFailed(relativeDir), npmErrorOutput ? undefined : { cause: e });
182
182
  }
183
183
  }
184
184
  export async function getProjectPackageJsonLocations(dir, isUpdate = false) {
185
- const projectConfig = await getProjectConfig(dir);
186
- if (!projectConfig ||
187
- !projectConfig.projectDir ||
188
- !projectConfig.projectConfig) {
189
- throw new Error(isUpdate
190
- ? commands.project.updateDeps.noProjectConfig
191
- : commands.project.installDeps.noProjectConfig);
192
- }
193
- const { projectDir, projectConfig: { srcDir, name }, } = projectConfig;
185
+ const { projectConfig, projectDir } = getProjectConfig(dir);
186
+ const { srcDir, name } = projectConfig;
194
187
  if (!(await isGloballyInstalled(DEFAULT_PACKAGE_MANAGER))) {
195
188
  throw new Error(isUpdate
196
189
  ? commands.project.updateDeps.packageManagerNotInstalled(DEFAULT_PACKAGE_MANAGER)
197
190
  : commands.project.installDeps.packageManagerNotInstalled(DEFAULT_PACKAGE_MANAGER));
198
191
  }
199
- if (!fs.existsSync(projectConfig.projectDir) ||
192
+ if (!fs.existsSync(projectDir) ||
200
193
  !fs.existsSync(path.join(projectDir, srcDir))) {
201
194
  throw new NoPackageJsonFilesError(name, isUpdate);
202
195
  }
@@ -1,4 +1,4 @@
1
- import { prefixOptions } from '../ui/spinniesUtils.js';
1
+ import { getLabels } from '@hubspot/local-dev-lib/logger';
2
2
  import chalk from 'chalk';
3
3
  import { helpers } from '../interpolation.js';
4
4
  import { uiAccountDescription } from '../ui/index.js';
@@ -10,11 +10,11 @@ export class Diagnosis {
10
10
  errorCount = 0;
11
11
  warningCount = 0;
12
12
  constructor({ diagnosticInfo, accountId }) {
13
- const { succeedPrefix, failPrefix } = prefixOptions({});
13
+ const labels = getLabels();
14
14
  this.prefixes = {
15
- success: chalk.green(succeedPrefix),
16
- error: chalk.red(failPrefix),
17
- warning: helpers.orange('!'),
15
+ success: chalk.green(labels.success),
16
+ error: chalk.red(labels.error),
17
+ warning: helpers.orange(labels.warning),
18
18
  };
19
19
  this.diagnosis = {
20
20
  cli: {
@@ -1,9 +1,9 @@
1
- import { getProjectConfig } from '../projects/config.js';
2
1
  import { Environment } from '@hubspot/local-dev-lib/types/Accounts';
3
2
  import { AccessToken, AccountType, AuthType } from '@hubspot/local-dev-lib/types/Accounts';
4
3
  import { Project } from '@hubspot/local-dev-lib/types/Project';
5
4
  import process from 'process';
6
- export type ProjectConfig = Awaited<ReturnType<typeof getProjectConfig>>;
5
+ import type { LoadedProjectConfig } from '../projects/config.js';
6
+ export type ProjectConfig = LoadedProjectConfig | undefined;
7
7
  declare const hubspotCli = "@hubspot/cli";
8
8
  interface FilesInfo {
9
9
  files: string[];
@@ -50,12 +50,15 @@ export class DiagnosticInfoBuilder {
50
50
  this.processInfo = processInfo;
51
51
  }
52
52
  async generateDiagnosticInfo() {
53
- this._projectConfig = await getProjectConfig();
54
- if (this._projectConfig?.projectConfig) {
53
+ try {
54
+ this._projectConfig = getProjectConfig();
55
+ }
56
+ catch {
57
+ this._projectConfig = undefined;
58
+ }
59
+ if (this._projectConfig) {
55
60
  await this.fetchProjectDetails();
56
61
  await this.fetchAccessToken();
57
- }
58
- if (this._projectConfig?.projectDir) {
59
62
  await this.fetchProjectFilenames();
60
63
  }
61
64
  const { platform, arch, versions: { node }, mainModule, } = this.processInfo;
@@ -89,9 +92,7 @@ export class DiagnosticInfoBuilder {
89
92
  }
90
93
  async fetchProjectDetails() {
91
94
  try {
92
- const { data } = await fetchProject(this.accountId,
93
- // We check that config exists before running this function
94
- this._projectConfig.projectConfig.name);
95
+ const { data } = await fetchProject(this.accountId, this._projectConfig.projectConfig.name);
95
96
  this.projectDetails = data;
96
97
  }
97
98
  catch (e) {
@@ -109,7 +110,6 @@ export class DiagnosticInfoBuilder {
109
110
  }
110
111
  async fetchProjectFilenames() {
111
112
  try {
112
- // We check that projectDir exists before running this function
113
113
  this.files = (await walk(this._projectConfig.projectDir, ['node_modules'])).map(filename => path.relative(this._projectConfig.projectDir, filename));
114
114
  }
115
115
  catch (e) {
@@ -17,6 +17,7 @@ export declare class Doctor {
17
17
  private checkIfNodeIsInstalled;
18
18
  private checkIfNpmIsInstalled;
19
19
  private checkCLIVersion;
20
+ private checkMcpReadiness;
20
21
  private checkIfNpmInstallRequired;
21
22
  private isValidJsonFile;
22
23
  private checkProjectConfigJsonFiles;
@@ -10,8 +10,8 @@ import fs from 'fs';
10
10
  import path from 'path';
11
11
  import { Diagnosis } from './Diagnosis.js';
12
12
  import { DiagnosticInfoBuilder, } from './DiagnosticInfoBuilder.js';
13
- import { isPortManagerPortAvailable } from '@hubspot/local-dev-lib/portManager';
14
- import { PORT_MANAGER_SERVER_PORT } from '@hubspot/local-dev-lib/constants/ports';
13
+ import { isPortAvailable } from '@hubspot/local-dev-lib/portManager';
14
+ import { LOCAL_DEV_DEFAULT_PORT } from '../constants.js';
15
15
  import { accessTokenForPersonalAccessKey,
16
16
  // scopesOnAccessToken,
17
17
  } from '@hubspot/local-dev-lib/personalAccessKey';
@@ -23,10 +23,12 @@ import { pkg } from '../jsonLoader.js';
23
23
  import { lib } from '../../lang/en.js';
24
24
  import { uiLink } from '../ui/index.js';
25
25
  import { isServerRunningAtUrl } from '../http.js';
26
+ import { detectConfiguredMcpClients } from '../mcp/promotion.js';
27
+ import { MCP_CLIENTS } from '../mcp/clients.js';
26
28
  import { WEBHOOKS_KEY, APP_KEY } from '@hubspot/project-parsing-lib/constants';
27
- import { validateProjectConfig } from '../projects/config.js';
29
+ import { validateProjectConfig } from '@hubspot/project-parsing-lib/projects';
28
30
  import { validateSourceDirectory, handleTranslate, } from '../projects/upload.js';
29
- import { isV2Project } from '../projects/platformVersion.js';
31
+ import { isLegacyProject } from '@hubspot/project-parsing-lib/projects';
30
32
  import { validateProjectForProfile } from '../projects/projectProfiles.js';
31
33
  import { getAllHsProfiles } from '@hubspot/project-parsing-lib/profiles';
32
34
  const minMajorNodeVersion = 20;
@@ -55,7 +57,7 @@ export class Doctor {
55
57
  ...this.performCliChecks(),
56
58
  ...this.performCliConfigChecks(),
57
59
  ...this.performNetworkingChecks(),
58
- ...(this.projectConfig?.projectConfig ? this.performProjectChecks() : []),
60
+ ...(this.projectConfig ? this.performProjectChecks() : []),
59
61
  ]);
60
62
  this.performDefaultAccountOverrideFileChecks();
61
63
  this.performCliConfigSettingsChecks();
@@ -73,6 +75,7 @@ export class Doctor {
73
75
  this.checkIfNodeIsInstalled(),
74
76
  this.checkIfNpmIsInstalled(),
75
77
  this.checkCLIVersion(),
78
+ this.checkMcpReadiness(),
76
79
  ];
77
80
  }
78
81
  performNetworkingChecks() {
@@ -252,12 +255,35 @@ export class Doctor {
252
255
  });
253
256
  }
254
257
  }
258
+ async checkMcpReadiness() {
259
+ try {
260
+ const configuredClients = detectConfiguredMcpClients();
261
+ const allClientIds = MCP_CLIENTS.map(c => c.id);
262
+ const unconfiguredClients = allClientIds.filter(id => !configuredClients.includes(id));
263
+ if (configuredClients.length > 0) {
264
+ this.diagnosis?.addCliSection({
265
+ type: 'success',
266
+ message: lib.doctor.mcpChecks.configured(configuredClients),
267
+ });
268
+ }
269
+ if (unconfiguredClients.length > 0) {
270
+ this.diagnosis?.addCliSection({
271
+ type: 'warning',
272
+ message: lib.doctor.mcpChecks.notConfigured(unconfiguredClients),
273
+ secondaryMessaging: lib.doctor.mcpChecks.notConfiguredSecondary,
274
+ });
275
+ }
276
+ }
277
+ catch (e) {
278
+ uiLogger.debug(getErrorMessage(e));
279
+ }
280
+ }
255
281
  async checkIfNpmInstallRequired() {
256
282
  let foundError = false;
257
283
  for (const packageFile of this.diagnosticInfo?.packageFiles || []) {
258
284
  const packageDirName = path.dirname(packageFile);
259
285
  try {
260
- const needsInstall = await hasMissingPackages(path.join(this.projectConfig?.projectDir || '', packageDirName));
286
+ const needsInstall = await hasMissingPackages(path.join(this.projectConfig?.projectDir ?? '', packageDirName));
261
287
  if (needsInstall) {
262
288
  foundError = true;
263
289
  this.diagnosis?.addProjectSection({
@@ -305,7 +331,7 @@ export class Doctor {
305
331
  async checkProjectConfigJsonFiles() {
306
332
  let foundError = false;
307
333
  for (const jsonFile of this.diagnosticInfo?.jsonFiles || []) {
308
- const fileToCheck = path.join(this.projectConfig?.projectDir || '', jsonFile);
334
+ const fileToCheck = path.join(this.projectConfig?.projectDir ?? '', jsonFile);
309
335
  if (!(await this.isValidJsonFile(fileToCheck))) {
310
336
  foundError = true;
311
337
  this.diagnosis?.addProjectSection({
@@ -322,16 +348,16 @@ export class Doctor {
322
348
  }
323
349
  }
324
350
  async checkIfPortsAreAvailable() {
325
- if (await isPortManagerPortAvailable()) {
351
+ if (await isPortAvailable(LOCAL_DEV_DEFAULT_PORT)) {
326
352
  this.diagnosis?.addProjectSection({
327
353
  type: 'success',
328
- message: lib.doctor.port.available(PORT_MANAGER_SERVER_PORT),
354
+ message: lib.doctor.port.available(LOCAL_DEV_DEFAULT_PORT),
329
355
  });
330
356
  return;
331
357
  }
332
358
  this.diagnosis?.addProjectSection({
333
359
  type: 'warning',
334
- message: lib.doctor.port.inUse(PORT_MANAGER_SERVER_PORT),
360
+ message: lib.doctor.port.inUse(LOCAL_DEV_DEFAULT_PORT),
335
361
  secondaryMessaging: lib.doctor.port.inUseSecondary,
336
362
  });
337
363
  }
@@ -406,7 +432,7 @@ export class Doctor {
406
432
  const hsMetaFiles = this.diagnosticInfo?.hsMetaFiles || [];
407
433
  for (const metaFiles of hsMetaFiles) {
408
434
  try {
409
- const content = await fs.promises.readFile(path.join(this.projectConfig?.projectDir || '', metaFiles), 'utf8');
435
+ const content = await fs.promises.readFile(path.join(this.projectConfig?.projectDir ?? '', metaFiles), 'utf8');
410
436
  const contents = JSON.parse(content);
411
437
  if (contents.type === WEBHOOKS_KEY &&
412
438
  contents.config?.settings?.targetUrl) {
@@ -435,7 +461,7 @@ export class Doctor {
435
461
  const hsMetaFiles = this.diagnosticInfo?.hsMetaFiles || [];
436
462
  for (const metaFile of hsMetaFiles) {
437
463
  try {
438
- const content = await fs.promises.readFile(path.join(this.projectConfig?.projectDir || '', metaFile), 'utf8');
464
+ const content = await fs.promises.readFile(path.join(this.projectConfig?.projectDir ?? '', metaFile), 'utf8');
439
465
  const contents = JSON.parse(content);
440
466
  if (contents.type === APP_KEY &&
441
467
  Array.isArray(contents.config?.auth?.redirectUrls)) {
@@ -524,9 +550,7 @@ export class Doctor {
524
550
  }
525
551
  }
526
552
  async checkProjectValidation() {
527
- if (!this.projectConfig?.projectConfig ||
528
- !this.projectConfig?.projectDir ||
529
- !this.accountId) {
553
+ if (!this.projectConfig || !this.accountId) {
530
554
  return;
531
555
  }
532
556
  const { projectConfig, projectDir } = this.projectConfig;
@@ -534,7 +558,7 @@ export class Doctor {
534
558
  if (!this.validateProjectConfigWrapper(projectConfig, projectDir)) {
535
559
  return;
536
560
  }
537
- if (!isV2Project(projectConfig.platformVersion)) {
561
+ if (isLegacyProject(projectConfig.platformVersion)) {
538
562
  this.diagnosis?.addProjectSection({
539
563
  type: 'success',
540
564
  message: lib.doctor.projectValidation.valid,
@@ -7,11 +7,12 @@ import util from 'util';
7
7
  import { isProjectValidationError } from '../errors/ProjectValidationError.js';
8
8
  export function logError(error, context) {
9
9
  debugError(error, context);
10
- if (isProjectValidationError(error)) {
11
- uiLogger.error(error.message);
10
+ // This should be right after debugError. Add anything else below it
11
+ if (shouldSuppressError(error, context)) {
12
12
  return;
13
13
  }
14
- if (shouldSuppressError(error, context)) {
14
+ if (isProjectValidationError(error)) {
15
+ uiLogger.error(error.message);
15
16
  return;
16
17
  }
17
18
  if (isHubSpotHttpError(error)) {
@@ -3,6 +3,7 @@ import { uiLogger } from '../ui/logger.js';
3
3
  import { PLATFORM_VERSION_ERROR_TYPES } from '../constants.js';
4
4
  import { lib } from '../../lang/en.js';
5
5
  import { uiAccountDescription, uiLine, uiLink } from '../ui/index.js';
6
+ import { isPromptExitError } from '../errors/PromptExitError.js';
6
7
  function createPlatformVersionError(err, subCategory) {
7
8
  let translationKey = 'unspecifiedPlatformVersion';
8
9
  let platformVersion = 'unspecified platformVersion';
@@ -27,6 +28,9 @@ function createPlatformVersionError(err, subCategory) {
27
28
  uiLine();
28
29
  }
29
30
  export function shouldSuppressError(err, context) {
31
+ if (isPromptExitError(err)) {
32
+ return true;
33
+ }
30
34
  if (isMissingScopeError(err)) {
31
35
  uiLogger.error(lib.errorHandlers.suppressErrors.missingScopeError(context?.request || 'request', context?.accountId ? uiAccountDescription(context.accountId) : ''));
32
36
  return true;
@@ -1,12 +1,6 @@
1
1
  export declare class ProjectNestingError extends Error {
2
2
  constructor(message: string);
3
3
  }
4
- export declare class ProjectConfigNotFoundError extends Error {
5
- constructor(message: string);
6
- }
7
- export declare class ProjectValidationError extends Error {
8
- constructor(message: string);
9
- }
10
4
  export declare class ProjectUploadError extends Error {
11
5
  constructor(message: string, cause?: unknown);
12
6
  }
@@ -4,18 +4,6 @@ export class ProjectNestingError extends Error {
4
4
  this.name = 'ProjectNestingError';
5
5
  }
6
6
  }
7
- export class ProjectConfigNotFoundError extends Error {
8
- constructor(message) {
9
- super(message);
10
- this.name = 'ProjectConfigNotFoundError';
11
- }
12
- }
13
- export class ProjectValidationError extends Error {
14
- constructor(message) {
15
- super(message);
16
- this.name = 'ProjectValidationError';
17
- }
18
- }
19
7
  export class ProjectUploadError extends Error {
20
8
  constructor(message, cause) {
21
9
  super(message, { cause });
@@ -1,4 +1,5 @@
1
+ import { ProjectConfigValidationError } from '@hubspot/project-parsing-lib/projects';
1
2
  export default class ProjectValidationError extends Error {
2
3
  constructor(message: string, options?: ErrorOptions);
3
4
  }
4
- export declare function isProjectValidationError(err: unknown): err is ProjectValidationError;
5
+ export declare function isProjectValidationError(err: unknown): err is ProjectValidationError | ProjectConfigValidationError;
@@ -1,3 +1,4 @@
1
+ import { ProjectConfigValidationError } from '@hubspot/project-parsing-lib/projects';
1
2
  export default class ProjectValidationError extends Error {
2
3
  constructor(message, options) {
3
4
  super(message, options);
@@ -5,5 +6,6 @@ export default class ProjectValidationError extends Error {
5
6
  }
6
7
  }
7
8
  export function isProjectValidationError(err) {
8
- return err instanceof ProjectValidationError;
9
+ return (err instanceof ProjectValidationError ||
10
+ err instanceof ProjectConfigValidationError);
9
11
  }
@@ -0,0 +1,6 @@
1
+ import { ExitCode } from '../../types/Yargs.js';
2
+ export declare class PromptExitError extends Error {
3
+ exitCode: ExitCode;
4
+ constructor(message: string, exitCode: ExitCode);
5
+ }
6
+ export declare function isPromptExitError(e: unknown): e is PromptExitError;
@@ -0,0 +1,11 @@
1
+ export class PromptExitError extends Error {
2
+ exitCode;
3
+ constructor(message, exitCode) {
4
+ super(message);
5
+ this.name = 'PromptExitError';
6
+ this.exitCode = exitCode;
7
+ }
8
+ }
9
+ export function isPromptExitError(e) {
10
+ return e instanceof PromptExitError;
11
+ }