@hubspot/cli 8.1.0-beta.0 → 8.1.0-experimental.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (670) hide show
  1. package/api/migrate.js +8 -4
  2. package/bin/cli.js +12 -6
  3. package/commands/account/auth.js +7 -7
  4. package/commands/account/clean.js +7 -6
  5. package/commands/account/createOverride.js +10 -7
  6. package/commands/account/info.js +36 -17
  7. package/commands/account/link.d.ts +4 -0
  8. package/commands/account/link.js +89 -0
  9. package/commands/account/list.js +32 -76
  10. package/commands/account/remove.js +4 -3
  11. package/commands/account/removeOverride.js +11 -10
  12. package/commands/account/rename.js +5 -6
  13. package/commands/account/unlink.d.ts +4 -0
  14. package/commands/account/unlink.js +70 -0
  15. package/commands/account/use.js +75 -6
  16. package/commands/account.js +4 -0
  17. package/commands/api.d.ts +10 -0
  18. package/commands/api.js +164 -0
  19. package/commands/app/migrate.js +13 -13
  20. package/commands/app/secret/add.js +6 -7
  21. package/commands/app/secret/delete.js +9 -10
  22. package/commands/app/secret/list.js +6 -7
  23. package/commands/app/secret/update.js +8 -9
  24. package/commands/auth.js +19 -15
  25. package/commands/cms/app/create.js +9 -5
  26. package/commands/cms/convertFields.js +8 -8
  27. package/commands/cms/delete.js +2 -3
  28. package/commands/cms/fetch.js +7 -7
  29. package/commands/cms/function/create.js +9 -5
  30. package/commands/cms/function/deploy.js +2 -3
  31. package/commands/cms/function/list.js +11 -7
  32. package/commands/cms/function/logs.js +17 -22
  33. package/commands/cms/function/server.js +2 -3
  34. package/commands/cms/getReactModule.js +7 -8
  35. package/commands/cms/lighthouseScore.js +25 -24
  36. package/commands/cms/lint.js +4 -5
  37. package/commands/cms/list.js +5 -6
  38. package/commands/cms/module/create.js +9 -5
  39. package/commands/cms/module/marketplace-validate.js +7 -8
  40. package/commands/cms/mv.js +2 -3
  41. package/commands/cms/template/create.js +10 -6
  42. package/commands/cms/theme/create.js +5 -5
  43. package/commands/cms/theme/generate-selectors.js +5 -4
  44. package/commands/cms/theme/marketplace-validate.js +8 -9
  45. package/commands/cms/theme/preview.js +23 -70
  46. package/commands/cms/upload.js +15 -12
  47. package/commands/cms/watch.d.ts +0 -1
  48. package/commands/cms/watch.js +6 -12
  49. package/commands/cms/webpack/create.js +5 -5
  50. package/commands/completion.js +3 -5
  51. package/commands/config/migrate.js +6 -7
  52. package/commands/config/set.js +5 -6
  53. package/commands/customObject/create.js +4 -5
  54. package/commands/customObject/createSchema.js +4 -5
  55. package/commands/customObject/deleteSchema.js +4 -5
  56. package/commands/customObject/fetchAllSchemas.js +2 -3
  57. package/commands/customObject/fetchSchema.js +2 -3
  58. package/commands/customObject/listSchemas.js +2 -3
  59. package/commands/customObject/updateSchema.js +4 -5
  60. package/commands/doctor.js +8 -8
  61. package/commands/feedback.js +7 -5
  62. package/commands/filemanager/fetch.js +5 -6
  63. package/commands/filemanager/upload.js +5 -5
  64. package/commands/getStarted.js +17 -19
  65. package/commands/hubdb/clear.js +6 -3
  66. package/commands/hubdb/create.js +4 -5
  67. package/commands/hubdb/delete.js +9 -6
  68. package/commands/hubdb/fetch.js +6 -3
  69. package/commands/hubdb/list.js +16 -14
  70. package/commands/init.js +15 -14
  71. package/commands/mcp/setup.js +5 -14
  72. package/commands/mcp/start.js +2 -4
  73. package/commands/open.js +4 -5
  74. package/commands/project/add.js +13 -8
  75. package/commands/project/appInstallStatus.d.ts +4 -0
  76. package/commands/project/appInstallStatus.js +132 -0
  77. package/commands/project/create.js +28 -17
  78. package/commands/project/delete.d.ts +7 -0
  79. package/commands/project/delete.js +74 -0
  80. package/commands/project/deploy.js +39 -36
  81. package/commands/project/dev/deprecatedFlow.js +62 -17
  82. package/commands/project/dev/index.d.ts +3 -3
  83. package/commands/project/dev/index.js +59 -48
  84. package/commands/project/dev/unifiedFlow.js +70 -21
  85. package/commands/project/download.js +12 -9
  86. package/commands/project/info.d.ts +4 -0
  87. package/commands/project/info.js +67 -0
  88. package/commands/project/installDeps.js +9 -6
  89. package/commands/project/lint.js +31 -10
  90. package/commands/project/list.js +14 -14
  91. package/commands/project/listBuilds.js +8 -6
  92. package/commands/project/logs.js +5 -6
  93. package/commands/project/migrate.js +18 -18
  94. package/commands/project/open.js +5 -6
  95. package/commands/project/profile/add.js +12 -8
  96. package/commands/project/profile/delete.js +15 -11
  97. package/commands/project/updateDeps.js +9 -6
  98. package/commands/project/upload.js +33 -19
  99. package/commands/project/validate.js +12 -12
  100. package/commands/project/watch.js +32 -19
  101. package/commands/project.js +12 -3
  102. package/commands/sandbox/create.js +18 -45
  103. package/commands/sandbox/delete.js +13 -14
  104. package/commands/secret/addSecret.js +6 -7
  105. package/commands/secret/deleteSecret.js +5 -6
  106. package/commands/secret/listSecret.js +2 -3
  107. package/commands/secret/updateSecret.js +4 -5
  108. package/commands/testAccount/create.d.ts +1 -1
  109. package/commands/testAccount/create.js +25 -17
  110. package/commands/testAccount/createConfig.js +7 -8
  111. package/commands/testAccount/delete.js +27 -18
  112. package/commands/testAccount/importData.js +6 -7
  113. package/commands/upgrade.js +9 -10
  114. package/lang/en.d.ts +248 -14
  115. package/lang/en.js +265 -28
  116. package/lib/accountAuth.js +4 -0
  117. package/lib/app/migrate.js +18 -5
  118. package/lib/buildAccount.d.ts +1 -6
  119. package/lib/buildAccount.js +9 -42
  120. package/lib/commandSuggestion.js +1 -7
  121. package/lib/constants.d.ts +2 -4
  122. package/lib/constants.js +4 -4
  123. package/lib/doctor/Diagnosis.js +5 -5
  124. package/lib/doctor/Doctor.js +7 -7
  125. package/lib/errorHandlers/index.js +4 -3
  126. package/lib/errorHandlers/suppressError.js +4 -0
  127. package/lib/errors/PromptExitError.d.ts +6 -0
  128. package/lib/errors/PromptExitError.js +11 -0
  129. package/lib/generateSelectors.js +1 -2
  130. package/lib/getStartedV2Actions.d.ts +13 -0
  131. package/lib/getStartedV2Actions.js +56 -3
  132. package/lib/hasFeature.js +1 -2
  133. package/lib/link/accountTableUtils.d.ts +10 -0
  134. package/lib/link/accountTableUtils.js +39 -0
  135. package/lib/link/index.d.ts +18 -0
  136. package/lib/link/index.js +185 -0
  137. package/lib/link/linkUtils.d.ts +5 -0
  138. package/lib/link/linkUtils.js +49 -0
  139. package/lib/link/prompts.d.ts +7 -0
  140. package/lib/link/prompts.js +126 -0
  141. package/lib/link/renderLinkedAccountsTable.d.ts +2 -0
  142. package/lib/link/renderLinkedAccountsTable.js +14 -0
  143. package/lib/link/warnIfLinkedDirectory.d.ts +1 -0
  144. package/lib/link/warnIfLinkedDirectory.js +9 -0
  145. package/lib/mcp/setup.d.ts +1 -0
  146. package/lib/mcp/setup.js +77 -30
  147. package/lib/middleware/autoUpdateMiddleware.js +6 -3
  148. package/lib/process.d.ts +1 -1
  149. package/lib/process.js +10 -3
  150. package/lib/projects/ProjectLogsManager.js +6 -3
  151. package/lib/projects/components.js +15 -4
  152. package/lib/projects/create/index.js +3 -6
  153. package/lib/projects/create/legacy.js +5 -10
  154. package/lib/projects/create/v2.js +5 -14
  155. package/lib/projects/delete.d.ts +13 -0
  156. package/lib/projects/delete.js +193 -0
  157. package/lib/projects/deploy.d.ts +1 -1
  158. package/lib/projects/deploy.js +2 -2
  159. package/lib/projects/ensureProjectExists.js +1 -2
  160. package/lib/projects/localDev/AppDevModeInterface.js +13 -9
  161. package/lib/projects/localDev/DevServerManager_DEPRECATED.d.ts +4 -1
  162. package/lib/projects/localDev/DevServerManager_DEPRECATED.js +3 -3
  163. package/lib/projects/localDev/DevSessionManager.d.ts +6 -3
  164. package/lib/projects/localDev/DevSessionManager.js +31 -19
  165. package/lib/projects/localDev/LocalDevManager_DEPRECATED.d.ts +5 -0
  166. package/lib/projects/localDev/LocalDevManager_DEPRECATED.js +21 -10
  167. package/lib/projects/localDev/LocalDevProcess.js +6 -5
  168. package/lib/projects/localDev/LocalDevState.d.ts +3 -2
  169. package/lib/projects/localDev/LocalDevState.js +3 -1
  170. package/lib/projects/localDev/helpers/account.d.ts +4 -3
  171. package/lib/projects/localDev/helpers/account.js +21 -30
  172. package/lib/projects/localDev/helpers/process.d.ts +1 -1
  173. package/lib/projects/localDev/helpers/process.js +4 -10
  174. package/lib/projects/localDev/helpers/project.d.ts +4 -3
  175. package/lib/projects/localDev/helpers/project.js +31 -15
  176. package/lib/projects/pollProjectBuildAndDeploy.js +90 -85
  177. package/lib/projects/projectInfo.d.ts +5 -0
  178. package/lib/projects/projectInfo.js +82 -0
  179. package/lib/projects/projectProfiles.d.ts +1 -2
  180. package/lib/projects/projectProfiles.js +5 -17
  181. package/lib/projects/uieLinting.d.ts +17 -3
  182. package/lib/projects/uieLinting.js +93 -28
  183. package/lib/projects/upload.d.ts +1 -0
  184. package/lib/projects/upload.js +59 -49
  185. package/lib/projects/watch.d.ts +2 -1
  186. package/lib/projects/watch.js +32 -24
  187. package/lib/projects/workspaces.d.ts +52 -0
  188. package/lib/projects/workspaces.js +365 -0
  189. package/lib/prompts/createApiSamplePrompt.js +4 -0
  190. package/lib/prompts/downloadProjectPrompt.js +11 -10
  191. package/lib/prompts/installAppPrompt.js +3 -2
  192. package/lib/prompts/personalAccessKeyPrompt.js +3 -2
  193. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -0
  194. package/lib/prompts/projectDevTargetAccountPrompt.js +23 -16
  195. package/lib/prompts/projectProfilePrompt.d.ts +2 -0
  196. package/lib/prompts/projectProfilePrompt.js +46 -0
  197. package/lib/prompts/projectsLogsPrompt.js +3 -0
  198. package/lib/prompts/promptUtils.js +4 -2
  199. package/lib/prompts/selectHubDBTablePrompt.js +8 -4
  200. package/lib/prompts/selectPublicAppForMigrationPrompt.js +12 -6
  201. package/lib/sandboxes.d.ts +1 -9
  202. package/lib/sandboxes.js +0 -21
  203. package/lib/serverlessLogs.js +50 -44
  204. package/lib/theme/cmsDevServerProcess.d.ts +14 -0
  205. package/lib/theme/cmsDevServerProcess.js +149 -0
  206. package/lib/theme/cmsDevServerRunner.d.ts +14 -0
  207. package/lib/theme/cmsDevServerRunner.js +90 -0
  208. package/lib/theme/migrate.d.ts +1 -1
  209. package/lib/theme/migrate.js +1 -5
  210. package/lib/ui/SpinniesManager.d.ts +1 -0
  211. package/lib/ui/SpinniesManager.js +22 -6
  212. package/lib/ui/accountTable.d.ts +8 -0
  213. package/lib/ui/accountTable.js +67 -0
  214. package/lib/ui/spinniesUtils.d.ts +0 -1
  215. package/lib/ui/spinniesUtils.js +6 -16
  216. package/lib/usageTracking.d.ts +3 -4
  217. package/lib/usageTracking.js +9 -6
  218. package/lib/yargs/makeYargsBuilder.d.ts +13 -0
  219. package/lib/yargs/makeYargsBuilder.js +33 -0
  220. package/lib/yargs/makeYargsHandlerWithUsageTracking.d.ts +3 -0
  221. package/lib/yargs/makeYargsHandlerWithUsageTracking.js +95 -0
  222. package/lib/yargs/parseYargsOrExit.d.ts +4 -0
  223. package/lib/yargs/parseYargsOrExit.js +25 -0
  224. package/lib/yargs/strictEnforceBoolean.d.ts +1 -0
  225. package/lib/yargs/strictEnforceBoolean.js +13 -0
  226. package/lib/yargsUtils.d.ts +3 -16
  227. package/lib/yargsUtils.js +3 -48
  228. package/mcp-server/Tool.d.ts +15 -0
  229. package/mcp-server/Tool.js +53 -0
  230. package/mcp-server/server.js +43 -3
  231. package/mcp-server/tools/cms/HsCreateFunctionTool.d.ts +4 -2
  232. package/mcp-server/tools/cms/HsCreateFunctionTool.js +9 -7
  233. package/mcp-server/tools/cms/HsCreateModuleTool.d.ts +4 -2
  234. package/mcp-server/tools/cms/HsCreateModuleTool.js +9 -7
  235. package/mcp-server/tools/cms/HsCreateTemplateTool.d.ts +4 -2
  236. package/mcp-server/tools/cms/HsCreateTemplateTool.js +9 -7
  237. package/mcp-server/tools/cms/HsFunctionLogsTool.d.ts +4 -2
  238. package/mcp-server/tools/cms/HsFunctionLogsTool.js +9 -7
  239. package/mcp-server/tools/cms/HsListFunctionsTool.d.ts +4 -2
  240. package/mcp-server/tools/cms/HsListFunctionsTool.js +9 -7
  241. package/mcp-server/tools/cms/HsListTool.d.ts +4 -2
  242. package/mcp-server/tools/cms/HsListTool.js +9 -7
  243. package/mcp-server/tools/index.d.ts +3 -2
  244. package/mcp-server/tools/index.js +24 -22
  245. package/mcp-server/tools/project/AddFeatureToProjectTool.d.ts +25 -5
  246. package/mcp-server/tools/project/AddFeatureToProjectTool.js +16 -18
  247. package/mcp-server/tools/project/CreateProjectTool.d.ts +29 -6
  248. package/mcp-server/tools/project/CreateProjectTool.js +16 -18
  249. package/mcp-server/tools/project/CreateTestAccountTool.d.ts +4 -2
  250. package/mcp-server/tools/project/CreateTestAccountTool.js +22 -10
  251. package/mcp-server/tools/project/DeployProjectTool.d.ts +4 -2
  252. package/mcp-server/tools/project/DeployProjectTool.js +6 -8
  253. package/mcp-server/tools/project/DocFetchTool.d.ts +4 -2
  254. package/mcp-server/tools/project/DocFetchTool.js +8 -6
  255. package/mcp-server/tools/project/DocsSearchTool.d.ts +9 -3
  256. package/mcp-server/tools/project/DocsSearchTool.js +32 -9
  257. package/mcp-server/tools/project/FindProjectsTool.d.ts +15 -0
  258. package/mcp-server/tools/project/FindProjectsTool.js +60 -0
  259. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.d.ts +4 -2
  260. package/mcp-server/tools/project/GetApiUsagePatternsByAppIdTool.js +13 -14
  261. package/mcp-server/tools/project/GetApplicationInfoTool.d.ts +4 -2
  262. package/mcp-server/tools/project/GetApplicationInfoTool.js +8 -6
  263. package/mcp-server/tools/project/GetBuildLogsTool.d.ts +6 -4
  264. package/mcp-server/tools/project/GetBuildLogsTool.js +15 -14
  265. package/mcp-server/tools/project/GetBuildStatusTool.d.ts +5 -3
  266. package/mcp-server/tools/project/GetBuildStatusTool.js +12 -11
  267. package/mcp-server/tools/project/GetConfigValuesTool.d.ts +4 -2
  268. package/mcp-server/tools/project/GetConfigValuesTool.js +12 -7
  269. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +10 -3
  270. package/mcp-server/tools/project/GuidedWalkthroughTool.js +5 -12
  271. package/mcp-server/tools/project/UploadProjectTools.d.ts +4 -2
  272. package/mcp-server/tools/project/UploadProjectTools.js +11 -9
  273. package/mcp-server/tools/project/ValidateProjectTool.d.ts +4 -2
  274. package/mcp-server/tools/project/ValidateProjectTool.js +10 -8
  275. package/mcp-server/tools/project/constants.d.ts +13 -1
  276. package/mcp-server/tools/project/constants.js +13 -16
  277. package/mcp-server/types.d.ts +0 -7
  278. package/mcp-server/types.js +1 -13
  279. package/mcp-server/utils/command.d.ts +5 -0
  280. package/mcp-server/utils/command.js +24 -0
  281. package/mcp-server/utils/feedbackTracking.js +2 -17
  282. package/mcp-server/utils/logger.d.ts +10 -0
  283. package/mcp-server/utils/logger.js +29 -0
  284. package/mcp-server/utils/toolUsageTracking.js +0 -2
  285. package/package.json +15 -11
  286. package/types/Link.d.ts +32 -0
  287. package/types/Link.js +5 -0
  288. package/types/LocalDev.d.ts +5 -0
  289. package/types/PackageJson.d.ts +1 -0
  290. package/types/Projects.d.ts +19 -0
  291. package/types/Prompts.d.ts +1 -0
  292. package/types/Yargs.d.ts +19 -1
  293. package/ui/components/getStarted/GetStartedFlow.js +79 -2
  294. package/ui/components/getStarted/reducer.d.ts +20 -0
  295. package/ui/components/getStarted/reducer.js +36 -0
  296. package/ui/components/getStarted/screens/InstallationScreen.d.ts +7 -0
  297. package/ui/components/getStarted/screens/InstallationScreen.js +16 -0
  298. package/ui/components/getStarted/screens/ProjectSetupScreen.js +2 -1
  299. package/ui/lib/constants.d.ts +1 -0
  300. package/ui/lib/constants.js +1 -0
  301. package/api/__tests__/migrate.test.d.ts +0 -1
  302. package/api/__tests__/migrate.test.js +0 -199
  303. package/commands/__tests__/account.test.d.ts +0 -1
  304. package/commands/__tests__/account.test.js +0 -69
  305. package/commands/__tests__/auth.test.d.ts +0 -1
  306. package/commands/__tests__/auth.test.js +0 -43
  307. package/commands/__tests__/cms.test.d.ts +0 -1
  308. package/commands/__tests__/cms.test.js +0 -87
  309. package/commands/__tests__/config.test.d.ts +0 -1
  310. package/commands/__tests__/config.test.js +0 -44
  311. package/commands/__tests__/customObject.test.d.ts +0 -1
  312. package/commands/__tests__/customObject.test.js +0 -68
  313. package/commands/__tests__/doctor.test.d.ts +0 -1
  314. package/commands/__tests__/doctor.test.js +0 -132
  315. package/commands/__tests__/feedback.test.d.ts +0 -1
  316. package/commands/__tests__/feedback.test.js +0 -24
  317. package/commands/__tests__/filemanager.test.d.ts +0 -1
  318. package/commands/__tests__/filemanager.test.js +0 -45
  319. package/commands/__tests__/getStarted.test.d.ts +0 -1
  320. package/commands/__tests__/getStarted.test.js +0 -173
  321. package/commands/__tests__/hubdb.test.d.ts +0 -1
  322. package/commands/__tests__/hubdb.test.js +0 -50
  323. package/commands/__tests__/init.test.d.ts +0 -1
  324. package/commands/__tests__/init.test.js +0 -42
  325. package/commands/__tests__/mcp.test.d.ts +0 -1
  326. package/commands/__tests__/mcp.test.js +0 -46
  327. package/commands/__tests__/open.test.d.ts +0 -1
  328. package/commands/__tests__/open.test.js +0 -58
  329. package/commands/__tests__/project.test.d.ts +0 -1
  330. package/commands/__tests__/project.test.js +0 -125
  331. package/commands/__tests__/sandbox.test.d.ts +0 -1
  332. package/commands/__tests__/sandbox.test.js +0 -44
  333. package/commands/__tests__/secret.test.d.ts +0 -1
  334. package/commands/__tests__/secret.test.js +0 -49
  335. package/commands/__tests__/testAccount.test.d.ts +0 -1
  336. package/commands/__tests__/testAccount.test.js +0 -57
  337. package/commands/__tests__/upgrade.test.d.ts +0 -1
  338. package/commands/__tests__/upgrade.test.js +0 -309
  339. package/commands/account/__tests__/auth.test.d.ts +0 -1
  340. package/commands/account/__tests__/auth.test.js +0 -206
  341. package/commands/account/__tests__/clean.test.d.ts +0 -1
  342. package/commands/account/__tests__/clean.test.js +0 -28
  343. package/commands/account/__tests__/createOverride.test.d.ts +0 -1
  344. package/commands/account/__tests__/createOverride.test.js +0 -32
  345. package/commands/account/__tests__/info.test.d.ts +0 -1
  346. package/commands/account/__tests__/info.test.js +0 -28
  347. package/commands/account/__tests__/list.test.d.ts +0 -1
  348. package/commands/account/__tests__/list.test.js +0 -153
  349. package/commands/account/__tests__/remove.test.d.ts +0 -1
  350. package/commands/account/__tests__/remove.test.js +0 -36
  351. package/commands/account/__tests__/removeOverride.d.ts +0 -1
  352. package/commands/account/__tests__/removeOverride.js +0 -25
  353. package/commands/account/__tests__/rename.test.d.ts +0 -1
  354. package/commands/account/__tests__/rename.test.js +0 -82
  355. package/commands/account/__tests__/use.test.d.ts +0 -1
  356. package/commands/account/__tests__/use.test.js +0 -170
  357. package/commands/app/__tests__/migrate.test.d.ts +0 -1
  358. package/commands/app/__tests__/migrate.test.js +0 -111
  359. package/commands/app/secret/__tests__/add.test.d.ts +0 -1
  360. package/commands/app/secret/__tests__/add.test.js +0 -140
  361. package/commands/app/secret/__tests__/delete.test.d.ts +0 -1
  362. package/commands/app/secret/__tests__/delete.test.js +0 -28
  363. package/commands/app/secret/__tests__/list.test.d.ts +0 -1
  364. package/commands/app/secret/__tests__/list.test.js +0 -25
  365. package/commands/app/secret/__tests__/update.test.d.ts +0 -1
  366. package/commands/app/secret/__tests__/update.test.js +0 -28
  367. package/commands/cms/__tests__/delete.test.d.ts +0 -1
  368. package/commands/cms/__tests__/delete.test.js +0 -39
  369. package/commands/cms/__tests__/fetch.test.d.ts +0 -1
  370. package/commands/cms/__tests__/fetch.test.js +0 -156
  371. package/commands/cms/__tests__/function.test.d.ts +0 -1
  372. package/commands/cms/__tests__/function.test.js +0 -50
  373. package/commands/cms/__tests__/lint.test.d.ts +0 -1
  374. package/commands/cms/__tests__/lint.test.js +0 -33
  375. package/commands/cms/__tests__/list.test.d.ts +0 -1
  376. package/commands/cms/__tests__/list.test.js +0 -42
  377. package/commands/cms/__tests__/module.test.d.ts +0 -1
  378. package/commands/cms/__tests__/module.test.js +0 -45
  379. package/commands/cms/__tests__/mv.test.d.ts +0 -1
  380. package/commands/cms/__tests__/mv.test.js +0 -46
  381. package/commands/cms/__tests__/theme.test.d.ts +0 -1
  382. package/commands/cms/__tests__/theme.test.js +0 -54
  383. package/commands/cms/__tests__/upload.test.d.ts +0 -1
  384. package/commands/cms/__tests__/upload.test.js +0 -308
  385. package/commands/cms/__tests__/watch.test.d.ts +0 -1
  386. package/commands/cms/__tests__/watch.test.js +0 -212
  387. package/commands/cms/function/__tests__/logs.test.d.ts +0 -1
  388. package/commands/cms/function/__tests__/logs.test.js +0 -70
  389. package/commands/cms/theme/__tests__/generate-selectors.test.d.ts +0 -1
  390. package/commands/cms/theme/__tests__/generate-selectors.test.js +0 -28
  391. package/commands/cms/theme/__tests__/marketplace-validate.test.d.ts +0 -1
  392. package/commands/cms/theme/__tests__/marketplace-validate.test.js +0 -36
  393. package/commands/cms/theme/__tests__/preview.test.d.ts +0 -1
  394. package/commands/cms/theme/__tests__/preview.test.js +0 -54
  395. package/commands/customObject/__tests__/create.test.d.ts +0 -1
  396. package/commands/customObject/__tests__/create.test.js +0 -40
  397. package/commands/customObject/__tests__/createSchema.test.d.ts +0 -1
  398. package/commands/customObject/__tests__/createSchema.test.js +0 -28
  399. package/commands/customObject/__tests__/deleteSchema.test.d.ts +0 -1
  400. package/commands/customObject/__tests__/deleteSchema.test.js +0 -42
  401. package/commands/customObject/__tests__/fetch-all-schemas.test.d.ts +0 -1
  402. package/commands/customObject/__tests__/fetch-all-schemas.test.js +0 -41
  403. package/commands/customObject/__tests__/fetchSchema.test.d.ts +0 -1
  404. package/commands/customObject/__tests__/fetchSchema.test.js +0 -45
  405. package/commands/customObject/__tests__/listSchemas.test.d.ts +0 -1
  406. package/commands/customObject/__tests__/listSchemas.test.js +0 -29
  407. package/commands/customObject/__tests__/updateSchema.test.d.ts +0 -1
  408. package/commands/customObject/__tests__/updateSchema.test.js +0 -40
  409. package/commands/filemanager/__tests__/fetch.test.d.ts +0 -1
  410. package/commands/filemanager/__tests__/fetch.test.js +0 -32
  411. package/commands/filemanager/__tests__/upload.test.d.ts +0 -1
  412. package/commands/filemanager/__tests__/upload.test.js +0 -191
  413. package/commands/hubdb/__tests__/clear.test.d.ts +0 -1
  414. package/commands/hubdb/__tests__/clear.test.js +0 -28
  415. package/commands/hubdb/__tests__/create.test.d.ts +0 -1
  416. package/commands/hubdb/__tests__/create.test.js +0 -28
  417. package/commands/hubdb/__tests__/delete.test.d.ts +0 -1
  418. package/commands/hubdb/__tests__/delete.test.js +0 -28
  419. package/commands/hubdb/__tests__/fetch.test.d.ts +0 -1
  420. package/commands/hubdb/__tests__/fetch.test.js +0 -28
  421. package/commands/hubdb/__tests__/list.test.d.ts +0 -1
  422. package/commands/hubdb/__tests__/list.test.js +0 -88
  423. package/commands/mcp/__tests__/setup.test.d.ts +0 -1
  424. package/commands/mcp/__tests__/setup.test.js +0 -26
  425. package/commands/mcp/__tests__/start.test.d.ts +0 -1
  426. package/commands/mcp/__tests__/start.test.js +0 -137
  427. package/commands/project/__tests__/add.test.d.ts +0 -1
  428. package/commands/project/__tests__/add.test.js +0 -107
  429. package/commands/project/__tests__/create.test.d.ts +0 -1
  430. package/commands/project/__tests__/create.test.js +0 -97
  431. package/commands/project/__tests__/deploy.test.d.ts +0 -1
  432. package/commands/project/__tests__/deploy.test.js +0 -307
  433. package/commands/project/__tests__/dev.test.d.ts +0 -1
  434. package/commands/project/__tests__/dev.test.js +0 -273
  435. package/commands/project/__tests__/devUnifiedFlow.test.d.ts +0 -1
  436. package/commands/project/__tests__/devUnifiedFlow.test.js +0 -434
  437. package/commands/project/__tests__/download.test.d.ts +0 -1
  438. package/commands/project/__tests__/download.test.js +0 -39
  439. package/commands/project/__tests__/installDeps.test.d.ts +0 -1
  440. package/commands/project/__tests__/installDeps.test.js +0 -140
  441. package/commands/project/__tests__/lint.test.d.ts +0 -1
  442. package/commands/project/__tests__/lint.test.js +0 -704
  443. package/commands/project/__tests__/list.test.d.ts +0 -1
  444. package/commands/project/__tests__/list.test.js +0 -31
  445. package/commands/project/__tests__/listBuilds.test.d.ts +0 -1
  446. package/commands/project/__tests__/listBuilds.test.js +0 -38
  447. package/commands/project/__tests__/logs.test.d.ts +0 -1
  448. package/commands/project/__tests__/logs.test.js +0 -202
  449. package/commands/project/__tests__/migrate.test.d.ts +0 -1
  450. package/commands/project/__tests__/migrate.test.js +0 -106
  451. package/commands/project/__tests__/open.test.d.ts +0 -1
  452. package/commands/project/__tests__/open.test.js +0 -39
  453. package/commands/project/__tests__/profile.test.d.ts +0 -1
  454. package/commands/project/__tests__/profile.test.js +0 -42
  455. package/commands/project/__tests__/updateDeps.test.d.ts +0 -1
  456. package/commands/project/__tests__/updateDeps.test.js +0 -140
  457. package/commands/project/__tests__/upload.test.d.ts +0 -1
  458. package/commands/project/__tests__/upload.test.js +0 -234
  459. package/commands/project/__tests__/validate.test.d.ts +0 -1
  460. package/commands/project/__tests__/validate.test.js +0 -381
  461. package/commands/project/__tests__/watch.test.d.ts +0 -1
  462. package/commands/project/__tests__/watch.test.js +0 -35
  463. package/commands/sandbox/__tests__/create.test.d.ts +0 -1
  464. package/commands/sandbox/__tests__/create.test.js +0 -245
  465. package/commands/sandbox/__tests__/delete.test.d.ts +0 -1
  466. package/commands/sandbox/__tests__/delete.test.js +0 -31
  467. package/commands/secret/__tests__/addSecret.test.d.ts +0 -1
  468. package/commands/secret/__tests__/addSecret.test.js +0 -162
  469. package/commands/secret/__tests__/deleteSecret.test.d.ts +0 -1
  470. package/commands/secret/__tests__/deleteSecret.test.js +0 -41
  471. package/commands/secret/__tests__/listSecret.test.d.ts +0 -1
  472. package/commands/secret/__tests__/listSecret.test.js +0 -29
  473. package/commands/secret/__tests__/updateSecret.test.d.ts +0 -1
  474. package/commands/secret/__tests__/updateSecret.test.js +0 -29
  475. package/commands/testAccount/__tests__/create.test.d.ts +0 -1
  476. package/commands/testAccount/__tests__/create.test.js +0 -106
  477. package/commands/testAccount/__tests__/createConfig.test.d.ts +0 -1
  478. package/commands/testAccount/__tests__/createConfig.test.js +0 -32
  479. package/commands/testAccount/__tests__/delete.test.d.ts +0 -1
  480. package/commands/testAccount/__tests__/delete.test.js +0 -29
  481. package/commands/testAccount/__tests__/importData.test.d.ts +0 -1
  482. package/commands/testAccount/__tests__/importData.test.js +0 -92
  483. package/lib/__tests__/CLIWebSocketServer.test.d.ts +0 -1
  484. package/lib/__tests__/CLIWebSocketServer.test.js +0 -252
  485. package/lib/__tests__/accountAuth.test.d.ts +0 -1
  486. package/lib/__tests__/accountAuth.test.js +0 -258
  487. package/lib/__tests__/accountTypes.test.d.ts +0 -1
  488. package/lib/__tests__/accountTypes.test.js +0 -98
  489. package/lib/__tests__/buildAccount.test.d.ts +0 -1
  490. package/lib/__tests__/buildAccount.test.js +0 -262
  491. package/lib/__tests__/cliUpgradeUtils.test.d.ts +0 -1
  492. package/lib/__tests__/cliUpgradeUtils.test.js +0 -131
  493. package/lib/__tests__/commandSuggestion.test.d.ts +0 -1
  494. package/lib/__tests__/commandSuggestion.test.js +0 -119
  495. package/lib/__tests__/commonOpts.test.d.ts +0 -1
  496. package/lib/__tests__/commonOpts.test.js +0 -80
  497. package/lib/__tests__/dependencyManagement.test.d.ts +0 -1
  498. package/lib/__tests__/dependencyManagement.test.js +0 -1067
  499. package/lib/__tests__/developerTestAccounts.test.d.ts +0 -1
  500. package/lib/__tests__/developerTestAccounts.test.js +0 -156
  501. package/lib/__tests__/hasFeature.test.d.ts +0 -1
  502. package/lib/__tests__/hasFeature.test.js +0 -167
  503. package/lib/__tests__/http.test.d.ts +0 -1
  504. package/lib/__tests__/http.test.js +0 -40
  505. package/lib/__tests__/importData.test.d.ts +0 -1
  506. package/lib/__tests__/importData.test.js +0 -98
  507. package/lib/__tests__/npmCli.test.d.ts +0 -1
  508. package/lib/__tests__/npmCli.test.js +0 -84
  509. package/lib/__tests__/oauth.test.d.ts +0 -1
  510. package/lib/__tests__/oauth.test.js +0 -109
  511. package/lib/__tests__/parsing.test.d.ts +0 -1
  512. package/lib/__tests__/parsing.test.js +0 -34
  513. package/lib/__tests__/polling.test.d.ts +0 -1
  514. package/lib/__tests__/polling.test.js +0 -76
  515. package/lib/__tests__/process.test.d.ts +0 -1
  516. package/lib/__tests__/process.test.js +0 -89
  517. package/lib/__tests__/sandboxSync.test.d.ts +0 -1
  518. package/lib/__tests__/sandboxSync.test.js +0 -147
  519. package/lib/__tests__/sandboxes.test.d.ts +0 -1
  520. package/lib/__tests__/sandboxes.test.js +0 -156
  521. package/lib/__tests__/serverlessLogs.test.d.ts +0 -1
  522. package/lib/__tests__/serverlessLogs.test.js +0 -148
  523. package/lib/__tests__/usageTracking.test.d.ts +0 -1
  524. package/lib/__tests__/usageTracking.test.js +0 -197
  525. package/lib/__tests__/validation.test.d.ts +0 -1
  526. package/lib/__tests__/validation.test.js +0 -143
  527. package/lib/__tests__/yargsUtils.test.d.ts +0 -1
  528. package/lib/__tests__/yargsUtils.test.js +0 -124
  529. package/lib/app/__tests__/migrate.test.d.ts +0 -1
  530. package/lib/app/__tests__/migrate.test.js +0 -638
  531. package/lib/doctor/__tests__/Diagnosis.test.d.ts +0 -1
  532. package/lib/doctor/__tests__/Diagnosis.test.js +0 -84
  533. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.d.ts +0 -1
  534. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +0 -177
  535. package/lib/doctor/__tests__/Doctor.test.d.ts +0 -1
  536. package/lib/doctor/__tests__/Doctor.test.js +0 -560
  537. package/lib/errorHandlers/__tests__/index.test.d.ts +0 -1
  538. package/lib/errorHandlers/__tests__/index.test.js +0 -278
  539. package/lib/mcp/__tests__/setup.test.d.ts +0 -1
  540. package/lib/mcp/__tests__/setup.test.js +0 -194
  541. package/lib/middleware/__tests__/commandTargetingUtils.test.d.ts +0 -1
  542. package/lib/middleware/__tests__/commandTargetingUtils.test.js +0 -99
  543. package/lib/middleware/__tests__/configMiddleware.test.d.ts +0 -1
  544. package/lib/middleware/__tests__/configMiddleware.test.js +0 -118
  545. package/lib/middleware/__tests__/gitMiddleware.test.d.ts +0 -1
  546. package/lib/middleware/__tests__/gitMiddleware.test.js +0 -43
  547. package/lib/middleware/__tests__/requestMiddleware.test.d.ts +0 -1
  548. package/lib/middleware/__tests__/requestMiddleware.test.js +0 -15
  549. package/lib/middleware/__tests__/usageTrackingMiddleware.test.d.ts +0 -1
  550. package/lib/middleware/__tests__/usageTrackingMiddleware.test.js +0 -44
  551. package/lib/middleware/__tests__/yargsChecksMiddleware.test.d.ts +0 -1
  552. package/lib/middleware/__tests__/yargsChecksMiddleware.test.js +0 -39
  553. package/lib/projects/__tests__/AppDevModeInterface.test.d.ts +0 -1
  554. package/lib/projects/__tests__/AppDevModeInterface.test.js +0 -541
  555. package/lib/projects/__tests__/DevServerManager.test.d.ts +0 -1
  556. package/lib/projects/__tests__/DevServerManager.test.js +0 -185
  557. package/lib/projects/__tests__/DevSessionManager.test.d.ts +0 -1
  558. package/lib/projects/__tests__/DevSessionManager.test.js +0 -250
  559. package/lib/projects/__tests__/LocalDevProcess.test.d.ts +0 -1
  560. package/lib/projects/__tests__/LocalDevProcess.test.js +0 -481
  561. package/lib/projects/__tests__/LocalDevWebsocketServer.test.d.ts +0 -1
  562. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +0 -231
  563. package/lib/projects/__tests__/ProjectLogsManager.test.d.ts +0 -1
  564. package/lib/projects/__tests__/ProjectLogsManager.test.js +0 -302
  565. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.d.ts +0 -1
  566. package/lib/projects/__tests__/UIExtensionsDevModeInterface.test.js +0 -160
  567. package/lib/projects/__tests__/components.test.d.ts +0 -1
  568. package/lib/projects/__tests__/components.test.js +0 -426
  569. package/lib/projects/__tests__/deploy.test.d.ts +0 -1
  570. package/lib/projects/__tests__/deploy.test.js +0 -231
  571. package/lib/projects/__tests__/localDevProjectHelpers.test.d.ts +0 -1
  572. package/lib/projects/__tests__/localDevProjectHelpers.test.js +0 -120
  573. package/lib/projects/__tests__/platformVersion.test.d.ts +0 -1
  574. package/lib/projects/__tests__/platformVersion.test.js +0 -63
  575. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.d.ts +0 -1
  576. package/lib/projects/__tests__/pollProjectBuildAndDeploy.test.js +0 -328
  577. package/lib/projects/__tests__/projectProfiles.test.d.ts +0 -1
  578. package/lib/projects/__tests__/projectProfiles.test.js +0 -441
  579. package/lib/projects/__tests__/projects.test.d.ts +0 -1
  580. package/lib/projects/__tests__/projects.test.js +0 -58
  581. package/lib/projects/__tests__/structure.test.d.ts +0 -1
  582. package/lib/projects/__tests__/structure.test.js +0 -210
  583. package/lib/projects/__tests__/uieLinting.test.d.ts +0 -1
  584. package/lib/projects/__tests__/uieLinting.test.js +0 -631
  585. package/lib/projects/__tests__/upload.test.d.ts +0 -1
  586. package/lib/projects/__tests__/upload.test.js +0 -183
  587. package/lib/projects/add/__tests__/legacyAddComponent.test.d.ts +0 -1
  588. package/lib/projects/add/__tests__/legacyAddComponent.test.js +0 -245
  589. package/lib/projects/add/__tests__/v2AddComponent.test.d.ts +0 -1
  590. package/lib/projects/add/__tests__/v2AddComponent.test.js +0 -343
  591. package/lib/projects/create/__tests__/legacy.test.d.ts +0 -1
  592. package/lib/projects/create/__tests__/legacy.test.js +0 -90
  593. package/lib/projects/create/__tests__/v2.test.d.ts +0 -1
  594. package/lib/projects/create/__tests__/v2.test.js +0 -257
  595. package/lib/projects/platformVersion.d.ts +0 -9
  596. package/lib/projects/platformVersion.js +0 -39
  597. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.d.ts +0 -1
  598. package/lib/prompts/__tests__/createDeveloperTestAccountConfigPrompt.test.js +0 -157
  599. package/lib/prompts/__tests__/createFunctionPrompt.test.d.ts +0 -1
  600. package/lib/prompts/__tests__/createFunctionPrompt.test.js +0 -129
  601. package/lib/prompts/__tests__/createModulePrompt.test.d.ts +0 -1
  602. package/lib/prompts/__tests__/createModulePrompt.test.js +0 -187
  603. package/lib/prompts/__tests__/createTemplatePrompt.test.d.ts +0 -1
  604. package/lib/prompts/__tests__/createTemplatePrompt.test.js +0 -102
  605. package/lib/prompts/__tests__/downloadProjectPrompt.test.d.ts +0 -1
  606. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +0 -31
  607. package/lib/prompts/__tests__/projectAddPrompt.test.d.ts +0 -1
  608. package/lib/prompts/__tests__/projectAddPrompt.test.js +0 -143
  609. package/lib/prompts/__tests__/projectsLogsPrompt.test.d.ts +0 -1
  610. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +0 -37
  611. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.d.ts +0 -1
  612. package/lib/prompts/__tests__/selectProjectTemplatePrompt.test.js +0 -160
  613. package/lib/sandboxSync.d.ts +0 -4
  614. package/lib/sandboxSync.js +0 -102
  615. package/lib/theme/__tests__/migrate.test.d.ts +0 -1
  616. package/lib/theme/__tests__/migrate.test.js +0 -256
  617. package/lib/ui/__tests__/SpinniesManager.test.d.ts +0 -1
  618. package/lib/ui/__tests__/SpinniesManager.test.js +0 -488
  619. package/lib/ui/__tests__/removeAnsiCodes.test.d.ts +0 -1
  620. package/lib/ui/__tests__/removeAnsiCodes.test.js +0 -84
  621. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.d.ts +0 -1
  622. package/mcp-server/tools/cms/__tests__/HsCreateFunctionTool.test.js +0 -255
  623. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.d.ts +0 -1
  624. package/mcp-server/tools/cms/__tests__/HsCreateModuleTool.test.js +0 -228
  625. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.d.ts +0 -1
  626. package/mcp-server/tools/cms/__tests__/HsCreateTemplateTool.test.js +0 -209
  627. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.d.ts +0 -1
  628. package/mcp-server/tools/cms/__tests__/HsFunctionLogsTool.test.js +0 -187
  629. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.d.ts +0 -1
  630. package/mcp-server/tools/cms/__tests__/HsListFunctionsTool.test.js +0 -125
  631. package/mcp-server/tools/cms/__tests__/HsListTool.test.d.ts +0 -1
  632. package/mcp-server/tools/cms/__tests__/HsListTool.test.js +0 -125
  633. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.d.ts +0 -1
  634. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.js +0 -158
  635. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.d.ts +0 -1
  636. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +0 -133
  637. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.d.ts +0 -1
  638. package/mcp-server/tools/project/__tests__/CreateTestAccountTool.test.js +0 -462
  639. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.d.ts +0 -1
  640. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.js +0 -126
  641. package/mcp-server/tools/project/__tests__/DocFetchTool.test.d.ts +0 -1
  642. package/mcp-server/tools/project/__tests__/DocFetchTool.test.js +0 -125
  643. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.d.ts +0 -1
  644. package/mcp-server/tools/project/__tests__/DocsSearchTool.test.js +0 -210
  645. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.d.ts +0 -1
  646. package/mcp-server/tools/project/__tests__/GetApiUsagePatternsByAppIdTool.test.js +0 -178
  647. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.d.ts +0 -1
  648. package/mcp-server/tools/project/__tests__/GetApplicationInfoTool.test.js +0 -124
  649. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.d.ts +0 -1
  650. package/mcp-server/tools/project/__tests__/GetBuildLogsTool.test.js +0 -307
  651. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.d.ts +0 -1
  652. package/mcp-server/tools/project/__tests__/GetBuildStatusTool.test.js +0 -242
  653. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.d.ts +0 -1
  654. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +0 -209
  655. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.d.ts +0 -1
  656. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +0 -158
  657. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.d.ts +0 -1
  658. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +0 -179
  659. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.d.ts +0 -1
  660. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +0 -118
  661. package/mcp-server/utils/__tests__/command.test.d.ts +0 -1
  662. package/mcp-server/utils/__tests__/command.test.js +0 -45
  663. package/mcp-server/utils/__tests__/content.test.d.ts +0 -1
  664. package/mcp-server/utils/__tests__/content.test.js +0 -164
  665. package/mcp-server/utils/__tests__/feedbackTracking.test.d.ts +0 -1
  666. package/mcp-server/utils/__tests__/feedbackTracking.test.js +0 -124
  667. package/mcp-server/utils/__tests__/project.test.d.ts +0 -1
  668. package/mcp-server/utils/__tests__/project.test.js +0 -140
  669. package/mcp-server/utils/project.d.ts +0 -5
  670. package/mcp-server/utils/project.js +0 -18
