@hubspot/cli 7.5.4-experimental.0 → 7.5.4

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 (413) hide show
  1. package/api/migrate.d.ts +14 -4
  2. package/api/migrate.js +16 -2
  3. package/bin/cli.js +100 -95
  4. package/commands/account/auth.d.ts +5 -7
  5. package/commands/account/auth.js +87 -80
  6. package/commands/account/clean.d.ts +3 -7
  7. package/commands/account/clean.js +16 -9
  8. package/commands/account/createOverride.d.ts +3 -7
  9. package/commands/account/createOverride.js +23 -6
  10. package/commands/account/info.d.ts +3 -7
  11. package/commands/account/info.js +13 -5
  12. package/commands/account/list.d.ts +3 -7
  13. package/commands/account/list.js +15 -8
  14. package/commands/account/remove.d.ts +3 -7
  15. package/commands/account/remove.js +21 -9
  16. package/commands/account/removeOverride.d.ts +3 -7
  17. package/commands/account/removeOverride.js +23 -6
  18. package/commands/account/rename.d.ts +3 -7
  19. package/commands/account/rename.js +16 -9
  20. package/commands/account/use.d.ts +5 -9
  21. package/commands/account/use.js +14 -6
  22. package/commands/account.d.ts +3 -4
  23. package/commands/account.js +33 -58
  24. package/commands/app/migrate.d.ts +5 -6
  25. package/commands/app/migrate.js +60 -44
  26. package/commands/app/secret/add.d.ts +7 -0
  27. package/commands/app/secret/add.js +64 -0
  28. package/commands/app/secret/delete.d.ts +8 -0
  29. package/commands/app/secret/delete.js +87 -0
  30. package/commands/app/secret/list.d.ts +6 -0
  31. package/commands/app/secret/list.js +64 -0
  32. package/commands/app/secret/update.d.ts +7 -0
  33. package/commands/app/secret/update.js +77 -0
  34. package/commands/app/secret.d.ts +3 -0
  35. package/commands/app/secret.js +30 -0
  36. package/commands/app.d.ts +2 -5
  37. package/commands/app.js +10 -10
  38. package/commands/auth.d.ts +5 -7
  39. package/commands/auth.js +35 -35
  40. package/commands/cms/convertFields.d.ts +7 -1
  41. package/commands/cms/convertFields.js +57 -41
  42. package/commands/cms/getReactModule.d.ts +7 -1
  43. package/commands/cms/getReactModule.js +52 -34
  44. package/commands/cms/lighthouseScore.d.ts +8 -1
  45. package/commands/cms/lighthouseScore.js +129 -100
  46. package/commands/cms.d.ts +3 -1
  47. package/commands/cms.js +22 -16
  48. package/commands/completion.d.ts +3 -1
  49. package/commands/completion.js +23 -13
  50. package/commands/config/migrate.d.ts +3 -7
  51. package/commands/config/migrate.js +37 -46
  52. package/commands/config/set.d.ts +5 -6
  53. package/commands/config/set.js +38 -14
  54. package/commands/config.d.ts +3 -4
  55. package/commands/config.js +18 -44
  56. package/commands/create/api-sample.d.ts +3 -1
  57. package/commands/create/api-sample.js +34 -38
  58. package/commands/create/app.d.ts +3 -1
  59. package/commands/create/app.js +9 -7
  60. package/commands/create/function.d.ts +3 -1
  61. package/commands/create/function.js +11 -10
  62. package/commands/create/index.d.ts +5 -1
  63. package/commands/create/index.js +23 -11
  64. package/commands/create/module.d.ts +3 -1
  65. package/commands/create/module.js +14 -13
  66. package/commands/create/react-app.d.ts +3 -1
  67. package/commands/create/react-app.js +10 -7
  68. package/commands/create/template.d.ts +3 -1
  69. package/commands/create/template.js +14 -14
  70. package/commands/create/vue-app.d.ts +3 -1
  71. package/commands/create/vue-app.js +10 -7
  72. package/commands/create/webpack-serverless.d.ts +3 -1
  73. package/commands/create/webpack-serverless.js +10 -7
  74. package/commands/create/website-theme.d.ts +3 -1
  75. package/commands/create/website-theme.js +10 -9
  76. package/commands/create.d.ts +4 -24
  77. package/commands/create.js +62 -75
  78. package/commands/customObject/create.d.ts +4 -9
  79. package/commands/customObject/create.js +17 -10
  80. package/commands/customObject/schema/create.d.ts +4 -9
  81. package/commands/customObject/schema/create.js +18 -11
  82. package/commands/customObject/schema/delete.d.ts +4 -9
  83. package/commands/customObject/schema/delete.js +17 -10
  84. package/commands/customObject/schema/fetch-all.d.ts +4 -9
  85. package/commands/customObject/schema/fetch-all.js +17 -10
  86. package/commands/customObject/schema/fetch.d.ts +4 -9
  87. package/commands/customObject/schema/fetch.js +17 -10
  88. package/commands/customObject/schema/list.d.ts +4 -8
  89. package/commands/customObject/schema/list.js +17 -10
  90. package/commands/customObject/schema/update.d.ts +4 -9
  91. package/commands/customObject/schema/update.js +18 -11
  92. package/commands/customObject/schema.d.ts +3 -5
  93. package/commands/customObject/schema.js +27 -54
  94. package/commands/customObject.d.ts +3 -4
  95. package/commands/customObject.js +20 -48
  96. package/commands/doctor.d.ts +6 -8
  97. package/commands/doctor.js +30 -22
  98. package/commands/feedback.d.ts +4 -1
  99. package/commands/feedback.js +38 -48
  100. package/commands/fetch.d.ts +12 -1
  101. package/commands/fetch.js +49 -34
  102. package/commands/filemanager/fetch.d.ts +4 -9
  103. package/commands/filemanager/fetch.js +18 -11
  104. package/commands/filemanager/upload.d.ts +4 -9
  105. package/commands/filemanager/upload.js +17 -11
  106. package/commands/filemanager.d.ts +3 -4
  107. package/commands/filemanager.js +18 -42
  108. package/commands/function/deploy.d.ts +6 -1
  109. package/commands/function/deploy.js +70 -50
  110. package/commands/function/list.d.ts +6 -1
  111. package/commands/function/list.js +44 -32
  112. package/commands/function/server.d.ts +10 -1
  113. package/commands/function/server.js +49 -38
  114. package/commands/function.d.ts +5 -1
  115. package/commands/function.js +22 -11
  116. package/commands/getStarted.d.ts +9 -0
  117. package/commands/getStarted.js +227 -0
  118. package/commands/hubdb/clear.d.ts +4 -9
  119. package/commands/hubdb/clear.js +21 -15
  120. package/commands/hubdb/create.d.ts +4 -9
  121. package/commands/hubdb/create.js +23 -17
  122. package/commands/hubdb/delete.d.ts +4 -9
  123. package/commands/hubdb/delete.js +24 -16
  124. package/commands/hubdb/fetch.d.ts +4 -9
  125. package/commands/hubdb/fetch.js +20 -14
  126. package/commands/hubdb/list.d.ts +4 -0
  127. package/commands/hubdb/list.js +83 -0
  128. package/commands/hubdb.d.ts +3 -2
  129. package/commands/hubdb.js +24 -47
  130. package/commands/init.d.ts +3 -7
  131. package/commands/init.js +25 -17
  132. package/commands/lint.d.ts +6 -4
  133. package/commands/lint.js +42 -44
  134. package/commands/list.d.ts +3 -7
  135. package/commands/list.js +21 -16
  136. package/commands/logs.d.ts +10 -1
  137. package/commands/logs.js +53 -45
  138. package/commands/mcp/setup.d.ts +7 -0
  139. package/commands/mcp/setup.js +50 -0
  140. package/commands/mcp/start.d.ts +3 -0
  141. package/commands/mcp/start.js +75 -0
  142. package/commands/mcp.d.ts +3 -0
  143. package/commands/mcp.js +26 -0
  144. package/commands/module/marketplace-validate.d.ts +6 -1
  145. package/commands/module/marketplace-validate.js +39 -30
  146. package/commands/module.d.ts +3 -1
  147. package/commands/module.js +23 -12
  148. package/commands/mv.d.ts +3 -7
  149. package/commands/mv.js +20 -15
  150. package/commands/open.d.ts +3 -7
  151. package/commands/open.js +20 -15
  152. package/commands/project/add.d.ts +8 -9
  153. package/commands/project/add.js +53 -85
  154. package/commands/project/cloneApp.d.ts +6 -8
  155. package/commands/project/cloneApp.js +51 -47
  156. package/commands/project/create.d.ts +4 -1
  157. package/commands/project/create.js +132 -81
  158. package/commands/project/deploy.d.ts +5 -6
  159. package/commands/project/deploy.js +93 -37
  160. package/commands/project/dev/deprecatedFlow.d.ts +8 -2
  161. package/commands/project/dev/deprecatedFlow.js +41 -26
  162. package/commands/project/dev/index.d.ts +4 -5
  163. package/commands/project/dev/index.js +103 -33
  164. package/commands/project/dev/unifiedFlow.d.ts +11 -2
  165. package/commands/project/dev/unifiedFlow.js +85 -46
  166. package/commands/project/download.d.ts +3 -7
  167. package/commands/project/download.js +18 -19
  168. package/commands/project/installDeps.d.ts +6 -1
  169. package/commands/project/installDeps.js +48 -32
  170. package/commands/project/listBuilds.d.ts +3 -7
  171. package/commands/project/listBuilds.js +32 -30
  172. package/commands/project/logs.d.ts +10 -1
  173. package/commands/project/logs.js +73 -65
  174. package/commands/project/migrate.d.ts +7 -0
  175. package/commands/project/migrate.js +71 -0
  176. package/commands/project/migrateApp.d.ts +3 -8
  177. package/commands/project/migrateApp.js +23 -20
  178. package/commands/project/open.d.ts +3 -7
  179. package/commands/project/open.js +29 -21
  180. package/commands/project/profile/add.d.ts +7 -0
  181. package/commands/project/profile/add.js +209 -0
  182. package/commands/project/profile/delete.d.ts +6 -0
  183. package/commands/project/profile/delete.js +123 -0
  184. package/commands/project/profile.d.ts +3 -0
  185. package/commands/project/profile.js +25 -0
  186. package/commands/project/upload.d.ts +10 -1
  187. package/commands/project/upload.js +94 -56
  188. package/commands/project/validate.d.ts +6 -0
  189. package/commands/project/validate.js +82 -0
  190. package/commands/project/watch.d.ts +6 -1
  191. package/commands/project/watch.js +95 -61
  192. package/commands/project.d.ts +3 -1
  193. package/commands/project.js +49 -35
  194. package/commands/remove.d.ts +3 -7
  195. package/commands/remove.js +22 -20
  196. package/commands/sandbox/create.d.ts +4 -9
  197. package/commands/sandbox/create.js +27 -21
  198. package/commands/sandbox/delete.d.ts +4 -9
  199. package/commands/sandbox/delete.js +35 -29
  200. package/commands/sandbox.d.ts +3 -4
  201. package/commands/sandbox.js +18 -44
  202. package/commands/secret/addSecret.d.ts +4 -9
  203. package/commands/secret/addSecret.js +21 -15
  204. package/commands/secret/deleteSecret.d.ts +4 -9
  205. package/commands/secret/deleteSecret.js +28 -18
  206. package/commands/secret/listSecret.d.ts +4 -9
  207. package/commands/secret/listSecret.js +19 -13
  208. package/commands/secret/updateSecret.d.ts +4 -9
  209. package/commands/secret/updateSecret.js +25 -17
  210. package/commands/secret.d.ts +3 -4
  211. package/commands/secret.js +23 -49
  212. package/commands/theme/generate-selectors.d.ts +3 -7
  213. package/commands/theme/generate-selectors.js +20 -16
  214. package/commands/theme/marketplace-validate.d.ts +4 -9
  215. package/commands/theme/marketplace-validate.js +22 -18
  216. package/commands/theme/preview.d.ts +4 -9
  217. package/commands/theme/preview.js +36 -30
  218. package/commands/theme.d.ts +3 -4
  219. package/commands/theme.js +22 -48
  220. package/commands/upload.d.ts +12 -1
  221. package/commands/upload.js +116 -135
  222. package/commands/watch.d.ts +14 -1
  223. package/commands/watch.js +74 -76
  224. package/lang/en.d.ts +3217 -0
  225. package/lang/en.js +3074 -3318
  226. package/lang/en.lyaml +41 -246
  227. package/lib/accountTypes.d.ts +1 -0
  228. package/lib/accountTypes.js +11 -0
  229. package/lib/app/migrate.d.ts +33 -4
  230. package/lib/app/migrate.js +232 -99
  231. package/lib/app/migrate_legacy.d.ts +2 -2
  232. package/lib/app/migrate_legacy.js +16 -13
  233. package/lib/app/urls.d.ts +16 -0
  234. package/lib/app/urls.js +16 -0
  235. package/lib/buildAccount.d.ts +1 -2
  236. package/lib/buildAccount.js +11 -10
  237. package/lib/commonOpts.d.ts +4 -7
  238. package/lib/commonOpts.js +47 -19
  239. package/lib/configMigrate.d.ts +2 -2
  240. package/lib/configMigrate.js +39 -60
  241. package/lib/configOptions.d.ts +4 -0
  242. package/lib/configOptions.js +41 -45
  243. package/lib/constants.d.ts +33 -0
  244. package/lib/constants.js +34 -1
  245. package/lib/dependencyManagement.d.ts +0 -5
  246. package/lib/dependencyManagement.js +14 -40
  247. package/lib/doctor/Diagnosis.js +10 -11
  248. package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
  249. package/lib/doctor/DiagnosticInfoBuilder.js +10 -10
  250. package/lib/doctor/Doctor.js +45 -49
  251. package/lib/errorHandlers/index.js +13 -7
  252. package/lib/errorHandlers/suppressError.js +18 -26
  253. package/lib/filesystem.d.ts +1 -1
  254. package/lib/generateSelectors.js +3 -6
  255. package/lib/hasFeature.d.ts +3 -1
  256. package/lib/interpolation.d.ts +2 -3
  257. package/lib/lang.d.ts +2 -3
  258. package/lib/marketplaceValidate.d.ts +12 -2
  259. package/lib/marketplaceValidate.js +22 -29
  260. package/lib/mcp/setup.d.ts +21 -0
  261. package/lib/mcp/setup.js +218 -0
  262. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +3 -3
  263. package/lib/middleware/autoUpdateMiddleware.d.ts +1 -0
  264. package/lib/middleware/autoUpdateMiddleware.js +89 -0
  265. package/lib/middleware/configMiddleware.js +32 -2
  266. package/lib/middleware/fireAlarmMiddleware.d.ts +2 -2
  267. package/lib/middleware/fireAlarmMiddleware.js +12 -24
  268. package/lib/middleware/yargsChecksMiddleware.js +2 -2
  269. package/lib/npm.d.ts +9 -0
  270. package/lib/npm.js +36 -0
  271. package/lib/oauth.js +1 -2
  272. package/lib/process.js +1 -2
  273. package/lib/projectProfiles.d.ts +7 -0
  274. package/lib/projectProfiles.js +83 -0
  275. package/lib/projects/ProjectLogsManager.d.ts +1 -1
  276. package/lib/projects/ProjectLogsManager.js +16 -21
  277. package/lib/projects/add/legacyAddComponent.d.ts +5 -0
  278. package/lib/projects/add/legacyAddComponent.js +48 -0
  279. package/lib/projects/add/v3AddComponent.d.ts +8 -0
  280. package/lib/projects/add/v3AddComponent.js +85 -0
  281. package/lib/projects/buildAndDeploy.js +46 -42
  282. package/lib/projects/components.d.ts +2 -0
  283. package/lib/projects/components.js +82 -0
  284. package/lib/projects/config.d.ts +9 -0
  285. package/lib/projects/config.js +79 -0
  286. package/lib/projects/create/index.d.ts +23 -0
  287. package/lib/projects/create/index.js +33 -0
  288. package/lib/projects/create/legacy.d.ts +6 -0
  289. package/lib/projects/{create.js → create/legacy.js} +23 -15
  290. package/lib/projects/create/v3.d.ts +27 -0
  291. package/lib/projects/create/v3.js +158 -0
  292. package/lib/projects/ensureProjectExists.d.ts +11 -0
  293. package/lib/projects/ensureProjectExists.js +97 -0
  294. package/lib/projects/localDev/AppDevModeInterface.d.ts +30 -0
  295. package/lib/projects/localDev/AppDevModeInterface.js +215 -0
  296. package/lib/{DevServerManager.d.ts → projects/localDev/DevServerManager.d.ts} +1 -1
  297. package/lib/{DevServerManager.js → projects/localDev/DevServerManager.js} +6 -6
  298. package/lib/projects/localDev/DevServerManagerV2.d.ts +22 -0
  299. package/lib/{DevServerManagerV2.js → projects/localDev/DevServerManagerV2.js} +22 -19
  300. package/lib/projects/localDev/LocalDevLogger.d.ts +30 -0
  301. package/lib/projects/localDev/LocalDevLogger.js +159 -0
  302. package/lib/{LocalDevManager.d.ts → projects/localDev/LocalDevManager.d.ts} +1 -1
  303. package/lib/{LocalDevManager.js → projects/localDev/LocalDevManager.js} +57 -83
  304. package/lib/projects/localDev/LocalDevProcess.d.ts +34 -0
  305. package/lib/projects/localDev/LocalDevProcess.js +201 -0
  306. package/lib/projects/localDev/LocalDevState.d.ts +50 -0
  307. package/lib/projects/localDev/LocalDevState.js +119 -0
  308. package/lib/projects/localDev/LocalDevWatcher.d.ts +10 -0
  309. package/lib/projects/localDev/LocalDevWatcher.js +53 -0
  310. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +20 -0
  311. package/lib/projects/localDev/LocalDevWebsocketServer.js +131 -0
  312. package/lib/{localDev.d.ts → projects/localDev/helpers.d.ts} +6 -4
  313. package/lib/{localDev.js → projects/localDev/helpers.js} +127 -114
  314. package/lib/projects/ui.d.ts +1 -0
  315. package/lib/projects/ui.js +15 -0
  316. package/lib/projects/upload.d.ts +17 -2
  317. package/lib/projects/upload.js +74 -50
  318. package/lib/projects/urls.d.ts +4 -0
  319. package/lib/projects/urls.js +23 -1
  320. package/lib/projects/watch.d.ts +1 -1
  321. package/lib/projects/watch.js +21 -18
  322. package/lib/prompts/accountNamePrompt.js +16 -13
  323. package/lib/prompts/accountsPrompt.js +1 -2
  324. package/lib/prompts/cmsFieldPrompt.js +1 -2
  325. package/lib/prompts/createApiSamplePrompt.d.ts +2 -10
  326. package/lib/prompts/createApiSamplePrompt.js +4 -5
  327. package/lib/prompts/createFunctionPrompt.js +13 -14
  328. package/lib/prompts/createModulePrompt.js +8 -9
  329. package/lib/prompts/createProjectPrompt.d.ts +20 -4
  330. package/lib/prompts/createProjectPrompt.js +43 -13
  331. package/lib/prompts/createTemplatePrompt.d.ts +22 -4
  332. package/lib/prompts/createTemplatePrompt.js +1 -2
  333. package/lib/prompts/downloadProjectPrompt.js +3 -4
  334. package/lib/prompts/installAppPrompt.d.ts +2 -0
  335. package/lib/prompts/installAppPrompt.js +45 -0
  336. package/lib/prompts/personalAccessKeyPrompt.js +35 -25
  337. package/lib/prompts/previewPrompt.js +5 -6
  338. package/lib/prompts/projectAddPrompt.d.ts +5 -1
  339. package/lib/prompts/projectAddPrompt.js +35 -8
  340. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +6 -1
  341. package/lib/prompts/projectDevTargetAccountPrompt.js +15 -16
  342. package/lib/prompts/projectNamePrompt.js +5 -6
  343. package/lib/prompts/projectsLogsPrompt.js +3 -2
  344. package/lib/prompts/promptUtils.d.ts +4 -2
  345. package/lib/prompts/promptUtils.js +3 -1
  346. package/lib/prompts/sandboxesPrompt.js +5 -6
  347. package/lib/prompts/secretPrompt.js +2 -3
  348. package/lib/prompts/selectAppPrompt.d.ts +2 -0
  349. package/lib/prompts/selectAppPrompt.js +40 -0
  350. package/lib/prompts/selectHubDBTablePrompt.js +11 -8
  351. package/lib/prompts/{selectPublicAppPrompt.d.ts → selectPublicAppForMigrationPrompt.d.ts} +1 -1
  352. package/lib/prompts/{selectPublicAppPrompt.js → selectPublicAppForMigrationPrompt.js} +8 -9
  353. package/lib/prompts/setAsDefaultAccountPrompt.js +11 -2
  354. package/lib/prompts/uploadPrompt.js +4 -5
  355. package/lib/sandboxSync.js +15 -14
  356. package/lib/sandboxes.js +12 -13
  357. package/lib/serverlessLogs.js +4 -6
  358. package/lib/testUtils.d.ts +3 -3
  359. package/lib/testUtils.js +8 -9
  360. package/lib/ui/boxen.d.ts +5 -0
  361. package/lib/ui/boxen.js +30 -0
  362. package/lib/ui/git.js +8 -9
  363. package/lib/ui/index.d.ts +3 -2
  364. package/lib/ui/index.js +15 -17
  365. package/lib/ui/logger.d.ts +10 -0
  366. package/lib/ui/logger.js +15 -0
  367. package/lib/ui/serverlessFunctionLogs.js +2 -3
  368. package/lib/upload.d.ts +1 -1
  369. package/lib/validation.js +4 -5
  370. package/lib/yargsUtils.d.ts +5 -1
  371. package/lib/yargsUtils.js +6 -0
  372. package/mcp-server/server.d.ts +1 -0
  373. package/mcp-server/server.js +18 -0
  374. package/mcp-server/tools/index.d.ts +2 -0
  375. package/mcp-server/tools/index.js +19 -0
  376. package/mcp-server/tools/project/AddFeatureToProject.d.ts +29 -0
  377. package/mcp-server/tools/project/AddFeatureToProject.js +85 -0
  378. package/mcp-server/tools/project/CreateProjectTool.d.ts +35 -0
  379. package/mcp-server/tools/project/CreateProjectTool.js +104 -0
  380. package/mcp-server/tools/project/DeployProject.d.ts +20 -0
  381. package/mcp-server/tools/project/DeployProject.js +50 -0
  382. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +17 -0
  383. package/mcp-server/tools/project/GuidedWalkthroughTool.js +58 -0
  384. package/mcp-server/tools/project/UploadProjectTools.d.ts +17 -0
  385. package/mcp-server/tools/project/UploadProjectTools.js +35 -0
  386. package/mcp-server/tools/project/ValidateProjectTool.d.ts +17 -0
  387. package/mcp-server/tools/project/ValidateProjectTool.js +35 -0
  388. package/mcp-server/tools/project/constants.d.ts +3 -0
  389. package/mcp-server/tools/project/constants.js +13 -0
  390. package/mcp-server/types.d.ts +14 -0
  391. package/mcp-server/types.js +17 -0
  392. package/mcp-server/utils/command.d.ts +3 -0
  393. package/mcp-server/utils/command.js +16 -0
  394. package/mcp-server/utils/content.d.ts +3 -0
  395. package/mcp-server/utils/content.js +21 -0
  396. package/mcp-server/utils/project.d.ts +5 -0
  397. package/mcp-server/utils/project.js +17 -0
  398. package/package.json +25 -17
  399. package/types/Cms.d.ts +30 -0
  400. package/types/Cms.js +2 -0
  401. package/types/LocalDev.d.ts +35 -0
  402. package/types/LocalDev.js +2 -0
  403. package/types/Projects.d.ts +19 -2
  404. package/types/Prompts.d.ts +0 -7
  405. package/types/Yargs.d.ts +14 -11
  406. package/lib/DevServerManagerV2.d.ts +0 -33
  407. package/lib/LocalDevManagerV2.d.ts +0 -64
  408. package/lib/LocalDevManagerV2.js +0 -377
  409. package/lib/projects/create.d.ts +0 -5
  410. package/lib/projects/index.d.ts +0 -20
  411. package/lib/projects/index.js +0 -194
  412. package/lib/prompts/installPublicAppPrompt.d.ts +0 -1
  413. package/lib/prompts/installPublicAppPrompt.js +0 -40
