@hubspot/cli 7.7.21-experimental.1 → 7.7.23-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 (568) 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 +45 -50
  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 -16
  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 +2 -1
  96. package/commands/config/set.js +40 -32
  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 +119 -125
  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 +96 -134
  215. package/commands/project/__tests__/devUnifiedFlow.test.js +133 -139
  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 +63 -68
  232. package/commands/project/deploy.d.ts +1 -1
  233. package/commands/project/deploy.js +67 -69
  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 +45 -53
  297. package/commands/testAccount/createConfig.d.ts +1 -1
  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 +10 -23
  319. package/lang/en.js +380 -399
  320. package/lib/__tests__/accountTypes.test.js +20 -22
  321. package/lib/__tests__/buildAccount.test.js +28 -63
  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 +17 -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 +71 -80
  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.d.ts +5 -0
  352. package/lib/configOptions.js +44 -40
  353. package/lib/constants.d.ts +4 -0
  354. package/lib/constants.js +35 -34
  355. package/lib/customObject.js +2 -6
  356. package/lib/dependencyManagement.js +37 -45
  357. package/lib/developerTestAccounts.d.ts +1 -1
  358. package/lib/developerTestAccounts.js +34 -39
  359. package/lib/doctor/Diagnosis.d.ts +1 -1
  360. package/lib/doctor/Diagnosis.js +25 -29
  361. package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
  362. package/lib/doctor/DiagnosticInfoBuilder.js +30 -37
  363. package/lib/doctor/Doctor.d.ts +1 -1
  364. package/lib/doctor/Doctor.js +94 -101
  365. package/lib/doctor/__tests__/Diagnosis.test.js +9 -14
  366. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +29 -34
  367. package/lib/doctor/__tests__/Doctor.test.js +24 -26
  368. package/lib/enums/exitCodes.js +1 -4
  369. package/lib/errorHandlers/index.js +32 -41
  370. package/lib/errorHandlers/suppressError.d.ts +1 -1
  371. package/lib/errorHandlers/suppressError.js +28 -31
  372. package/lib/filesystem.js +8 -15
  373. package/lib/generateSelectors.js +18 -29
  374. package/lib/hasFeature.d.ts +1 -1
  375. package/lib/hasFeature.js +3 -6
  376. package/lib/interpolation.js +11 -18
  377. package/lib/lang.d.ts +1 -1
  378. package/lib/lang.js +22 -27
  379. package/lib/links.js +16 -24
  380. package/lib/marketplaceValidate.js +29 -39
  381. package/lib/mcp/setup.js +70 -82
  382. package/lib/middleware/__test__/configMiddleware.test.js +20 -55
  383. package/lib/middleware/__test__/gitMiddleware.test.js +7 -42
  384. package/lib/middleware/__test__/notificationsMiddleware.test.js +2 -4
  385. package/lib/middleware/__test__/requestMiddleware.test.js +6 -11
  386. package/lib/middleware/__test__/utils.test.js +9 -11
  387. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +9 -44
  388. package/lib/middleware/autoUpdateMiddleware.js +33 -40
  389. package/lib/middleware/configMiddleware.js +36 -42
  390. package/lib/middleware/fireAlarmMiddleware.js +12 -18
  391. package/lib/middleware/gitMiddleware.js +5 -8
  392. package/lib/middleware/notificationsMiddleware.js +16 -23
  393. package/lib/middleware/requestMiddleware.js +4 -10
  394. package/lib/middleware/utils.js +1 -4
  395. package/lib/middleware/yargsChecksMiddleware.js +10 -13
  396. package/lib/npm.js +14 -23
  397. package/lib/oauth.js +29 -35
  398. package/lib/parsing.js +3 -6
  399. package/lib/polling.js +11 -15
  400. package/lib/process.js +11 -19
  401. package/lib/projectProfiles.d.ts +2 -2
  402. package/lib/projectProfiles.js +32 -42
  403. package/lib/projects/ProjectLogsManager.js +18 -21
  404. package/lib/projects/__tests__/AppDevModeInterface.test.js +140 -145
  405. package/lib/projects/__tests__/LocalDevProcess.test.js +68 -73
  406. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +32 -37
  407. package/lib/projects/__tests__/ProjectLogsManager.test.js +56 -58
  408. package/lib/projects/__tests__/buildAndDeploy.test.js +7 -9
  409. package/lib/projects/__tests__/components.test.js +9 -14
  410. package/lib/projects/__tests__/projects.test.js +35 -40
  411. package/lib/projects/__tests__/structure.test.js +43 -81
  412. package/lib/projects/add/__tests__/legacyAddComponent.test.js +26 -28
  413. package/lib/projects/add/__tests__/v3AddComponent.test.js +25 -30
  414. package/lib/projects/add/legacyAddComponent.d.ts +1 -1
  415. package/lib/projects/add/legacyAddComponent.js +24 -30
  416. package/lib/projects/add/v3AddComponent.d.ts +1 -1
  417. package/lib/projects/add/v3AddComponent.js +36 -42
  418. package/lib/projects/buildAndDeploy.d.ts +1 -1
  419. package/lib/projects/buildAndDeploy.js +88 -97
  420. package/lib/projects/components.js +19 -25
  421. package/lib/projects/config.d.ts +1 -1
  422. package/lib/projects/config.js +32 -41
  423. package/lib/projects/create/__tests__/legacy.test.js +22 -57
  424. package/lib/projects/create/__tests__/v3.test.js +5 -7
  425. package/lib/projects/create/index.d.ts +3 -3
  426. package/lib/projects/create/index.js +19 -22
  427. package/lib/projects/create/legacy.d.ts +1 -1
  428. package/lib/projects/create/legacy.js +25 -31
  429. package/lib/projects/create/v3.d.ts +3 -3
  430. package/lib/projects/create/v3.js +49 -59
  431. package/lib/projects/ensureProjectExists.js +31 -37
  432. package/lib/projects/localDev/AppDevModeInterface.d.ts +3 -3
  433. package/lib/projects/localDev/AppDevModeInterface.js +58 -60
  434. package/lib/projects/localDev/DevServerManager.d.ts +1 -1
  435. package/lib/projects/localDev/DevServerManager.js +22 -24
  436. package/lib/projects/localDev/DevServerManagerV2.d.ts +2 -2
  437. package/lib/projects/localDev/DevServerManagerV2.js +15 -20
  438. package/lib/projects/localDev/LocalDevLogger.d.ts +1 -1
  439. package/lib/projects/localDev/LocalDevLogger.js +68 -64
  440. package/lib/projects/localDev/LocalDevManager.d.ts +1 -1
  441. package/lib/projects/localDev/LocalDevManager.js +106 -111
  442. package/lib/projects/localDev/LocalDevProcess.d.ts +5 -4
  443. package/lib/projects/localDev/LocalDevProcess.js +37 -30
  444. package/lib/projects/localDev/LocalDevState.d.ts +3 -3
  445. package/lib/projects/localDev/LocalDevState.js +3 -5
  446. package/lib/projects/localDev/LocalDevWatcher.d.ts +1 -1
  447. package/lib/projects/localDev/LocalDevWatcher.js +6 -11
  448. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +1 -1
  449. package/lib/projects/localDev/LocalDevWebsocketServer.js +29 -27
  450. package/lib/projects/localDev/helpers.d.ts +3 -3
  451. package/lib/projects/localDev/helpers.js +156 -174
  452. package/lib/projects/structure.d.ts +4 -4
  453. package/lib/projects/structure.js +32 -78
  454. package/lib/projects/ui.js +10 -13
  455. package/lib/projects/upload.d.ts +2 -3
  456. package/lib/projects/upload.js +55 -65
  457. package/lib/projects/urls.d.ts +1 -1
  458. package/lib/projects/urls.js +15 -25
  459. package/lib/projects/watch.d.ts +1 -1
  460. package/lib/projects/watch.js +48 -54
  461. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +9 -11
  462. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +11 -16
  463. package/lib/prompts/accountNamePrompt.d.ts +1 -1
  464. package/lib/prompts/accountNamePrompt.js +26 -31
  465. package/lib/prompts/accountsPrompt.js +12 -15
  466. package/lib/prompts/cmsFieldPrompt.js +13 -19
  467. package/lib/prompts/createApiSamplePrompt.d.ts +1 -1
  468. package/lib/prompts/createApiSamplePrompt.js +9 -12
  469. package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +1 -1
  470. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +23 -26
  471. package/lib/prompts/createFunctionPrompt.js +17 -20
  472. package/lib/prompts/createModulePrompt.js +12 -15
  473. package/lib/prompts/createTemplatePrompt.js +5 -8
  474. package/lib/prompts/downloadProjectPrompt.js +17 -20
  475. package/lib/prompts/installAppPrompt.js +19 -26
  476. package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -2
  477. package/lib/prompts/personalAccessKeyPrompt.js +40 -47
  478. package/lib/prompts/previewPrompt.js +15 -22
  479. package/lib/prompts/projectAddPrompt.d.ts +1 -1
  480. package/lib/prompts/projectAddPrompt.js +14 -18
  481. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -1
  482. package/lib/prompts/projectDevTargetAccountPrompt.js +48 -54
  483. package/lib/prompts/projectNameAndDestPrompt.d.ts +1 -1
  484. package/lib/prompts/projectNameAndDestPrompt.js +22 -29
  485. package/lib/prompts/projectNamePrompt.js +11 -14
  486. package/lib/prompts/projectsLogsPrompt.js +5 -8
  487. package/lib/prompts/promptUtils.d.ts +1 -1
  488. package/lib/prompts/promptUtils.js +17 -24
  489. package/lib/prompts/sandboxesPrompt.d.ts +1 -1
  490. package/lib/prompts/sandboxesPrompt.js +26 -30
  491. package/lib/prompts/secretPrompt.js +10 -15
  492. package/lib/prompts/selectAppPrompt.js +11 -14
  493. package/lib/prompts/selectHubDBTablePrompt.js +24 -30
  494. package/lib/prompts/selectProjectTemplatePrompt.d.ts +1 -1
  495. package/lib/prompts/selectProjectTemplatePrompt.js +10 -13
  496. package/lib/prompts/selectPublicAppForMigrationPrompt.js +22 -25
  497. package/lib/prompts/setAsDefaultAccountPrompt.js +13 -16
  498. package/lib/prompts/uploadPrompt.js +11 -17
  499. package/lib/sandboxSync.d.ts +1 -1
  500. package/lib/sandboxSync.js +58 -65
  501. package/lib/sandboxes.d.ts +1 -1
  502. package/lib/sandboxes.js +68 -76
  503. package/lib/schema.js +13 -20
  504. package/lib/serverlessLogs.js +45 -52
  505. package/lib/testUtils.js +4 -8
  506. package/lib/ui/SpinniesManager.d.ts +1 -1
  507. package/lib/ui/SpinniesManager.js +29 -34
  508. package/lib/ui/boxen.js +11 -14
  509. package/lib/ui/git.js +14 -20
  510. package/lib/ui/index.js +55 -73
  511. package/lib/ui/logger.js +10 -13
  512. package/lib/ui/serverlessFunctionLogs.js +14 -20
  513. package/lib/ui/spinniesUtils.js +24 -39
  514. package/lib/ui/supportHyperlinks.js +3 -6
  515. package/lib/ui/supportsColor.js +11 -17
  516. package/lib/ui/table.js +6 -13
  517. package/lib/upload.js +15 -21
  518. package/lib/usageTracking.js +35 -44
  519. package/lib/utils/hasFlag.js +2 -8
  520. package/lib/validation.js +48 -87
  521. package/lib/yargsUtils.d.ts +2 -1
  522. package/lib/yargsUtils.js +19 -16
  523. package/mcp-server/server.js +6 -8
  524. package/mcp-server/tools/index.js +13 -16
  525. package/mcp-server/tools/project/AddFeatureToProject.d.ts +1 -1
  526. package/mcp-server/tools/project/AddFeatureToProject.js +35 -39
  527. package/mcp-server/tools/project/CreateProjectTool.d.ts +1 -1
  528. package/mcp-server/tools/project/CreateProjectTool.js +46 -50
  529. package/mcp-server/tools/project/DeployProject.d.ts +1 -1
  530. package/mcp-server/tools/project/DeployProject.js +18 -22
  531. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +1 -1
  532. package/mcp-server/tools/project/GuidedWalkthroughTool.js +21 -25
  533. package/mcp-server/tools/project/UploadProjectTools.d.ts +1 -1
  534. package/mcp-server/tools/project/UploadProjectTools.js +12 -19
  535. package/mcp-server/tools/project/ValidateProjectTool.d.ts +1 -1
  536. package/mcp-server/tools/project/ValidateProjectTool.js +13 -17
  537. package/mcp-server/tools/project/__tests__/AddFeatureToProject.test.js +12 -14
  538. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +13 -15
  539. package/mcp-server/tools/project/__tests__/DeployProject.test.js +6 -8
  540. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +4 -6
  541. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +4 -6
  542. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +4 -6
  543. package/mcp-server/tools/project/constants.js +3 -9
  544. package/mcp-server/types.js +1 -5
  545. package/mcp-server/utils/__tests__/command.test.js +9 -11
  546. package/mcp-server/utils/__tests__/project.test.js +12 -17
  547. package/mcp-server/utils/command.d.ts +1 -1
  548. package/mcp-server/utils/command.js +4 -11
  549. package/mcp-server/utils/content.d.ts +1 -1
  550. package/mcp-server/utils/content.js +2 -6
  551. package/mcp-server/utils/project.js +8 -14
  552. package/mcp-server/utils/toolUsageTracking.js +11 -14
  553. package/package.json +15 -11
  554. package/types/Cms.d.ts +1 -1
  555. package/types/Cms.js +1 -2
  556. package/types/LocalDev.d.ts +4 -4
  557. package/types/LocalDev.js +1 -2
  558. package/types/ProjectComponents.d.ts +2 -2
  559. package/types/ProjectComponents.js +1 -2
  560. package/types/Projects.d.ts +1 -1
  561. package/types/Projects.js +2 -5
  562. package/types/Prompts.js +1 -2
  563. package/types/Sandboxes.js +1 -2
  564. package/types/Yargs.js +1 -2
  565. package/commands/app/__tests__/install.test.d.ts +0 -1
  566. package/commands/app/__tests__/install.test.js +0 -52
  567. package/commands/app/install.d.ts +0 -8
  568. package/commands/app/install.js +0 -127
