@hubspot/cli 7.7.21-experimental.0 → 7.7.21-experimental.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (570) hide show
  1. package/api/__tests__/migrate.test.js +29 -27
  2. package/api/migrate.js +22 -14
  3. package/bin/cli.js +101 -92
  4. package/bin/hs +2 -2
  5. package/bin/hscms +2 -2
  6. package/bin/silenceErrors.js +2 -1
  7. package/commands/__tests__/account.test.js +34 -29
  8. package/commands/__tests__/auth.test.js +16 -11
  9. package/commands/__tests__/cms.test.js +20 -15
  10. package/commands/__tests__/config.test.js +19 -14
  11. package/commands/__tests__/create.test.js +15 -10
  12. package/commands/__tests__/customObject.test.js +19 -14
  13. package/commands/__tests__/doctor.test.js +48 -43
  14. package/commands/__tests__/feedback.test.js +45 -7
  15. package/commands/__tests__/fetch.test.js +28 -29
  16. package/commands/__tests__/filemanager.test.js +19 -14
  17. package/commands/__tests__/function.test.js +21 -16
  18. package/commands/__tests__/getStarted.test.js +50 -55
  19. package/commands/__tests__/hubdb.test.js +22 -17
  20. package/commands/__tests__/init.test.js +17 -12
  21. package/commands/__tests__/lint.test.js +18 -13
  22. package/commands/__tests__/list.test.js +23 -18
  23. package/commands/__tests__/logs.test.js +27 -28
  24. package/commands/__tests__/mcp.test.js +19 -14
  25. package/commands/__tests__/mv.test.js +52 -14
  26. package/commands/__tests__/open.test.js +51 -13
  27. package/commands/__tests__/project.test.js +49 -44
  28. package/commands/__tests__/remove.test.js +51 -13
  29. package/commands/__tests__/sandbox.test.js +19 -14
  30. package/commands/__tests__/secret.test.js +21 -16
  31. package/commands/__tests__/testAccount.test.js +21 -16
  32. package/commands/__tests__/theme.test.js +20 -15
  33. package/commands/account/__tests__/auth.test.js +16 -11
  34. package/commands/account/__tests__/clean.test.js +17 -12
  35. package/commands/account/__tests__/createOverride.test.js +15 -10
  36. package/commands/account/__tests__/info.test.js +16 -11
  37. package/commands/account/__tests__/list.test.js +16 -11
  38. package/commands/account/__tests__/remove.test.js +18 -13
  39. package/commands/account/__tests__/removeOverride.js +13 -8
  40. package/commands/account/__tests__/rename.test.js +20 -15
  41. package/commands/account/__tests__/use.test.js +15 -10
  42. package/commands/account/auth.d.ts +1 -1
  43. package/commands/account/auth.js +67 -65
  44. package/commands/account/clean.d.ts +1 -1
  45. package/commands/account/clean.js +60 -55
  46. package/commands/account/createOverride.d.ts +1 -1
  47. package/commands/account/createOverride.js +57 -52
  48. package/commands/account/info.d.ts +1 -1
  49. package/commands/account/info.js +35 -33
  50. package/commands/account/list.d.ts +1 -1
  51. package/commands/account/list.js +45 -43
  52. package/commands/account/remove.d.ts +1 -1
  53. package/commands/account/remove.js +42 -37
  54. package/commands/account/removeOverride.d.ts +1 -1
  55. package/commands/account/removeOverride.js +43 -38
  56. package/commands/account/rename.d.ts +1 -1
  57. package/commands/account/rename.js +20 -18
  58. package/commands/account/use.d.ts +1 -1
  59. package/commands/account/use.js +31 -29
  60. package/commands/account.d.ts +1 -1
  61. package/commands/account.js +28 -23
  62. package/commands/app/__tests__/install.test.js +52 -0
  63. package/commands/app/__tests__/migrate.test.js +34 -29
  64. package/commands/app/install.d.ts +8 -0
  65. package/commands/app/install.js +127 -0
  66. package/commands/app/migrate.d.ts +2 -2
  67. package/commands/app/migrate.js +43 -40
  68. package/commands/app/secret/__tests__/add.test.js +11 -6
  69. package/commands/app/secret/__tests__/delete.test.js +11 -6
  70. package/commands/app/secret/__tests__/list.test.js +11 -6
  71. package/commands/app/secret/__tests__/update.test.js +11 -6
  72. package/commands/app/secret/add.d.ts +1 -1
  73. package/commands/app/secret/add.js +30 -28
  74. package/commands/app/secret/delete.d.ts +1 -1
  75. package/commands/app/secret/delete.js +36 -34
  76. package/commands/app/secret/list.d.ts +1 -1
  77. package/commands/app/secret/list.js +27 -25
  78. package/commands/app/secret/update.d.ts +1 -1
  79. package/commands/app/secret/update.js +34 -32
  80. package/commands/app/secret.d.ts +1 -1
  81. package/commands/app/secret.js +17 -12
  82. package/commands/app.d.ts +1 -1
  83. package/commands/app.js +16 -6
  84. package/commands/auth.d.ts +1 -1
  85. package/commands/auth.js +72 -70
  86. package/commands/cms/convertFields.d.ts +1 -1
  87. package/commands/cms/convertFields.js +39 -34
  88. package/commands/cms/getReactModule.d.ts +1 -1
  89. package/commands/cms/getReactModule.js +37 -32
  90. package/commands/cms/lighthouseScore.d.ts +1 -1
  91. package/commands/cms/lighthouseScore.js +72 -67
  92. package/commands/cms.d.ts +1 -1
  93. package/commands/cms.js +16 -11
  94. package/commands/completion.d.ts +1 -1
  95. package/commands/completion.js +15 -10
  96. package/commands/config/migrate.d.ts +1 -1
  97. package/commands/config/migrate.js +32 -27
  98. package/commands/config/set.d.ts +1 -1
  99. package/commands/config/set.js +25 -23
  100. package/commands/config.d.ts +1 -1
  101. package/commands/config.js +13 -8
  102. package/commands/create/api-sample.d.ts +1 -1
  103. package/commands/create/api-sample.js +33 -28
  104. package/commands/create/app.d.ts +1 -1
  105. package/commands/create/app.js +5 -3
  106. package/commands/create/function.d.ts +1 -1
  107. package/commands/create/function.js +11 -9
  108. package/commands/create/index.d.ts +1 -1
  109. package/commands/create/index.js +24 -19
  110. package/commands/create/module.d.ts +1 -1
  111. package/commands/create/module.js +14 -12
  112. package/commands/create/react-app.d.ts +1 -1
  113. package/commands/create/react-app.js +5 -3
  114. package/commands/create/template.d.ts +1 -1
  115. package/commands/create/template.js +14 -12
  116. package/commands/create/vue-app.d.ts +1 -1
  117. package/commands/create/vue-app.js +5 -3
  118. package/commands/create/webpack-serverless.d.ts +1 -1
  119. package/commands/create/webpack-serverless.js +5 -3
  120. package/commands/create/website-theme.d.ts +1 -1
  121. package/commands/create/website-theme.js +7 -5
  122. package/commands/create.d.ts +2 -2
  123. package/commands/create.js +35 -30
  124. package/commands/customObject/__tests__/create.test.js +18 -13
  125. package/commands/customObject/__tests__/schema.test.js +23 -18
  126. package/commands/customObject/create.d.ts +1 -1
  127. package/commands/customObject/create.js +30 -28
  128. package/commands/customObject/schema/__tests__/create.test.js +18 -13
  129. package/commands/customObject/schema/__tests__/delete.test.js +18 -13
  130. package/commands/customObject/schema/__tests__/fetch-all.test.js +18 -13
  131. package/commands/customObject/schema/__tests__/fetch.test.js +18 -13
  132. package/commands/customObject/schema/__tests__/list.test.js +18 -13
  133. package/commands/customObject/schema/__tests__/update.test.js +18 -13
  134. package/commands/customObject/schema/create.d.ts +1 -1
  135. package/commands/customObject/schema/create.js +30 -28
  136. package/commands/customObject/schema/delete.d.ts +1 -1
  137. package/commands/customObject/schema/delete.js +26 -24
  138. package/commands/customObject/schema/fetch-all.d.ts +1 -1
  139. package/commands/customObject/schema/fetch-all.js +24 -22
  140. package/commands/customObject/schema/fetch.d.ts +1 -1
  141. package/commands/customObject/schema/fetch.js +26 -24
  142. package/commands/customObject/schema/list.d.ts +1 -1
  143. package/commands/customObject/schema/list.js +15 -13
  144. package/commands/customObject/schema/update.d.ts +1 -1
  145. package/commands/customObject/schema/update.js +34 -32
  146. package/commands/customObject/schema.d.ts +1 -1
  147. package/commands/customObject/schema.js +22 -17
  148. package/commands/customObject.d.ts +1 -1
  149. package/commands/customObject.js +18 -13
  150. package/commands/doctor.d.ts +1 -1
  151. package/commands/doctor.js +33 -28
  152. package/commands/feedback.d.ts +1 -1
  153. package/commands/feedback.js +24 -19
  154. package/commands/fetch.d.ts +1 -1
  155. package/commands/fetch.js +30 -28
  156. package/commands/filemanager/__tests__/fetch.test.js +22 -17
  157. package/commands/filemanager/__tests__/upload.test.js +20 -15
  158. package/commands/filemanager/fetch.d.ts +1 -1
  159. package/commands/filemanager/fetch.js +25 -23
  160. package/commands/filemanager/upload.d.ts +1 -1
  161. package/commands/filemanager/upload.js +44 -39
  162. package/commands/filemanager.d.ts +1 -1
  163. package/commands/filemanager.js +13 -8
  164. package/commands/function/deploy.d.ts +1 -1
  165. package/commands/function/deploy.js +40 -35
  166. package/commands/function/list.d.ts +1 -1
  167. package/commands/function/list.js +29 -24
  168. package/commands/function/server.d.ts +1 -1
  169. package/commands/function/server.js +17 -15
  170. package/commands/function.d.ts +1 -1
  171. package/commands/function.js +18 -12
  172. package/commands/getStarted.d.ts +1 -1
  173. package/commands/getStarted.js +131 -140
  174. package/commands/hubdb/__tests__/clear.test.js +18 -13
  175. package/commands/hubdb/__tests__/create.test.js +18 -13
  176. package/commands/hubdb/__tests__/delete.test.js +18 -13
  177. package/commands/hubdb/__tests__/fetch.test.js +18 -13
  178. package/commands/hubdb/__tests__/list.test.js +28 -23
  179. package/commands/hubdb/clear.d.ts +1 -1
  180. package/commands/hubdb/clear.js +22 -20
  181. package/commands/hubdb/create.d.ts +1 -1
  182. package/commands/hubdb/create.js +35 -30
  183. package/commands/hubdb/delete.d.ts +1 -1
  184. package/commands/hubdb/delete.js +26 -24
  185. package/commands/hubdb/fetch.d.ts +1 -1
  186. package/commands/hubdb/fetch.js +19 -17
  187. package/commands/hubdb/list.d.ts +1 -1
  188. package/commands/hubdb/list.js +35 -33
  189. package/commands/hubdb.d.ts +1 -1
  190. package/commands/hubdb.js +24 -18
  191. package/commands/init.d.ts +1 -1
  192. package/commands/init.js +88 -83
  193. package/commands/lint.d.ts +1 -1
  194. package/commands/lint.js +26 -24
  195. package/commands/list.d.ts +1 -1
  196. package/commands/list.js +37 -32
  197. package/commands/logs.d.ts +1 -1
  198. package/commands/logs.js +37 -35
  199. package/commands/mcp/__tests__/setup.test.js +12 -7
  200. package/commands/mcp/__tests__/start.test.js +12 -7
  201. package/commands/mcp/setup.d.ts +1 -1
  202. package/commands/mcp/setup.js +20 -17
  203. package/commands/mcp/start.d.ts +5 -2
  204. package/commands/mcp/start.js +41 -31
  205. package/commands/mcp.d.ts +1 -1
  206. package/commands/mcp.js +12 -7
  207. package/commands/module/marketplace-validate.d.ts +1 -1
  208. package/commands/module/marketplace-validate.js +26 -21
  209. package/commands/module.d.ts +1 -1
  210. package/commands/module.js +13 -7
  211. package/commands/mv.d.ts +1 -1
  212. package/commands/mv.js +22 -20
  213. package/commands/open.d.ts +1 -1
  214. package/commands/open.js +21 -19
  215. package/commands/project/__tests__/add.test.js +15 -10
  216. package/commands/project/__tests__/create.test.js +19 -14
  217. package/commands/project/__tests__/deploy.test.js +143 -103
  218. package/commands/project/__tests__/devUnifiedFlow.test.js +157 -148
  219. package/commands/project/__tests__/download.test.js +19 -14
  220. package/commands/project/__tests__/installDeps.test.js +70 -32
  221. package/commands/project/__tests__/listBuilds.test.js +19 -14
  222. package/commands/project/__tests__/logs.test.js +94 -56
  223. package/commands/project/__tests__/migrate.test.js +30 -25
  224. package/commands/project/__tests__/migrateApp.test.js +22 -17
  225. package/commands/project/__tests__/open.test.js +21 -16
  226. package/commands/project/__tests__/profile.test.js +19 -14
  227. package/commands/project/__tests__/upload.test.js +23 -18
  228. package/commands/project/__tests__/watch.test.js +19 -14
  229. package/commands/project/add.d.ts +1 -1
  230. package/commands/project/add.js +36 -34
  231. package/commands/project/cloneApp.d.ts +1 -1
  232. package/commands/project/cloneApp.js +72 -67
  233. package/commands/project/create.d.ts +2 -2
  234. package/commands/project/create.js +68 -63
  235. package/commands/project/deploy.d.ts +3 -2
  236. package/commands/project/deploy.js +102 -91
  237. package/commands/project/dev/deprecatedFlow.d.ts +2 -2
  238. package/commands/project/dev/deprecatedFlow.js +58 -52
  239. package/commands/project/dev/index.d.ts +1 -1
  240. package/commands/project/dev/index.js +47 -44
  241. package/commands/project/dev/unifiedFlow.d.ts +3 -3
  242. package/commands/project/dev/unifiedFlow.js +74 -67
  243. package/commands/project/download.d.ts +1 -1
  244. package/commands/project/download.js +40 -35
  245. package/commands/project/installDeps.d.ts +1 -1
  246. package/commands/project/installDeps.js +34 -29
  247. package/commands/project/listBuilds.d.ts +1 -1
  248. package/commands/project/listBuilds.js +45 -40
  249. package/commands/project/logs.d.ts +1 -1
  250. package/commands/project/logs.js +54 -52
  251. package/commands/project/migrate.d.ts +1 -1
  252. package/commands/project/migrate.js +26 -24
  253. package/commands/project/migrateApp.d.ts +2 -2
  254. package/commands/project/migrateApp.js +20 -18
  255. package/commands/project/open.d.ts +1 -1
  256. package/commands/project/open.js +30 -25
  257. package/commands/project/profile/add.d.ts +1 -1
  258. package/commands/project/profile/add.js +73 -68
  259. package/commands/project/profile/delete.d.ts +1 -1
  260. package/commands/project/profile/delete.js +56 -51
  261. package/commands/project/profile.d.ts +1 -1
  262. package/commands/project/profile.js +14 -9
  263. package/commands/project/upload.d.ts +1 -1
  264. package/commands/project/upload.js +55 -50
  265. package/commands/project/validate.d.ts +1 -1
  266. package/commands/project/validate.js +40 -35
  267. package/commands/project/watch.d.ts +1 -1
  268. package/commands/project/watch.js +61 -59
  269. package/commands/project.d.ts +1 -1
  270. package/commands/project.js +43 -38
  271. package/commands/remove.d.ts +1 -1
  272. package/commands/remove.js +17 -15
  273. package/commands/sandbox/__tests__/create.test.js +20 -15
  274. package/commands/sandbox/__tests__/delete.test.js +20 -15
  275. package/commands/sandbox/create.d.ts +1 -1
  276. package/commands/sandbox/create.js +69 -67
  277. package/commands/sandbox/delete.d.ts +1 -1
  278. package/commands/sandbox/delete.js +96 -94
  279. package/commands/sandbox.d.ts +1 -1
  280. package/commands/sandbox.js +14 -9
  281. package/commands/secret/__tests__/addSecret.test.js +18 -13
  282. package/commands/secret/__tests__/deleteSecret.test.js +18 -13
  283. package/commands/secret/__tests__/listSecret.test.js +18 -13
  284. package/commands/secret/__tests__/updateSecret.test.js +18 -13
  285. package/commands/secret/addSecret.d.ts +1 -1
  286. package/commands/secret/addSecret.js +28 -26
  287. package/commands/secret/deleteSecret.d.ts +1 -1
  288. package/commands/secret/deleteSecret.js +29 -27
  289. package/commands/secret/listSecret.d.ts +1 -1
  290. package/commands/secret/listSecret.js +21 -19
  291. package/commands/secret/updateSecret.d.ts +1 -1
  292. package/commands/secret/updateSecret.js +27 -25
  293. package/commands/secret.d.ts +1 -1
  294. package/commands/secret.js +18 -13
  295. package/commands/testAccount/__tests__/create.test.js +22 -17
  296. package/commands/testAccount/__tests__/createConfig.test.js +11 -9
  297. package/commands/testAccount/__tests__/delete.test.js +20 -15
  298. package/commands/testAccount/create.d.ts +1 -1
  299. package/commands/testAccount/create.js +57 -62
  300. package/commands/testAccount/createConfig.d.ts +1 -3
  301. package/commands/testAccount/createConfig.js +47 -43
  302. package/commands/testAccount/delete.d.ts +1 -1
  303. package/commands/testAccount/delete.js +19 -17
  304. package/commands/testAccount.d.ts +1 -1
  305. package/commands/testAccount.js +15 -10
  306. package/commands/theme/__tests__/generate-selectors.test.js +12 -7
  307. package/commands/theme/__tests__/marketplace-validate.test.js +19 -14
  308. package/commands/theme/__tests__/preview.test.js +17 -12
  309. package/commands/theme/generate-selectors.d.ts +1 -1
  310. package/commands/theme/generate-selectors.js +28 -23
  311. package/commands/theme/marketplace-validate.d.ts +1 -1
  312. package/commands/theme/marketplace-validate.js +24 -19
  313. package/commands/theme/preview.d.ts +1 -1
  314. package/commands/theme/preview.js +65 -60
  315. package/commands/theme.d.ts +1 -1
  316. package/commands/theme.js +16 -11
  317. package/commands/upload.d.ts +1 -1
  318. package/commands/upload.js +82 -77
  319. package/commands/watch.d.ts +1 -1
  320. package/commands/watch.js +51 -45
  321. package/lang/en.d.ts +62 -23
  322. package/lang/en.js +434 -389
  323. package/lang/en.lyaml +0 -26
  324. package/lib/__tests__/accountTypes.test.js +22 -20
  325. package/lib/__tests__/buildAccount.test.js +90 -27
  326. package/lib/__tests__/commonOpts.test.js +22 -20
  327. package/lib/__tests__/dependencyManagement.test.js +51 -46
  328. package/lib/__tests__/developerTestAccounts.test.js +62 -27
  329. package/lib/__tests__/hasFeature.test.js +8 -6
  330. package/lib/__tests__/npm.test.js +20 -15
  331. package/lib/__tests__/oauth.test.js +28 -23
  332. package/lib/__tests__/parsing.test.js +20 -18
  333. package/lib/__tests__/polling.test.js +26 -24
  334. package/lib/__tests__/process.test.js +19 -14
  335. package/lib/__tests__/projectProfiles.test.js +39 -34
  336. package/lib/__tests__/sandboxSync.test.js +35 -30
  337. package/lib/__tests__/sandboxes.test.js +31 -29
  338. package/lib/__tests__/serverlessLogs.test.js +13 -8
  339. package/lib/__tests__/usageTracking.test.js +42 -47
  340. package/lib/__tests__/validation.test.js +20 -18
  341. package/lib/__tests__/yargsUtils.test.js +41 -6
  342. package/lib/accountTypes.js +34 -24
  343. package/lib/app/__tests__/migrate.test.js +99 -94
  344. package/lib/app/__tests__/migrate_legacy.test.js +31 -29
  345. package/lib/app/migrate.d.ts +3 -3
  346. package/lib/app/migrate.js +145 -127
  347. package/lib/app/migrate_legacy.d.ts +1 -1
  348. package/lib/app/migrate_legacy.js +78 -72
  349. package/lib/app/urls.js +9 -5
  350. package/lib/buildAccount.d.ts +8 -2
  351. package/lib/buildAccount.js +119 -61
  352. package/lib/commonOpts.d.ts +1 -1
  353. package/lib/commonOpts.js +59 -42
  354. package/lib/configMigrate.js +38 -34
  355. package/lib/configOptions.js +40 -34
  356. package/lib/constants.js +34 -31
  357. package/lib/customObject.js +6 -2
  358. package/lib/dependencyManagement.js +45 -37
  359. package/lib/developerTestAccounts.d.ts +1 -1
  360. package/lib/developerTestAccounts.js +39 -34
  361. package/lib/doctor/Diagnosis.d.ts +1 -1
  362. package/lib/doctor/Diagnosis.js +29 -25
  363. package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
  364. package/lib/doctor/DiagnosticInfoBuilder.js +37 -30
  365. package/lib/doctor/Doctor.d.ts +1 -1
  366. package/lib/doctor/Doctor.js +101 -94
  367. package/lib/doctor/__tests__/Diagnosis.test.js +14 -9
  368. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +34 -29
  369. package/lib/doctor/__tests__/Doctor.test.js +26 -24
  370. package/lib/enums/exitCodes.js +4 -1
  371. package/lib/errorHandlers/index.js +41 -32
  372. package/lib/errorHandlers/suppressError.d.ts +1 -1
  373. package/lib/errorHandlers/suppressError.js +31 -28
  374. package/lib/filesystem.js +15 -8
  375. package/lib/generateSelectors.js +29 -18
  376. package/lib/hasFeature.d.ts +1 -1
  377. package/lib/hasFeature.js +6 -3
  378. package/lib/interpolation.js +18 -11
  379. package/lib/lang.d.ts +1 -1
  380. package/lib/lang.js +27 -22
  381. package/lib/links.js +24 -16
  382. package/lib/marketplaceValidate.js +39 -29
  383. package/lib/mcp/setup.js +105 -72
  384. package/lib/middleware/__test__/configMiddleware.test.js +55 -20
  385. package/lib/middleware/__test__/gitMiddleware.test.js +42 -7
  386. package/lib/middleware/__test__/notificationsMiddleware.test.js +4 -2
  387. package/lib/middleware/__test__/requestMiddleware.test.js +11 -6
  388. package/lib/middleware/__test__/utils.test.js +11 -9
  389. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +44 -9
  390. package/lib/middleware/autoUpdateMiddleware.js +40 -33
  391. package/lib/middleware/configMiddleware.js +42 -36
  392. package/lib/middleware/fireAlarmMiddleware.js +18 -12
  393. package/lib/middleware/gitMiddleware.js +8 -5
  394. package/lib/middleware/notificationsMiddleware.js +23 -16
  395. package/lib/middleware/requestMiddleware.js +10 -4
  396. package/lib/middleware/utils.js +4 -1
  397. package/lib/middleware/yargsChecksMiddleware.js +13 -10
  398. package/lib/npm.js +23 -14
  399. package/lib/oauth.js +35 -29
  400. package/lib/parsing.js +6 -3
  401. package/lib/polling.js +15 -11
  402. package/lib/process.js +19 -11
  403. package/lib/projectProfiles.d.ts +2 -2
  404. package/lib/projectProfiles.js +42 -32
  405. package/lib/projects/ProjectLogsManager.js +21 -18
  406. package/lib/projects/__tests__/AppDevModeInterface.test.js +145 -140
  407. package/lib/projects/__tests__/LocalDevProcess.test.js +73 -68
  408. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +37 -32
  409. package/lib/projects/__tests__/ProjectLogsManager.test.js +58 -56
  410. package/lib/projects/__tests__/buildAndDeploy.test.js +9 -7
  411. package/lib/projects/__tests__/components.test.js +14 -9
  412. package/lib/projects/__tests__/projects.test.js +40 -35
  413. package/lib/projects/__tests__/structure.test.js +81 -43
  414. package/lib/projects/add/__tests__/legacyAddComponent.test.js +28 -26
  415. package/lib/projects/add/__tests__/v3AddComponent.test.js +30 -25
  416. package/lib/projects/add/legacyAddComponent.d.ts +1 -1
  417. package/lib/projects/add/legacyAddComponent.js +30 -24
  418. package/lib/projects/add/v3AddComponent.d.ts +1 -1
  419. package/lib/projects/add/v3AddComponent.js +42 -36
  420. package/lib/projects/buildAndDeploy.d.ts +1 -1
  421. package/lib/projects/buildAndDeploy.js +97 -88
  422. package/lib/projects/components.js +25 -19
  423. package/lib/projects/config.d.ts +1 -1
  424. package/lib/projects/config.js +41 -32
  425. package/lib/projects/create/__tests__/legacy.test.js +57 -22
  426. package/lib/projects/create/__tests__/v3.test.js +7 -5
  427. package/lib/projects/create/index.d.ts +3 -3
  428. package/lib/projects/create/index.js +22 -19
  429. package/lib/projects/create/legacy.d.ts +1 -1
  430. package/lib/projects/create/legacy.js +31 -25
  431. package/lib/projects/create/v3.d.ts +3 -3
  432. package/lib/projects/create/v3.js +59 -49
  433. package/lib/projects/ensureProjectExists.js +37 -31
  434. package/lib/projects/localDev/AppDevModeInterface.d.ts +3 -3
  435. package/lib/projects/localDev/AppDevModeInterface.js +60 -58
  436. package/lib/projects/localDev/DevServerManager.d.ts +1 -1
  437. package/lib/projects/localDev/DevServerManager.js +24 -24
  438. package/lib/projects/localDev/DevServerManagerV2.d.ts +2 -2
  439. package/lib/projects/localDev/DevServerManagerV2.js +20 -17
  440. package/lib/projects/localDev/LocalDevLogger.d.ts +1 -1
  441. package/lib/projects/localDev/LocalDevLogger.js +64 -59
  442. package/lib/projects/localDev/LocalDevManager.d.ts +1 -1
  443. package/lib/projects/localDev/LocalDevManager.js +111 -106
  444. package/lib/projects/localDev/LocalDevProcess.d.ts +4 -4
  445. package/lib/projects/localDev/LocalDevProcess.js +30 -25
  446. package/lib/projects/localDev/LocalDevState.d.ts +3 -3
  447. package/lib/projects/localDev/LocalDevState.js +5 -3
  448. package/lib/projects/localDev/LocalDevWatcher.d.ts +1 -1
  449. package/lib/projects/localDev/LocalDevWatcher.js +11 -6
  450. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +1 -1
  451. package/lib/projects/localDev/LocalDevWebsocketServer.js +27 -25
  452. package/lib/projects/localDev/helpers.d.ts +4 -4
  453. package/lib/projects/localDev/helpers.js +174 -156
  454. package/lib/projects/structure.d.ts +4 -4
  455. package/lib/projects/structure.js +78 -32
  456. package/lib/projects/ui.js +13 -10
  457. package/lib/projects/upload.d.ts +3 -2
  458. package/lib/projects/upload.js +65 -55
  459. package/lib/projects/urls.js +24 -14
  460. package/lib/projects/watch.d.ts +1 -1
  461. package/lib/projects/watch.js +54 -48
  462. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +11 -9
  463. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +16 -11
  464. package/lib/prompts/accountNamePrompt.d.ts +1 -1
  465. package/lib/prompts/accountNamePrompt.js +31 -26
  466. package/lib/prompts/accountsPrompt.js +15 -12
  467. package/lib/prompts/cmsFieldPrompt.js +19 -13
  468. package/lib/prompts/createApiSamplePrompt.d.ts +1 -1
  469. package/lib/prompts/createApiSamplePrompt.js +12 -9
  470. package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +11 -10
  471. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +88 -43
  472. package/lib/prompts/createFunctionPrompt.js +20 -17
  473. package/lib/prompts/createModulePrompt.js +15 -12
  474. package/lib/prompts/createTemplatePrompt.js +8 -5
  475. package/lib/prompts/downloadProjectPrompt.js +20 -17
  476. package/lib/prompts/installAppPrompt.js +26 -19
  477. package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -2
  478. package/lib/prompts/personalAccessKeyPrompt.js +47 -40
  479. package/lib/prompts/previewPrompt.js +22 -15
  480. package/lib/prompts/projectAddPrompt.d.ts +1 -1
  481. package/lib/prompts/projectAddPrompt.js +18 -14
  482. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -1
  483. package/lib/prompts/projectDevTargetAccountPrompt.js +54 -48
  484. package/lib/prompts/projectNameAndDestPrompt.d.ts +1 -1
  485. package/lib/prompts/projectNameAndDestPrompt.js +29 -22
  486. package/lib/prompts/projectNamePrompt.js +14 -11
  487. package/lib/prompts/projectsLogsPrompt.js +8 -5
  488. package/lib/prompts/promptUtils.d.ts +1 -1
  489. package/lib/prompts/promptUtils.js +87 -70
  490. package/lib/prompts/sandboxesPrompt.d.ts +1 -1
  491. package/lib/prompts/sandboxesPrompt.js +30 -26
  492. package/lib/prompts/secretPrompt.js +15 -10
  493. package/lib/prompts/selectAppPrompt.js +14 -11
  494. package/lib/prompts/selectHubDBTablePrompt.js +30 -24
  495. package/lib/prompts/selectProjectTemplatePrompt.d.ts +1 -1
  496. package/lib/prompts/selectProjectTemplatePrompt.js +13 -10
  497. package/lib/prompts/selectPublicAppForMigrationPrompt.js +25 -22
  498. package/lib/prompts/setAsDefaultAccountPrompt.js +16 -13
  499. package/lib/prompts/uploadPrompt.js +17 -11
  500. package/lib/sandboxSync.d.ts +1 -1
  501. package/lib/sandboxSync.js +65 -58
  502. package/lib/sandboxes.d.ts +1 -1
  503. package/lib/sandboxes.js +76 -68
  504. package/lib/schema.js +23 -12
  505. package/lib/serverlessLogs.js +52 -45
  506. package/lib/testUtils.js +8 -4
  507. package/lib/ui/SpinniesManager.d.ts +1 -1
  508. package/lib/ui/SpinniesManager.js +34 -29
  509. package/lib/ui/boxen.js +14 -11
  510. package/lib/ui/git.js +20 -14
  511. package/lib/ui/index.js +74 -56
  512. package/lib/ui/logger.js +13 -10
  513. package/lib/ui/serverlessFunctionLogs.js +20 -14
  514. package/lib/ui/spinniesUtils.js +39 -24
  515. package/lib/ui/supportHyperlinks.js +6 -3
  516. package/lib/ui/supportsColor.js +17 -11
  517. package/lib/ui/table.js +13 -6
  518. package/lib/upload.js +21 -15
  519. package/lib/usageTracking.d.ts +11 -0
  520. package/lib/usageTracking.js +95 -95
  521. package/lib/utils/hasFlag.js +8 -2
  522. package/lib/validation.js +87 -48
  523. package/lib/yargsUtils.d.ts +1 -1
  524. package/lib/yargsUtils.js +16 -13
  525. package/mcp-server/server.js +8 -6
  526. package/mcp-server/tools/index.js +16 -13
  527. package/mcp-server/tools/project/AddFeatureToProject.d.ts +1 -1
  528. package/mcp-server/tools/project/AddFeatureToProject.js +41 -34
  529. package/mcp-server/tools/project/CreateProjectTool.d.ts +3 -3
  530. package/mcp-server/tools/project/CreateProjectTool.js +52 -45
  531. package/mcp-server/tools/project/DeployProject.d.ts +1 -1
  532. package/mcp-server/tools/project/DeployProject.js +24 -17
  533. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +1 -1
  534. package/mcp-server/tools/project/GuidedWalkthroughTool.js +27 -20
  535. package/mcp-server/tools/project/UploadProjectTools.d.ts +1 -1
  536. package/mcp-server/tools/project/UploadProjectTools.js +21 -11
  537. package/mcp-server/tools/project/ValidateProjectTool.d.ts +1 -1
  538. package/mcp-server/tools/project/ValidateProjectTool.js +19 -12
  539. package/mcp-server/tools/project/__tests__/AddFeatureToProject.test.js +15 -12
  540. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +16 -13
  541. package/mcp-server/tools/project/__tests__/DeployProject.test.js +9 -6
  542. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +7 -4
  543. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +7 -4
  544. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +7 -4
  545. package/mcp-server/tools/project/constants.js +9 -3
  546. package/mcp-server/types.js +5 -1
  547. package/mcp-server/utils/__tests__/command.test.js +11 -9
  548. package/mcp-server/utils/__tests__/project.test.js +26 -18
  549. package/mcp-server/utils/command.d.ts +1 -1
  550. package/mcp-server/utils/command.js +11 -4
  551. package/mcp-server/utils/content.d.ts +1 -1
  552. package/mcp-server/utils/content.js +6 -2
  553. package/mcp-server/utils/project.js +17 -8
  554. package/mcp-server/utils/toolUsageTracking.d.ts +1 -0
  555. package/mcp-server/utils/toolUsageTracking.js +25 -0
  556. package/package.json +13 -17
  557. package/types/{cms.d.ts → Cms.d.ts} +1 -1
  558. package/types/Cms.js +2 -0
  559. package/types/LocalDev.d.ts +4 -4
  560. package/types/LocalDev.js +2 -1
  561. package/types/ProjectComponents.d.ts +2 -2
  562. package/types/ProjectComponents.js +2 -1
  563. package/types/Projects.d.ts +1 -1
  564. package/types/Projects.js +5 -2
  565. package/types/Prompts.js +2 -1
  566. package/types/Sandboxes.js +2 -0
  567. package/types/Yargs.js +2 -1
  568. package/types/sandboxes.js +0 -1
  569. /package/{types/cms.js → commands/app/__tests__/install.test.d.ts} +0 -0
  570. /package/types/{sandboxes.d.ts → Sandboxes.d.ts} +0 -0