@@ -0,0 +1,30 @@
1
+ import LocalDevState from './LocalDevState';
2
+ declare class LocalDevLogger {
3
+ private state;
4
+ private mostRecentUploadWarning;
5
+ private uploadWarnings;
6
+ constructor(state: LocalDevState);
7
+ private logUploadInstructions;
8
+ private handleError;
9
+ getUploadCommand(): string;
10
+ uploadWarning(): void;
11
+ addUploadWarning(warning: string): void;
12
+ clearUploadWarnings(): void;
13
+ missingComponentsWarning(components: string[]): void;
14
+ fileChangeError(e: unknown): void;
15
+ devServerSetupError(e: unknown): void;
16
+ devServerStartError(e: unknown): void;
17
+ devServerCleanupError(e: unknown): void;
18
+ noDeployedBuild(): void;
19
+ resetSpinnies(): void;
20
+ startupMessage(): void;
21
+ cleanupStart(): void;
22
+ cleanupError(): void;
23
+ cleanupSuccess(): void;
24
+ uploadInitiated(): void;
25
+ projectConfigMismatch(): void;
26
+ uploadError(error: unknown): void;
27
+ uploadSuccess(): void;
28
+ monitorConsoleOutput(): void;
29
+ }
30
+ export default LocalDevLogger;
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const config_1 = require("@hubspot/local-dev-lib/config");
7
+ const config_2 = require("@hubspot/local-dev-lib/config");
8
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
9
+ const logger_2 = require("../../ui/logger");
10
+ const ui_1 = require("../../ui");
11
+ const en_1 = require("../../../lang/en");
12
+ const SpinniesManager_1 = __importDefault(require("../../ui/SpinniesManager"));
13
+ const errorHandlers_1 = require("../../errorHandlers");
14
+ class LocalDevLogger {
15
+ state;
16
+ mostRecentUploadWarning;
17
+ uploadWarnings;
18
+ constructor(state) {
19
+ this.state = state;
20
+ this.mostRecentUploadWarning = null;
21
+ this.uploadWarnings = new Set();
22
+ }
23
+ logUploadInstructions(warning) {
24
+ logger_2.uiLogger.log('');
25
+ logger_2.uiLogger.warn(warning);
26
+ logger_2.uiLogger.log('');
27
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.instructionsHeader);
28
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.stopDev);
29
+ if (this.state.isGithubLinked) {
30
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.pushToGithub);
31
+ }
32
+ else {
33
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.runUpload(this.getUploadCommand()));
34
+ }
35
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.restartDev);
36
+ }
37
+ handleError(e, langFunction) {
38
+ if (this.state.debug) {
39
+ logger_1.logger.error(e);
40
+ }
41
+ logger_2.uiLogger.error(langFunction(e instanceof Error ? e.message : ''));
42
+ }
43
+ getUploadCommand() {
44
+ const currentDefaultAccount = (0, config_2.getConfigDefaultAccount)() || undefined;
45
+ return this.state.targetProjectAccountId !==
46
+ (0, config_1.getAccountId)(currentDefaultAccount)
47
+ ? (0, ui_1.uiCommandReference)(`hs project upload --account=${this.state.targetProjectAccountId}`)
48
+ : (0, ui_1.uiCommandReference)('hs project upload');
49
+ }
50
+ uploadWarning() {
51
+ // At the moment, there is only one additional warning. We may need to do this in a
52
+ // more robust way in the future
53
+ const additionalWarnings = Array.from(this.uploadWarnings).join('\n\n');
54
+ const warning = `${en_1.lib.LocalDevManager.uploadWarning.defaultWarning} ${additionalWarnings}`;
55
+ // Avoid logging the warning to the console if it is currently the most
56
+ // recently logged warning. We do not want to spam the console with the same message.
57
+ if (warning !== this.mostRecentUploadWarning) {
58
+ this.logUploadInstructions(warning);
59
+ this.mostRecentUploadWarning = warning;
60
+ }
61
+ }
62
+ addUploadWarning(warning) {
63
+ this.uploadWarnings.add(warning);
64
+ }
65
+ clearUploadWarnings() {
66
+ this.uploadWarnings.clear();
67
+ }
68
+ missingComponentsWarning(components) {
69
+ const warning = en_1.lib.LocalDevManager.uploadWarning.missingComponents(components.join(', '));
70
+ if (warning !== this.mostRecentUploadWarning) {
71
+ this.logUploadInstructions(warning);
72
+ this.mostRecentUploadWarning = warning;
73
+ }
74
+ }
75
+ fileChangeError(e) {
76
+ this.handleError(e, en_1.lib.LocalDevManager.devServer.fileChangeError);
77
+ }
78
+ devServerSetupError(e) {
79
+ this.handleError(e, en_1.lib.LocalDevManager.devServer.setupError);
80
+ }
81
+ devServerStartError(e) {
82
+ this.handleError(e, en_1.lib.LocalDevManager.devServer.startError);
83
+ }
84
+ devServerCleanupError(e) {
85
+ this.handleError(e, en_1.lib.LocalDevManager.devServer.cleanupError);
86
+ }
87
+ noDeployedBuild() {
88
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.noDeployedBuild(this.state.projectConfig.name, (0, ui_1.uiAccountDescription)(this.state.targetProjectAccountId), this.getUploadCommand()));
89
+ logger_2.uiLogger.log('');
90
+ }
91
+ resetSpinnies() {
92
+ SpinniesManager_1.default.stopAll();
93
+ SpinniesManager_1.default.init();
94
+ }
95
+ startupMessage() {
96
+ if (!this.state.debug) {
97
+ console.clear();
98
+ }
99
+ (0, ui_1.uiBetaTag)(en_1.lib.LocalDevManager.betaMessage);
100
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.learnMoreLocalDevServer);
101
+ logger_2.uiLogger.log('');
102
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.running(this.state.projectConfig.name, (0, ui_1.uiAccountDescription)(this.state.targetProjectAccountId)));
103
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.viewProjectLink(this.state.projectConfig.name, this.state.targetProjectAccountId));
104
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.viewLocalDevUILink(this.state.targetTestingAccountId));
105
+ logger_2.uiLogger.log('');
106
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.quitHelper);
107
+ (0, ui_1.uiLine)();
108
+ logger_2.uiLogger.log('');
109
+ }
110
+ cleanupStart() {
111
+ SpinniesManager_1.default.add('cleanupMessage', {
112
+ text: en_1.lib.LocalDevManager.exitingStart,
113
+ });
114
+ }
115
+ cleanupError() {
116
+ SpinniesManager_1.default.fail('cleanupMessage', {
117
+ text: en_1.lib.LocalDevManager.exitingFail,
118
+ });
119
+ }
120
+ cleanupSuccess() {
121
+ SpinniesManager_1.default.succeed('cleanupMessage', {
122
+ text: en_1.lib.LocalDevManager.exitingSucceed,
123
+ });
124
+ }
125
+ uploadInitiated() {
126
+ logger_2.uiLogger.log(en_1.lib.LocalDevProcess.uploadInitiated);
127
+ }
128
+ projectConfigMismatch() {
129
+ logger_2.uiLogger.log(en_1.lib.LocalDevProcess.projectConfigMismatch);
130
+ }
131
+ uploadError(error) {
132
+ logger_1.logger.log('');
133
+ (0, errorHandlers_1.logError)(error);
134
+ logger_2.uiLogger.log(en_1.lib.LocalDevProcess.uploadFailed);
135
+ logger_1.logger.log('');
136
+ }
137
+ uploadSuccess() {
138
+ logger_1.logger.log('');
139
+ logger_2.uiLogger.log(en_1.lib.LocalDevProcess.uploadSuccess);
140
+ (0, ui_1.uiLine)();
141
+ logger_1.logger.log('');
142
+ }
143
+ monitorConsoleOutput() {
144
+ const originalStdoutWrite = process.stdout.write.bind(process.stdout);
145
+ function customStdoutWrite(chunk, encoding, callback) {
146
+ // Reset the most recently logged warning
147
+ if (this.mostRecentUploadWarning) {
148
+ this.mostRecentUploadWarning = null;
149
+ }
150
+ if (typeof encoding === 'function') {
151
+ return originalStdoutWrite(chunk, callback);
152
+ }
153
+ return originalStdoutWrite(chunk, encoding, callback);
154
+ }
155
+ customStdoutWrite.bind(this);
156
+ process.stdout.write = customStdoutWrite;
157
+ }
158
+ }
159
+ exports.default = LocalDevLogger;
@@ -2,7 +2,7 @@ import { FSWatcher } from 'chokidar';
2
2
  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/Config';