@@ -7,18 +7,20 @@ import { getErrorMessage } from '../../errorHandlers/index.js';
7
7
  class DevSessionManager {
8
8
  localDevLogger;
9
9
  targetTestingAccountId;
10
- _devSessionId;
11
- _heartbeatInterval;
12
- _heartbeatRetries;
10
+ devSessionId;
11
+ heartbeatInterval;
12
+ heartbeatRetries;
13
+ exit;
13
14
  constructor(options) {
14
15
  this.targetTestingAccountId = options.targetTestingAccountId;
15
16
  this.localDevLogger = options.localDevLogger;
16
- this._devSessionId = undefined;
17
- this._heartbeatInterval = undefined;
18
- this._heartbeatRetries = 0;
17
+ this.exit = options.exit;
18
+ this.devSessionId = undefined;
19
+ this.heartbeatInterval = undefined;
20
+ this.heartbeatRetries = 0;
19
21
  }
20
22
  validateSessionIdExists() {
21
- if (!this._devSessionId) {
23
+ if (!this.devSessionId) {
22
24
  if (this.localDevLogger) {
23
25
  this.localDevLogger.devSessionMissingSessionIdError();
24
26
  }
@@ -26,7 +28,7 @@ class DevSessionManager {
26
28
  // Fallback for deprecated local dev manager
27
29
  uiLogger.error(lib.LocalDevManager.devSession.missingSessionIdError);
28
30
  }
29
- process.exit(EXIT_CODES.ERROR);
31
+ throw new Error(lib.LocalDevManager.devSession.missingSessionIdError);
30
32
  }
31
33
  }
32
34
  async registerSession() {
@@ -34,7 +36,7 @@ class DevSessionManager {
34
36
  const activeServers = await getActiveServers();
35
37
  const portData = Object.entries(activeServers).map(([serverId, port]) => ({ serverId, port }));
36
38
  const registerDevSessionResponse = await registerDevSession(this.targetTestingAccountId, portData);
37
- this._devSessionId = registerDevSessionResponse.data.sessionId;
39
+ this.devSessionId = registerDevSessionResponse.data.sessionId;
38
40
  }
39
41
  catch (e) {
40
42
  if (this.localDevLogger) {
@@ -46,19 +48,29 @@ class DevSessionManager {
46
48
  }
47
49
  return false;
48
50
  }
49
- this.validateSessionIdExists();
51
+ try {
52
+ this.validateSessionIdExists();
53
+ }
54
+ catch {
55
+ return this.exit(EXIT_CODES.ERROR);
56
+ }
50
57
  this.initializeHeartbeat();
51
58
  return true;
52
59
  }
53
60
  initializeHeartbeat() {
54
- this._heartbeatInterval = setInterval(async () => {
55
- this.validateSessionIdExists();
61
+ this.heartbeatInterval = setInterval(async () => {
62
+ try {
63
+ this.validateSessionIdExists();
64
+ }
65
+ catch {
66
+ return this.exit(EXIT_CODES.ERROR);
67
+ }
56
68
  try {
57
- await devSessionHeartbeat(this.targetTestingAccountId, this._devSessionId);
69
+ await devSessionHeartbeat(this.targetTestingAccountId, this.devSessionId);
58
70
  }
59
71
  catch (e) {
60
- if (this._heartbeatRetries < 3) {
61
- this._heartbeatRetries++;
72
+ if (this.heartbeatRetries < 3) {
73
+ this.heartbeatRetries++;
62
74
  return;
63
75
  }
64
76
  if (this.localDevLogger) {
@@ -68,15 +80,15 @@ class DevSessionManager {
68
80
  // Fallback for deprecated local dev manager
69
81
  uiLogger.error(lib.LocalDevManager.devSession.heartbeatError(getErrorMessage(e)));
70
82
  }
71
- process.exit(EXIT_CODES.ERROR);
83
+ return this.exit(EXIT_CODES.ERROR);
72
84
  }
73
85
  }, 30000);
74
86
  }
75
87
  async deleteDevSession() {
76
- if (this._devSessionId) {
77
- clearInterval(this._heartbeatInterval);
88
+ if (this.devSessionId) {
89
+ clearInterval(this.heartbeatInterval);
78
90
  try {
79
- await deleteDevSession(this.targetTestingAccountId, this._devSessionId);
91
+ await deleteDevSession(this.targetTestingAccountId, this.devSessionId);
80
92
  }
81
93
  catch (e) {
82
94
  if (this.localDevLogger) {
@@ -3,6 +3,7 @@ import { Build } from '@hubspot/local-dev-lib/types/Build';
3
3
  import { PublicApp } from '@hubspot/local-dev-lib/types/Apps';
4
4
  import { Environment } from '@hubspot/local-dev-lib/types/Accounts';
5
5
  import { Component, ProjectConfig } from '../../../types/Projects.js';
6
+ import { ExitFunction } from '../../../types/Yargs.js';
6
7
  type LocalDevManagerConstructorOptions = {
7
8
  targetAccountId: number;
8
9
  parentAccountId: number;
@@ -14,6 +15,8 @@ type LocalDevManagerConstructorOptions = {
14
15
  isGithubLinked: boolean;
15
16
  runnableComponents: Component[];
16
17
  env: Environment;
18
+ exit: ExitFunction;
19
+ port?: number;
17
20
  };
18
21
  declare class LocalDevManager_DEPRECATED {
19
22
  targetAccountId: number;
@@ -36,6 +39,8 @@ declare class LocalDevManager_DEPRECATED {
36
39
  projectSourceDir: string;
37
40
  mostRecentUploadWarning: string | null;
38
41
  private devSessionManager;
42
+ private exit;
43
+ private port?;
39
44
  constructor(options: LocalDevManagerConstructorOptions);
40
45
  setActiveApp(appUid?: string): Promise<void>;
41
46
  setActivePublicAppData(): Promise<void>;
@@ -15,6 +15,7 @@ import { componentIsApp, componentIsPublicApp, CONFIG_FILES, getAppCardConfigs,
15
15
  import { ComponentTypes, } from '../../../types/Projects.js';
16
16
  import { UI_COLORS, uiCommandReference, uiAccountDescription, uiLink, uiLine, } from '../../ui/index.js';
17
17
  import { logError } from '../../errorHandlers/index.js';
18
+ import { isPromptExitError } from '../../errors/PromptExitError.js';
18
19
  import { installAppBrowserPrompt } from '../../prompts/installAppPrompt.js';
19
20
  import { confirmPrompt } from '../../prompts/promptUtils.js';
20
21
  import { handleKeypress } from '../../process.js';
@@ -46,6 +47,8 @@ class LocalDevManager_DEPRECATED {
46
47
  projectSourceDir;
47
48
  mostRecentUploadWarning;
48
49
  devSessionManager;
50
+ exit;
51
+ port;
49
52
  constructor(options) {
50
53
  this.targetAccountId = options.targetAccountId;
51
54
  // The account that the project exists in. This is not always the targetAccountId
@@ -64,19 +67,22 @@ class LocalDevManager_DEPRECATED {
64
67
  this.env = options.env;
65
68
  this.publicAppActiveInstalls = null;
66
69
  this.mostRecentUploadWarning = null;
70
+ this.exit = options.exit;
71
+ this.port = options.port;
67
72
  this.projectSourceDir = path.join(this.projectDir, this.projectConfig.srcDir);
68
73
  if (!this.targetAccountId || !this.projectConfig || !this.projectDir) {
69
- uiLogger.log(lib.LocalDevManager.failedToInitialize);
70
- process.exit(EXIT_CODES.ERROR);
74
+ uiLogger.error(lib.LocalDevManager.failedToInitialize);
75
+ throw new Error(lib.LocalDevManager.failedToInitialize);
71
76
  }
72
77
  this.devSessionManager = new DevSessionManager({
73
78
  targetTestingAccountId: this.targetAccountId,
79
+ exit: this.exit,
74
80
  });
75
81
  }
76
82
  async setActiveApp(appUid) {
77
83
  if (!appUid) {
78
84
  uiLogger.error(lib.LocalDevManager.missingUid);
79
- process.exit(EXIT_CODES.ERROR);
85
+ return this.exit(EXIT_CODES.ERROR);
80
86
  }
81
87
  this.activeApp =
82
88
  this.runnableComponents.find(component => {
@@ -89,6 +95,9 @@ class LocalDevManager_DEPRECATED {
89
95
  await this.checkPublicAppInstallation();
90
96
  }
91
97
  catch (e) {
98
+ if (isPromptExitError(e)) {
99
+ throw e;
100
+ }
92
101
  logError(e);
93
102
  }
94
103
  }
@@ -118,7 +127,7 @@ class LocalDevManager_DEPRECATED {
118
127
  uiLine();
119
128
  const proceed = await confirmPrompt(lib.LocalDevManager.activeInstallWarning.confirmationPrompt, { defaultAnswer: false });
120
129
  if (!proceed) {
121
- process.exit(EXIT_CODES.SUCCESS);
130
+ return this.exit(EXIT_CODES.SUCCESS);
122
131
  }
123
132
  }
124
133
  async start() {
@@ -128,11 +137,11 @@ class LocalDevManager_DEPRECATED {
128
137
  if (!this.deployedBuild) {
129
138
  uiLogger.error(lib.LocalDevManager.noDeployedBuild(this.projectConfig.name, uiAccountDescription(this.targetProjectAccountId), this.getUploadCommand()));
130
139
  uiLogger.log('');
131
- process.exit(EXIT_CODES.SUCCESS);
140
+ return this.exit(EXIT_CODES.SUCCESS);
132
141
  }
133
142
  const setupSucceeded = await this.devServerSetup();
134
143
  if (!setupSucceeded) {
135
- process.exit(EXIT_CODES.ERROR);
144
+ return this.exit(EXIT_CODES.ERROR);
136
145
  }
137
146
  else if (!this.debug) {
138
147
  console.clear();
@@ -152,7 +161,7 @@ class LocalDevManager_DEPRECATED {
152
161
  await this.devServerStart();
153
162
  const devSessionRegistered = await this.devSessionManager.registerSession();
154
163
  if (!devSessionRegistered) {
155
- process.exit(EXIT_CODES.ERROR);
164
+ return this.exit(EXIT_CODES.ERROR);
156
165
  }
157
166
  // Initialize project file watcher to detect configuration file changes
158
167
  this.startWatching();
@@ -177,14 +186,14 @@ class LocalDevManager_DEPRECATED {
177
186
  text: lib.LocalDevManager.exitingFail,
178
187
  });
179
188
  }
180
- process.exit(EXIT_CODES.ERROR);
189
+ return this.exit(EXIT_CODES.ERROR);
181
190
  }
182
191
  if (showProgress) {
183
192
  SpinniesManager.succeed('cleanupMessage', {
184
193
  text: lib.LocalDevManager.exitingSucceed,
185
194
  });
186
195
  }
187
- process.exit(EXIT_CODES.SUCCESS);
196
+ return this.exit(EXIT_CODES.SUCCESS);
188
197
  }
189
198
  async checkPublicAppInstallation() {
190
199
  if (!componentIsPublicApp(this.activeApp) || !this.activePublicAppData) {
@@ -329,6 +338,8 @@ class LocalDevManager_DEPRECATED {
329
338
  onUploadRequired: this.logUploadWarning.bind(this),
330
339
  accountId: this.targetAccountId,
331
340
  setActiveApp: this.setActiveApp.bind(this),
341
+ exit: this.exit,
342
+ port: this.port,
332
343
  });
333
344
  return true;
334
345
  }
@@ -352,7 +363,7 @@ class LocalDevManager_DEPRECATED {
352
363
  uiLogger.error(getErrorMessage(e));
353
364
  }
354
365
  uiLogger.error(lib.LocalDevManager.devServer.startError(getErrorMessage(e)));
355
- process.exit(EXIT_CODES.ERROR);
366
+ return this.exit(EXIT_CODES.ERROR);
356
367
  }
357
368
  }
358
369
  devServerFileChange(filePath, event) {
@@ -32,6 +32,7 @@ class LocalDevProcess {
32
32
  this.devSessionManager = new DevSessionManager({
33
33
  targetTestingAccountId: this.state.targetTestingAccountId,
34
34
  localDevLogger: this._logger,
35
+ exit: this.state.actions.exit,
35
36
  });
36
37
  }
37
38
  get projectDir() {
@@ -68,7 +69,7 @@ class LocalDevProcess {
68
69
  }
69
70
  catch (e) {
70
71
  this.logger.devServerStartError(e);
71
- process.exit(EXIT_CODES.ERROR);
72
+ return this.state.actions.exit(EXIT_CODES.ERROR);
72
73
  }
73
74
  }
74
75
  async cleanupDevServers() {
@@ -148,7 +149,7 @@ class LocalDevProcess {
148
149
  this.logger.resetSpinnies();
149
150
  const setupSucceeded = await this.setupDevServers();
150
151
  if (!setupSucceeded) {
151
- process.exit(EXIT_CODES.ERROR);
152
+ return this.state.actions.exit(EXIT_CODES.ERROR);
152
153
  }
153
154
  this.logger.startupMessage();
154
155
  if (isConfigFlagEnabled(CONFIG_FLAGS.AUTO_OPEN_BROWSER, true)) {
@@ -157,7 +158,7 @@ class LocalDevProcess {
157
158
  await this.startDevServers();
158
159
  const devSessionRegistered = await this.devSessionManager.registerSession();
159
160
  if (!devSessionRegistered) {
160
- process.exit(EXIT_CODES.ERROR);
161
+ return this.state.actions.exit(EXIT_CODES.ERROR);
161
162
  }
162
163
  this.state.devServersStarted = true;
163
164
  this.logger.monitorConsoleOutput();
@@ -172,12 +173,12 @@ class LocalDevProcess {
172
173
  if (showProgress) {
173
174
  this.logger.cleanupError();
174
175
  }
175
- process.exit(EXIT_CODES.ERROR);
176
+ return this.state.actions.exit(EXIT_CODES.ERROR);
176
177
  }
177
178
  if (showProgress) {
178
179
  this.logger.cleanupSuccess();
179
180
  }
180
- process.exit(EXIT_CODES.SUCCESS);
181
+ return this.state.actions.exit(EXIT_CODES.SUCCESS);
181
182
  }
182
183
  async uploadProject() {
183
184
  this.logger.uploadInitiated();
@@ -3,7 +3,7 @@ import type { HSProfileVariables } from '@hubspot/project-parsing-lib/profiles';
3
3
  import { Environment } from '@hubspot/local-dev-lib/types/Accounts';
4
4
  import { Project } from '@hubspot/local-dev-lib/types/Project';
5
5
  import { ProjectConfig } from '../../../types/Projects.js';
6
- import { LocalDevStateConstructorOptions, LocalDevStateListener, AppLocalDevData, LocalDevServerMessage } from '../../../types/LocalDev.js';
6
+ import { LocalDevStateConstructorOptions, LocalDevStateListener, LocalDevActions, AppLocalDevData, LocalDevServerMessage } from '../../../types/LocalDev.js';
7
7
  declare class LocalDevState {
8
8
  private _targetProjectAccountId;
9
9
  private _targetTestingAccountId;
@@ -21,7 +21,8 @@ declare class LocalDevState {
21
21
  private _devServerMessage;
22
22
  private _uploadWarnings;
23
23
  private _devServersStarted;
24
- constructor({ targetProjectAccountId, targetTestingAccountId, projectConfig, projectDir, projectData, debug, initialProjectNodes, initialProjectProfileData, profile, env, }: LocalDevStateConstructorOptions);
24
+ actions: LocalDevActions;
25
+ constructor({ targetProjectAccountId, targetTestingAccountId, projectConfig, projectDir, projectData, debug, initialProjectNodes, initialProjectProfileData, profile, env, actions, }: LocalDevStateConstructorOptions);
25
26
  private runListeners;
26
27
  get targetProjectAccountId(): number;
27
28
  get targetTestingAccountId(): number;
@@ -16,7 +16,8 @@ class LocalDevState {
16
16
  _devServerMessage;
17
17
  _uploadWarnings;
18
18
  _devServersStarted;
19
- constructor({ targetProjectAccountId, targetTestingAccountId, projectConfig, projectDir, projectData, debug, initialProjectNodes, initialProjectProfileData, profile, env, }) {
19
+ actions;
20
+ constructor({ targetProjectAccountId, targetTestingAccountId, projectConfig, projectDir, projectData, debug, initialProjectNodes, initialProjectProfileData, profile, env, actions, }) {
20
21
  this._targetProjectAccountId = targetProjectAccountId;
21
22
  this._targetTestingAccountId = targetTestingAccountId;
22
23
  this._profile = profile;
@@ -32,6 +33,7 @@ class LocalDevState {
32
33
  this._devServerMessage = LOCAL_DEV_SERVER_MESSAGE_TYPES.INITIAL;
33
34
  this._uploadWarnings = new Set();
34
35
  this._devServersStarted = false;
36
+ this.actions = actions;
35
37
  this._listeners = {};
36
38
  }
37
39
  runListeners(key) {
@@ -2,13 +2,14 @@ import { HubSpotConfigAccount } from '@hubspot/local-dev-lib/types/Accounts';
2
2
  import { Environment } from '@hubspot/local-dev-lib/types/Accounts';
3
3
  import { DeveloperTestAccount } from '@hubspot/local-dev-lib/types/developerTestAccounts.js';
4
4
  import { ProjectDevTargetAccountPromptResponse } from '../../../prompts/projectDevTargetAccountPrompt.js';
5
- export declare function confirmDefaultAccountIsTarget(accountConfig: HubSpotConfigAccount): Promise<void>;
6
- export declare function checkIfDefaultAccountIsSupported(accountConfig: HubSpotConfigAccount, hasPublicApps: boolean): Promise<void>;
5
+ import { ExitFunction } from '../../../../types/Yargs.js';
6
+ export declare function confirmDefaultAccountIsTarget(accountConfig: HubSpotConfigAccount, exit: ExitFunction): Promise<void>;
7
+ export declare function checkIfDefaultAccountIsSupported(accountConfig: HubSpotConfigAccount, hasPublicApps: boolean, exit: ExitFunction): Promise<void>;
7
8
  export declare function checkIfParentAccountIsAuthed(accountConfig: HubSpotConfigAccount): void;
8
9
  export declare function checkIfAccountFlagIsSupported(accountConfig: HubSpotConfigAccount, hasPublicApps: boolean): void;
9
10
  export declare function suggestRecommendedNestedAccount(accounts: HubSpotConfigAccount[], accountConfig: HubSpotConfigAccount, hasPublicApps: boolean): Promise<ProjectDevTargetAccountPromptResponse>;
10
11
  export declare function createSandboxForLocalDev(accountId: number, accountConfig: HubSpotConfigAccount, env: Environment): Promise<number>;
11
12
  export declare function createDeveloperTestAccountForLocalDev(accountId: number, accountConfig: HubSpotConfigAccount, env: Environment, useV2?: boolean): Promise<number>;
12
- export declare function useExistingDevTestAccount(env: Environment, account: DeveloperTestAccount): Promise<void>;
13
+ export declare function useExistingDevTestAccount(env: Environment, account: DeveloperTestAccount): Promise<boolean>;
13
14
  export declare function hasSandboxes(account: HubSpotConfigAccount): Promise<boolean>;
14
15
  export declare function selectAccountTypePrompt(accountConfig: HubSpotConfigAccount): Promise<string | null>;
@@ -1,5 +1,5 @@
1
1
  import { HUBSPOT_ACCOUNT_TYPE_STRINGS } from '@hubspot/local-dev-lib/constants/config';
2
- import { getConfigAccountById, getConfigAccountIfExists, } from '@hubspot/local-dev-lib/config';
2
+ import { getConfigAccountIfExists } from '@hubspot/local-dev-lib/config';
3
3
  import { HUBSPOT_ACCOUNT_TYPES } from '@hubspot/local-dev-lib/constants/config';
4
4
  import { getHubSpotWebsiteOrigin } from '@hubspot/local-dev-lib/urls';
5
5
  import { isMissingScopeError } from '@hubspot/local-dev-lib/errors/index';
@@ -18,65 +18,60 @@ import { selectDeveloperTestTargetAccountPrompt } from '../../../prompts/project
18
18
  import { selectSandboxTargetAccountPrompt } from '../../../prompts/projectDevTargetAccountPrompt.js';
19
19
  import { validateSandboxUsageLimits } from '../../../sandboxes.js';
20
20
  import { logError } from '../../../errorHandlers/index.js';
21
- import { syncSandbox } from '../../../sandboxSync.js';
22
- import { getAvailableSyncTypes } from '../../../sandboxes.js';
23
21
  import { hubspotAccountNamePrompt } from '../../../prompts/accountNamePrompt.js';
24
22
  import { trackCommandMetadataUsage } from '../../../usageTracking.js';
25
23
  import { validateDevTestAccountUsageLimits } from '../../../developerTestAccounts.js';
26
- import { buildSandbox, buildDeveloperTestAccount, saveAccountToConfig, } from '../../../buildAccount.js';
24
+ import { buildDeveloperTestAccount, saveAccountToConfig, buildV2Sandbox, } from '../../../buildAccount.js';
27
25
  import { debugError } from '../../../errorHandlers/index.js';
28
26
  import { listPrompt } from '../../../prompts/promptUtils.js';
29
27
  import { confirmUseExistingDeveloperTestAccountPrompt } from '../../../prompts/projectDevTargetAccountPrompt.js';
30
28
  // If the user passed in the --account flag, confirm they want to use that account as
31
29
  // their target account, otherwise exit
32
- export async function confirmDefaultAccountIsTarget(accountConfig) {
30
+ export async function confirmDefaultAccountIsTarget(accountConfig, exit) {
33
31
  if (!accountConfig.name || !accountConfig.accountType) {
34
32
  uiLogger.error(lib.localDevHelpers.account.confirmDefaultAccountIsTarget.configError);
35
- process.exit(EXIT_CODES.ERROR);
33
+ return exit(EXIT_CODES.ERROR);
36
34
  }
37
35
  uiLogger.log('');
38
36
  const useDefaultAccount = await confirmDefaultAccountPrompt(accountConfig.name, HUBSPOT_ACCOUNT_TYPE_STRINGS[accountConfig.accountType]);
39
37
  if (!useDefaultAccount) {
40
38
  uiLogger.log(lib.localDevHelpers.account.confirmDefaultAccountIsTarget
41
39
  .declineDefaultAccountExplanation);
42
- process.exit(EXIT_CODES.SUCCESS);
40
+ return exit(EXIT_CODES.SUCCESS);
43
41
  }
44
42
  }
45
43
  // Confirm the default account is supported for the type of apps being developed
46
- export async function checkIfDefaultAccountIsSupported(accountConfig, hasPublicApps) {
44
+ export async function checkIfDefaultAccountIsSupported(accountConfig, hasPublicApps, exit) {
47
45
  const defaultAccountIsUnified = await isUnifiedAccount(accountConfig);
48
46
  if (hasPublicApps &&
49
47
  !(isAppDeveloperAccount(accountConfig) ||
50
48
  isDeveloperTestAccount(accountConfig) ||
51
49
  defaultAccountIsUnified)) {
52
50
  uiLogger.error(lib.localDevHelpers.account.checkIfDefaultAccountIsSupported.publicApp);
53
- process.exit(EXIT_CODES.SUCCESS);
51
+ return exit(EXIT_CODES.SUCCESS);
54
52
  }
55
53
  else if (!hasPublicApps && isAppDeveloperAccount(accountConfig)) {
56
54
  uiLogger.error(lib.localDevHelpers.account.checkIfDefaultAccountIsSupported.privateApp);
57
- process.exit(EXIT_CODES.SUCCESS);
55
+ return exit(EXIT_CODES.SUCCESS);
58
56
  }
59
57
  }
60
58
  export function checkIfParentAccountIsAuthed(accountConfig) {
61
59
  if (!accountConfig.parentAccountId ||
62
60
  !getConfigAccountIfExists(accountConfig.parentAccountId)?.accountId) {
63
- uiLogger.error(lib.localDevHelpers.account.checkIfParentAccountIsAuthed.notAuthedError(accountConfig.parentAccountId || '', uiAccountDescription(accountConfig.accountId)));
64
- process.exit(EXIT_CODES.SUCCESS);
61
+ throw new Error(lib.localDevHelpers.account.checkIfParentAccountIsAuthed.notAuthedError(accountConfig.parentAccountId || '', uiAccountDescription(accountConfig.accountId)));
65
62
  }
66
63
  }
67
64
  // Confirm the default account is a developer account if developing public apps
68
65
  export function checkIfAccountFlagIsSupported(accountConfig, hasPublicApps) {
69
66
  if (hasPublicApps) {
70
67
  if (!isDeveloperTestAccount(accountConfig)) {
71
- uiLogger.error(lib.localDevHelpers.account.validateAccountOption
68
+ throw new Error(lib.localDevHelpers.account.validateAccountOption
72
69
  .invalidPublicAppAccount);
73
- process.exit(EXIT_CODES.SUCCESS);
74
70
  }
75
71
  checkIfParentAccountIsAuthed(accountConfig);
76
72
  }
77
73
  else if (isAppDeveloperAccount(accountConfig)) {
78
- uiLogger.error(lib.localDevHelpers.account.validateAccountOption.invalidPrivateAppAccount);
79
- process.exit(EXIT_CODES.SUCCESS);
74
+ throw new Error(lib.localDevHelpers.account.validateAccountOption.invalidPrivateAppAccount);
80
75
  }
81
76
  }
82
77
  // If the user isn't using the recommended account type, prompt them to use or create one
@@ -112,24 +107,20 @@ export async function createSandboxForLocalDev(accountId, accountConfig, env) {
112
107
  else {
113
108
  logError(err);
114
109
  }
115
- process.exit(EXIT_CODES.ERROR);
110
+ throw err;
116
111
  }
117
112
  try {
118
113
  const { name } = await hubspotAccountNamePrompt({
119
114
  accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
120
115
  });
121
116
  trackCommandMetadataUsage('sandbox-create', { step: 'project-dev' }, accountId);
122
- const result = await buildSandbox(name, accountConfig, HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, env);
123
- const targetAccountId = result.sandbox.sandboxHubId;
124
- const sandboxAccountConfig = getConfigAccountById(result.sandbox.sandboxHubId);
125
- const syncTasks = await getAvailableSyncTypes(accountConfig, sandboxAccountConfig);
126
- // For v1 sandboxes, keep sync here. Once we migrate to v2, this will be handled by BE automatically
127
- await syncSandbox(sandboxAccountConfig, accountConfig, env, syncTasks, true);
128
- return targetAccountId;
117
+ const result = await buildV2Sandbox(name, accountConfig, HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, false, // syncObjectRecords
118
+ env);
119
+ return result.sandbox.sandboxHubId;
129
120
  }
130
121
  catch (err) {
131
122
  logError(err);
132
- process.exit(EXIT_CODES.ERROR);
123
+ throw err;
133
124
  }
134
125
  }
135
126
  // Create a developer test account and return its accountId
@@ -155,7 +146,7 @@ export async function createDeveloperTestAccountForLocalDev(accountId, accountCo
155
146
  else {
156
147
  logError(err);
157
148
  }
158
- process.exit(EXIT_CODES.ERROR);
149
+ throw err;
159
150
  }
160
151
  try {
161
152
  const { name } = await hubspotAccountNamePrompt({
@@ -163,12 +154,11 @@ export async function createDeveloperTestAccountForLocalDev(accountId, accountCo
163
154
  accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
164
155
  });
165
156
  trackCommandMetadataUsage('developer-test-account-create', { step: 'project-dev' }, accountId);
166
- const result = await buildDeveloperTestAccount(name, accountConfig, env, maxTestPortals, useV2);
167
- return result;
157
+ return await buildDeveloperTestAccount(name, accountConfig, env, maxTestPortals, useV2);
168
158
  }
169
159
  catch (err) {
170
160
  logError(err);
171
- process.exit(EXIT_CODES.ERROR);
161
+ throw err;
172
162
  }
173
163
  }
174
164
  // Prompt user to confirm usage of an existing developer test account that is not currently in the config
@@ -179,10 +169,11 @@ export async function useExistingDevTestAccount(env, account) {
179
169
  uiLogger.log(lib.localDevHelpers.account.confirmDefaultAccountIsTarget
180
170
  .declineDefaultAccountExplanation);
181
171
  uiLogger.log('');
182
- process.exit(EXIT_CODES.SUCCESS);
172
+ return false;
183
173
  }
184
174
  const devTestAcctConfigName = await saveAccountToConfig(account.id, account.accountName, env);
185
175
  uiLogger.success(lib.developerTestAccount.create.success.configFileUpdated(devTestAcctConfigName, PERSONAL_ACCESS_KEY_AUTH_METHOD.name));
176
+ return true;
186
177
  }
187
178
  export async function hasSandboxes(account) {
188
179
  const accountId = account.accountId;
@@ -1 +1 @@
1
- export declare function confirmLocalDevIsNotRunning(): Promise<void>;
1
+ export declare function isLocalDevRunning(): Promise<boolean>;
@@ -1,17 +1,11 @@
1
1
  import { LOCAL_DEV_WEBSOCKET_SERVER_INSTANCE_ID } from '../../../constants.js';
2
- import { EXIT_CODES } from '../../../enums/exitCodes.js';
3
2
  import { getServerPortByInstanceId } from '@hubspot/local-dev-lib/portManager';
4
- import { uiLogger } from '../../../ui/logger.js';
5
- import { commands } from '../../../../lang/en.js';
6
- export async function confirmLocalDevIsNotRunning() {
3
+ export async function isLocalDevRunning() {
7
4
  try {
8
5
  const existingPortInUse = await getServerPortByInstanceId(LOCAL_DEV_WEBSOCKET_SERVER_INSTANCE_ID);
9
- if (existingPortInUse) {
10
- uiLogger.error(commands.project.dev.errors.localDevAlreadyRunning);
11
- process.exit(EXIT_CODES.ERROR);
12
- }
6
+ return Boolean(existingPortInUse);
13
7
  }
14
- catch (error) {
15
- return;
8
+ catch {
9
+ return false;
16
10
  }
17
11
  }
@@ -2,11 +2,12 @@ import { type IntermediateRepresentationNode, type IntermediateRepresentationNod
2
2
  import { Build } from '@hubspot/local-dev-lib/types/Build';
3
3
  import { Project } from '@hubspot/local-dev-lib/types/Project';
4
4
  import { ProjectConfig } from '../../../../types/Projects.js';
5
- export declare function createNewProjectForLocalDev(projectConfig: ProjectConfig, targetAccountId: number, shouldCreateWithoutConfirmation: boolean, hasPublicApps: boolean): Promise<Project>;
6
- export declare function createInitialBuildForNewProject(projectConfig: ProjectConfig, projectDir: string, targetAccountId: number, sendIR?: boolean, profile?: string): Promise<Build>;
5
+ import { ExitFunction } from '../../../../types/Yargs.js';
6
+ export declare function createNewProjectForLocalDev(projectConfig: ProjectConfig, targetAccountId: number, shouldCreateWithoutConfirmation: boolean, hasPublicApps: boolean, exit: ExitFunction): Promise<Project>;
7
+ export declare function createInitialBuildForNewProject(projectConfig: ProjectConfig, projectDir: string, targetAccountId: number, exit: ExitFunction, sendIR?: boolean, profile?: string): Promise<Build>;
7
8
  export declare function compareLocalProjectToDeployed(projectConfig: ProjectConfig, accountId: number, deployedBuildId: number | undefined, localProjectNodes: {
8
9
  [key: string]: IntermediateRepresentationNodeLocalDev;
9
- }, profile?: string): Promise<void>;
10
+ }, exit: ExitFunction, profile?: string): Promise<void>;
10
11
  export declare function getDeployedProjectNodes(projectConfig: ProjectConfig, accountId: number, deployedBuildId: number, profile?: string): Promise<{
11
12
  [key: string]: IntermediateRepresentationNode;
12
13
  }>;