@@ -1,144 +1,162 @@
1
- import { HUBSPOT_ACCOUNT_TYPES, HUBSPOT_ACCOUNT_TYPE_STRINGS, } from '@hubspot/local-dev-lib/constants/config';
2
- import { isMissingScopeError, isSpecifiedError, } from '@hubspot/local-dev-lib/errors/index';
3
- import { getHubSpotWebsiteOrigin } from '@hubspot/local-dev-lib/urls';
4
- import { getAccountConfig, getEnv } from '@hubspot/local-dev-lib/config';
5
- import { createProject } from '@hubspot/local-dev-lib/api/projects';
6
- import { ENVIRONMENTS } from '@hubspot/local-dev-lib/constants/environments';
7
- import { PERSONAL_ACCESS_KEY_AUTH_METHOD } from '@hubspot/local-dev-lib/constants/auth';
8
- import { getAccountIdentifier } from '@hubspot/local-dev-lib/config/getAccountIdentifier';
9
- import { getSandboxUsageLimits } from '@hubspot/local-dev-lib/api/sandboxHubs';
10
- import { confirmDefaultAccountPrompt, selectSandboxTargetAccountPrompt, selectDeveloperTestTargetAccountPrompt, confirmUseExistingDeveloperTestAccountPrompt, } from '../../prompts/projectDevTargetAccountPrompt.js';
11
- import { confirmPrompt, listPrompt } from '../../prompts/promptUtils.js';
12
- import { validateSandboxUsageLimits, getAvailableSyncTypes, } from '../../sandboxes.js';
13
- import { syncSandbox } from '../../sandboxSync.js';
14
- import { validateDevTestAccountUsageLimits } from '../../developerTestAccounts.js';
15
- import { uiLine, uiAccountDescription } from '../../ui/index.js';
16
- import SpinniesManager from '../../ui/SpinniesManager.js';
17
- import { EXIT_CODES } from '../../enums/exitCodes.js';
18
- import { trackCommandMetadataUsage } from '../../usageTracking.js';
19
- import { isAppDeveloperAccount, isDeveloperTestAccount, isUnifiedAccount, } from '../../accountTypes.js';
20
- import { handleProjectUpload } from '../../projects/upload.js';
21
- import { pollProjectBuildAndDeploy } from '../../projects/buildAndDeploy.js';
22
- import { PROJECT_ERROR_TYPES, PROJECT_BUILD_TEXT, PROJECT_DEPLOY_TEXT, } from '../../constants.js';
23
- import { logError, ApiErrorContext, debugError, } from '../../errorHandlers/index.js';
24
- import { buildSandbox, buildDeveloperTestAccount, saveAccountToConfig, } from '../../buildAccount.js';
25
- import { hubspotAccountNamePrompt } from '../../prompts/accountNamePrompt.js';
26
- import { lib } from '../../../lang/en.js';
27
- import { uiLogger } from '../../ui/logger.js';
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
+ exports.confirmDefaultAccountIsTarget = confirmDefaultAccountIsTarget;
7
+ exports.checkIfDefaultAccountIsSupported = checkIfDefaultAccountIsSupported;
8
+ exports.checkIfParentAccountIsAuthed = checkIfParentAccountIsAuthed;
9
+ exports.checkIfAccountFlagIsSupported = checkIfAccountFlagIsSupported;
10
+ exports.suggestRecommendedNestedAccount = suggestRecommendedNestedAccount;
11
+ exports.createSandboxForLocalDev = createSandboxForLocalDev;
12
+ exports.createDeveloperTestAccountForLocalDev = createDeveloperTestAccountForLocalDev;
13
+ exports.useExistingDevTestAccount = useExistingDevTestAccount;
14
+ exports.createNewProjectForLocalDev = createNewProjectForLocalDev;
15
+ exports.createInitialBuildForNewProject = createInitialBuildForNewProject;
16
+ exports.getAccountHomeUrl = getAccountHomeUrl;
17
+ exports.hasSandboxes = hasSandboxes;
18
+ exports.selectAccountTypePrompt = selectAccountTypePrompt;
19
+ const config_1 = require("@hubspot/local-dev-lib/constants/config");
20
+ const index_1 = require("@hubspot/local-dev-lib/errors/index");
21
+ const urls_1 = require("@hubspot/local-dev-lib/urls");
22
+ const config_2 = require("@hubspot/local-dev-lib/config");
23
+ const projects_1 = require("@hubspot/local-dev-lib/api/projects");
24
+ const environments_1 = require("@hubspot/local-dev-lib/constants/environments");
25
+ const auth_1 = require("@hubspot/local-dev-lib/constants/auth");
26
+ const getAccountIdentifier_1 = require("@hubspot/local-dev-lib/config/getAccountIdentifier");
27
+ const sandboxHubs_1 = require("@hubspot/local-dev-lib/api/sandboxHubs");
28
+ const projectDevTargetAccountPrompt_1 = require("../../prompts/projectDevTargetAccountPrompt");
29
+ const promptUtils_1 = require("../../prompts/promptUtils");
30
+ const sandboxes_1 = require("../../sandboxes");
31
+ const sandboxSync_1 = require("../../sandboxSync");
32
+ const developerTestAccounts_1 = require("../../developerTestAccounts");
33
+ const ui_1 = require("../../ui");
34
+ const SpinniesManager_1 = __importDefault(require("../../ui/SpinniesManager"));
35
+ const exitCodes_1 = require("../../enums/exitCodes");
36
+ const usageTracking_1 = require("../../usageTracking");
37
+ const accountTypes_1 = require("../../accountTypes");
38
+ const upload_1 = require("../../projects/upload");
39
+ const buildAndDeploy_1 = require("../../projects/buildAndDeploy");
40
+ const constants_1 = require("../../constants");
41
+ const index_2 = require("../../errorHandlers/index");
42
+ const buildAccount_1 = require("../../buildAccount");
43
+ const accountNamePrompt_1 = require("../../prompts/accountNamePrompt");
44
+ const en_1 = require("../../../lang/en");
45
+ const logger_1 = require("../../ui/logger");
28
46
  // If the user passed in the --account flag, confirm they want to use that account as