5
- import { Component, ProjectConfig } from '../types/Projects';
5
+ import { Component, ProjectConfig } from '../../../types/Projects';
6
6
  type LocalDevManagerConstructorOptions = {
7
7
  targetAccountId: number;
8
8
  parentAccountId: number;
@@ -6,31 +6,31 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const path_1 = __importDefault(require("path"));
7
7
  const chokidar_1 = __importDefault(require("chokidar"));
8
8
  const chalk_1 = __importDefault(require("chalk"));
9
- const logger_1 = require("@hubspot/local-dev-lib/logger");
10
9
  const localDevAuth_1 = require("@hubspot/local-dev-lib/api/localDevAuth");
11
10
  const appsDev_1 = require("@hubspot/local-dev-lib/api/appsDev");
12
11
  const config_1 = require("@hubspot/local-dev-lib/config");
13
- const constants_1 = require("./constants");
14
- const SpinniesManager_1 = __importDefault(require("./ui/SpinniesManager"));
12
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
13
+ const constants_1 = require("../../constants");
14
+ const SpinniesManager_1 = __importDefault(require("../../ui/SpinniesManager"));
15
15
  const DevServerManager_1 = __importDefault(require("./DevServerManager"));
16
- const exitCodes_1 = require("./enums/exitCodes");
17
- const urls_1 = require("./projects/urls");
18
- const localDev_1 = require("./localDev");
19
- const structure_1 = require("./projects/structure");
20
- const Projects_1 = require("../types/Projects");
21
- const ui_1 = require("./ui");
22
- const index_1 = require("./errorHandlers/index");
23
- const installPublicAppPrompt_1 = require("./prompts/installPublicAppPrompt");
24
- const promptUtils_1 = require("./prompts/promptUtils");
25
- const lang_1 = require("./lang");
26
- const process_1 = require("./process");
16
+ const exitCodes_1 = require("../../enums/exitCodes");
17
+ const helpers_1 = require("./helpers");
18
+ const structure_1 = require("../../projects/structure");
19
+ const Projects_1 = require("../../../types/Projects");
20
+ const ui_1 = require("../../ui");
21
+ const index_1 = require("../../errorHandlers/index");
22
+ const installAppPrompt_1 = require("../../prompts/installAppPrompt");
23
+ const promptUtils_1 = require("../../prompts/promptUtils");
24
+ const process_1 = require("../../process");
25
+ const en_1 = require("../../../lang/en");
26
+ const logger_2 = require("../../ui/logger");
27
+ const urls_1 = require("../../app/urls");
27
28
  const WATCH_EVENTS = {
28
29
  add: 'add',
29
30
  change: 'change',
30
31
  unlink: 'unlink',
31
32
  unlinkDir: 'unlinkDir',
32
33
  };
33
- const i18nKey = 'lib.LocalDevManager';
34
34
  class LocalDevManager {
35
35
  targetAccountId;
36
36
  targetProjectAccountId;
@@ -69,15 +69,13 @@ class LocalDevManager {
69
69
  this.mostRecentUploadWarning = null;
70
70
  this.projectSourceDir = path_1.default.join(this.projectDir, this.projectConfig.srcDir);
71
71
  if (!this.targetAccountId || !this.projectConfig || !this.projectDir) {
72
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.failedToInitialize`));
72
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.failedToInitialize);
73
73
  process.exit(exitCodes_1.EXIT_CODES.ERROR);
74
74
  }
75
75
  }
76
76
  async setActiveApp(appUid) {
77
77
  if (!appUid) {
78
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.missingUid`, {
79
- devCommand: (0, ui_1.uiCommandReference)('hs project dev'),
80
- }));
78
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.missingUid);
81
79
  process.exit(exitCodes_1.EXIT_CODES.ERROR);
82
80
  }
