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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (563) hide show
  1. package/api/__tests__/migrate.test.js +27 -29
  2. package/api/migrate.js +14 -22
  3. package/bin/cli.js +92 -97
  4. package/bin/hs +2 -2
  5. package/bin/hscms +2 -2
  6. package/bin/silenceErrors.js +1 -2
  7. package/commands/__tests__/account.test.js +29 -34
  8. package/commands/__tests__/auth.test.js +11 -16
  9. package/commands/__tests__/cms.test.js +15 -20
  10. package/commands/__tests__/config.test.js +14 -19
  11. package/commands/__tests__/create.test.js +10 -15
  12. package/commands/__tests__/customObject.test.js +14 -19
  13. package/commands/__tests__/doctor.test.js +43 -48
  14. package/commands/__tests__/feedback.test.js +7 -45
  15. package/commands/__tests__/fetch.test.js +29 -28
  16. package/commands/__tests__/filemanager.test.js +14 -19
  17. package/commands/__tests__/function.test.js +16 -21
  18. package/commands/__tests__/getStarted.test.js +48 -53
  19. package/commands/__tests__/hubdb.test.js +17 -22
  20. package/commands/__tests__/init.test.js +12 -17
  21. package/commands/__tests__/lint.test.js +13 -18
  22. package/commands/__tests__/list.test.js +18 -23
  23. package/commands/__tests__/logs.test.js +28 -27
  24. package/commands/__tests__/mcp.test.js +14 -19
  25. package/commands/__tests__/mv.test.js +14 -52
  26. package/commands/__tests__/open.test.js +13 -51
  27. package/commands/__tests__/project.test.js +44 -49
  28. package/commands/__tests__/remove.test.js +13 -51
  29. package/commands/__tests__/sandbox.test.js +14 -19
  30. package/commands/__tests__/secret.test.js +16 -21
  31. package/commands/__tests__/testAccount.test.js +16 -21
  32. package/commands/__tests__/theme.test.js +15 -20
  33. package/commands/account/__tests__/auth.test.js +11 -16
  34. package/commands/account/__tests__/clean.test.js +12 -17
  35. package/commands/account/__tests__/createOverride.test.js +10 -15
  36. package/commands/account/__tests__/info.test.js +11 -16
  37. package/commands/account/__tests__/list.test.js +11 -16
  38. package/commands/account/__tests__/remove.test.js +13 -18
  39. package/commands/account/__tests__/removeOverride.js +8 -13
  40. package/commands/account/__tests__/rename.test.js +15 -20
  41. package/commands/account/__tests__/use.test.js +10 -15
  42. package/commands/account/auth.d.ts +1 -1
  43. package/commands/account/auth.js +65 -67
  44. package/commands/account/clean.d.ts +1 -1
  45. package/commands/account/clean.js +55 -60
  46. package/commands/account/createOverride.d.ts +1 -1
  47. package/commands/account/createOverride.js +52 -57
  48. package/commands/account/info.d.ts +1 -1
  49. package/commands/account/info.js +33 -35
  50. package/commands/account/list.d.ts +1 -1
  51. package/commands/account/list.js +43 -45
  52. package/commands/account/remove.d.ts +1 -1
  53. package/commands/account/remove.js +37 -42
  54. package/commands/account/removeOverride.d.ts +1 -1
  55. package/commands/account/removeOverride.js +38 -43
  56. package/commands/account/rename.d.ts +1 -1
  57. package/commands/account/rename.js +18 -20
  58. package/commands/account/use.d.ts +1 -1
  59. package/commands/account/use.js +29 -31
  60. package/commands/account.d.ts +1 -1
  61. package/commands/account.js +23 -28
  62. package/commands/app/__tests__/migrate.test.js +29 -34
  63. package/commands/app/migrate.d.ts +2 -2
  64. package/commands/app/migrate.js +40 -43
  65. package/commands/app/secret/__tests__/add.test.js +6 -11
  66. package/commands/app/secret/__tests__/delete.test.js +6 -11
  67. package/commands/app/secret/__tests__/list.test.js +6 -11
  68. package/commands/app/secret/__tests__/update.test.js +6 -11
  69. package/commands/app/secret/add.d.ts +1 -1
  70. package/commands/app/secret/add.js +28 -30
  71. package/commands/app/secret/delete.d.ts +1 -1
  72. package/commands/app/secret/delete.js +34 -36
  73. package/commands/app/secret/list.d.ts +1 -1
  74. package/commands/app/secret/list.js +25 -27
  75. package/commands/app/secret/update.d.ts +1 -1
  76. package/commands/app/secret/update.js +32 -34
  77. package/commands/app/secret.d.ts +1 -1
  78. package/commands/app/secret.js +12 -17
  79. package/commands/app.d.ts +1 -1
  80. package/commands/app.js +6 -11
  81. package/commands/auth.d.ts +1 -1
  82. package/commands/auth.js +70 -72
  83. package/commands/cms/convertFields.d.ts +1 -1
  84. package/commands/cms/convertFields.js +34 -39
  85. package/commands/cms/getReactModule.d.ts +1 -1
  86. package/commands/cms/getReactModule.js +32 -37
  87. package/commands/cms/lighthouseScore.d.ts +1 -1
  88. package/commands/cms/lighthouseScore.js +67 -72
  89. package/commands/cms.d.ts +1 -1
  90. package/commands/cms.js +11 -16
  91. package/commands/completion.d.ts +1 -1
  92. package/commands/completion.js +10 -15
  93. package/commands/config/migrate.d.ts +1 -1
  94. package/commands/config/migrate.js +27 -32
  95. package/commands/config/set.d.ts +1 -1
  96. package/commands/config/set.js +23 -25
  97. package/commands/config.d.ts +1 -1
  98. package/commands/config.js +8 -13
  99. package/commands/create/api-sample.d.ts +1 -1
  100. package/commands/create/api-sample.js +28 -33
  101. package/commands/create/app.d.ts +1 -1
  102. package/commands/create/app.js +3 -5
  103. package/commands/create/function.d.ts +1 -1
  104. package/commands/create/function.js +9 -11
  105. package/commands/create/index.d.ts +1 -1
  106. package/commands/create/index.js +19 -24
  107. package/commands/create/module.d.ts +1 -1
  108. package/commands/create/module.js +12 -14
  109. package/commands/create/react-app.d.ts +1 -1
  110. package/commands/create/react-app.js +3 -5
  111. package/commands/create/template.d.ts +1 -1
  112. package/commands/create/template.js +12 -14
  113. package/commands/create/vue-app.d.ts +1 -1
  114. package/commands/create/vue-app.js +3 -5
  115. package/commands/create/webpack-serverless.d.ts +1 -1
  116. package/commands/create/webpack-serverless.js +3 -5
  117. package/commands/create/website-theme.d.ts +1 -1
  118. package/commands/create/website-theme.js +5 -7
  119. package/commands/create.d.ts +2 -2
  120. package/commands/create.js +30 -35
  121. package/commands/customObject/__tests__/create.test.js +13 -18
  122. package/commands/customObject/__tests__/schema.test.js +18 -23
  123. package/commands/customObject/create.d.ts +1 -1
  124. package/commands/customObject/create.js +28 -30
  125. package/commands/customObject/schema/__tests__/create.test.js +13 -18
  126. package/commands/customObject/schema/__tests__/delete.test.js +13 -18
  127. package/commands/customObject/schema/__tests__/fetch-all.test.js +13 -18
  128. package/commands/customObject/schema/__tests__/fetch.test.js +13 -18
  129. package/commands/customObject/schema/__tests__/list.test.js +13 -18
  130. package/commands/customObject/schema/__tests__/update.test.js +13 -18
  131. package/commands/customObject/schema/create.d.ts +1 -1
  132. package/commands/customObject/schema/create.js +28 -30
  133. package/commands/customObject/schema/delete.d.ts +1 -1
  134. package/commands/customObject/schema/delete.js +24 -26
  135. package/commands/customObject/schema/fetch-all.d.ts +1 -1
  136. package/commands/customObject/schema/fetch-all.js +22 -24
  137. package/commands/customObject/schema/fetch.d.ts +1 -1
  138. package/commands/customObject/schema/fetch.js +24 -26
  139. package/commands/customObject/schema/list.d.ts +1 -1
  140. package/commands/customObject/schema/list.js +13 -15
  141. package/commands/customObject/schema/update.d.ts +1 -1
  142. package/commands/customObject/schema/update.js +32 -34
  143. package/commands/customObject/schema.d.ts +1 -1
  144. package/commands/customObject/schema.js +17 -22
  145. package/commands/customObject.d.ts +1 -1
  146. package/commands/customObject.js +13 -18
  147. package/commands/doctor.d.ts +1 -1
  148. package/commands/doctor.js +28 -33
  149. package/commands/feedback.d.ts +1 -1
  150. package/commands/feedback.js +19 -24
  151. package/commands/fetch.d.ts +1 -1
  152. package/commands/fetch.js +28 -30
  153. package/commands/filemanager/__tests__/fetch.test.js +17 -22
  154. package/commands/filemanager/__tests__/upload.test.js +15 -20
  155. package/commands/filemanager/fetch.d.ts +1 -1
  156. package/commands/filemanager/fetch.js +23 -25
  157. package/commands/filemanager/upload.d.ts +1 -1
  158. package/commands/filemanager/upload.js +39 -44
  159. package/commands/filemanager.d.ts +1 -1
  160. package/commands/filemanager.js +8 -13
  161. package/commands/function/deploy.d.ts +1 -1
  162. package/commands/function/deploy.js +35 -40
  163. package/commands/function/list.d.ts +1 -1
  164. package/commands/function/list.js +24 -29
  165. package/commands/function/server.d.ts +1 -1
  166. package/commands/function/server.js +15 -17
  167. package/commands/function.d.ts +1 -1
  168. package/commands/function.js +12 -18
  169. package/commands/getStarted.d.ts +1 -1
  170. package/commands/getStarted.js +124 -130
  171. package/commands/hubdb/__tests__/clear.test.js +13 -18
  172. package/commands/hubdb/__tests__/create.test.js +13 -18
  173. package/commands/hubdb/__tests__/delete.test.js +13 -18
  174. package/commands/hubdb/__tests__/fetch.test.js +13 -18
  175. package/commands/hubdb/__tests__/list.test.js +23 -28
  176. package/commands/hubdb/clear.d.ts +1 -1
  177. package/commands/hubdb/clear.js +20 -22
  178. package/commands/hubdb/create.d.ts +1 -1
  179. package/commands/hubdb/create.js +30 -35
  180. package/commands/hubdb/delete.d.ts +1 -1
  181. package/commands/hubdb/delete.js +24 -26
  182. package/commands/hubdb/fetch.d.ts +1 -1
  183. package/commands/hubdb/fetch.js +17 -19
  184. package/commands/hubdb/list.d.ts +1 -1
  185. package/commands/hubdb/list.js +33 -35
  186. package/commands/hubdb.d.ts +1 -1
  187. package/commands/hubdb.js +18 -24
  188. package/commands/init.d.ts +1 -1
  189. package/commands/init.js +83 -88
  190. package/commands/lint.d.ts +1 -1
  191. package/commands/lint.js +24 -26
  192. package/commands/list.d.ts +1 -1
  193. package/commands/list.js +32 -37
  194. package/commands/logs.d.ts +1 -1
  195. package/commands/logs.js +35 -37
  196. package/commands/mcp/__tests__/setup.test.js +7 -12
  197. package/commands/mcp/__tests__/start.test.js +7 -12
  198. package/commands/mcp/setup.d.ts +1 -1
  199. package/commands/mcp/setup.js +17 -19
  200. package/commands/mcp/start.d.ts +1 -1
  201. package/commands/mcp/start.js +29 -34
  202. package/commands/mcp.d.ts +1 -1
  203. package/commands/mcp.js +7 -12
  204. package/commands/module/marketplace-validate.d.ts +1 -1
  205. package/commands/module/marketplace-validate.js +21 -26
  206. package/commands/module.d.ts +1 -1
  207. package/commands/module.js +7 -13
  208. package/commands/mv.d.ts +1 -1
  209. package/commands/mv.js +20 -22
  210. package/commands/open.d.ts +1 -1
  211. package/commands/open.js +19 -21
  212. package/commands/project/__tests__/add.test.js +10 -15
  213. package/commands/project/__tests__/create.test.js +14 -19
  214. package/commands/project/__tests__/deploy.test.js +93 -131
  215. package/commands/project/__tests__/devUnifiedFlow.test.js +135 -140
  216. package/commands/project/__tests__/download.test.js +14 -19
  217. package/commands/project/__tests__/installDeps.test.js +32 -70
  218. package/commands/project/__tests__/listBuilds.test.js +14 -19
  219. package/commands/project/__tests__/logs.test.js +56 -94
  220. package/commands/project/__tests__/migrate.test.js +25 -30
  221. package/commands/project/__tests__/migrateApp.test.js +17 -22
  222. package/commands/project/__tests__/open.test.js +16 -21
  223. package/commands/project/__tests__/profile.test.js +14 -19
  224. package/commands/project/__tests__/upload.test.js +18 -23
  225. package/commands/project/__tests__/watch.test.js +14 -19
  226. package/commands/project/add.d.ts +1 -1
  227. package/commands/project/add.js +34 -36
  228. package/commands/project/cloneApp.d.ts +1 -1
  229. package/commands/project/cloneApp.js +67 -72
  230. package/commands/project/create.d.ts +2 -2
  231. package/commands/project/create.js +62 -67
  232. package/commands/project/deploy.d.ts +1 -1
  233. package/commands/project/deploy.js +72 -77
  234. package/commands/project/dev/deprecatedFlow.d.ts +2 -2
  235. package/commands/project/dev/deprecatedFlow.js +52 -58
  236. package/commands/project/dev/index.d.ts +1 -1
  237. package/commands/project/dev/index.js +44 -47
  238. package/commands/project/dev/unifiedFlow.d.ts +3 -3
  239. package/commands/project/dev/unifiedFlow.js +62 -68
  240. package/commands/project/download.d.ts +1 -1
  241. package/commands/project/download.js +35 -40
  242. package/commands/project/installDeps.d.ts +1 -1
  243. package/commands/project/installDeps.js +29 -34
  244. package/commands/project/listBuilds.d.ts +1 -1
  245. package/commands/project/listBuilds.js +40 -45
  246. package/commands/project/logs.d.ts +1 -1
  247. package/commands/project/logs.js +52 -54
  248. package/commands/project/migrate.d.ts +1 -1
  249. package/commands/project/migrate.js +24 -26
  250. package/commands/project/migrateApp.d.ts +2 -2
  251. package/commands/project/migrateApp.js +18 -20
  252. package/commands/project/open.d.ts +1 -1
  253. package/commands/project/open.js +25 -30
  254. package/commands/project/profile/add.d.ts +1 -1
  255. package/commands/project/profile/add.js +68 -73
  256. package/commands/project/profile/delete.d.ts +1 -1
  257. package/commands/project/profile/delete.js +51 -56
  258. package/commands/project/profile.d.ts +1 -1
  259. package/commands/project/profile.js +9 -14
  260. package/commands/project/upload.d.ts +1 -1
  261. package/commands/project/upload.js +50 -55
  262. package/commands/project/validate.d.ts +1 -1
  263. package/commands/project/validate.js +35 -40
  264. package/commands/project/watch.d.ts +1 -1
  265. package/commands/project/watch.js +59 -61
  266. package/commands/project.d.ts +1 -1
  267. package/commands/project.js +38 -43
  268. package/commands/remove.d.ts +1 -1
  269. package/commands/remove.js +15 -17
  270. package/commands/sandbox/__tests__/create.test.js +15 -20
  271. package/commands/sandbox/__tests__/delete.test.js +15 -20
  272. package/commands/sandbox/create.d.ts +1 -1
  273. package/commands/sandbox/create.js +67 -69
  274. package/commands/sandbox/delete.d.ts +1 -1
  275. package/commands/sandbox/delete.js +94 -96
  276. package/commands/sandbox.d.ts +1 -1
  277. package/commands/sandbox.js +9 -14
  278. package/commands/secret/__tests__/addSecret.test.js +13 -18
  279. package/commands/secret/__tests__/deleteSecret.test.js +13 -18
  280. package/commands/secret/__tests__/listSecret.test.js +13 -18
  281. package/commands/secret/__tests__/updateSecret.test.js +13 -18
  282. package/commands/secret/addSecret.d.ts +1 -1
  283. package/commands/secret/addSecret.js +26 -28
  284. package/commands/secret/deleteSecret.d.ts +1 -1
  285. package/commands/secret/deleteSecret.js +27 -29
  286. package/commands/secret/listSecret.d.ts +1 -1
  287. package/commands/secret/listSecret.js +19 -21
  288. package/commands/secret/updateSecret.d.ts +1 -1
  289. package/commands/secret/updateSecret.js +25 -27
  290. package/commands/secret.d.ts +1 -1
  291. package/commands/secret.js +13 -18
  292. package/commands/testAccount/__tests__/create.test.js +17 -22
  293. package/commands/testAccount/__tests__/createConfig.test.js +6 -11
  294. package/commands/testAccount/__tests__/delete.test.js +15 -20
  295. package/commands/testAccount/create.d.ts +1 -1
  296. package/commands/testAccount/create.js +50 -55
  297. package/commands/testAccount/createConfig.d.ts +2 -2
  298. package/commands/testAccount/createConfig.js +36 -41
  299. package/commands/testAccount/delete.d.ts +1 -1
  300. package/commands/testAccount/delete.js +17 -19
  301. package/commands/testAccount.d.ts +1 -1
  302. package/commands/testAccount.js +10 -15
  303. package/commands/theme/__tests__/generate-selectors.test.js +7 -12
  304. package/commands/theme/__tests__/marketplace-validate.test.js +14 -19
  305. package/commands/theme/__tests__/preview.test.js +12 -17
  306. package/commands/theme/generate-selectors.d.ts +1 -1
  307. package/commands/theme/generate-selectors.js +23 -28
  308. package/commands/theme/marketplace-validate.d.ts +1 -1
  309. package/commands/theme/marketplace-validate.js +19 -24
  310. package/commands/theme/preview.d.ts +1 -1
  311. package/commands/theme/preview.js +60 -65
  312. package/commands/theme.d.ts +1 -1
  313. package/commands/theme.js +11 -16
  314. package/commands/upload.d.ts +1 -1
  315. package/commands/upload.js +77 -82
  316. package/commands/watch.d.ts +1 -1
  317. package/commands/watch.js +45 -51
  318. package/lang/en.d.ts +0 -1
  319. package/lang/en.js +369 -376
  320. package/lib/__tests__/accountTypes.test.js +20 -22
  321. package/lib/__tests__/buildAccount.test.js +26 -61
  322. package/lib/__tests__/commonOpts.test.js +20 -22
  323. package/lib/__tests__/dependencyManagement.test.js +46 -51
  324. package/lib/__tests__/developerTestAccounts.test.js +27 -62
  325. package/lib/__tests__/hasFeature.test.js +6 -8
  326. package/lib/__tests__/npm.test.js +15 -20
  327. package/lib/__tests__/oauth.test.js +23 -28
  328. package/lib/__tests__/parsing.test.js +18 -20
  329. package/lib/__tests__/polling.test.js +24 -26
  330. package/lib/__tests__/process.test.js +14 -19
  331. package/lib/__tests__/projectProfiles.test.js +34 -39
  332. package/lib/__tests__/sandboxSync.test.js +30 -35
  333. package/lib/__tests__/sandboxes.test.js +29 -31
  334. package/lib/__tests__/serverlessLogs.test.js +8 -13
  335. package/lib/__tests__/usageTracking.test.js +33 -34
  336. package/lib/__tests__/validation.test.js +18 -20
  337. package/lib/__tests__/yargsUtils.test.js +6 -41
  338. package/lib/accountTypes.js +24 -34
  339. package/lib/app/__tests__/migrate.test.js +94 -99
  340. package/lib/app/__tests__/migrate_legacy.test.js +29 -31
  341. package/lib/app/migrate.d.ts +3 -3
  342. package/lib/app/migrate.js +127 -145
  343. package/lib/app/migrate_legacy.d.ts +1 -1
  344. package/lib/app/migrate_legacy.js +72 -78
  345. package/lib/app/urls.js +5 -9
  346. package/lib/buildAccount.d.ts +1 -1
  347. package/lib/buildAccount.js +59 -67
  348. package/lib/commonOpts.d.ts +1 -1
  349. package/lib/commonOpts.js +42 -59
  350. package/lib/configMigrate.js +34 -38
  351. package/lib/configOptions.js +34 -40
  352. package/lib/constants.js +31 -34
  353. package/lib/customObject.js +2 -6
  354. package/lib/dependencyManagement.js +37 -45
  355. package/lib/developerTestAccounts.d.ts +1 -1
  356. package/lib/developerTestAccounts.js +34 -39
  357. package/lib/doctor/Diagnosis.d.ts +1 -1
  358. package/lib/doctor/Diagnosis.js +25 -29
  359. package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
  360. package/lib/doctor/DiagnosticInfoBuilder.js +30 -37
  361. package/lib/doctor/Doctor.d.ts +1 -1
  362. package/lib/doctor/Doctor.js +94 -101
  363. package/lib/doctor/__tests__/Diagnosis.test.js +9 -14
  364. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +29 -34
  365. package/lib/doctor/__tests__/Doctor.test.js +24 -26
  366. package/lib/enums/exitCodes.js +1 -4
  367. package/lib/errorHandlers/index.js +32 -41
  368. package/lib/errorHandlers/suppressError.d.ts +1 -1
  369. package/lib/errorHandlers/suppressError.js +28 -31
  370. package/lib/filesystem.js +8 -15
  371. package/lib/generateSelectors.js +18 -29
  372. package/lib/hasFeature.d.ts +1 -1
  373. package/lib/hasFeature.js +3 -6
  374. package/lib/interpolation.js +11 -18
  375. package/lib/lang.d.ts +1 -1
  376. package/lib/lang.js +22 -27
  377. package/lib/links.js +16 -24
  378. package/lib/marketplaceValidate.js +29 -39
  379. package/lib/mcp/setup.js +69 -97
  380. package/lib/middleware/__test__/configMiddleware.test.js +20 -55
  381. package/lib/middleware/__test__/gitMiddleware.test.js +7 -42
  382. package/lib/middleware/__test__/notificationsMiddleware.test.js +2 -4
  383. package/lib/middleware/__test__/requestMiddleware.test.js +6 -11
  384. package/lib/middleware/__test__/utils.test.js +9 -11
  385. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +9 -44
  386. package/lib/middleware/autoUpdateMiddleware.js +33 -40
  387. package/lib/middleware/configMiddleware.js +36 -42
  388. package/lib/middleware/fireAlarmMiddleware.js +12 -18
  389. package/lib/middleware/gitMiddleware.js +5 -8
  390. package/lib/middleware/notificationsMiddleware.js +16 -23
  391. package/lib/middleware/requestMiddleware.js +4 -10
  392. package/lib/middleware/utils.js +1 -4
  393. package/lib/middleware/yargsChecksMiddleware.js +10 -13
  394. package/lib/npm.js +14 -23
  395. package/lib/oauth.js +29 -35
  396. package/lib/parsing.js +3 -6
  397. package/lib/polling.js +11 -15
  398. package/lib/process.js +11 -19
  399. package/lib/projectProfiles.d.ts +2 -2
  400. package/lib/projectProfiles.js +32 -42
  401. package/lib/projects/ProjectLogsManager.js +18 -21
  402. package/lib/projects/__tests__/AppDevModeInterface.test.js +140 -145
  403. package/lib/projects/__tests__/LocalDevProcess.test.js +68 -73
  404. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +32 -37
  405. package/lib/projects/__tests__/ProjectLogsManager.test.js +56 -58
  406. package/lib/projects/__tests__/buildAndDeploy.test.js +7 -9
  407. package/lib/projects/__tests__/components.test.js +9 -14
  408. package/lib/projects/__tests__/projects.test.js +35 -40
  409. package/lib/projects/__tests__/structure.test.js +43 -81
  410. package/lib/projects/add/__tests__/legacyAddComponent.test.js +26 -28
  411. package/lib/projects/add/__tests__/v3AddComponent.test.js +25 -30
  412. package/lib/projects/add/legacyAddComponent.d.ts +1 -1
  413. package/lib/projects/add/legacyAddComponent.js +23 -29
  414. package/lib/projects/add/v3AddComponent.d.ts +1 -1
  415. package/lib/projects/add/v3AddComponent.js +35 -41
  416. package/lib/projects/buildAndDeploy.d.ts +1 -1
  417. package/lib/projects/buildAndDeploy.js +88 -97
  418. package/lib/projects/components.js +19 -25
  419. package/lib/projects/config.d.ts +1 -1
  420. package/lib/projects/config.js +32 -41
  421. package/lib/projects/create/__tests__/legacy.test.js +22 -57
  422. package/lib/projects/create/__tests__/v3.test.js +5 -7
  423. package/lib/projects/create/index.d.ts +3 -3
  424. package/lib/projects/create/index.js +19 -22
  425. package/lib/projects/create/legacy.d.ts +1 -1
  426. package/lib/projects/create/legacy.js +25 -31
  427. package/lib/projects/create/v3.d.ts +3 -3
  428. package/lib/projects/create/v3.js +49 -59
  429. package/lib/projects/ensureProjectExists.js +31 -37
  430. package/lib/projects/localDev/AppDevModeInterface.d.ts +3 -3
  431. package/lib/projects/localDev/AppDevModeInterface.js +58 -60
  432. package/lib/projects/localDev/DevServerManager.d.ts +1 -1
  433. package/lib/projects/localDev/DevServerManager.js +24 -26
  434. package/lib/projects/localDev/DevServerManagerV2.d.ts +2 -2
  435. package/lib/projects/localDev/DevServerManagerV2.js +17 -22
  436. package/lib/projects/localDev/LocalDevLogger.d.ts +1 -1
  437. package/lib/projects/localDev/LocalDevLogger.js +59 -64
  438. package/lib/projects/localDev/LocalDevManager.d.ts +1 -1
  439. package/lib/projects/localDev/LocalDevManager.js +106 -111
  440. package/lib/projects/localDev/LocalDevProcess.d.ts +4 -4
  441. package/lib/projects/localDev/LocalDevProcess.js +25 -30
  442. package/lib/projects/localDev/LocalDevState.d.ts +3 -3
  443. package/lib/projects/localDev/LocalDevState.js +3 -5
  444. package/lib/projects/localDev/LocalDevWatcher.d.ts +1 -1
  445. package/lib/projects/localDev/LocalDevWatcher.js +6 -11
  446. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +1 -1
  447. package/lib/projects/localDev/LocalDevWebsocketServer.js +25 -27
  448. package/lib/projects/localDev/helpers.d.ts +3 -3
  449. package/lib/projects/localDev/helpers.js +156 -174
  450. package/lib/projects/structure.d.ts +3 -3
  451. package/lib/projects/structure.js +32 -78
  452. package/lib/projects/ui.js +10 -13
  453. package/lib/projects/upload.d.ts +1 -1
  454. package/lib/projects/upload.js +55 -64
  455. package/lib/projects/urls.js +14 -24
  456. package/lib/projects/watch.d.ts +1 -1
  457. package/lib/projects/watch.js +48 -54
  458. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +9 -11
  459. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +11 -16
  460. package/lib/prompts/accountNamePrompt.d.ts +1 -1
  461. package/lib/prompts/accountNamePrompt.js +26 -31
  462. package/lib/prompts/accountsPrompt.js +12 -15
  463. package/lib/prompts/cmsFieldPrompt.js +13 -19
  464. package/lib/prompts/createApiSamplePrompt.d.ts +1 -1
  465. package/lib/prompts/createApiSamplePrompt.js +9 -12
  466. package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +1 -1
  467. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +16 -19
  468. package/lib/prompts/createFunctionPrompt.js +17 -20
  469. package/lib/prompts/createModulePrompt.js +12 -15
  470. package/lib/prompts/createTemplatePrompt.js +5 -8
  471. package/lib/prompts/downloadProjectPrompt.js +17 -20
  472. package/lib/prompts/installAppPrompt.js +19 -26
  473. package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -2
  474. package/lib/prompts/personalAccessKeyPrompt.js +40 -47
  475. package/lib/prompts/previewPrompt.js +15 -22
  476. package/lib/prompts/projectAddPrompt.d.ts +1 -1
  477. package/lib/prompts/projectAddPrompt.js +14 -18
  478. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -1
  479. package/lib/prompts/projectDevTargetAccountPrompt.js +48 -54
  480. package/lib/prompts/projectNameAndDestPrompt.d.ts +1 -1
  481. package/lib/prompts/projectNameAndDestPrompt.js +22 -29
  482. package/lib/prompts/projectNamePrompt.js +11 -14
  483. package/lib/prompts/projectsLogsPrompt.js +5 -8
  484. package/lib/prompts/promptUtils.d.ts +1 -1
  485. package/lib/prompts/promptUtils.js +15 -22
  486. package/lib/prompts/sandboxesPrompt.d.ts +1 -1
  487. package/lib/prompts/sandboxesPrompt.js +26 -30
  488. package/lib/prompts/secretPrompt.js +10 -15
  489. package/lib/prompts/selectAppPrompt.js +11 -14
  490. package/lib/prompts/selectHubDBTablePrompt.js +24 -30
  491. package/lib/prompts/selectProjectTemplatePrompt.d.ts +1 -1
  492. package/lib/prompts/selectProjectTemplatePrompt.js +10 -13
  493. package/lib/prompts/selectPublicAppForMigrationPrompt.js +22 -25
  494. package/lib/prompts/setAsDefaultAccountPrompt.js +13 -16
  495. package/lib/prompts/uploadPrompt.js +11 -17
  496. package/lib/sandboxSync.d.ts +1 -1
  497. package/lib/sandboxSync.js +58 -65
  498. package/lib/sandboxes.d.ts +1 -1
  499. package/lib/sandboxes.js +68 -76
  500. package/lib/schema.js +12 -23
  501. package/lib/serverlessLogs.js +45 -52
  502. package/lib/testUtils.js +4 -8
  503. package/lib/ui/SpinniesManager.d.ts +1 -1
  504. package/lib/ui/SpinniesManager.js +29 -34
  505. package/lib/ui/boxen.js +11 -14
  506. package/lib/ui/git.js +14 -20
  507. package/lib/ui/index.js +55 -73
  508. package/lib/ui/logger.js +10 -13
  509. package/lib/ui/serverlessFunctionLogs.js +14 -20
  510. package/lib/ui/spinniesUtils.js +24 -39
  511. package/lib/ui/supportHyperlinks.js +3 -6
  512. package/lib/ui/supportsColor.js +11 -17
  513. package/lib/ui/table.js +6 -13
  514. package/lib/upload.js +15 -21
  515. package/lib/usageTracking.js +44 -50
  516. package/lib/utils/hasFlag.js +2 -8
  517. package/lib/validation.js +48 -87
  518. package/lib/yargsUtils.d.ts +1 -1
  519. package/lib/yargsUtils.js +13 -16
  520. package/mcp-server/server.js +6 -8
  521. package/mcp-server/tools/index.js +13 -16
  522. package/mcp-server/tools/project/AddFeatureToProject.d.ts +1 -1
  523. package/mcp-server/tools/project/AddFeatureToProject.js +33 -37
  524. package/mcp-server/tools/project/CreateProjectTool.d.ts +1 -1
  525. package/mcp-server/tools/project/CreateProjectTool.js +44 -48
  526. package/mcp-server/tools/project/DeployProject.d.ts +1 -1
  527. package/mcp-server/tools/project/DeployProject.js +16 -20
  528. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +1 -1
  529. package/mcp-server/tools/project/GuidedWalkthroughTool.js +19 -23
  530. package/mcp-server/tools/project/UploadProjectTools.d.ts +1 -1
  531. package/mcp-server/tools/project/UploadProjectTools.js +10 -17
  532. package/mcp-server/tools/project/ValidateProjectTool.d.ts +1 -1
  533. package/mcp-server/tools/project/ValidateProjectTool.js +11 -15
  534. package/mcp-server/tools/project/__tests__/AddFeatureToProject.test.js +12 -14
  535. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +13 -15
  536. package/mcp-server/tools/project/__tests__/DeployProject.test.js +6 -8
  537. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +4 -6
  538. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +4 -6
  539. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +4 -6
  540. package/mcp-server/tools/project/constants.js +3 -9
  541. package/mcp-server/types.js +1 -5
  542. package/mcp-server/utils/__tests__/command.test.js +9 -11
  543. package/mcp-server/utils/__tests__/project.test.js +12 -17
  544. package/mcp-server/utils/command.d.ts +1 -1
  545. package/mcp-server/utils/command.js +4 -11
  546. package/mcp-server/utils/content.d.ts +1 -1
  547. package/mcp-server/utils/content.js +2 -6
  548. package/mcp-server/utils/project.js +8 -14
  549. package/package.json +15 -11
  550. package/types/LocalDev.d.ts +4 -4
  551. package/types/LocalDev.js +1 -2
  552. package/types/ProjectComponents.d.ts +2 -2
  553. package/types/ProjectComponents.js +1 -2
  554. package/types/Projects.d.ts +1 -1
  555. package/types/Projects.js +2 -5
  556. package/types/Prompts.js +1 -2
  557. package/types/Yargs.js +1 -2
  558. package/types/{Cms.d.ts → cms.d.ts} +1 -1
  559. package/types/cms.js +1 -0
  560. package/types/sandboxes.js +1 -0
  561. package/types/Cms.js +0 -2
  562. package/types/Sandboxes.js +0 -2
  563. /package/types/{Sandboxes.d.ts → sandboxes.d.ts} +0 -0