@@ -1,60 +1,42 @@
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.getUnmigratableReason = getUnmigratableReason;
7
- exports.generateFilterAppsByProjectNameFunction = generateFilterAppsByProjectNameFunction;
8
- exports.buildErrorMessageFromMigrationStatus = buildErrorMessageFromMigrationStatus;
9
- exports.fetchMigrationApps = fetchMigrationApps;
10
- exports.promptForAppToMigrate = promptForAppToMigrate;
11
- exports.selectAppToMigrate = selectAppToMigrate;
12
- exports.handleMigrationSetup = handleMigrationSetup;
13
- exports.beginMigration = beginMigration;
14
- exports.pollMigrationStatus = pollMigrationStatus;
15
- exports.finalizeMigration = finalizeMigration;
16
- exports.downloadProjectFiles = downloadProjectFiles;
17
- exports.migrateApp2025_2 = migrateApp2025_2;
18
- exports.logInvalidAccountError = logInvalidAccountError;
19
- const path_1 = __importDefault(require("path"));
20
- const path_2 = require("@hubspot/local-dev-lib/path");
21
- const archive_1 = require("@hubspot/local-dev-lib/archive");
22
- const chalk_1 = __importDefault(require("chalk"));
23
- const project_parsing_lib_1 = require("@hubspot/project-parsing-lib");
24
- const projects_1 = require("@hubspot/local-dev-lib/constants/projects");
25
- const transform_1 = require("@hubspot/project-parsing-lib/src/lib/transform");
26
- const Migration_1 = require("@hubspot/local-dev-lib/types/Migration");
27
- const projects_2 = require("@hubspot/local-dev-lib/api/projects");
28
- const prompts_1 = require("@inquirer/prompts");
29
- const promptUtils_1 = require("../prompts/promptUtils");
30
- const ui_1 = require("../ui");
31
- const ensureProjectExists_1 = require("../projects/ensureProjectExists");
32
- const SpinniesManager_1 = __importDefault(require("../ui/SpinniesManager"));
33
- const polling_1 = require("../polling");
34
- const migrate_1 = require("../../api/migrate");
35
- const fs_1 = __importDefault(require("fs"));
36
- const en_1 = require("../../lang/en");
37
- const hasFeature_1 = require("../hasFeature");
38
- const constants_1 = require("../constants");
39
- const urls_1 = require("../projects/urls");
40
- const logger_1 = require("../ui/logger");
41
- function getUnmigratableReason(reasonCode, projectName, accountId) {
1
+ import path from 'path';
2
+ import { getCwd, sanitizeFileName } from '@hubspot/local-dev-lib/path';
3
+ import { extractZipArchive } from '@hubspot/local-dev-lib/archive';
4
+ import chalk from 'chalk';
5
+ import { validateUid } from '@hubspot/project-parsing-lib';
6
+ import { UNMIGRATABLE_REASONS } from '@hubspot/local-dev-lib/constants/projects';
7
+ import { mapToUserFacingType } from '@hubspot/project-parsing-lib/src/lib/transform.js';
8
+ import { MIGRATION_STATUS } from '@hubspot/local-dev-lib/types/Migration';
9
+ import { downloadProject } from '@hubspot/local-dev-lib/api/projects';
10
+ import { Separator } from '@inquirer/prompts';
11
+ import { confirmPrompt, inputPrompt, listPrompt, } from '../prompts/promptUtils.js';
12
+ import { uiAccountDescription, uiCommandReference, uiLine, uiLink, } from '../ui/index.js';
13
+ import { ensureProjectExists } from '../projects/ensureProjectExists.js';
14
+ import SpinniesManager from '../ui/SpinniesManager.js';
15
+ import { DEFAULT_POLLING_STATUS_LOOKUP, poll } from '../polling.js';
16
+ import { checkMigrationStatusV2, CLI_UNMIGRATABLE_REASONS, continueMigration, initializeMigration, isMigrationStatus, listAppsForMigration, } from '../../api/migrate.js';
17
+ import fs from 'fs';
18
+ import { lib } from '../../lang/en.js';
19
+ import { hasFeature } from '../hasFeature.js';
20
+ import { FEATURES } from '../constants.js';
21
+ import { getProjectBuildDetailUrl, getProjectDetailUrl, } from '../projects/urls.js';
22
+ import { uiLogger } from '../ui/logger.js';
23
+ export function getUnmigratableReason(reasonCode, projectName, accountId) {
42
24
  switch (reasonCode) {
43
- case projects_1.UNMIGRATABLE_REASONS.UP_TO_DATE:
44
- return en_1.lib.migrate.errors.unmigratableReasons.upToDate;
45
- case projects_1.UNMIGRATABLE_REASONS.IS_A_PRIVATE_APP:
46
- return en_1.lib.migrate.errors.unmigratableReasons.isPrivateApp;
47
- case projects_1.UNMIGRATABLE_REASONS.LISTED_IN_MARKETPLACE:
48
- return en_1.lib.migrate.errors.unmigratableReasons.listedInMarketplace;
49
- case projects_1.UNMIGRATABLE_REASONS.PROJECT_CONNECTED_TO_GITHUB:
50
- return en_1.lib.migrate.errors.unmigratableReasons.projectConnectedToGitHub(projectName, accountId);
51
- case migrate_1.CLI_UNMIGRATABLE_REASONS.PART_OF_PROJECT_ALREADY:
52
- return en_1.lib.migrate.errors.unmigratableReasons.partOfProjectAlready;
25
+ case UNMIGRATABLE_REASONS.UP_TO_DATE:
26
+ return lib.migrate.errors.unmigratableReasons.upToDate;
27
+ case UNMIGRATABLE_REASONS.IS_A_PRIVATE_APP:
28
+ return lib.migrate.errors.unmigratableReasons.isPrivateApp;
29
+ case UNMIGRATABLE_REASONS.LISTED_IN_MARKETPLACE:
30
+ return lib.migrate.errors.unmigratableReasons.listedInMarketplace;
31
+ case UNMIGRATABLE_REASONS.PROJECT_CONNECTED_TO_GITHUB:
32
+ return lib.migrate.errors.unmigratableReasons.projectConnectedToGitHub(projectName, accountId);
33
+ case CLI_UNMIGRATABLE_REASONS.PART_OF_PROJECT_ALREADY:
34
+ return lib.migrate.errors.unmigratableReasons.partOfProjectAlready;
53
35
  default:
54
- return en_1.lib.migrate.errors.unmigratableReasons.generic(reasonCode);
36
+ return lib.migrate.errors.unmigratableReasons.generic(reasonCode);
55
37
  }
56
38
  }
57
- function generateFilterAppsByProjectNameFunction(projectConfig) {
39
+ export function generateFilterAppsByProjectNameFunction(projectConfig) {
58
40
  return (app) => {
59
41
  if (projectConfig) {
60
42
  return app.projectName === projectConfig?.projectConfig?.name;
@@ -62,7 +44,7 @@ function generateFilterAppsByProjectNameFunction(projectConfig) {
62
44
  return true;
63
45
  };
64
46
  }
65
- function buildErrorMessageFromMigrationStatus(error) {
47
+ export function buildErrorMessageFromMigrationStatus(error) {
66
48
  const { componentErrors, projectErrorDetail } = error;
67
49
  if (!componentErrors || !componentErrors.length) {
68
50
  return projectErrorDetail;
@@ -74,43 +56,43 @@ function buildErrorMessageFromMigrationStatus(error) {
74
56
  })
75
57
  .join('\n\t- ')}`;
76
58
  }
77
- async function fetchMigrationApps(appId, derivedAccountId, platformVersion, projectConfig) {
78
- const { data: { migratableApps, unmigratableApps }, } = await (0, migrate_1.listAppsForMigration)(derivedAccountId, platformVersion);
59
+ export async function fetchMigrationApps(appId, derivedAccountId, platformVersion, projectConfig) {
60
+ const { data: { migratableApps, unmigratableApps }, } = await listAppsForMigration(derivedAccountId, platformVersion);
79
61
  const filteredMigratableApps = migratableApps.filter(generateFilterAppsByProjectNameFunction(projectConfig));
80
62
  const filteredUnmigratableApps = unmigratableApps.filter(generateFilterAppsByProjectNameFunction(projectConfig));
81
63
  const allApps = [...filteredMigratableApps, ...filteredUnmigratableApps];
82
64
  if (allApps.length > 1 && projectConfig) {
83
- throw new Error(en_1.lib.migrate.errors.project.multipleApps);
65
+ throw new Error(lib.migrate.errors.project.multipleApps);
84
66
  }
85
67
  if (!projectConfig?.projectConfig) {
86
68
  allApps.forEach(app => {
87
69
  if (app.projectName) {
88
70
  app.isMigratable = false;
89
71
  app.unmigratableReason =
90
- migrate_1.CLI_UNMIGRATABLE_REASONS.PART_OF_PROJECT_ALREADY;
72
+ CLI_UNMIGRATABLE_REASONS.PART_OF_PROJECT_ALREADY;
91
73
  }
92
74
  });
93
75
  }
94
76
  if (allApps.length === 0 && projectConfig) {
95
- throw new Error(en_1.lib.migrate.errors.noAppsForProject(projectConfig?.projectConfig?.name || ''));
77
+ throw new Error(lib.migrate.errors.noAppsForProject(projectConfig?.projectConfig?.name || ''));
96
78
  }
97
79
  if (allApps.length === 0 || !allApps.some(app => app.isMigratable)) {
98
- const reasons = filteredUnmigratableApps.map(app => `${chalk_1.default.bold(app.appName)}: ${getUnmigratableReason(app.unmigratableReason, app.projectName, derivedAccountId)}`);
99
- throw new Error(en_1.lib.migrate.errors.noAppsEligible((0, ui_1.uiAccountDescription)(derivedAccountId), reasons));
80
+ const reasons = filteredUnmigratableApps.map(app => `${chalk.bold(app.appName)}: ${getUnmigratableReason(app.unmigratableReason, app.projectName, derivedAccountId)}`);
81
+ throw new Error(lib.migrate.errors.noAppsEligible(uiAccountDescription(derivedAccountId), reasons));
100
82
  }
101
83
  if (appId &&
102
84
  !allApps.some(app => {
103
85
  return app.appId === appId;
104
86
  })) {
105
- throw new Error(en_1.lib.migrate.errors.appWithAppIdNotFound(appId));
87
+ throw new Error(lib.migrate.errors.appWithAppIdNotFound(appId));
106
88
  }
107
89
  return allApps;
108
90
  }
109
- async function promptForAppToMigrate(allApps, derivedAccountId) {
91
+ export async function promptForAppToMigrate(allApps, derivedAccountId) {
110
92
  const appChoices = allApps.map(app => ({
111
93
  name: app.isMigratable
112
94
  ? app.appName
113
- : `[${chalk_1.default.yellow('DISABLED')}] ${app.appName} `,
95
+ : `[${chalk.yellow('DISABLED')}] ${app.appName} `,
114
96
  value: app,
115
97
  disabled: app.isMigratable
116
98
  ? false
@@ -118,17 +100,17 @@ async function promptForAppToMigrate(allApps, derivedAccountId) {
118
100
  }));
119
101
  const enabledChoices = appChoices.filter(app => !app.disabled);
120
102
  const disabledChoices = appChoices.filter(app => app.disabled);
121
- const { appId: selectedAppId } = await (0, promptUtils_1.listPrompt)(en_1.lib.migrate.prompt.chooseApp, {
122
- choices: [...enabledChoices, new prompts_1.Separator(), ...disabledChoices],
103
+ const { appId: selectedAppId } = await listPrompt(lib.migrate.prompt.chooseApp, {
104
+ choices: [...enabledChoices, new Separator(), ...disabledChoices],
123
105
  });
124
106
  return selectedAppId;
125
107
  }
126
- async function selectAppToMigrate(allApps, derivedAccountId, appId) {
108
+ export async function selectAppToMigrate(allApps, derivedAccountId, appId) {
127
109
  if (appId &&
128
110
  !allApps.some(app => {
129
111
  return app.appId === appId;
130
112
  })) {
131
- throw new Error(en_1.lib.migrate.errors.appWithAppIdNotFound(appId));
113
+ throw new Error(lib.migrate.errors.appWithAppIdNotFound(appId));
132
114
  }
133
115
  let appIdToMigrate = appId;
134
116
  if (!appIdToMigrate) {
@@ -139,20 +121,20 @@ async function selectAppToMigrate(allApps, derivedAccountId, appId) {
139
121
  const unmigratableComponents = new Set();
140
122
  selectedApp?.migrationComponents.forEach(component => {
141
123
  if (component.isSupported) {
142
- migratableComponents.add((0, transform_1.mapToUserFacingType)(component.componentType));
124
+ migratableComponents.add(mapToUserFacingType(component.componentType));
143
125
  }
144
126
  else {
145
- unmigratableComponents.add((0, transform_1.mapToUserFacingType)(component.componentType));
127
+ unmigratableComponents.add(mapToUserFacingType(component.componentType));
146
128
  }
147
129
  });
148
130
  if (migratableComponents.size !== 0) {
149
- logger_1.uiLogger.log(en_1.lib.migrate.componentsToBeMigrated(`\n - ${[...migratableComponents].join('\n - ')}`));
131
+ uiLogger.log(lib.migrate.componentsToBeMigrated(`\n - ${[...migratableComponents].join('\n - ')}`));
150
132
  }
151
133
  if (unmigratableComponents.size !== 0) {
152
- logger_1.uiLogger.log(en_1.lib.migrate.componentsThatWillNotBeMigrated(`\n - ${[...unmigratableComponents].join('\n - ')}`));
134
+ uiLogger.log(lib.migrate.componentsThatWillNotBeMigrated(`\n - ${[...unmigratableComponents].join('\n - ')}`));
153
135
  }
154
- logger_1.uiLogger.log('');
155
- const proceed = await (0, promptUtils_1.confirmPrompt)(en_1.lib.migrate.prompt.proceed, {
136
+ uiLogger.log('');
137
+ const proceed = await confirmPrompt(lib.migrate.prompt.proceed, {
156
138
  defaultAnswer: false,
157
139
  });
158
140
  return {
@@ -160,7 +142,7 @@ async function selectAppToMigrate(allApps, derivedAccountId, appId) {
160
142
  appIdToMigrate,
161
143
  };
162
144
  }
163
- async function handleMigrationSetup(derivedAccountId, options, projectConfig) {
145
+ export async function handleMigrationSetup(derivedAccountId, options, projectConfig) {
164
146
  const { name, dest, appId } = options;
165
147
  const allApps = await fetchMigrationApps(appId, derivedAccountId, options.platformVersion, projectConfig);
166
148
  const { proceed, appIdToMigrate } = await selectAppToMigrate(allApps, derivedAccountId, appId);
@@ -178,57 +160,57 @@ async function handleMigrationSetup(derivedAccountId, options, projectConfig) {
178
160
  };
179
161
  }
180
162
  const projectName = name ||
181
- (await (0, promptUtils_1.inputPrompt)(en_1.lib.migrate.prompt.inputName, {
163
+ (await inputPrompt(lib.migrate.prompt.inputName, {
182
164
  validate: async (input) => {
183
- const { projectExists } = await (0, ensureProjectExists_1.ensureProjectExists)(derivedAccountId, input, { allowCreate: false, noLogs: true });
165
+ const { projectExists } = await ensureProjectExists(derivedAccountId, input, { allowCreate: false, noLogs: true });
184
166
  if (projectExists) {
185
- return en_1.lib.migrate.errors.project.alreadyExists(input);
167
+ return lib.migrate.errors.project.alreadyExists(input);
186
168
  }
187
169
  return true;
188
170
  },
189
171
  }));
190
- const { projectExists } = await (0, ensureProjectExists_1.ensureProjectExists)(derivedAccountId, projectName, { allowCreate: false, noLogs: true });
172
+ const { projectExists } = await ensureProjectExists(derivedAccountId, projectName, { allowCreate: false, noLogs: true });
191
173
  if (projectExists) {
192
- throw new Error(en_1.lib.migrate.errors.project.alreadyExists(projectName));
174
+ throw new Error(lib.migrate.errors.project.alreadyExists(projectName));
193
175
  }
194
176
  const projectDest = dest ||
195
- (await (0, promptUtils_1.inputPrompt)(en_1.lib.migrate.prompt.inputDest, {
196
- defaultAnswer: path_1.default.resolve((0, path_2.getCwd)(), (0, path_2.sanitizeFileName)(projectName)),
177
+ (await inputPrompt(lib.migrate.prompt.inputDest, {
178
+ defaultAnswer: path.resolve(getCwd(), sanitizeFileName(projectName)),
197
179
  }));
198
180
  return { appIdToMigrate, projectName, projectDest };
199
181
  }
200
- async function beginMigration(derivedAccountId, appId, platformVersion) {
201
- SpinniesManager_1.default.add('beginningMigration', {
202
- text: en_1.lib.migrate.spinners.beginningMigration,
182
+ export async function beginMigration(derivedAccountId, appId, platformVersion) {
183
+ SpinniesManager.add('beginningMigration', {
184
+ text: lib.migrate.spinners.beginningMigration,
203
185
  });
204
186
  const uidMap = {};
205
- const { data } = await (0, migrate_1.initializeMigration)(derivedAccountId, appId, platformVersion);
187
+ const { data } = await initializeMigration(derivedAccountId, appId, platformVersion);
206
188
  const { migrationId } = data;
207
189
  let pollResponse;
208
190
  try {
209
191
  pollResponse = await pollMigrationStatus(derivedAccountId, migrationId, [
210
- Migration_1.MIGRATION_STATUS.INPUT_REQUIRED,
192
+ MIGRATION_STATUS.INPUT_REQUIRED,
211
193
  ]);
212
194
  }
213
195
  catch (error) {
214
- SpinniesManager_1.default.fail('beginningMigration', {
215
- text: en_1.lib.migrate.spinners.unableToStartMigration,
196
+ SpinniesManager.fail('beginningMigration', {
197
+ text: lib.migrate.spinners.unableToStartMigration,
216
198
  });
217
- if ((0, migrate_1.isMigrationStatus)(error) && error.status === Migration_1.MIGRATION_STATUS.FAILURE) {
199
+ if (isMigrationStatus(error) && error.status === MIGRATION_STATUS.FAILURE) {
218
200
  throw new Error(buildErrorMessageFromMigrationStatus(error));
219
201
  }
220
- throw new Error(en_1.lib.migrate.errors.migrationFailed, {
202
+ throw new Error(lib.migrate.errors.migrationFailed, {
221
203
  cause: error,
222
204
  });
223
205
  }
224
- if (pollResponse.status !== Migration_1.MIGRATION_STATUS.INPUT_REQUIRED) {
225
- SpinniesManager_1.default.fail('beginningMigration', {
226
- text: en_1.lib.migrate.spinners.unableToStartMigration,
206
+ if (pollResponse.status !== MIGRATION_STATUS.INPUT_REQUIRED) {
207
+ SpinniesManager.fail('beginningMigration', {
208
+ text: lib.migrate.spinners.unableToStartMigration,
227
209
  });
228
210
  return;
229
211
  }
230
212
  const { componentsRequiringUids } = pollResponse;
231
- SpinniesManager_1.default.remove('beginningMigration');
213
+ SpinniesManager.remove('beginningMigration');
232
214
  if (Object.values(componentsRequiringUids).length !== 0) {
233
215
  for (const [componentId, component] of Object.entries(componentsRequiringUids)) {
234
216
  const { componentHint, componentType } = component;
@@ -244,11 +226,11 @@ async function beginMigration(derivedAccountId, appId, platformVersion) {
244
226
  internalId = componentId;
245
227
  }
246
228
  const promptText = componentHint
247
- ? `${(0, transform_1.mapToUserFacingType)(componentType)} '${componentHint}' (ID: ${internalId})`
248
- : `${(0, transform_1.mapToUserFacingType)(componentType)} (ID: ${internalId})`;
249
- uidMap[componentId] = await (0, promptUtils_1.inputPrompt)(en_1.lib.migrate.prompt.uidForComponent(promptText), {
229
+ ? `${mapToUserFacingType(componentType)} '${componentHint}' (ID: ${internalId})`
230
+ : `${mapToUserFacingType(componentType)} (ID: ${internalId})`;
231
+ uidMap[componentId] = await inputPrompt(lib.migrate.prompt.uidForComponent(promptText), {
250
232
  validate: (uid) => {
251
- const result = (0, project_parsing_lib_1.validateUid)(uid);
233
+ const result = validateUid(uid);
252
234
  return result === undefined ? true : result;
253
235
  },
254
236
  defaultAnswer: componentHint
@@ -259,94 +241,94 @@ async function beginMigration(derivedAccountId, appId, platformVersion) {
259
241
  }
260
242
  return { migrationId, uidMap };
261
243
  }
262
- async function pollMigrationStatus(derivedAccountId, migrationId, successStates = []) {
263
- return (0, polling_1.poll)(() => (0, migrate_1.checkMigrationStatusV2)(derivedAccountId, migrationId), {
244
+ export async function pollMigrationStatus(derivedAccountId, migrationId, successStates = []) {
245
+ return poll(() => checkMigrationStatusV2(derivedAccountId, migrationId), {
264
246
  successStates: [...successStates],
265
- errorStates: [...polling_1.DEFAULT_POLLING_STATUS_LOOKUP.errorStates],
247
+ errorStates: [...DEFAULT_POLLING_STATUS_LOOKUP.errorStates],
266
248
  });
267
249
  }
268
- async function finalizeMigration(derivedAccountId, migrationId, uidMap, projectName) {
250
+ export async function finalizeMigration(derivedAccountId, migrationId, uidMap, projectName) {
269
251
  let pollResponse;
270
252
  try {
271
- SpinniesManager_1.default.add('finishingMigration', {
272
- text: en_1.lib.migrate.spinners.finishingMigration,
253
+ SpinniesManager.add('finishingMigration', {
254
+ text: lib.migrate.spinners.finishingMigration,
273
255
  });
274
- await (0, migrate_1.continueMigration)(derivedAccountId, migrationId, uidMap, projectName);
256
+ await continueMigration(derivedAccountId, migrationId, uidMap, projectName);
275
257
  pollResponse = await pollMigrationStatus(derivedAccountId, migrationId, [
276
- Migration_1.MIGRATION_STATUS.SUCCESS,
258
+ MIGRATION_STATUS.SUCCESS,
277
259
  ]);
278
260
  }
279
261
  catch (error) {
280
- SpinniesManager_1.default.fail('finishingMigration', {
281
- text: en_1.lib.migrate.spinners.migrationFailed,
262
+ SpinniesManager.fail('finishingMigration', {
263
+ text: lib.migrate.spinners.migrationFailed,
282
264
  });
283
- if ((0, migrate_1.isMigrationStatus)(error) && error.status === Migration_1.MIGRATION_STATUS.FAILURE) {
265
+ if (isMigrationStatus(error) && error.status === MIGRATION_STATUS.FAILURE) {
284
266
  throw new Error(buildErrorMessageFromMigrationStatus(error));
285
267
  }
286
- throw new Error(en_1.lib.migrate.errors.migrationFailed, {
268
+ throw new Error(lib.migrate.errors.migrationFailed, {
287
269
  cause: error,
288
270
  });
289
271
  }
290
- if (pollResponse.status !== Migration_1.MIGRATION_STATUS.SUCCESS) {
291
- throw new Error(en_1.lib.migrate.errors.migrationFailed);
272
+ if (pollResponse.status !== MIGRATION_STATUS.SUCCESS) {
273
+ throw new Error(lib.migrate.errors.migrationFailed);
292
274
  }
293
- if (pollResponse.status === Migration_1.MIGRATION_STATUS.SUCCESS) {
294
- SpinniesManager_1.default.succeed('finishingMigration', {
295
- text: en_1.lib.migrate.spinners.migrationComplete,
275
+ if (pollResponse.status === MIGRATION_STATUS.SUCCESS) {
276
+ SpinniesManager.succeed('finishingMigration', {
277
+ text: lib.migrate.spinners.migrationComplete,
296
278
  });
297
279
  }
298
280
  return pollResponse.buildId;
299
281
  }
300
- async function downloadProjectFiles(derivedAccountId, projectName, buildId, projectDest, projectConfig) {
282
+ export async function downloadProjectFiles(derivedAccountId, projectName, buildId, projectDest, projectConfig) {
301
283
  try {
302
- SpinniesManager_1.default.add('fetchingMigratedProject', {
303
- text: en_1.lib.migrate.spinners.downloadingProjectContents,
284
+ SpinniesManager.add('fetchingMigratedProject', {
285
+ text: lib.migrate.spinners.downloadingProjectContents,
304
286
  });
305
- const { data: zippedProject } = await (0, projects_2.downloadProject)(derivedAccountId, projectName, buildId);
287
+ const { data: zippedProject } = await downloadProject(derivedAccountId, projectName, buildId);
306
288
  let absoluteDestPath;
307
289
  if (projectConfig?.projectConfig && projectConfig?.projectDir) {
308
290
  const { projectDir } = projectConfig;
309
291
  absoluteDestPath = projectDir;
310
292
  const { srcDir } = projectConfig.projectConfig;
311
- const archiveDest = path_1.default.join(projectDir, 'archive');
293
+ const archiveDest = path.join(projectDir, 'archive');
312
294
  // Move the existing source directory to archive
313
- fs_1.default.renameSync(path_1.default.join(projectDir, srcDir), archiveDest);
314
- logger_1.uiLogger.info(en_1.lib.migrate.sourceContentsMoved(archiveDest));
295
+ fs.renameSync(path.join(projectDir, srcDir), archiveDest);
296
+ uiLogger.info(lib.migrate.sourceContentsMoved(archiveDest));
315
297
  }
316
298
  else {
317
299
  absoluteDestPath = projectDest
318
- ? path_1.default.resolve((0, path_2.getCwd)(), projectDest)
319
- : (0, path_2.getCwd)();
300
+ ? path.resolve(getCwd(), projectDest)
301
+ : getCwd();
320
302
  }
321
- await (0, archive_1.extractZipArchive)(zippedProject, (0, path_2.sanitizeFileName)(projectName), absoluteDestPath, {
303
+ await extractZipArchive(zippedProject, sanitizeFileName(projectName), absoluteDestPath, {
322
304
  includesRootDir: true,
323
305
  hideLogs: true,
324
306
  });
325
- SpinniesManager_1.default.succeed('fetchingMigratedProject', {
326
- text: en_1.lib.migrate.spinners.downloadingProjectContentsComplete,
307
+ SpinniesManager.succeed('fetchingMigratedProject', {
308
+ text: lib.migrate.spinners.downloadingProjectContentsComplete,
327
309
  });
328
- logger_1.uiLogger.success(`Saved ${projectName} to ${projectDest}`);
310
+ uiLogger.success(`Saved ${projectName} to ${projectDest}`);
329
311
  }
330
312
  catch (error) {
331
- SpinniesManager_1.default.fail('fetchingMigratedProject', {
332
- text: en_1.lib.migrate.spinners.downloadingProjectContentsFailed,
313
+ SpinniesManager.fail('fetchingMigratedProject', {
314
+ text: lib.migrate.spinners.downloadingProjectContentsFailed,
333
315
  });
334
316
  throw error;
335
317
  }
336
318
  }
337
- async function migrateApp2025_2(derivedAccountId, options, projectConfig) {
338
- SpinniesManager_1.default.init();
339
- const ungatedForUnifiedApps = await (0, hasFeature_1.hasFeature)(derivedAccountId, constants_1.FEATURES.UNIFIED_APPS);
319
+ export async function migrateApp2025_2(derivedAccountId, options, projectConfig) {
320
+ SpinniesManager.init();
321
+ const ungatedForUnifiedApps = await hasFeature(derivedAccountId, FEATURES.UNIFIED_APPS);
340
322
  if (!ungatedForUnifiedApps) {
341
- throw new Error(en_1.lib.migrate.errors.notUngatedForUnifiedApps((0, ui_1.uiAccountDescription)(derivedAccountId)));
323
+ throw new Error(lib.migrate.errors.notUngatedForUnifiedApps(uiAccountDescription(derivedAccountId)));
342
324
  }
343
325
  if (projectConfig) {
344
326
  if (!projectConfig?.projectConfig || !projectConfig?.projectDir) {
345
- throw new Error(en_1.lib.migrate.errors.project.invalidConfig);
327
+ throw new Error(lib.migrate.errors.project.invalidConfig);
346
328
  }
347
- const { projectExists } = await (0, ensureProjectExists_1.ensureProjectExists)(derivedAccountId, projectConfig.projectConfig.name, { allowCreate: false, noLogs: true });
329
+ const { projectExists } = await ensureProjectExists(derivedAccountId, projectConfig.projectConfig.name, { allowCreate: false, noLogs: true });
348
330
  if (!projectExists) {
349
- throw new Error(en_1.lib.migrate.errors.project.doesNotExist(derivedAccountId));
331
+ throw new Error(lib.migrate.errors.project.doesNotExist(derivedAccountId));
350
332
  }
351
333
  }
352
334
  const { appIdToMigrate, projectName, projectDest } = await handleMigrationSetup(derivedAccountId, options, projectConfig);
@@ -360,12 +342,12 @@ async function migrateApp2025_2(derivedAccountId, options, projectConfig) {
360
342
  const { migrationId, uidMap } = migrationInProgress;
361
343
  const buildId = await finalizeMigration(derivedAccountId, migrationId, uidMap, projectConfig?.projectConfig?.name || projectName);
362
344
  await downloadProjectFiles(derivedAccountId, projectName, buildId, projectDest, projectConfig);
363
- logger_1.uiLogger.log((0, ui_1.uiLink)('Project Details', (0, urls_1.getProjectDetailUrl)(projectName, derivedAccountId)));
364
- logger_1.uiLogger.log((0, ui_1.uiLink)('Build Details', (0, urls_1.getProjectBuildDetailUrl)(projectName, buildId, derivedAccountId)));
345
+ uiLogger.log(uiLink('Project Details', getProjectDetailUrl(projectName, derivedAccountId)));
346
+ uiLogger.log(uiLink('Build Details', getProjectBuildDetailUrl(projectName, buildId, derivedAccountId)));
365
347
  }
366
- function logInvalidAccountError() {
367
- (0, ui_1.uiLine)();
368
- logger_1.uiLogger.error(en_1.lib.migrate.errors.invalidAccountTypeTitle);
369
- logger_1.uiLogger.log(en_1.lib.migrate.errors.invalidAccountTypeDescription((0, ui_1.uiCommandReference)('hs account use'), (0, ui_1.uiCommandReference)('hs auth')));
370
- (0, ui_1.uiLine)();
348
+ export function logInvalidAccountError() {
349
+ uiLine();
350
+ uiLogger.error(lib.migrate.errors.invalidAccountTypeTitle);
351
+ uiLogger.log(lib.migrate.errors.invalidAccountTypeDescription(uiCommandReference('hs account use'), uiCommandReference('hs auth')));
352
+ uiLine();
371
353
  }
@@ -1,4 +1,4 @@
1
1
  import { CLIAccount } from '@hubspot/local-dev-lib/types/Accounts';
2
2
  import { ArgumentsCamelCase } from 'yargs';
3
- import { MigrateAppArgs } from './migrate';
3
+ import { MigrateAppArgs } from './migrate.js';
4
4
  export declare function migrateApp2023_2(derivedAccountId: number, options: ArgumentsCamelCase<MigrateAppArgs>, accountConfig: CLIAccount): Promise<void>;