83
81
  this.activeApp =
@@ -115,14 +113,10 @@ class LocalDevManager {
115
113
  return;
116
114
  }
117
115
  (0, ui_1.uiLine)();
118
- logger_1.logger.warn((0, lang_1.i18n)(`${i18nKey}.activeInstallWarning.installCount`, {
119
- appName: this.activePublicAppData.name,
120
- installCount: this.publicAppActiveInstalls,
121
- accountText: this.publicAppActiveInstalls === 1 ? 'account' : 'accounts',
122
- }));
123
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.activeInstallWarning.explanation`));
116
+ logger_2.uiLogger.warn(en_1.lib.LocalDevManager.activeInstallWarning.installCount(this.activePublicAppData.name, this.publicAppActiveInstalls));
117
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.activeInstallWarning.explanation);
124
118
  (0, ui_1.uiLine)();
125
- const proceed = await (0, promptUtils_1.confirmPrompt)((0, lang_1.i18n)(`${i18nKey}.activeInstallWarning.confirmationPrompt`), { defaultAnswer: false });
119
+ const proceed = await (0, promptUtils_1.confirmPrompt)(en_1.lib.LocalDevManager.activeInstallWarning.confirmationPrompt, { defaultAnswer: false });
126
120
  if (!proceed) {
127
121
  process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
128
122
  }
@@ -132,12 +126,8 @@ class LocalDevManager {
132
126
  SpinniesManager_1.default.init();
133
127
  // Local dev currently relies on the existence of a deployed build in the target account
134
128
  if (!this.deployedBuild) {
135
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.noDeployedBuild`, {
136
- projectName: this.projectConfig.name,
137
- accountIdentifier: (0, ui_1.uiAccountDescription)(this.targetProjectAccountId),
138
- uploadCommand: this.getUploadCommand(),
139
- }));
140
- logger_1.logger.log();
129
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.noDeployedBuild(this.projectConfig.name, (0, ui_1.uiAccountDescription)(this.targetProjectAccountId), this.getUploadCommand()));
130
+ logger_2.uiLogger.log('');
141
131
  process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
