@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,99 +1,97 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const config_1 = require("@hubspot/local-dev-lib/constants/config");
4
- const accountTypes_1 = require("../accountTypes");
1
+ import { HUBSPOT_ACCOUNT_TYPES } from '@hubspot/local-dev-lib/constants/config';
2
+ import { isStandardAccount, isSandbox, isStandardSandbox, isDevelopmentSandbox, isDeveloperTestAccount, isAppDeveloperAccount, } from '../accountTypes.js';
5
3
  const STANDARD_ACCOUNT = {
6
4
  name: 'standard-account',
7
5
  accountId: 123,
8
- accountType: config_1.HUBSPOT_ACCOUNT_TYPES.STANDARD,
6
+ accountType: HUBSPOT_ACCOUNT_TYPES.STANDARD,
9
7
  env: 'prod',
10
8
  };
11
9
  const DEVELOPMENT_SANDBOX_ACCOUNT = {
12
10
  name: 'development-sandbox-account',
13
11
  accountId: 456,
14
- accountType: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
12
+ accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX,
15
13
  env: 'prod',
16
14
  };
17
15
  const STANDARD_SANDBOX_ACCOUNT = {
18
16
  name: 'sandbox-account',
19
17
  accountId: 456,
20
- accountType: config_1.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX,
18
+ accountType: HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX,
21
19
  env: 'prod',
22
20
  };
23
21
  const DEVELOPER_TEST_ACCOUNT = {
24
22
  name: 'developer-test-account',
25
23
  accountId: 789,
26
- accountType: config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
24
+ accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
27
25
  env: 'prod',
28
26
  };
29
27
  const APP_DEVELOPER_ACCOUNT = {
30
28
  name: 'app-developer-account',
31
29
  accountId: 1011,
32
- accountType: config_1.HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
30
+ accountType: HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
33
31
  env: 'prod',
34
32
  };