29
47
  // their target account, otherwise exit
30
- export async function confirmDefaultAccountIsTarget(accountConfig) {
48
+ async function confirmDefaultAccountIsTarget(accountConfig) {
31
49
  if (!accountConfig.name || !accountConfig.accountType) {
32
- uiLogger.error(lib.localDevHelpers.confirmDefaultAccountIsTarget.configError);
33
- process.exit(EXIT_CODES.ERROR);
50
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.confirmDefaultAccountIsTarget.configError);
51
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
34
52
  }
35
- uiLogger.log('');
36
- const useDefaultAccount = await confirmDefaultAccountPrompt(accountConfig.name, HUBSPOT_ACCOUNT_TYPE_STRINGS[accountConfig.accountType]);
53
+ logger_1.uiLogger.log('');
54
+ const useDefaultAccount = await (0, projectDevTargetAccountPrompt_1.confirmDefaultAccountPrompt)(accountConfig.name, config_1.HUBSPOT_ACCOUNT_TYPE_STRINGS[accountConfig.accountType]);
37
55
  if (!useDefaultAccount) {
38
- uiLogger.log(lib.localDevHelpers.confirmDefaultAccountIsTarget
56
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.confirmDefaultAccountIsTarget
39
57
  .declineDefaultAccountExplanation);
40
- process.exit(EXIT_CODES.SUCCESS);
58
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
41
59
  }
42
60
  }