142
132
  }
143
133
  const setupSucceeded = await this.devServerSetup();
@@ -147,21 +137,18 @@ class LocalDevManager {
147
137
  else if (!this.debug) {
148
138
  console.clear();
149
139
  }
150
- (0, ui_1.uiBetaTag)((0, lang_1.i18n)(`${i18nKey}.betaMessage`));
151
- logger_1.logger.log((0, ui_1.uiLink)((0, lang_1.i18n)(`${i18nKey}.learnMoreLocalDevServer`), 'https://developers.hubspot.com/docs/platform/project-cli-commands#start-a-local-development-server'));
152
- logger_1.logger.log();
153
- logger_1.logger.log(chalk_1.default.hex(ui_1.UI_COLORS.SORBET)((0, lang_1.i18n)(`${i18nKey}.running`, {
154
- accountIdentifier: (0, ui_1.uiAccountDescription)(this.targetAccountId),
155
- projectName: this.projectConfig.name,
156
- })));
157
- logger_1.logger.log((0, ui_1.uiLink)((0, lang_1.i18n)(`${i18nKey}.viewProjectLink`), (0, urls_1.getProjectDetailUrl)(this.projectConfig.name, this.targetProjectAccountId) || ''));
140
+ (0, ui_1.uiBetaTag)(en_1.lib.LocalDevManager.betaMessage);
141
+ logger_2.uiLogger.log((0, ui_1.uiLink)(en_1.lib.LocalDevManager.learnMoreLocalDevServer, 'https://developers.hubspot.com/docs/platform/project-cli-commands#start-a-local-development-server'));
142
+ logger_2.uiLogger.log('');
143
+ logger_2.uiLogger.log(chalk_1.default.hex(ui_1.UI_COLORS.SORBET)(en_1.lib.LocalDevManager.running(this.projectConfig.name, (0, ui_1.uiAccountDescription)(this.targetAccountId))));
144
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.viewProjectLink(this.projectConfig.name, this.targetProjectAccountId));
158
145
  if (this.activeApp?.type === Projects_1.ComponentTypes.PublicApp) {
159
- logger_1.logger.log((0, ui_1.uiLink)((0, lang_1.i18n)(`${i18nKey}.viewTestAccountLink`), (0, localDev_1.getAccountHomeUrl)(this.targetAccountId)));
146
+ logger_2.uiLogger.log((0, ui_1.uiLink)(en_1.lib.LocalDevManager.viewTestAccountLink, (0, helpers_1.getAccountHomeUrl)(this.targetAccountId)));
160
147
  }