35
33
  describe('lib/accountTypes', () => {
36
34
  describe('isStandardAccount()', () => {
37
35
  it('should return true if the account is a standard account', () => {
38
- const result = (0, accountTypes_1.isStandardAccount)(STANDARD_ACCOUNT);
36
+ const result = isStandardAccount(STANDARD_ACCOUNT);
39
37
  expect(result).toBe(true);
40
38
  });
41
39
  it('should return false if the account is not a standard account', () => {
42
- const result = (0, accountTypes_1.isStandardAccount)(DEVELOPER_TEST_ACCOUNT);
40
+ const result = isStandardAccount(DEVELOPER_TEST_ACCOUNT);
43
41
  expect(result).toBe(false);
44
42
  });
45
43
  });
46
44
  describe('isSandbox()', () => {
47
45
  it('should return true if the account is a standard sandbox account', () => {
48
- const result = (0, accountTypes_1.isSandbox)(STANDARD_SANDBOX_ACCOUNT);
46
+ const result = isSandbox(STANDARD_SANDBOX_ACCOUNT);
49
47
  expect(result).toBe(true);
50
48
  });
51
49
  it('should return true if the account is a development sandbox account', () => {
52
- const result = (0, accountTypes_1.isSandbox)(DEVELOPMENT_SANDBOX_ACCOUNT);
50
+ const result = isSandbox(DEVELOPMENT_SANDBOX_ACCOUNT);
53
51
  expect(result).toBe(true);
54
52
  });
55
53
  it('should return false if the account is not a sandbox account', () => {
56
- const result = (0, accountTypes_1.isSandbox)(STANDARD_ACCOUNT);
54
+ const result = isSandbox(STANDARD_ACCOUNT);
57
55
  expect(result).toBe(false);
58
56
  });
59
57
  });
60
58
  describe('isStandardSandbox()', () => {
61
59
  it('should return true if the account is a standard sandbox account', () => {
62
- const result = (0, accountTypes_1.isStandardSandbox)(STANDARD_SANDBOX_ACCOUNT);
60
+ const result = isStandardSandbox(STANDARD_SANDBOX_ACCOUNT);
63
61
  expect(result).toBe(true);
64
62
  });
65
63
  it('should return false if the account is not a standard sandbox account', () => {
66
- const result = (0, accountTypes_1.isStandardSandbox)(DEVELOPMENT_SANDBOX_ACCOUNT);
64
+ const result = isStandardSandbox(DEVELOPMENT_SANDBOX_ACCOUNT);
67
65
  expect(result).toBe(false);
68
66
  });
69
67
  });
70
68
  describe('isDevelopmentSandbox()', () => {
71
69
  it('should return true if the account is a development sandbox account', () => {
72
- const result = (0, accountTypes_1.isDevelopmentSandbox)(DEVELOPMENT_SANDBOX_ACCOUNT);
70
+ const result = isDevelopmentSandbox(DEVELOPMENT_SANDBOX_ACCOUNT);
73
71
  expect(result).toBe(true);
74
72
  });
75
73
  it('should return false if the account is not a development sandbox account', () => {
76
- const result = (0, accountTypes_1.isDevelopmentSandbox)(STANDARD_ACCOUNT);
74
+ const result = isDevelopmentSandbox(STANDARD_ACCOUNT);
77
75
  expect(result).toBe(false);
78
76
  });
79
77
  });
80
78
  describe('isDeveloperTestAccount()', () => {
81
79
  it('should return true if the account is a developer test account', () => {
82
- const result = (0, accountTypes_1.isDeveloperTestAccount)(DEVELOPER_TEST_ACCOUNT);
80
+ const result = isDeveloperTestAccount(DEVELOPER_TEST_ACCOUNT);
83
81
  expect(result).toBe(true);
84
82
  });
85
83
  it('should return false if the account is not a developer test account', () => {
86
- const result = (0, accountTypes_1.isDeveloperTestAccount)(STANDARD_ACCOUNT);
84
+ const result = isDeveloperTestAccount(STANDARD_ACCOUNT);
87
85
  expect(result).toBe(false);
88
86
  });
89
87
  });
90
88
  describe('isAppDeveloperAccount()', () => {
91
89
  it('should return true if the account is an app developer account', () => {
92
- const result = (0, accountTypes_1.isAppDeveloperAccount)(APP_DEVELOPER_ACCOUNT);
90
+ const result = isAppDeveloperAccount(APP_DEVELOPER_ACCOUNT);
93
91
  expect(result).toBe(true);
94
92
  });
95
93
  it('should return false if the account is not an app developer account', () => {
96
- const result = (0, accountTypes_1.isAppDeveloperAccount)(STANDARD_ACCOUNT);
94
+ const result = isAppDeveloperAccount(STANDARD_ACCOUNT);
97
95
  expect(result).toBe(false);
98
96
  });
99
97
  });
@@ -1,46 +1,11 @@
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 personalAccessKey_1 = require("@hubspot/local-dev-lib/personalAccessKey");
37
- const config_1 = require("@hubspot/local-dev-lib/config");
38
- const developerTestAccounts_1 = require("@hubspot/local-dev-lib/api/developerTestAccounts");
39
- const sandboxHubs_1 = require("@hubspot/local-dev-lib/api/sandboxHubs");
40
- const config_2 = require("@hubspot/local-dev-lib/constants/config");
41
- const personalAccessKeyPrompt_1 = require("../prompts/personalAccessKeyPrompt");
42
- const accountNamePrompt_1 = require("../prompts/accountNamePrompt");
43
- const buildAccount = __importStar(require("../buildAccount"));
1
+ import { getAccessToken, updateConfigWithAccessToken, } from '@hubspot/local-dev-lib/personalAccessKey';
2
+ import { accountNameExistsInConfig, updateAccountConfig, writeConfig, getAccountId, } from '@hubspot/local-dev-lib/config';
3
+ import { createDeveloperTestAccount, fetchDeveloperTestAccountGateSyncStatus, generateDeveloperTestAccountPersonalAccessKey, } from '@hubspot/local-dev-lib/api/developerTestAccounts';
4
+ import { createSandbox } from '@hubspot/local-dev-lib/api/sandboxHubs';
5
+ import { HUBSPOT_ACCOUNT_TYPES } from '@hubspot/local-dev-lib/constants/config';
6
+ import { personalAccessKeyPrompt } from '../prompts/personalAccessKeyPrompt.js';
7
+ import { cliAccountNamePrompt } from '../prompts/accountNamePrompt.js';
8
+ import * as buildAccount from '../buildAccount.js';
44
9
  vi.mock('@hubspot/local-dev-lib/personalAccessKey');
45
10
  vi.mock('@hubspot/local-dev-lib/config');
46
11
  vi.mock('@hubspot/local-dev-lib/api/developerTestAccounts');
@@ -56,24 +21,24 @@ vi.mock('../ui/SpinniesManager', () => ({
56
21
  fail: vi.fn(),
57
22
  },
58
23
  }));
59
- const mockedPersonalAccessKeyPrompt = personalAccessKeyPrompt_1.personalAccessKeyPrompt;
60
- const mockedGetAccessToken = personalAccessKey_1.getAccessToken;
61
- const mockedUpdateConfigWithAccessToken = personalAccessKey_1.updateConfigWithAccessToken;
62
- const mockedAccountNameExistsInConfig = config_1.accountNameExistsInConfig;
63
- const mockedUpdateAccountConfig = config_1.updateAccountConfig;
64
- const mockedWriteConfig = config_1.writeConfig;
65
- const mockedCliAccountNamePrompt = accountNamePrompt_1.cliAccountNamePrompt;
66
- const mockedGetAccountId = config_1.getAccountId;
67
- const mockedCreateDeveloperTestAccount = developerTestAccounts_1.createDeveloperTestAccount;
68
- const mockedFetchDeveloperTestAccountGateSyncStatus = developerTestAccounts_1.fetchDeveloperTestAccountGateSyncStatus;
69
- const mockedGenerateDeveloperTestAccountPersonalAccessKey = developerTestAccounts_1.generateDeveloperTestAccountPersonalAccessKey;
70
- const mockedCreateSandbox = sandboxHubs_1.createSandbox;
24
+ const mockedPersonalAccessKeyPrompt = personalAccessKeyPrompt;
25
+ const mockedGetAccessToken = getAccessToken;
26
+ const mockedUpdateConfigWithAccessToken = updateConfigWithAccessToken;
27
+ const mockedAccountNameExistsInConfig = accountNameExistsInConfig;
28
+ const mockedUpdateAccountConfig = updateAccountConfig;
29
+ const mockedWriteConfig = writeConfig;
30
+ const mockedCliAccountNamePrompt = cliAccountNamePrompt;
31
+ const mockedGetAccountId = getAccountId;
32
+ const mockedCreateDeveloperTestAccount = createDeveloperTestAccount;
33
+ const mockedFetchDeveloperTestAccountGateSyncStatus = fetchDeveloperTestAccountGateSyncStatus;
34
+ const mockedGenerateDeveloperTestAccountPersonalAccessKey = generateDeveloperTestAccountPersonalAccessKey;
35
+ const mockedCreateSandbox = createSandbox;
71
36
  describe('lib/buildAccount', () => {
72
37
  describe('saveAccountToConfig()', () => {
73
38
  const mockAccountConfig = {
74
39
  name: 'Test Account',
75
40
  accountId: 123456,
76
- accountType: config_2.HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
41
+ accountType: HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
77
42
  env: 'prod',
78
43
  };
79
44
  const accessToken = {
@@ -84,7 +49,7 @@ describe('lib/buildAccount', () => {
84
49
  enabledFeatures: { 'test-feature': 1 },
85
50
  encodedOAuthRefreshToken: 'test-refresh-token',
86
51
  hubName: 'test-hub',
87
- accountType: config_2.HUBSPOT_ACCOUNT_TYPES.STANDARD,
52
+ accountType: HUBSPOT_ACCOUNT_TYPES.STANDARD,
88
53
  };
89
54
  beforeEach(() => {
90
55
  mockedPersonalAccessKeyPrompt.mockResolvedValue({
@@ -164,7 +129,7 @@ describe('lib/buildAccount', () => {
164
129
  const mockParentAccountConfig = {
165
130
  name: 'Developer Account',
166
131
  accountId: 123456,
167
- accountType: config_2.HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
132
+ accountType: HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER,
168
133
  env: 'prod',
169
134
  };
170
135
  const mockDeveloperTestAccount = {
@@ -203,7 +168,7 @@ describe('lib/buildAccount', () => {
203
168
  const mockParentAccountConfig = {
204
169
  name: 'Developer Test Account',
205
170
  accountId: 123456,
206
- accountType: config_2.HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
171
+ accountType: HUBSPOT_ACCOUNT_TYPES.DEVELOPER_TEST,
207
172
  env: 'prod',
208
173
  };
209
174
  const mockSandbox = {
@@ -232,7 +197,7 @@ describe('lib/buildAccount', () => {
232
197
  vi.clearAllMocks();
233
198
  });
234
199
  it('should create a standard sandbox successfully', async () => {
235
- const result = await buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, config_2.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env, false);
200
+ const result = await buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env, false);
236
201
  expect(result).toEqual({
237
202
  name: mockSandbox.name,
238
203
  personalAccessKey: 'test-key',
@@ -240,7 +205,7 @@ describe('lib/buildAccount', () => {
240
205
  });
241
206
  });
242
207
  it('should create a development sandbox successfully', async () => {
243
- const result = await buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, config_2.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, mockParentAccountConfig.env);
208
+ const result = await buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX, mockParentAccountConfig.env);
244
209
  expect(result).toEqual({
245
210
  name: mockSandbox.name,
246
211
  personalAccessKey: 'test-key',
@@ -249,11 +214,11 @@ describe('lib/buildAccount', () => {
249
214
  });
250
215
  it('should throw error if account ID is not found', async () => {
251
216
  mockedGetAccountId.mockReturnValue(null);
252
- await expect(buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, config_2.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env)).rejects.toThrow();
217
+ await expect(buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env)).rejects.toThrow();
253
218
  });
254
219
  it('should handle API errors when creating sandbox', async () => {
255
220
  mockedCreateSandbox.mockRejectedValue(new Error('test-error'));
256
- await expect(buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, config_2.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env, false)).rejects.toThrow();
221
+ await expect(buildAccount.buildSandbox(mockSandbox.name, mockParentAccountConfig, HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX, mockParentAccountConfig.env, false)).rejects.toThrow();
257
222
  });
258
223
  });
259
224
  });
@@ -1,11 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const files_1 = require("@hubspot/local-dev-lib/constants/files");
4
- const config_1 = require("@hubspot/local-dev-lib/config");
5
- const commonOpts_1 = require("../commonOpts");
6
- const mockedGetAccountConfig = config_1.getAccountConfig;
7
- const mockedGetAndLoadConfigIfNeeded = config_1.getAndLoadConfigIfNeeded;
8
- const mockedLoadConfigFromEnvironment = config_1.loadConfigFromEnvironment;
1
+ import { CMS_PUBLISH_MODE, DEFAULT_CMS_PUBLISH_MODE, } from '@hubspot/local-dev-lib/constants/files';
2
+ import { getAndLoadConfigIfNeeded, getAccountConfig, loadConfigFromEnvironment, } from '@hubspot/local-dev-lib/config';
3
+ import { getCmsPublishMode } from '../commonOpts.js';
4
+ const mockedGetAccountConfig = getAccountConfig;
5
+ const mockedGetAndLoadConfigIfNeeded = getAndLoadConfigIfNeeded;
6
+ const mockedLoadConfigFromEnvironment = loadConfigFromEnvironment;
9
7
  function buildArguments(args) {
10
8
  return {
11
9
  _: [],
@@ -24,7 +22,7 @@ describe('lib/commonOpts', () => {
24
22
  const devAccountConfig = {
25
23
  accountId: accounts.DEV,
26
24
  name: 'DEV',
27
- defaultCmsPublishMode: files_1.CMS_PUBLISH_MODE.draft,
25
+ defaultCmsPublishMode: CMS_PUBLISH_MODE.draft,
28
26
  };
29
27
  const prodAccountConfig = {
30
28
  accountId: accounts.PROD,
@@ -36,7 +34,7 @@ describe('lib/commonOpts', () => {
36
34
  };
37
35
  const configWithDefaultCmsPublishMode = {
38
36
  ...config,
39
- defaultCmsPublishMode: files_1.CMS_PUBLISH_MODE.draft,
37
+ defaultCmsPublishMode: CMS_PUBLISH_MODE.draft,
40
38
  };
41
39
  afterEach(() => {
42
40
  vi.resetAllMocks();
@@ -46,12 +44,12 @@ describe('lib/commonOpts', () => {
46
44
  it('should return the cms publish mode specified by the command option if present.', () => {
47
45
  mockedGetAndLoadConfigIfNeeded.mockReturnValue(configWithDefaultCmsPublishMode);
48
46
  mockedGetAccountConfig.mockReturnValue(devAccountConfig);
49
- expect((0, commonOpts_1.getCmsPublishMode)(buildArguments({
50
- cmsPublishMode: files_1.CMS_PUBLISH_MODE.draft,
51
- }))).toBe(files_1.CMS_PUBLISH_MODE.draft);
52
- expect((0, commonOpts_1.getCmsPublishMode)(buildArguments({
53
- cmsPublishMode: files_1.CMS_PUBLISH_MODE.publish,
54
- }))).toBe(files_1.CMS_PUBLISH_MODE.publish);
47
+ expect(getCmsPublishMode(buildArguments({
48
+ cmsPublishMode: CMS_PUBLISH_MODE.draft,
49
+ }))).toBe(CMS_PUBLISH_MODE.draft);
50
+ expect(getCmsPublishMode(buildArguments({
51
+ cmsPublishMode: CMS_PUBLISH_MODE.publish,
52
+ }))).toBe(CMS_PUBLISH_MODE.publish);
55
53
  });
56
54
  });
57
55
  describe('2. hubspot.config.yml -> config.accounts[x].defaultCmsPublishMode', () => {
@@ -59,9 +57,9 @@ describe('lib/commonOpts', () => {
59
57
  mockedGetAndLoadConfigIfNeeded.mockReturnValue(configWithDefaultCmsPublishMode);
60
58
  mockedGetAccountConfig.mockReturnValue(devAccountConfig);
61
59
  mockedLoadConfigFromEnvironment.mockReturnValue(undefined);
62
- expect((0, commonOpts_1.getCmsPublishMode)(buildArguments({
60
+ expect(getCmsPublishMode(buildArguments({
63
61
  account: accounts.DEV,
64
- }))).toBe(files_1.CMS_PUBLISH_MODE.draft);
62
+ }))).toBe(CMS_PUBLISH_MODE.draft);
65
63
  });
66
64
  });
67
65
  describe('3. hubspot.config.yml -> config.defaultCmsPublishMode', () => {
@@ -69,17 +67,17 @@ describe('lib/commonOpts', () => {
69
67
  mockedGetAndLoadConfigIfNeeded.mockReturnValue(configWithDefaultCmsPublishMode);
70
68
  mockedGetAccountConfig.mockReturnValue(prodAccountConfig);
71
69
  mockedLoadConfigFromEnvironment.mockReturnValue(undefined);
72
- expect((0, commonOpts_1.getCmsPublishMode)(buildArguments({
70
+ expect(getCmsPublishMode(buildArguments({
73
71
  account: accounts.PROD,
74
- }))).toBe(files_1.CMS_PUBLISH_MODE.draft);
72
+ }))).toBe(CMS_PUBLISH_MODE.draft);
75
73
  });
76
74
  });
77
75
  describe('4. DEFAULT_CMS_PUBLISH_MODE', () => {
78
76
  it('should return the defaultCmsPubishMode specified by the config if present.', () => {
79
77
  mockedLoadConfigFromEnvironment.mockReturnValue(undefined);
80
- expect((0, commonOpts_1.getCmsPublishMode)(buildArguments({
78
+ expect(getCmsPublishMode(buildArguments({
81
79
  account: 'xxxxx',
82
- }))).toBe(files_1.DEFAULT_CMS_PUBLISH_MODE);
80
+ }))).toBe(DEFAULT_CMS_PUBLISH_MODE);
83
81
  });
84
82
  });
85
83
  });
@@ -1,15 +1,10 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const util_1 = __importDefault(require("util"));
7
- const dependencyManagement_1 = require("../dependencyManagement");
8
- const fs_1 = require("@hubspot/local-dev-lib/fs");
9
- const path_1 = __importDefault(require("path"));
10
- const config_1 = require("../projects/config");
11
- const SpinniesManager_1 = __importDefault(require("../ui/SpinniesManager"));
12
- const fs_2 = __importDefault(require("fs"));
1
+ import util from 'util';
2
+ import { installPackages, getProjectPackageJsonLocations, } from '../dependencyManagement.js';
3
+ import { walk } from '@hubspot/local-dev-lib/fs';
4
+ import path from 'path';
5
+ import { getProjectConfig } from '../projects/config.js';
6
+ import SpinniesManager from '../ui/SpinniesManager.js';
7
+ import fs from 'fs';
13
8
  vi.mock('../projects/config');
14
9
  vi.mock('@hubspot/local-dev-lib/logger');
15
10
  vi.mock('@hubspot/local-dev-lib/fs');
@@ -22,14 +17,14 @@ vi.mock('../ui/SpinniesManager', () => ({
22
17
  fail: vi.fn(),
23
18
  },
24
19
  }));
25
- const mockedFs = vi.mocked(fs_2.default);
20
+ const mockedFs = vi.mocked(fs);
26
21
  describe('lib/dependencyManagement', () => {
27
22
  let execMock;
28
- const projectDir = path_1.default.join('path', 'to', 'project');
23
+ const projectDir = path.join('path', 'to', 'project');
29
24
  const srcDir = 'src';
30
- const appDir = path_1.default.join(projectDir, srcDir, 'app');
31
- const appFunctionsDir = path_1.default.join(appDir, 'app.functions');
32
- const extensionsDir = path_1.default.join(appDir, 'exensions');
25
+ const appDir = path.join(projectDir, srcDir, 'app');
26
+ const appFunctionsDir = path.join(appDir, 'app.functions');
27
+ const extensionsDir = path.join(appDir, 'exensions');
33
28
  const projectName = 'super cool test project';
34
29
  const installLocations = [appFunctionsDir, extensionsDir];
35
30
  function mockedPromisify(execMock) {
@@ -37,11 +32,11 @@ describe('lib/dependencyManagement', () => {
37
32
  .fn()
38
33
  .mockReturnValue(execMock);
39
34
  }
40
- const mockedWalk = fs_1.walk;
41
- const mockedGetProjectConfig = config_1.getProjectConfig;
35
+ const mockedWalk = walk;
36
+ const mockedGetProjectConfig = getProjectConfig;
42
37
  beforeEach(() => {
43
38
  execMock = vi.fn();
44
- util_1.default.promisify = mockedPromisify(execMock);
39
+ util.promisify = mockedPromisify(execMock);
45
40
  mockedGetProjectConfig.mockResolvedValue({
46
41
  projectDir,
47
42
  projectConfig: {
@@ -55,31 +50,31 @@ describe('lib/dependencyManagement', () => {
55
50
  describe('installPackages()', () => {
56
51
  it('should setup a loading spinner', async () => {
57
52
  const packages = ['package1', 'package2'];
58
- await (0, dependencyManagement_1.installPackages)({ packages, installLocations });
59
- expect(SpinniesManager_1.default.init).toHaveBeenCalledTimes(installLocations.length);
60
- expect(SpinniesManager_1.default.add).toHaveBeenCalledTimes(installLocations.length);
61
- expect(SpinniesManager_1.default.succeed).toHaveBeenCalledTimes(installLocations.length);
53
+ await installPackages({ packages, installLocations });
54
+ expect(SpinniesManager.init).toHaveBeenCalledTimes(installLocations.length);
55
+ expect(SpinniesManager.add).toHaveBeenCalledTimes(installLocations.length);
56
+ expect(SpinniesManager.succeed).toHaveBeenCalledTimes(installLocations.length);
62
57
  });
63
58
  it('should install the provided packages in all the provided install locations', async () => {
64
59
  const packages = ['package1', 'package2'];
65
- await (0, dependencyManagement_1.installPackages)({ packages, installLocations });
60
+ await installPackages({ packages, installLocations });
66
61
  expect(execMock).toHaveBeenCalledTimes(installLocations.length);
67
- expect(SpinniesManager_1.default.add).toHaveBeenCalledTimes(installLocations.length);
68
- expect(SpinniesManager_1.default.succeed).toHaveBeenCalledTimes(installLocations.length);
62
+ expect(SpinniesManager.add).toHaveBeenCalledTimes(installLocations.length);
63
+ expect(SpinniesManager.succeed).toHaveBeenCalledTimes(installLocations.length);
69
64
  for (const location of installLocations) {
70
65
  expect(execMock).toHaveBeenCalledWith(`npm install package1 package2`, {
71
66
  cwd: location,
72
67
  });
73
- expect(SpinniesManager_1.default.add).toHaveBeenCalledWith(`installingDependencies-${location}`, {
68
+ expect(SpinniesManager.add).toHaveBeenCalledWith(`installingDependencies-${location}`, {
74
69
  text: `Installing [package1, package2] in ${location}`,
75
70
  });
76
- expect(SpinniesManager_1.default.succeed).toHaveBeenCalledWith(`installingDependencies-${location}`, {
71
+ expect(SpinniesManager.succeed).toHaveBeenCalledWith(`installingDependencies-${location}`, {
77
72
  text: `Installed dependencies in ${location}`,
78
73
  });
79
74
  }
80
75
  });
81
76
  it('should use the provided install locations', async () => {
82
- await (0, dependencyManagement_1.installPackages)({ installLocations });
77
+ await installPackages({ installLocations });
83
78
  expect(execMock).toHaveBeenCalledTimes(installLocations.length);
84
79
  expect(execMock).toHaveBeenCalledWith(`npm install `, {
85
80
  cwd: appFunctionsDir,
@@ -90,8 +85,8 @@ describe('lib/dependencyManagement', () => {
90
85
  });
91
86
  it('should locate the projects package.json files when install locations is not provided', async () => {
92
87
  const installLocations = [
93
- path_1.default.join(appFunctionsDir, 'package.json'),
94
- path_1.default.join(extensionsDir, 'package.json'),
88
+ path.join(appFunctionsDir, 'package.json'),
89
+ path.join(extensionsDir, 'package.json'),
95
90
  ];
96
91
  mockedWalk.mockResolvedValue(installLocations);
97
92
  mockedGetProjectConfig.mockResolvedValue({
@@ -100,7 +95,7 @@ describe('lib/dependencyManagement', () => {
100
95
  srcDir,
101
96
  },
102
97
  });
103
- await (0, dependencyManagement_1.installPackages)({});
98
+ await installPackages({});
104
99
  // It's called once per each install location, plus once to check if npm installed
105
100
  expect(execMock).toHaveBeenCalledTimes(installLocations.length + 1);
106
101
  expect(execMock).toHaveBeenCalledWith(`npm install `, {
@@ -117,23 +112,23 @@ describe('lib/dependencyManagement', () => {
117
112
  }
118
113
  throw new Error('OH NO');
119
114
  });
120
- util_1.default.promisify = mockedPromisify(execMock);
115
+ util.promisify = mockedPromisify(execMock);
121
116
  // Mock walk to return the directory paths instead of package.json paths
122
117
  mockedWalk.mockResolvedValue([appFunctionsDir, extensionsDir]);
123
118
  mockedFs.existsSync.mockImplementation(filePath => {
124
119
  const pathStr = filePath.toString();
125
120
  if (pathStr === projectDir ||
126
- pathStr === path_1.default.join(projectDir, srcDir)) {
121
+ pathStr === path.join(projectDir, srcDir)) {
127
122
  return true;
128
123
  }
129
124
  return false;
130
125
  });
131
- await expect(() => (0, dependencyManagement_1.installPackages)({ installLocations: [appFunctionsDir, extensionsDir] })).rejects.toThrowError(`Installing dependencies for ${appFunctionsDir} failed`);
132
- expect(SpinniesManager_1.default.fail).toHaveBeenCalledTimes(installLocations.length);
133
- expect(SpinniesManager_1.default.fail).toHaveBeenCalledWith(`installingDependencies-${appFunctionsDir}`, {
126
+ await expect(() => installPackages({ installLocations: [appFunctionsDir, extensionsDir] })).rejects.toThrowError(`Installing dependencies for ${appFunctionsDir} failed`);
127
+ expect(SpinniesManager.fail).toHaveBeenCalledTimes(installLocations.length);
128
+ expect(SpinniesManager.fail).toHaveBeenCalledWith(`installingDependencies-${appFunctionsDir}`, {
134
129
  text: `Installing dependencies for ${appFunctionsDir} failed`,
135
130
  });
136
- expect(SpinniesManager_1.default.fail).toHaveBeenCalledWith(`installingDependencies-${extensionsDir}`, {
131
+ expect(SpinniesManager.fail).toHaveBeenCalledWith(`installingDependencies-${extensionsDir}`, {
137
132
  text: `Installing dependencies for ${extensionsDir} failed`,
138
133
  });
139
134
  });
@@ -141,39 +136,39 @@ describe('lib/dependencyManagement', () => {
141
136
  describe('getProjectPackageJsonFiles()', () => {
142
137
  it('should throw an error when ran outside the boundary of a project', async () => {
143
138
  mockedGetProjectConfig.mockResolvedValue({});
144
- await expect(() => (0, dependencyManagement_1.getProjectPackageJsonLocations)()).rejects.toThrowError('No project detected. Run this command from a project directory.');
139
+ await expect(() => getProjectPackageJsonLocations()).rejects.toThrowError('No project detected. Run this command from a project directory.');
145
140
  });
146
141
  it('should throw an error if npm is not globally installed', async () => {
147
142
  execMock = vi.fn().mockImplementation(() => {
148
143
  throw new Error('OH NO');
149
144
  });
150
- util_1.default.promisify = mockedPromisify(execMock);
151
- await expect(() => (0, dependencyManagement_1.getProjectPackageJsonLocations)()).rejects.toThrowError(/This command depends on npm, install/);
145
+ util.promisify = mockedPromisify(execMock);
146
+ await expect(() => getProjectPackageJsonLocations()).rejects.toThrowError(/This command depends on npm, install/);
152
147
  });
153
148
  it('should throw an error if the project directory does not exist', async () => {
154
149
  mockedFs.existsSync.mockReturnValueOnce(false);
155
- await expect(() => (0, dependencyManagement_1.getProjectPackageJsonLocations)()).rejects.toThrowError(new RegExp(`No dependencies to install. The project ${projectName} folder might be missing component or subcomponent files.`));
150
+ await expect(() => getProjectPackageJsonLocations()).rejects.toThrowError(new RegExp(`No dependencies to install. The project ${projectName} folder might be missing component or subcomponent files.`));
156
151
  });
157
152
  it('should ignore package.json files in certain directories', async () => {
158
- const nodeModulesDir = path_1.default.join(appDir, 'node_modules');
159
- const viteDir = path_1.default.join(appDir, '.vite');
153
+ const nodeModulesDir = path.join(appDir, 'node_modules');
154
+ const viteDir = path.join(appDir, '.vite');
160
155
  const installLocations = [
161
- path_1.default.join(appFunctionsDir, 'package.json'),
162
- path_1.default.join(extensionsDir, 'package.json'),
163
- path_1.default.join(viteDir, 'package.json'),
164
- path_1.default.join(nodeModulesDir, 'package.json'),
156
+ path.join(appFunctionsDir, 'package.json'),
157
+ path.join(extensionsDir, 'package.json'),
158
+ path.join(viteDir, 'package.json'),
159
+ path.join(nodeModulesDir, 'package.json'),
165
160
  ];
166
161
  mockedWalk.mockResolvedValue(installLocations);
167
162
  mockedFs.existsSync.mockImplementation(filePath => {
168
163
  // Return true for project directory and src directory
169
164
  const pathStr = filePath.toString();
170
165
  if (pathStr === projectDir ||
171
- pathStr === path_1.default.join(projectDir, srcDir)) {
166
+ pathStr === path.join(projectDir, srcDir)) {
172
167
  return true;
173
168
  }
174
169
  return false;
175
170
  });
176
- const actual = await (0, dependencyManagement_1.getProjectPackageJsonLocations)();
171
+ const actual = await getProjectPackageJsonLocations();
177
172
  expect(actual).toEqual([appFunctionsDir, extensionsDir]);
178
173
  });
179
174
  });