43
61
  // Confirm the default account is supported for the type of apps being developed
44
- export async function checkIfDefaultAccountIsSupported(accountConfig, hasPublicApps) {
45
- const defaultAccountIsUnified = await isUnifiedAccount(accountConfig);
62
+ async function checkIfDefaultAccountIsSupported(accountConfig, hasPublicApps) {
63
+ const defaultAccountIsUnified = await (0, accountTypes_1.isUnifiedAccount)(accountConfig);
46
64
  if (hasPublicApps &&
47
- !(isAppDeveloperAccount(accountConfig) ||
48
- isDeveloperTestAccount(accountConfig) ||
65
+ !((0, accountTypes_1.isAppDeveloperAccount)(accountConfig) ||
66
+ (0, accountTypes_1.isDeveloperTestAccount)(accountConfig) ||
49
67
  defaultAccountIsUnified)) {
50
- uiLogger.error(lib.localDevHelpers.checkIfDefaultAccountIsSupported.publicApp);
51
- process.exit(EXIT_CODES.SUCCESS);
68
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.checkIfDefaultAccountIsSupported.publicApp);
69
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
52
70
  }
53
- else if (!hasPublicApps && isAppDeveloperAccount(accountConfig)) {
54
- uiLogger.error(lib.localDevHelpers.checkIfDefaultAccountIsSupported.privateApp);
55
- process.exit(EXIT_CODES.SUCCESS);
71
+ else if (!hasPublicApps && (0, accountTypes_1.isAppDeveloperAccount)(accountConfig)) {
72
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.checkIfDefaultAccountIsSupported.privateApp);
73
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
56
74
  }
57
75
  }
58
- export function checkIfParentAccountIsAuthed(accountConfig) {
76
+ function checkIfParentAccountIsAuthed(accountConfig) {
59
77
  if (!accountConfig.parentAccountId ||
60
- !getAccountConfig(accountConfig.parentAccountId)) {
61
- uiLogger.error(lib.localDevHelpers.checkIfParentAccountIsAuthed.notAuthedError(accountConfig.parentAccountId || '', uiAccountDescription(getAccountIdentifier(accountConfig))));
62
- process.exit(EXIT_CODES.SUCCESS);
78
+ !(0, config_2.getAccountConfig)(accountConfig.parentAccountId)) {
79
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.checkIfParentAccountIsAuthed.notAuthedError(accountConfig.parentAccountId || '', (0, ui_1.uiAccountDescription)((0, getAccountIdentifier_1.getAccountIdentifier)(accountConfig))));
80
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
63
81
  }
64
82
  }
65
83
  // Confirm the default account is a developer account if developing public apps
66
- export function checkIfAccountFlagIsSupported(accountConfig, hasPublicApps) {
84
+ function checkIfAccountFlagIsSupported(accountConfig, hasPublicApps) {
67
85
  if (hasPublicApps) {
68
- if (!isDeveloperTestAccount(accountConfig)) {
69
- uiLogger.error(lib.localDevHelpers.validateAccountOption.invalidPublicAppAccount);
70
- process.exit(EXIT_CODES.SUCCESS);
86
+ if (!(0, accountTypes_1.isDeveloperTestAccount)(accountConfig)) {
87
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.validateAccountOption.invalidPublicAppAccount);
88
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
71
89
  }
72
90
  checkIfParentAccountIsAuthed(accountConfig);
73
91
  }
74
- else if (isAppDeveloperAccount(accountConfig)) {
75
- uiLogger.error(lib.localDevHelpers.validateAccountOption.invalidPrivateAppAccount);
76
- process.exit(EXIT_CODES.SUCCESS);
92
+ else if ((0, accountTypes_1.isAppDeveloperAccount)(accountConfig)) {
93
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.validateAccountOption.invalidPrivateAppAccount);
94
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
77
95
  }
78
96
  }
79
97
  // If the user isn't using the recommended account type, prompt them to use or create one
80
- export async function suggestRecommendedNestedAccount(accounts, accountConfig, hasPublicApps) {
81
- uiLogger.log('');
82
- uiLine();
98
+ async function suggestRecommendedNestedAccount(accounts, accountConfig, hasPublicApps) {
99
+ logger_1.uiLogger.log('');
100
+ (0, ui_1.uiLine)();
83
101
  if (hasPublicApps) {
84
- uiLogger.log(lib.localDevHelpers.validateAccountOption
102
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.validateAccountOption
85
103
  .publicAppNonDeveloperTestAccountWarning);
86
104
  }
87
105
  else {
88
- uiLogger.log(lib.localDevHelpers.validateAccountOption.nonSandboxWarning);
106
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.validateAccountOption.nonSandboxWarning);
89
107
  }
90
- uiLine();
91
- uiLogger.log('');
108
+ (0, ui_1.uiLine)();
109
+ logger_1.uiLogger.log('');
92
110
  const targetAccountPrompt = hasPublicApps
93
- ? selectDeveloperTestTargetAccountPrompt
94
- : selectSandboxTargetAccountPrompt;
111
+ ? projectDevTargetAccountPrompt_1.selectDeveloperTestTargetAccountPrompt
112
+ : projectDevTargetAccountPrompt_1.selectSandboxTargetAccountPrompt;
95
113
  return targetAccountPrompt(accounts, accountConfig);
96
114
  }
97
115
  // Create a new sandbox and return its accountId
98
- export async function createSandboxForLocalDev(accountId, accountConfig, env) {
116
+ async function createSandboxForLocalDev(accountId, accountConfig, env) {
99
117
  try {
100
- await validateSandboxUsageLimits(accountConfig, HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, env);
118
+ await (0, sandboxes_1.validateSandboxUsageLimits)(accountConfig, config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, env);
101
119
  }
102
120
  catch (err) {
103
- if (isMissingScopeError(err)) {
104
- uiLogger.error(lib.sandbox.create.developer.failure.scopes.message);
105
- const websiteOrigin = getHubSpotWebsiteOrigin(env);
121
+ if ((0, index_1.isMissingScopeError)(err)) {
122
+ logger_1.uiLogger.error(en_1.lib.sandbox.create.developer.failure.scopes.message);
123
+ const websiteOrigin = (0, urls_1.getHubSpotWebsiteOrigin)(env);
106
124
  const url = `${websiteOrigin}/personal-access-key/${accountId}`;
107
- uiLogger.info(lib.sandbox.create.developer.failure.scopes.instructions(accountConfig.name || accountId, url));
125
+ logger_1.uiLogger.info(en_1.lib.sandbox.create.developer.failure.scopes.instructions(accountConfig.name || accountId, url));
108
126
  }
109
127
  else {
110
- logError(err);
128
+ (0, index_2.logError)(err);
111
129
  }
112
- process.exit(EXIT_CODES.ERROR);
130
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
113
131
  }
114
132
  try {
115
- const { name } = await hubspotAccountNamePrompt({
116
- accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
133
+ const { name } = await (0, accountNamePrompt_1.hubspotAccountNamePrompt)({
134
+ accountType: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
117
135
  });
118
- trackCommandMetadataUsage('sandbox-create', { step: 'project-dev' }, accountId);
119
- const result = await buildSandbox(name, accountConfig, HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, env);
136
+ (0, usageTracking_1.trackCommandMetadataUsage)('sandbox-create', { step: 'project-dev' }, accountId);
137
+ const result = await (0, buildAccount_1.buildSandbox)(name, accountConfig, config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, env);
120
138
  const targetAccountId = result.sandbox.sandboxHubId;
121
- const sandboxAccountConfig = getAccountConfig(result.sandbox.sandboxHubId);
139
+ const sandboxAccountConfig = (0, config_2.getAccountConfig)(result.sandbox.sandboxHubId);
122
140
  if (!sandboxAccountConfig) {
123
- uiLogger.error(lib.sandbox.create.developer.failure.generic);
124
- process.exit(EXIT_CODES.ERROR);
141
+ logger_1.uiLogger.error(en_1.lib.sandbox.create.developer.failure.generic);
142
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
125
143
  }
126
- const syncTasks = await getAvailableSyncTypes(accountConfig, sandboxAccountConfig);
144
+ const syncTasks = await (0, sandboxes_1.getAvailableSyncTypes)(accountConfig, sandboxAccountConfig);
127
145
  // For v1 sandboxes, keep sync here. Once we migrate to v2, this will be handled by BE automatically
128
- await syncSandbox(sandboxAccountConfig, accountConfig, env, syncTasks, true);
146
+ await (0, sandboxSync_1.syncSandbox)(sandboxAccountConfig, accountConfig, env, syncTasks, true);
129
147
  return targetAccountId;
130
148
  }
131
149
  catch (err) {
132
- logError(err);
133
- process.exit(EXIT_CODES.ERROR);
150
+ (0, index_2.logError)(err);
151
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
134
152
  }
135
153
  }
136
154
  // Create a developer test account and return its accountId
137
- export async function createDeveloperTestAccountForLocalDev(accountId, accountConfig, env) {
155
+ async function createDeveloperTestAccountForLocalDev(accountId, accountConfig, env, useV3 = false) {
138
156
  let currentPortalCount = 0;
139
157
  let maxTestPortals = 10;
140
158
  try {
141
- const validateResult = await validateDevTestAccountUsageLimits(accountConfig);
159
+ const validateResult = await (0, developerTestAccounts_1.validateDevTestAccountUsageLimits)(accountConfig);
142
160
  if (validateResult) {
143
161
  currentPortalCount = validateResult.results
144
162
  ? validateResult.results.length
@@ -147,102 +165,102 @@ export async function createDeveloperTestAccountForLocalDev(accountId, accountCo
147
165
  }
148
166
  }
149
167
  catch (err) {
150
- if (isMissingScopeError(err)) {
151
- uiLogger.error(lib.developerTestAccount.create.failure.scopes.message);
152
- const websiteOrigin = getHubSpotWebsiteOrigin(env);
168
+ if ((0, index_1.isMissingScopeError)(err)) {
169
+ logger_1.uiLogger.error(en_1.lib.developerTestAccount.create.failure.scopes.message);
170
+ const websiteOrigin = (0, urls_1.getHubSpotWebsiteOrigin)(env);
153
171
  const url = `${websiteOrigin}/personal-access-key/${accountId}`;
154
- uiLogger.info(lib.developerTestAccount.create.failure.scopes.instructions(accountConfig.name || accountId, url));
172
+ logger_1.uiLogger.info(en_1.lib.developerTestAccount.create.failure.scopes.instructions(accountConfig.name || accountId, url));
155
173
  }
156
174
  else {
157
- logError(err);
175
+ (0, index_2.logError)(err);
158
176
  }
159
- process.exit(EXIT_CODES.ERROR);
177
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
160
178
  }
161
179
  try {
162
- const { name } = await hubspotAccountNamePrompt({
180
+ const { name } = await (0, accountNamePrompt_1.hubspotAccountNamePrompt)({
163
181
  currentPortalCount,
164
- accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
182
+ accountType: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
165
183
  });
166
- trackCommandMetadataUsage('developer-test-account-create', { step: 'project-dev' }, accountId);
167
- const result = await buildDeveloperTestAccount(name, accountConfig, env, maxTestPortals);
184
+ (0, usageTracking_1.trackCommandMetadataUsage)('developer-test-account-create', { step: 'project-dev' }, accountId);
185
+ const result = await (0, buildAccount_1.buildDeveloperTestAccount)(name, accountConfig, env, maxTestPortals, useV3);
168
186
  return result;
169
187
  }
170
188
  catch (err) {
171
- logError(err);
172
- process.exit(EXIT_CODES.ERROR);
189
+ (0, index_2.logError)(err);
190
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
173
191
  }
174
192
  }
175
193
  // Prompt user to confirm usage of an existing developer test account that is not currently in the config
176
- export async function useExistingDevTestAccount(env, account) {
177
- const useExistingDevTestAcct = await confirmUseExistingDeveloperTestAccountPrompt(account);
194
+ async function useExistingDevTestAccount(env, account) {
195
+ const useExistingDevTestAcct = await (0, projectDevTargetAccountPrompt_1.confirmUseExistingDeveloperTestAccountPrompt)(account);
178
196
  if (!useExistingDevTestAcct) {
179
- uiLogger.log('');
180
- uiLogger.log(lib.localDevHelpers.confirmDefaultAccountIsTarget
197
+ logger_1.uiLogger.log('');
198
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.confirmDefaultAccountIsTarget
181
199
  .declineDefaultAccountExplanation);
182
- uiLogger.log('');
183
- process.exit(EXIT_CODES.SUCCESS);
200
+ logger_1.uiLogger.log('');
201
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
184
202
  }
185
- const devTestAcctConfigName = await saveAccountToConfig(account.id, account.accountName, env);
186
- uiLogger.success(lib.developerTestAccount.create.success.configFileUpdated(devTestAcctConfigName, PERSONAL_ACCESS_KEY_AUTH_METHOD.name));
203
+ const devTestAcctConfigName = await (0, buildAccount_1.saveAccountToConfig)(account.id, account.accountName, env);
204
+ logger_1.uiLogger.success(en_1.lib.developerTestAccount.create.success.configFileUpdated(devTestAcctConfigName, auth_1.PERSONAL_ACCESS_KEY_AUTH_METHOD.name));
187
205
  }
188
206
  // Prompt the user to create a new project if one doesn't exist on their target account
189
- export async function createNewProjectForLocalDev(projectConfig, targetAccountId, shouldCreateWithoutConfirmation, hasPublicApps) {
207
+ async function createNewProjectForLocalDev(projectConfig, targetAccountId, shouldCreateWithoutConfirmation, hasPublicApps) {
190
208
  // Create the project without prompting if this is a newly created sandbox
191
209
  let shouldCreateProject = shouldCreateWithoutConfirmation;
192
210
  if (!shouldCreateProject) {
193
211
  const explanationLangFunction = hasPublicApps
194
- ? lib.localDevHelpers.createNewProjectForLocalDev
212
+ ? en_1.lib.localDevHelpers.createNewProjectForLocalDev
195
213
  .publicAppProjectMustExistExplanation
196
- : lib.localDevHelpers.createNewProjectForLocalDev
214
+ : en_1.lib.localDevHelpers.createNewProjectForLocalDev
197
215
  .projectMustExistExplanation;
198
216
  const explanationString = explanationLangFunction(projectConfig.name, targetAccountId);
199
- uiLogger.log('');
200
- uiLine();
201
- uiLogger.log(explanationString);
202
- uiLine();
203
- shouldCreateProject = await confirmPrompt(lib.localDevHelpers.createNewProjectForLocalDev.createProject(projectConfig.name, uiAccountDescription(targetAccountId)));
217
+ logger_1.uiLogger.log('');
218
+ (0, ui_1.uiLine)();
219
+ logger_1.uiLogger.log(explanationString);
220
+ (0, ui_1.uiLine)();
221
+ shouldCreateProject = await (0, promptUtils_1.confirmPrompt)(en_1.lib.localDevHelpers.createNewProjectForLocalDev.createProject(projectConfig.name, (0, ui_1.uiAccountDescription)(targetAccountId)));
204
222
  }
205
223
  if (shouldCreateProject) {
206
- SpinniesManager.add('createProject', {
207
- text: lib.localDevHelpers.createNewProjectForLocalDev.creatingProject(projectConfig.name, uiAccountDescription(targetAccountId)),
224
+ SpinniesManager_1.default.add('createProject', {
225
+ text: en_1.lib.localDevHelpers.createNewProjectForLocalDev.creatingProject(projectConfig.name, (0, ui_1.uiAccountDescription)(targetAccountId)),
208
226
  });
209
227
  try {
210
- const { data: project } = await createProject(targetAccountId, projectConfig.name);
211
- SpinniesManager.succeed('createProject', {
212
- text: lib.localDevHelpers.createNewProjectForLocalDev.createdProject(projectConfig.name, uiAccountDescription(targetAccountId)),
228
+ const { data: project } = await (0, projects_1.createProject)(targetAccountId, projectConfig.name);
229
+ SpinniesManager_1.default.succeed('createProject', {
230
+ text: en_1.lib.localDevHelpers.createNewProjectForLocalDev.createdProject(projectConfig.name, (0, ui_1.uiAccountDescription)(targetAccountId)),
213
231
  succeedColor: 'white',
214
232
  });
215
233
  return project;
216
234
  }
217
235
  catch (err) {
218
- SpinniesManager.fail('createProject');
219
- uiLogger.log(lib.localDevHelpers.createNewProjectForLocalDev.failedToCreateProject);
220
- process.exit(EXIT_CODES.ERROR);
236
+ SpinniesManager_1.default.fail('createProject');
237
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.createNewProjectForLocalDev.failedToCreateProject);
238
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
221
239
  }
222
240
  }
223
241
  else {
224
242
  // We cannot continue if the project does not exist in the target account
225
- uiLogger.log('');
226
- uiLogger.log(lib.localDevHelpers.createNewProjectForLocalDev.choseNotToCreateProject);
227
- process.exit(EXIT_CODES.SUCCESS);
243
+ logger_1.uiLogger.log('');
244
+ logger_1.uiLogger.log(en_1.lib.localDevHelpers.createNewProjectForLocalDev.choseNotToCreateProject);
245
+ process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
228
246
  }
229
247
  }
230
248
  function projectUploadCallback(accountId, projectConfig, tempFile, buildId) {
231
249
  if (!buildId) {
232
- uiLogger.error(lib.localDevHelpers.createInitialBuildForNewProject.genericError);
233
- process.exit(EXIT_CODES.ERROR);
250
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.createInitialBuildForNewProject.genericError);
251
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
234
252
  }
235
- return pollProjectBuildAndDeploy(accountId, projectConfig, tempFile, buildId, true);
253
+ return (0, buildAndDeploy_1.pollProjectBuildAndDeploy)(accountId, projectConfig, tempFile, buildId, true);
236
254
  }
237
255
  // Create an initial build if the project was newly created in the account
238
256
  // Return the newly deployed build
239
- export async function createInitialBuildForNewProject(projectConfig, projectDir, targetAccountId, sendIR, profile) {
240
- const { result: initialUploadResult, uploadError } = await handleProjectUpload({
257
+ async function createInitialBuildForNewProject(projectConfig, projectDir, targetAccountId, sendIR, profile) {
258
+ const { result: initialUploadResult, uploadError } = await (0, upload_1.handleProjectUpload)({
241
259
  accountId: targetAccountId,
242
260
  projectConfig,
243
261
  projectDir,
244
262
  callbackFunc: projectUploadCallback,
245
- uploadMessage: lib.localDevHelpers.createInitialBuildForNewProject
263
+ uploadMessage: en_1.lib.localDevHelpers.createInitialBuildForNewProject
246
264
  .initialUploadMessage,
247
265
  forceCreate: true,
248
266
  skipValidation: true,
@@ -250,80 +268,80 @@ export async function createInitialBuildForNewProject(projectConfig, projectDir,
250
268
  profile,
251
269
  });
252
270
  if (uploadError) {
253
- if (isSpecifiedError(uploadError, {
254
- subCategory: PROJECT_ERROR_TYPES.PROJECT_LOCKED,
271
+ if ((0, index_1.isSpecifiedError)(uploadError, {
272
+ subCategory: constants_1.PROJECT_ERROR_TYPES.PROJECT_LOCKED,
255
273
  })) {
256
- uiLogger.log('');
257
- uiLogger.error(lib.localDevHelpers.createInitialBuildForNewProject.projectLockedError);
258
- uiLogger.log('');
274
+ logger_1.uiLogger.log('');
275
+ logger_1.uiLogger.error(en_1.lib.localDevHelpers.createInitialBuildForNewProject.projectLockedError);
276
+ logger_1.uiLogger.log('');
259
277
  }
260
278
  else {
261
- logError(uploadError, new ApiErrorContext({
279
+ (0, index_2.logError)(uploadError, new index_2.ApiErrorContext({
262
280
  accountId: targetAccountId,
263
281
  projectName: projectConfig.name,
264
282
  }));
265
283
  }
266
- process.exit(EXIT_CODES.ERROR);
284
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
267
285
  }
268
286
  if (!initialUploadResult?.succeeded) {
269
287
  let subTasks = [];
270
288
  if (initialUploadResult?.buildResult.status === 'FAILURE') {
271
289
  subTasks =
272
- initialUploadResult.buildResult[PROJECT_BUILD_TEXT.SUBTASK_KEY];
290
+ initialUploadResult.buildResult[constants_1.PROJECT_BUILD_TEXT.SUBTASK_KEY];
273
291
  }
274
292
  else if (initialUploadResult?.deployResult?.status === 'FAILURE') {
275
293
  subTasks =
276
- initialUploadResult.deployResult[PROJECT_DEPLOY_TEXT.SUBTASK_KEY];
294
+ initialUploadResult.deployResult[constants_1.PROJECT_DEPLOY_TEXT.SUBTASK_KEY];
277
295
  }
278
296
  const failedSubTasks = subTasks.filter(task => task.status === 'FAILURE');
279
- uiLogger.log('');
297
+ logger_1.uiLogger.log('');
280
298
  failedSubTasks.forEach(failedSubTask => {
281
- uiLogger.error(failedSubTask.errorMessage);
299
+ logger_1.uiLogger.error(failedSubTask.errorMessage);
282
300
  });
283
- uiLogger.log('');
284
- process.exit(EXIT_CODES.ERROR);
301
+ logger_1.uiLogger.log('');
302
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
285
303
  }
286
304
  return initialUploadResult.buildResult;
287
305
  }
288
- export function getAccountHomeUrl(accountId) {
289
- const baseUrl = getHubSpotWebsiteOrigin(getEnv(accountId) === 'qa' ? ENVIRONMENTS.QA : ENVIRONMENTS.PROD);
306
+ function getAccountHomeUrl(accountId) {
307
+ const baseUrl = (0, urls_1.getHubSpotWebsiteOrigin)((0, config_2.getEnv)(accountId) === 'qa' ? environments_1.ENVIRONMENTS.QA : environments_1.ENVIRONMENTS.PROD);
290
308
  return `${baseUrl}/home?portalId=${accountId}`;
291
309
  }
292
- export async function hasSandboxes(account) {
293
- const accountId = getAccountIdentifier(account);
310
+ async function hasSandboxes(account) {
311
+ const accountId = (0, getAccountIdentifier_1.getAccountIdentifier)(account);
294
312
  if (!accountId) {
295
313
  return false;
296
314
  }
297
315
  try {
298
- const { data: { usage }, } = await getSandboxUsageLimits(accountId);
316
+ const { data: { usage }, } = await (0, sandboxHubs_1.getSandboxUsageLimits)(accountId);
299
317
  return usage.STANDARD.limit > 0 || usage.DEVELOPER.limit > 0;
300
318
  }
301
319
  catch (e) {
302
- debugError(e);
320
+ (0, index_2.debugError)(e);
303
321
  return false;
304
322
  }
305
323
  }
306
324
  // Top level prompt to choose the type of account to test on
307
- export async function selectAccountTypePrompt(accountConfig) {
325
+ async function selectAccountTypePrompt(accountConfig) {
308
326
  const hasAccessToSandboxes = await hasSandboxes(accountConfig);
309
- const result = await listPrompt(lib.localDevHelpers.selectAccountTypePrompt.message, {
327
+ const result = await (0, promptUtils_1.listPrompt)(en_1.lib.localDevHelpers.selectAccountTypePrompt.message, {
310
328
  choices: [
311
329
  {
312
- name: lib.localDevHelpers.selectAccountTypePrompt
330
+ name: en_1.lib.localDevHelpers.selectAccountTypePrompt
313
331
  .developerTestAccountOption,
314
- value: HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
332
+ value: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
315
333
  },
316
334
  {
317
- name: lib.localDevHelpers.selectAccountTypePrompt
335
+ name: en_1.lib.localDevHelpers.selectAccountTypePrompt
318
336
  .sandboxAccountOption,
319
- value: HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
337
+ value: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
320
338
  disabled: !hasAccessToSandboxes
321
- ? lib.localDevHelpers.selectAccountTypePrompt
339
+ ? en_1.lib.localDevHelpers.selectAccountTypePrompt
322
340
  .sandboxAccountOptionDisabled
323
341
  : false,
324
342
  },
325
343
  {
326
- name: lib.localDevHelpers.selectAccountTypePrompt
344
+ name: en_1.lib.localDevHelpers.selectAccountTypePrompt
327
345
  .productionAccountOption,
328
346
  value: null,
329
347
  },
@@ -1,6 +1,6 @@
1
- import { ComponentTypes, Component, GenericComponentConfig, PublicAppComponentConfig, PrivateAppComponentConfig, AppCardComponentConfig } from '../../types/Projects.js';
2
- import { IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types.js';
3
- import { AppIRNode } from '../../types/ProjectComponents.js';
1
+ import { ComponentTypes, Component, GenericComponentConfig, PublicAppComponentConfig, PrivateAppComponentConfig, AppCardComponentConfig } from '../../types/Projects';
2
+ import { IntermediateRepresentationNode, IntermediateRepresentationNodeLocalDev } from '@hubspot/project-parsing-lib/src/lib/types';
3
+ import { AppIRNode } from '../../types/ProjectComponents';
4
4
  export declare const CONFIG_FILES: {
5
5
  [k in ComponentTypes]: string;
6
6
  };
@@ -15,4 +15,4 @@ export declare function getProjectComponentTypes(components: Array<Component>):
15
15
  export declare function getComponentUid(component?: Component | null): string | null;
16
16
  export declare function componentIsApp(component?: Component | null): component is Component<PublicAppComponentConfig | PrivateAppComponentConfig>;
17
17
  export declare function componentIsPublicApp(component?: Component | null): component is Component<PublicAppComponentConfig>;
18
- export declare function isAppIRNode(component: IntermediateRepresentationNodeLocalDev): component is AppIRNode;
18
+ export declare function isAppIRNode(component: IntermediateRepresentationNodeLocalDev | IntermediateRepresentationNode): component is AppIRNode;