161
- logger_1.logger.log();
162
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.quitHelper`));
148
+ logger_2.uiLogger.log('');
149
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.quitHelper);
163
150
  (0, ui_1.uiLine)();
164
- logger_1.logger.log();
151
+ logger_2.uiLogger.log('');
165
152
  await this.devServerStart();
166
153
  // Initialize project file watcher to detect configuration file changes
167
154
  this.startWatching();
@@ -174,7 +161,7 @@ class LocalDevManager {
174
161
  async stop(showProgress = true) {
175
162
  if (showProgress) {
176
163
  SpinniesManager_1.default.add('cleanupMessage', {
177
- text: (0, lang_1.i18n)(`${i18nKey}.exitingStart`),
164
+ text: en_1.lib.LocalDevManager.exitingStart,
178
165
  });
179
166
  }
180
167
  await this.stopWatching();
@@ -182,14 +169,14 @@ class LocalDevManager {
182
169
  if (!cleanupSucceeded) {
183
170
  if (showProgress) {
184
171
  SpinniesManager_1.default.fail('cleanupMessage', {
185
- text: (0, lang_1.i18n)(`${i18nKey}.exitingFail`),
172
+ text: en_1.lib.LocalDevManager.exitingFail,
186
173
  });
187
174
  }
188
175
  process.exit(exitCodes_1.EXIT_CODES.ERROR);
189
176
  }
190
177
  if (showProgress) {
191
178
  SpinniesManager_1.default.succeed('cleanupMessage', {
192
- text: (0, lang_1.i18n)(`${i18nKey}.exitingSucceed`),
179
+ text: en_1.lib.LocalDevManager.exitingSucceed,
193
180
  });
194
181
  }
195
182
  process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
@@ -201,7 +188,14 @@ class LocalDevManager {
201
188
  const { data: { isInstalledWithScopeGroups, previouslyAuthorizedScopeGroups }, } = await (0, localDevAuth_1.fetchAppInstallationData)(this.targetAccountId, this.projectId, this.activeApp.config.uid, this.activeApp.config.auth.requiredScopes, this.activeApp.config.auth.optionalScopes);
202
189
  const isReinstall = previouslyAuthorizedScopeGroups.length > 0;
203
190
  if (!isInstalledWithScopeGroups) {
204
- await (0, installPublicAppPrompt_1.installPublicAppPrompt)(this.env, this.targetAccountId, this.activePublicAppData.clientId, this.activeApp.config.auth.requiredScopes, this.activeApp.config.auth.redirectUrls, isReinstall);
191
+ const installUrl = (0, urls_1.getOauthAppInstallUrl)({
192
+ targetAccountId: this.targetAccountId,
193
+ env: this.env,
194
+ clientId: this.activePublicAppData.clientId,
195
+ scopes: this.activeApp.config.auth.requiredScopes,
196
+ redirectUrls: this.activeApp.config.auth.redirectUrls,
197
+ });
198
+ await (0, installAppPrompt_1.installAppBrowserPrompt)(installUrl, isReinstall);
205
199
  }
206
200
  }
207
201
  updateKeypressListeners() {
@@ -227,31 +221,22 @@ class LocalDevManager {
227
221
  (0, structure_1.componentIsPublicApp)(this.activeApp) &&
228
222
  this.publicAppActiveInstalls &&
229
223
  this.publicAppActiveInstalls > 0
230
- ? (0, lang_1.i18n)(`${i18nKey}.uploadWarning.defaultPublicAppWarning`, {
231
- installCount: this.publicAppActiveInstalls,
232
- installText: this.publicAppActiveInstalls === 1 ? 'install' : 'installs',
233
- })
234
- : (0, lang_1.i18n)(`${i18nKey}.uploadWarning.defaultWarning`);
224
+ ? en_1.lib.LocalDevManager.uploadWarning.defaultPublicAppWarning(this.publicAppActiveInstalls, this.publicAppActiveInstalls === 1 ? 'install' : 'installs')
225
+ : en_1.lib.LocalDevManager.uploadWarning.defaultWarning;
235
226
  }
236
227
  // Avoid logging the warning to the console if it is currently the most
237
228
  // recently logged warning. We do not want to spam the console with the same message.
238
229
  if (!this.uploadWarnings[warning]) {
239
- logger_1.logger.log();
240
- logger_1.logger.warn((0, lang_1.i18n)(`${i18nKey}.uploadWarning.header`, { warning }));
241
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.uploadWarning.stopDev`, {
242
- command: (0, ui_1.uiCommandReference)('hs project dev'),
243
- }));
230
+ logger_2.uiLogger.log('');
231
+ logger_2.uiLogger.warn(en_1.lib.LocalDevManager.uploadWarning.header(warning));
232
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.stopDev);
244
233
  if (this.isGithubLinked) {
245
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.uploadWarning.pushToGithub`));
234
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.pushToGithub);
246
235
  }
247
236
  else {
248
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.uploadWarning.runUpload`, {
249
- command: this.getUploadCommand(),
250
- }));
237
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.runUpload(this.getUploadCommand()));
251
238
  }