@@ -1,55 +1,20 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const logger_1 = require("@hubspot/local-dev-lib/logger");
37
- const github = __importStar(require("@hubspot/local-dev-lib/api/github"));
38
- const exitCodes_1 = require("../../../enums/exitCodes");
39
- const legacy_1 = require("../legacy");
40
- const constants_1 = require("../../../constants");
1
+ import { logger } from '@hubspot/local-dev-lib/logger';
2
+ import * as github from '@hubspot/local-dev-lib/api/github';
3
+ import { EXIT_CODES } from '../../../enums/exitCodes.js';
4
+ import { getProjectComponentListFromRepo, getProjectTemplateListFromRepo, } from '../legacy.js';
5
+ import { PROJECT_COMPONENT_TYPES, HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, } from '../../../constants.js';
41
6
  vi.mock('@hubspot/local-dev-lib/logger');
42
7
  vi.mock('@hubspot/local-dev-lib/api/github');
43
8
  const mockedFetchRepoFile = vi.mocked(github.fetchRepoFile);
44
9
  const repoConfig = {
45
- [constants_1.PROJECT_COMPONENT_TYPES.COMPONENTS]: [
10
+ [PROJECT_COMPONENT_TYPES.COMPONENTS]: [
46
11
  {
47
12
  label: 'Component 1',
48
13
  path: 'component1',
49
14
  type: 'Component',
50
15
  },
51
16
  ],
52
- [constants_1.PROJECT_COMPONENT_TYPES.PROJECTS]: [
17
+ [PROJECT_COMPONENT_TYPES.PROJECTS]: [
53
18
  {
54
19
  name: 'project1',
55
20
  label: 'Project 1',
@@ -64,12 +29,12 @@ describe('lib/projects/create/legacy', () => {
64
29
  mockedFetchRepoFile.mockResolvedValue({
65
30
  data: repoConfig,
66
31
  });
67
- const components = await (0, legacy_1.getProjectComponentListFromRepo)('gh-ref');
68
- expect(components).toEqual(repoConfig[constants_1.PROJECT_COMPONENT_TYPES.COMPONENTS]);
32
+ const components = await getProjectComponentListFromRepo('gh-ref');
33
+ expect(components).toEqual(repoConfig[PROJECT_COMPONENT_TYPES.COMPONENTS]);
69
34
  });
70
35
  it('returns an empty list if no components are found', async () => {
71
36
  mockedFetchRepoFile.mockRejectedValue(new Error('Not found'));
72
- const components = await (0, legacy_1.getProjectComponentListFromRepo)('gh-ref');
37
+ const components = await getProjectComponentListFromRepo('gh-ref');
73
38
  expect(components).toEqual([]);
74
39
  });
75
40
  });
@@ -89,28 +54,28 @@ describe('lib/projects/create/legacy', () => {
89
54
  mockedFetchRepoFile.mockResolvedValue({
90
55
  data: repoConfig,
91
56
  });
92
- const templates = await (0, legacy_1.getProjectTemplateListFromRepo)(constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
93
- expect(templates).toEqual(repoConfig[constants_1.PROJECT_COMPONENT_TYPES.PROJECTS]);
57
+ const templates = await getProjectTemplateListFromRepo(HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
58
+ expect(templates).toEqual(repoConfig[PROJECT_COMPONENT_TYPES.PROJECTS]);
94
59
  });
95
60
  it('Logs an error and exits the process if the request for the template list fails', async () => {
96
61
  mockedFetchRepoFile.mockRejectedValue(new Error('Not found'));
97
- await (0, legacy_1.getProjectTemplateListFromRepo)(constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
98
- expect(logger_1.logger.error).toHaveBeenCalledWith(expect.stringMatching(/Failed to fetch the config.json file from the target repository/));
99
- expect(exitMock).toHaveBeenCalledWith(exitCodes_1.EXIT_CODES.ERROR);
62
+ await getProjectTemplateListFromRepo(HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
63
+ expect(logger.error).toHaveBeenCalledWith(expect.stringMatching(/Failed to fetch the config.json file from the target repository/));
64
+ expect(exitMock).toHaveBeenCalledWith(EXIT_CODES.ERROR);
100
65
  });
101
66
  it('Logs an error and exits the process if there are no projects listed in the repo config', async () => {
102
67
  // @ts-expect-error - Mocking AxiosResponse
103
68
  mockedFetchRepoFile.mockResolvedValue({});
104
- await (0, legacy_1.getProjectTemplateListFromRepo)(constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
105
- expect(logger_1.logger.error).toHaveBeenCalledWith(expect.stringMatching(/Unable to find any projects in the target repository's config.json file/));
106
- expect(exitMock).toHaveBeenCalledWith(exitCodes_1.EXIT_CODES.ERROR);
69
+ await getProjectTemplateListFromRepo(HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
70
+ expect(logger.error).toHaveBeenCalledWith(expect.stringMatching(/Unable to find any projects in the target repository's config.json file/));
71
+ expect(exitMock).toHaveBeenCalledWith(EXIT_CODES.ERROR);
107
72
  });
108
73
  it('Logs an error and exits the process if any of the projects in the repo config are missing required properties', async () => {
109
74
  // @ts-expect-error - Mocking AxiosResponse
110
75
  mockedFetchRepoFile.mockResolvedValue({
111
76
  data: {
112
77
  ...repoConfig,
113
- [constants_1.PROJECT_COMPONENT_TYPES.PROJECTS]: [
78
+ [PROJECT_COMPONENT_TYPES.PROJECTS]: [
114
79
  {
115
80
  name: 'project1',
116
81
  label: 'Project 1',
@@ -118,9 +83,9 @@ describe('lib/projects/create/legacy', () => {
118
83
  ],
119
84
  },
120
85
  });
121
- await (0, legacy_1.getProjectTemplateListFromRepo)(constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
122
- expect(logger_1.logger.error).toHaveBeenCalledWith(expect.stringMatching(/Found misconfigured projects in the target repository's config.json file/));
123
- expect(exitMock).toHaveBeenCalledWith(exitCodes_1.EXIT_CODES.ERROR);
86
+ await getProjectTemplateListFromRepo(HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, 'gh-ref');
87
+ expect(logger.error).toHaveBeenCalledWith(expect.stringMatching(/Found misconfigured projects in the target repository's config.json file/));
88
+ expect(exitMock).toHaveBeenCalledWith(EXIT_CODES.ERROR);
124
89
  });
125
90
  });
126
91
  });
@@ -1,6 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const v3_1 = require("../v3");
1
+ import { calculateComponentTemplateChoices } from '../v3.js';
4
2
  vi.mock('@hubspot/local-dev-lib/logger');
5
3
  vi.mock('@hubspot/local-dev-lib/api/github');
6
4
  describe('lib/projects/create/v3', () => {
@@ -29,7 +27,7 @@ describe('lib/projects/create/v3', () => {
29
27
  },
30
28
  };
31
29
  it('returns enabled components when they meet all requirements', () => {
32
- const choices = (0, v3_1.calculateComponentTemplateChoices)(mockComponents, 'oauth', 'private', mockProjectMetadataForChoices);
30
+ const choices = calculateComponentTemplateChoices(mockComponents, 'oauth', 'private', mockProjectMetadataForChoices);
33
31
  expect(choices).toHaveLength(3); // includes separator
34
32
  expect(choices[0]).toEqual({
35
33
  name: 'Module Component',
@@ -42,7 +40,7 @@ describe('lib/projects/create/v3', () => {
42
40
  });
43
41
  });
44
42
  it('disables components when auth type is not supported', () => {
45
- const choices = (0, v3_1.calculateComponentTemplateChoices)(mockComponents, 'privatekey', 'private', mockProjectMetadataForChoices);
43
+ const choices = calculateComponentTemplateChoices(mockComponents, 'privatekey', 'private', mockProjectMetadataForChoices);
46
44
  // All components should be disabled, so they come after the separator
47
45
  expect(choices[1]).toEqual({
48
46
  name: expect.stringContaining('Module Component'),
@@ -51,7 +49,7 @@ describe('lib/projects/create/v3', () => {
51
49
  });
52
50
  });
53
51
  it('disables components when distribution is not supported', () => {
54
- const choices = (0, v3_1.calculateComponentTemplateChoices)(mockComponents, 'oauth', 'enterprise', mockProjectMetadataForChoices);
52
+ const choices = calculateComponentTemplateChoices(mockComponents, 'oauth', 'enterprise', mockProjectMetadataForChoices);
55
53
  // All components should be disabled, so they come after the separator
56
54
  expect(choices[1]).toEqual({
57
55
  name: expect.stringContaining('Module Component'),
@@ -67,7 +65,7 @@ describe('lib/projects/create/v3', () => {
67
65
  type: 'module',
68
66
  },
69
67
  ];
70
- const choices = (0, v3_1.calculateComponentTemplateChoices)(componentsWithoutRestrictions, 'oauth', 'private', {
68
+ const choices = calculateComponentTemplateChoices(componentsWithoutRestrictions, 'oauth', 'private', {
71
69
  hsMetaFiles: [],
72
70
  components: { module: { count: 0, maxCount: 5, hsMetaFiles: [] } },
73
71
  });
@@ -1,7 +1,7 @@
1
1
  import { ArgumentsCamelCase } from 'yargs';
2
- import { ProjectTemplateRepoConfig } from '../../../types/Projects';
3
- import { SelectProjectTemplatePromptResponse, ProjectNameAndDestPromptResponse } from '../../prompts/selectProjectTemplatePrompt';
4
- import { AccountArgs, CommonArgs, ConfigArgs, EnvironmentArgs } from '../../../types/Yargs';
2
+ import { ProjectTemplateRepoConfig } from '../../../types/Projects.js';
3
+ import { SelectProjectTemplatePromptResponse, ProjectNameAndDestPromptResponse } from '../../prompts/selectProjectTemplatePrompt.js';
4
+ import { AccountArgs, CommonArgs, ConfigArgs, EnvironmentArgs } from '../../../types/Yargs.js';
5
5
  import { RepoPath } from '@hubspot/local-dev-lib/types/Github';
6
6
  export type ProjectCreateArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs & {
7
7
  name?: string;
@@ -1,22 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleProjectCreationFlow = handleProjectCreationFlow;
4
- const selectProjectTemplatePrompt_1 = require("../../prompts/selectProjectTemplatePrompt");
5
- const projectNameAndDestPrompt_1 = require("../../prompts/projectNameAndDestPrompt");
6
- const constants_1 = require("../../constants");
7
- const buildAndDeploy_1 = require("../buildAndDeploy");
8
- const v3_1 = require("./v3");
9
- const legacy_1 = require("./legacy");
10
- const logger_1 = require("../../ui/logger");
11
- const en_1 = require("../../../lang/en");
12
- const exitCodes_1 = require("../../enums/exitCodes");
13
- async function handleProjectCreationFlow(args) {
1
+ import { selectProjectTemplatePrompt, } from '../../prompts/selectProjectTemplatePrompt.js';
2
+ import { projectNameAndDestPrompt } from '../../prompts/projectNameAndDestPrompt.js';
3
+ import { HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH } from '../../constants.js';
4
+ import { useV3Api } from '../buildAndDeploy.js';
5
+ import { EMPTY_PROJECT, v3ComponentFlow } from './v3.js';
6
+ import { getProjectTemplateListFromRepo } from './legacy.js';
7
+ import { uiLogger } from '../../ui/logger.js';
8
+ import { commands } from '../../../lang/en.js';
9
+ import { EXIT_CODES } from '../../enums/exitCodes.js';
10
+ export async function handleProjectCreationFlow(args) {
14
11
  const { platformVersion, templateSource, projectBase, auth: providedAuth, distribution: providedDistribution, } = args;
15
- const repo = templateSource || constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH;
16
- const projectNameAndDestPromptResponse = await (0, projectNameAndDestPrompt_1.projectNameAndDestPrompt)(args);
17
- if ((0, buildAndDeploy_1.useV3Api)(platformVersion)) {
18
- const { componentTemplateChoices, authType, distribution, repoConfig, projectContents, } = await (0, v3_1.v3ComponentFlow)(platformVersion, projectBase, providedAuth, providedDistribution);
19
- const selectProjectTemplatePromptResponse = await (0, selectProjectTemplatePrompt_1.selectProjectTemplatePrompt)(args, undefined, projectContents !== v3_1.EMPTY_PROJECT ? componentTemplateChoices : undefined);
12
+ const repo = templateSource || HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH;
13
+ const projectNameAndDestPromptResponse = await projectNameAndDestPrompt(args);
14
+ if (useV3Api(platformVersion)) {
15
+ const { componentTemplateChoices, authType, distribution, repoConfig, projectContents, } = await v3ComponentFlow(platformVersion, projectBase, providedAuth, providedDistribution);
16
+ const selectProjectTemplatePromptResponse = await selectProjectTemplatePrompt(args, undefined, projectContents !== EMPTY_PROJECT ? componentTemplateChoices : undefined);
20
17
  return {
21
18
  authType,
22
19
  distribution,
@@ -26,12 +23,12 @@ async function handleProjectCreationFlow(args) {
26
23
  projectNameAndDestPromptResponse,
27
24
  };
28
25
  }
29
- const projectTemplates = await (0, legacy_1.getProjectTemplateListFromRepo)(repo, 'main');
26
+ const projectTemplates = await getProjectTemplateListFromRepo(repo, 'main');
30
27
  if (!projectTemplates.length) {
31
- logger_1.uiLogger.error(en_1.commands.project.create.errors.failedToFetchProjectList);
32
- process.exit(exitCodes_1.EXIT_CODES.ERROR);
28
+ uiLogger.error(commands.project.create.errors.failedToFetchProjectList);
29
+ process.exit(EXIT_CODES.ERROR);
33
30
  }
34
- const selectProjectTemplatePromptResponse = await (0, selectProjectTemplatePrompt_1.selectProjectTemplatePrompt)(args, projectTemplates);
31
+ const selectProjectTemplatePromptResponse = await selectProjectTemplatePrompt(args, projectTemplates);
35
32
  return {
36
33
  selectProjectTemplatePromptResponse,
37
34
  projectNameAndDestPromptResponse,
@@ -1,5 +1,5 @@
1
1
  import { RepoPath } from '@hubspot/local-dev-lib/types/Github';
2
- import { ProjectTemplate, ComponentTemplate, ProjectTemplateRepoConfig } from '../../../types/Projects';
2
+ import { ProjectTemplate, ComponentTemplate, ProjectTemplateRepoConfig } from '../../../types/Projects.js';
3
3
  export declare const EMPTY_PROJECT_TEMPLATE_NAME = "no-template";
4
4
  export declare function getConfigForPlatformVersion(platformVersion: string): Promise<ProjectTemplateRepoConfig> | never;
5
5
  export declare function getProjectComponentListFromRepo(platformVersion: string): Promise<ComponentTemplate[]>;
@@ -1,59 +1,53 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EMPTY_PROJECT_TEMPLATE_NAME = void 0;
4
- exports.getConfigForPlatformVersion = getConfigForPlatformVersion;
5
- exports.getProjectComponentListFromRepo = getProjectComponentListFromRepo;
6
- exports.getProjectTemplateListFromRepo = getProjectTemplateListFromRepo;
7
- const github_1 = require("@hubspot/local-dev-lib/api/github");
8
- const constants_1 = require("../../constants");
9
- const exitCodes_1 = require("../../enums/exitCodes");
10
- const errorHandlers_1 = require("../../errorHandlers");
11
- const logger_1 = require("../../ui/logger");
12
- const buildAndDeploy_1 = require("../buildAndDeploy");
13
- const en_1 = require("../../../lang/en");
1
+ import { fetchRepoFile } from '@hubspot/local-dev-lib/api/github';
2
+ import { HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, PROJECT_COMPONENT_TYPES, } from '../../constants.js';
3
+ import { EXIT_CODES } from '../../enums/exitCodes.js';
4
+ import { debugError } from '../../errorHandlers/index.js';
5
+ import { uiLogger } from '../../ui/logger.js';
6
+ import { useV3Api } from '../buildAndDeploy.js';
7
+ import { lib } from '../../../lang/en.js';
14
8
  const PROJECT_TEMPLATE_PROPERTIES = ['name', 'label', 'path'];
15
- exports.EMPTY_PROJECT_TEMPLATE_NAME = 'no-template';
16
- async function getConfigForPlatformVersion(platformVersion) {
9
+ export const EMPTY_PROJECT_TEMPLATE_NAME = 'no-template';
10
+ export async function getConfigForPlatformVersion(platformVersion) {
17
11
  let path = '';
18
- if ((0, buildAndDeploy_1.useV3Api)(platformVersion)) {
12
+ if (useV3Api(platformVersion)) {
19
13
  path = `${platformVersion}/`;
20
14
  }
21
- const { data } = await (0, github_1.fetchRepoFile)(constants_1.HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, `${path}config.json`, 'main');
15
+ const { data } = await fetchRepoFile(HUBSPOT_PROJECT_COMPONENTS_GITHUB_PATH, `${path}config.json`, 'main');
22
16
  return data;
23
17
  }
24
- async function getProjectComponentListFromRepo(platformVersion) {
18
+ export async function getProjectComponentListFromRepo(platformVersion) {
25
19
  let config;
26
20
  try {
27
21
  config = await getConfigForPlatformVersion(platformVersion);
28
22
  }
29
23
  catch (err) {
30
- (0, errorHandlers_1.debugError)(err);
24
+ debugError(err);
31
25
  }
32
26
  if (config) {
33
- return config[constants_1.PROJECT_COMPONENT_TYPES.COMPONENTS] || [];
27
+ return config[PROJECT_COMPONENT_TYPES.COMPONENTS] || [];
34
28
  }
35
29
  return [];
36
30
  }
37
- async function getProjectTemplateListFromRepo(templateSource, githubRef) {
31
+ export async function getProjectTemplateListFromRepo(templateSource, githubRef) {
38
32
  let config;
39
33
  try {
40
- const { data } = await (0, github_1.fetchRepoFile)(templateSource, 'config.json', githubRef);
34
+ const { data } = await fetchRepoFile(templateSource, 'config.json', githubRef);
41
35
  config = data;
42
36
  }
43
37
  catch (e) {
44
- (0, errorHandlers_1.debugError)(e);
45
- logger_1.uiLogger.error(en_1.lib.projects.create.errors.missingConfigFileTemplateSource);
46
- return process.exit(exitCodes_1.EXIT_CODES.ERROR);
38
+ debugError(e);
39
+ uiLogger.error(lib.projects.create.errors.missingConfigFileTemplateSource);
40
+ return process.exit(EXIT_CODES.ERROR);
47
41
  }
48
- if (!config || !config[constants_1.PROJECT_COMPONENT_TYPES.PROJECTS]) {
49
- logger_1.uiLogger.error(en_1.lib.projects.create.errors.noProjectsInConfig);
50
- return process.exit(exitCodes_1.EXIT_CODES.ERROR);
42
+ if (!config || !config[PROJECT_COMPONENT_TYPES.PROJECTS]) {
43
+ uiLogger.error(lib.projects.create.errors.noProjectsInConfig);
44
+ return process.exit(EXIT_CODES.ERROR);
51
45
  }
52
- const templates = config[constants_1.PROJECT_COMPONENT_TYPES.PROJECTS];
46
+ const templates = config[PROJECT_COMPONENT_TYPES.PROJECTS];
53
47
  const templatesContainAllProperties = templates.every(config => PROJECT_TEMPLATE_PROPERTIES.every(p => Object.prototype.hasOwnProperty.call(config, p)));
54
48
  if (!templatesContainAllProperties) {
55
- logger_1.uiLogger.error(en_1.lib.projects.create.errors.missingPropertiesInConfig);
56
- return process.exit(exitCodes_1.EXIT_CODES.ERROR);
49
+ uiLogger.error(lib.projects.create.errors.missingPropertiesInConfig);
50
+ return process.exit(EXIT_CODES.ERROR);
57
51
  }
58
52
  return templates;
59
53
  }
@@ -1,7 +1,7 @@
1
1
  import { Separator } from '@inquirer/prompts';
2
- import { ComponentTemplate, ComponentTemplateChoice, ProjectTemplateRepoConfig } from '../../../types/Projects';
3
- import { ProjectMetadata } from '@hubspot/project-parsing-lib/src/lib/project';
4
- import { SelectProjectTemplatePromptResponse } from '../../prompts/selectProjectTemplatePrompt';
2
+ import { ComponentTemplate, ComponentTemplateChoice, ProjectTemplateRepoConfig } from '../../../types/Projects.js';
3
+ import { ProjectMetadata } from '@hubspot/project-parsing-lib/src/lib/project.js';
4
+ import { SelectProjectTemplatePromptResponse } from '../../prompts/selectProjectTemplatePrompt.js';
5
5
  export declare const EMPTY_PROJECT = "empty";
6
6
  export declare const PROJECT_WITH_APP = "app";
7
7
  export declare function createV3App(providedAuth: string | undefined, providedDistribution: string | undefined): Promise<{
@@ -1,65 +1,55 @@
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.PROJECT_WITH_APP = exports.EMPTY_PROJECT = void 0;
7
- exports.createV3App = createV3App;
8
- exports.calculateComponentTemplateChoices = calculateComponentTemplateChoices;
9
- exports.v3ComponentFlow = v3ComponentFlow;
10
- exports.generateComponentPaths = generateComponentPaths;
11
- const prompts_1 = require("@inquirer/prompts");
12
- const constants_1 = require("../../constants");
13
- const en_1 = require("../../../lang/en");
14
- const promptUtils_1 = require("../../prompts/promptUtils");
15
- const chalk_1 = __importDefault(require("chalk"));
16
- const buildAndDeploy_1 = require("../buildAndDeploy");
17
- const path_1 = __importDefault(require("path"));
18
- const legacy_1 = require("./legacy");
19
- const errorHandlers_1 = require("../../errorHandlers");
20
- const exitCodes_1 = require("../../enums/exitCodes");
21
- exports.EMPTY_PROJECT = 'empty';
22
- exports.PROJECT_WITH_APP = 'app';
23
- async function createV3App(providedAuth, providedDistribution) {
1
+ import { Separator } from '@inquirer/prompts';
2
+ import { marketplaceDistribution, oAuth, privateDistribution, staticAuth, } from '../../constants.js';
3
+ import { commands, lib } from '../../../lang/en.js';
4
+ import { listPrompt } from '../../prompts/promptUtils.js';
5
+ import chalk from 'chalk';
6
+ import { useV3Api } from '../buildAndDeploy.js';
7
+ import path from 'path';
8
+ import { getConfigForPlatformVersion } from './legacy.js';
9
+ import { logError } from '../../errorHandlers/index.js';
10
+ import { EXIT_CODES } from '../../enums/exitCodes.js';
11
+ export const EMPTY_PROJECT = 'empty';
12
+ export const PROJECT_WITH_APP = 'app';
13
+ export async function createV3App(providedAuth, providedDistribution) {
24
14
  let authType;
25
15
  if (providedAuth &&
26
- providedDistribution === constants_1.marketplaceDistribution &&
27
- providedAuth !== constants_1.oAuth) {
28
- throw new Error(en_1.lib.projects.create.errors.invalidAuthDistCombo(providedAuth, providedDistribution));
16
+ providedDistribution === marketplaceDistribution &&
17
+ providedAuth !== oAuth) {
18
+ throw new Error(lib.projects.create.errors.invalidAuthDistCombo(providedAuth, providedDistribution));
29
19
  }
30
20
  const distribution = providedDistribution ||
31
- (await (0, promptUtils_1.listPrompt)(en_1.lib.projects.create.prompt.distribution, {
21
+ (await listPrompt(lib.projects.create.prompt.distribution, {
32
22
  choices: [
33
23
  {
34
- name: en_1.lib.projects.create.prompt.marketPlaceDistribution,
35
- value: constants_1.marketplaceDistribution,
24
+ name: lib.projects.create.prompt.marketPlaceDistribution,
25
+ value: marketplaceDistribution,
36
26
  },
37
27
  {
38
- name: en_1.lib.projects.create.prompt.privateDistribution,
39
- value: constants_1.privateDistribution,
28
+ name: lib.projects.create.prompt.privateDistribution,
29
+ value: privateDistribution,
40
30
  },
41
31
  ],
42
32
  }));
43
- if (distribution === constants_1.marketplaceDistribution) {
33
+ if (distribution === marketplaceDistribution) {
44
34
  // This is the only valid auth type for marketplace
45
- authType = constants_1.oAuth;
35
+ authType = oAuth;
46
36
  }
47
37
  else {
48
38
  authType =
49
39
  providedAuth ||
50
- (await (0, promptUtils_1.listPrompt)(en_1.lib.projects.create.prompt.auth, {
40
+ (await listPrompt(lib.projects.create.prompt.auth, {
51
41
  choices: [
52
- { name: en_1.lib.projects.create.prompt.staticAuth, value: constants_1.staticAuth },
53
- { name: en_1.lib.projects.create.prompt.oauth, value: constants_1.oAuth },
42
+ { name: lib.projects.create.prompt.staticAuth, value: staticAuth },
43
+ { name: lib.projects.create.prompt.oauth, value: oAuth },
54
44
  ],
55
45
  }));
56
46
  }
57
47
  return {
58
- distribution,
59
- authType,
48
+ distribution: distribution,
49
+ authType: authType,
60
50
  };
61
51
  }
62
- function calculateComponentTemplateChoices(components, authType, distribution, projectMetadata) {
52
+ export function calculateComponentTemplateChoices(components, authType, distribution, projectMetadata) {
63
53
  const enabledComponents = [];
64
54
  const disabledComponents = [];
65
55
  components.forEach(template => {
@@ -68,22 +58,22 @@ function calculateComponentTemplateChoices(components, authType, distribution, p
68
58
  if (projectMetadata) {
69
59
  const { count, maxCount } = projectMetadata.components[template.type];
70
60
  if (count >= maxCount) {
71
- disabledReasons.push(en_1.commands.project.add.error.maxExceeded(maxCount));
61
+ disabledReasons.push(commands.project.add.error.maxExceeded(maxCount));
72
62
  }
73
63
  }
74
64
  if (Array.isArray(supportedAuthTypes) &&
75
65
  authType &&
76
66
  !supportedAuthTypes.includes(authType)) {
77
- disabledReasons.push(en_1.commands.project.add.error.authTypeNotAllowed(authType));
67
+ disabledReasons.push(commands.project.add.error.authTypeNotAllowed(authType));
78
68
  }
79
69
  if (Array.isArray(supportedDistributions) &&
80
70
  distribution &&
81
71
  !supportedDistributions.includes(distribution)) {
82
- disabledReasons.push(en_1.commands.project.add.error.distributionNotAllowed(distribution));
72
+ disabledReasons.push(commands.project.add.error.distributionNotAllowed(distribution));
83
73
  }
84
74
  if (disabledReasons.length > 0) {
85
75
  disabledComponents.push({
86
- name: `[${chalk_1.default.yellow('DISABLED')}] ${template.label}`,
76
+ name: `[${chalk.yellow('DISABLED')}] ${template.label}`,
87
77
  value: template,
88
78
  disabled: disabledReasons.join(' '),
89
79
  });
@@ -96,31 +86,31 @@ function calculateComponentTemplateChoices(components, authType, distribution, p
96
86
  }
97
87
  });
98
88
  return disabledComponents.length
99
- ? [...enabledComponents, new prompts_1.Separator(), ...disabledComponents]
89
+ ? [...enabledComponents, new Separator(), ...disabledComponents]
100
90
  : [...enabledComponents];
101
91
  }
102
- async function v3ComponentFlow(platformVersion, projectBase, providedAuth, providedDistribution) {
92
+ export async function v3ComponentFlow(platformVersion, projectBase, providedAuth, providedDistribution) {
103
93
  let repoConfig = undefined;
104
94
  let authType;
105
95
  let distribution;
106
96
  try {
107
- repoConfig = await (0, legacy_1.getConfigForPlatformVersion)(platformVersion);
97
+ repoConfig = await getConfigForPlatformVersion(platformVersion);
108
98
  }
109
99
  catch (error) {
110
- (0, errorHandlers_1.logError)(error);
111
- return process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
100
+ logError(error);
101
+ return process.exit(EXIT_CODES.SUCCESS);
112
102
  }
113
103
  const projectContentsChoice = projectBase ||
114
- (await (0, promptUtils_1.listPrompt)(en_1.commands.project.create.prompts.parentComponents, {
104
+ (await listPrompt(commands.project.create.prompts.parentComponents, {
115
105
  choices: [
116
106
  {
117
- name: en_1.commands.project.create.prompts.emptyProject,
118
- value: exports.EMPTY_PROJECT,
107
+ name: commands.project.create.prompts.emptyProject,
108
+ value: EMPTY_PROJECT,
119
109
  },
120
- { name: en_1.commands.project.create.prompts.app, value: exports.PROJECT_WITH_APP },
110
+ { name: commands.project.create.prompts.app, value: PROJECT_WITH_APP },
121
111
  ],
122
112
  }));
123
- if (projectContentsChoice === exports.PROJECT_WITH_APP) {
113
+ if (projectContentsChoice === PROJECT_WITH_APP) {
124
114
  const { authType: selectedAuthType, distribution: selectedDistribution } = await createV3App(providedAuth, providedDistribution);
125
115
  authType = selectedAuthType;
126
116
  distribution = selectedDistribution;
@@ -134,25 +124,25 @@ async function v3ComponentFlow(platformVersion, projectBase, providedAuth, provi
134
124
  repoConfig,
135
125
  };
136
126
  }
137
- function generateComponentPaths({ selectProjectTemplatePromptResponse, platformVersion, repoConfig, projectContents, authType, distribution, }) {
138
- if (!(0, buildAndDeploy_1.useV3Api)(platformVersion)) {
127
+ export function generateComponentPaths({ selectProjectTemplatePromptResponse, platformVersion, repoConfig, projectContents, authType, distribution, }) {
128
+ if (!useV3Api(platformVersion)) {
139
129
  return [];
140
130
  }
141
131
  const components = selectProjectTemplatePromptResponse.componentTemplates?.map((componentTemplate) => {
142
- return path_1.default.join(platformVersion, componentTemplate.path);
132
+ return path.join(platformVersion, componentTemplate.path);
143
133
  }) || [];
144
- if (projectContents && projectContents !== exports.EMPTY_PROJECT) {
134
+ if (projectContents && projectContents !== EMPTY_PROJECT) {
145
135
  const parentComponent = repoConfig?.parentComponents?.find(possibleParent => {
146
136
  return (possibleParent.type === projectContents &&
147
137
  possibleParent.authType === authType &&
148
138
  possibleParent.distribution === distribution);
149
139
  });
150
140
  if (parentComponent) {
151
- components.push(path_1.default.join(platformVersion, parentComponent.path));
141
+ components.push(path.join(platformVersion, parentComponent.path));
152
142
  }
153
143
  }
154
144
  if (repoConfig?.defaultFiles) {
155
- components.push(path_1.default.join(platformVersion, repoConfig?.defaultFiles));
145
+ components.push(path.join(platformVersion, repoConfig?.defaultFiles));
156
146
  }
157
147
  return components;
158
148
  }