252
- logger_1.logger.log((0, lang_1.i18n)(`${i18nKey}.uploadWarning.restartDev`, {
253
- command: (0, ui_1.uiCommandReference)('hs project dev'),
254
- }));
239
+ logger_2.uiLogger.log(en_1.lib.LocalDevManager.uploadWarning.restartDev);
255
240
  this.mostRecentUploadWarning = warning;
256
241
  this.uploadWarnings[warning] = true;
257
242
  }
@@ -281,21 +266,19 @@ class LocalDevManager {
281
266
  if (Object.values(Projects_1.ComponentTypes).includes(type)) {
282
267
  const cardConfigs = (0, structure_1.getAppCardConfigs)(config, path);
283
268
  if (!deployedComponentNames.includes(config.name)) {
284
- missingComponents.push(`${(0, lang_1.i18n)(`${i18nKey}.uploadWarning.appLabel`)} ${config.name}`);
269
+ missingComponents.push(`${en_1.lib.LocalDevManager.uploadWarning.appLabel} ${config.name}`);
285
270
  }
286
271
  cardConfigs.forEach(cardConfig => {
287
272
  if (cardConfig.data &&
288
273
  cardConfig.data.title &&
289
274
  !deployedComponentNames.includes(cardConfig.data.title)) {
290
- missingComponents.push(`${(0, lang_1.i18n)(`${i18nKey}.uploadWarning.uiExtensionLabel`)} ${cardConfig.data.title}`);
275
+ missingComponents.push(`${en_1.lib.LocalDevManager.uploadWarning.uiExtensionLabel} ${cardConfig.data.title}`);
291
276
  }
292
277
  });
293
278
  }
294
279
  });
295
280
  if (missingComponents.length) {
296
- this.logUploadWarning((0, lang_1.i18n)(`${i18nKey}.uploadWarning.missingComponents`, {
297
- missingComponents: missingComponents.join(', '),
298
- }));
281
+ this.logUploadWarning(en_1.lib.LocalDevManager.uploadWarning.missingComponents(missingComponents.join(', ')));
299
282
  }
300
283
  }
301
284
  startWatching() {
@@ -348,9 +331,7 @@ class LocalDevManager {
348
331
  if (this.debug) {
349
332
  logger_1.logger.error(e);
350
333
  }
351
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.devServer.setupError`, {
352
- message: e instanceof Error ? e.message : '',
353
- }));
334
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.devServer.setupError(e instanceof Error ? e.message : ''));
354
335
  return false;
355
336
  }
356
337
  }
@@ -365,9 +346,7 @@ class LocalDevManager {
365
346
  if (this.debug) {
366
347
  logger_1.logger.error(e);
367
348
  }
368
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.devServer.startError`, {
369
- message: e instanceof Error ? e.message : '',
370
- }));
349
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.devServer.startError(e instanceof Error ? e.message : ''));
371
350
  process.exit(exitCodes_1.EXIT_CODES.ERROR);
372
351
  }
373
352
  }
@@ -379,9 +358,7 @@ class LocalDevManager {
379
358
  if (this.debug) {
380
359
  logger_1.logger.error(e);
381
360
  }
382
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.devServer.fileChangeError`, {
383
- message: e instanceof Error ? e.message : '',
384
- }));
361
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.devServer.fileChangeError(e instanceof Error ? e.message : ''));
385
362
  }
386
363
  }
387
364
  async devServerCleanup() {
@@ -393,12 +370,9 @@ class LocalDevManager {
393
370
  if (this.debug) {
394
371
  logger_1.logger.error(e);
395
372
  }
396
- logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.devServer.cleanupError`, {
397
- message: e instanceof Error ? e.message : '',
398
- }));
373
+ logger_2.uiLogger.error(en_1.lib.LocalDevManager.devServer.cleanupError(e instanceof Error ? e.message : ''));
399
374
  return false;
400
375
  }
401
376
  }
402
377
  }
403
378
  exports.default = LocalDevManager;
404
- module.exports = LocalDevManager;
@@ -0,0 +1,34 @@
1
+ import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types';
2
+ import LocalDevState from './LocalDevState';
3
+ import LocalDevLogger from './LocalDevLogger';
4
+ import { LocalDevStateConstructorOptions, LocalDevStateListener, LocalDevServerMessage } from '../../../types/LocalDev';
5
+ declare class LocalDevProcess {
6
+ private state;
7
+ private _logger;
8
+ private devServerManager;
9
+ constructor(options: LocalDevStateConstructorOptions);
10
+ get projectDir(): string;
11
+ get projectId(): number;
12
+ get projectName(): string;
13
+ get targetProjectAccountId(): number;
14
+ get targetTestingAccountId(): number;
15
+ get projectNodes(): {
16
+ [key: string]: IntermediateRepresentationNodeLocalDev;
17
+ };
18
+ get logger(): LocalDevLogger;
19
+ get configFilesUpdatedSinceLastUpload(): Set<string>;
20
+ private setupDevServers;
21
+ private startDevServers;
22
+ private cleanupDevServers;
23
+ private compareLocalProjectToDeployed;
24
+ private projectConfigValidForUpload;
25
+ private updateProjectNodes;
26
+ handleFileChange(filePath: string, event: string): Promise<void>;
27
+ handleConfigFileChange(filePath: string, event: string): Promise<void>;
28
+ start(): Promise<void>;
29
+ stop(showProgress?: boolean): Promise<void>;
30
+ uploadProject(): Promise<boolean>;
31
+ addStateListener<K extends keyof LocalDevState>(key: K, listener: LocalDevStateListener<K>, callOnInit?: boolean): void;
32
+ sendDevServerMessage(message: LocalDevServerMessage): void;
33
+ }
34
+ export default LocalDevProcess;