@hubspot/cli 7.6.0-beta.5 → 7.6.0-beta.7

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 (602) hide show
  1. package/README.md +0 -4
  2. package/api/__tests__/migrate.test.js +27 -29
  3. package/api/migrate.d.ts +7 -0
  4. package/api/migrate.js +22 -22
  5. package/bin/cli.js +92 -97
  6. package/bin/hs +2 -2
  7. package/bin/hscms +2 -2
  8. package/bin/silenceErrors.js +1 -2
  9. package/commands/__tests__/account.test.js +29 -34
  10. package/commands/__tests__/auth.test.js +11 -16
  11. package/commands/__tests__/cms.test.js +15 -20
  12. package/commands/__tests__/config.test.js +14 -19
  13. package/commands/__tests__/create.test.js +10 -15
  14. package/commands/__tests__/customObject.test.js +14 -19
  15. package/commands/__tests__/doctor.test.js +43 -48
  16. package/commands/__tests__/feedback.test.js +7 -45
  17. package/commands/__tests__/fetch.test.js +29 -28
  18. package/commands/__tests__/filemanager.test.js +14 -19
  19. package/commands/__tests__/function.test.js +16 -21
  20. package/commands/__tests__/getStarted.test.js +45 -50
  21. package/commands/__tests__/hubdb.test.js +17 -22
  22. package/commands/__tests__/init.test.js +12 -17
  23. package/commands/__tests__/lint.test.js +13 -18
  24. package/commands/__tests__/list.test.js +18 -23
  25. package/commands/__tests__/logs.test.js +28 -27
  26. package/commands/__tests__/mcp.test.js +14 -19
  27. package/commands/__tests__/mv.test.js +14 -52
  28. package/commands/__tests__/open.test.js +13 -51
  29. package/commands/__tests__/project.test.js +44 -49
  30. package/commands/__tests__/remove.test.js +13 -51
  31. package/commands/__tests__/sandbox.test.js +14 -19
  32. package/commands/__tests__/secret.test.js +16 -21
  33. package/commands/__tests__/testAccount.test.js +18 -21
  34. package/commands/__tests__/theme.test.js +15 -20
  35. package/commands/account/__tests__/auth.test.js +11 -16
  36. package/commands/account/__tests__/clean.test.js +12 -17
  37. package/commands/account/__tests__/createOverride.test.js +10 -15
  38. package/commands/account/__tests__/info.test.js +11 -16
  39. package/commands/account/__tests__/list.test.js +11 -16
  40. package/commands/account/__tests__/remove.test.js +13 -18
  41. package/commands/account/__tests__/removeOverride.js +8 -13
  42. package/commands/account/__tests__/rename.test.js +15 -20
  43. package/commands/account/__tests__/use.test.js +10 -15
  44. package/commands/account/auth.d.ts +1 -1
  45. package/commands/account/auth.js +78 -69
  46. package/commands/account/clean.d.ts +1 -1
  47. package/commands/account/clean.js +55 -60
  48. package/commands/account/createOverride.d.ts +1 -1
  49. package/commands/account/createOverride.js +52 -57
  50. package/commands/account/info.d.ts +1 -1
  51. package/commands/account/info.js +33 -35
  52. package/commands/account/list.d.ts +1 -1
  53. package/commands/account/list.js +43 -45
  54. package/commands/account/remove.d.ts +1 -1
  55. package/commands/account/remove.js +37 -42
  56. package/commands/account/removeOverride.d.ts +1 -1
  57. package/commands/account/removeOverride.js +38 -43
  58. package/commands/account/rename.d.ts +1 -1
  59. package/commands/account/rename.js +18 -20
  60. package/commands/account/use.d.ts +1 -1
  61. package/commands/account/use.js +29 -31
  62. package/commands/account.d.ts +1 -1
  63. package/commands/account.js +23 -28
  64. package/commands/app/__tests__/migrate.test.js +29 -34
  65. package/commands/app/migrate.d.ts +2 -2
  66. package/commands/app/migrate.js +40 -43
  67. package/commands/app/secret/__tests__/add.test.js +6 -11
  68. package/commands/app/secret/__tests__/delete.test.js +6 -11
  69. package/commands/app/secret/__tests__/list.test.js +6 -11
  70. package/commands/app/secret/__tests__/update.test.js +6 -11
  71. package/commands/app/secret/add.d.ts +1 -1
  72. package/commands/app/secret/add.js +28 -30
  73. package/commands/app/secret/delete.d.ts +1 -1
  74. package/commands/app/secret/delete.js +34 -36
  75. package/commands/app/secret/list.d.ts +1 -1
  76. package/commands/app/secret/list.js +25 -27
  77. package/commands/app/secret/update.d.ts +1 -1
  78. package/commands/app/secret/update.js +32 -34
  79. package/commands/app/secret.d.ts +1 -1
  80. package/commands/app/secret.js +12 -17
  81. package/commands/app.d.ts +1 -1
  82. package/commands/app.js +6 -11
  83. package/commands/auth.d.ts +1 -1
  84. package/commands/auth.js +70 -72
  85. package/commands/cms/convertFields.d.ts +1 -1
  86. package/commands/cms/convertFields.js +34 -39
  87. package/commands/cms/getReactModule.d.ts +1 -1
  88. package/commands/cms/getReactModule.js +32 -37
  89. package/commands/cms/lighthouseScore.d.ts +1 -1
  90. package/commands/cms/lighthouseScore.js +67 -72
  91. package/commands/cms.d.ts +1 -1
  92. package/commands/cms.js +11 -16
  93. package/commands/completion.d.ts +1 -1
  94. package/commands/completion.js +10 -15
  95. package/commands/config/migrate.d.ts +1 -1
  96. package/commands/config/migrate.js +27 -32
  97. package/commands/config/set.d.ts +2 -1
  98. package/commands/config/set.js +40 -32
  99. package/commands/config.d.ts +1 -1
  100. package/commands/config.js +8 -13
  101. package/commands/create/api-sample.d.ts +1 -1
  102. package/commands/create/api-sample.js +28 -33
  103. package/commands/create/app.d.ts +1 -1
  104. package/commands/create/app.js +3 -5
  105. package/commands/create/function.d.ts +1 -1
  106. package/commands/create/function.js +9 -11
  107. package/commands/create/index.d.ts +1 -1
  108. package/commands/create/index.js +19 -24
  109. package/commands/create/module.d.ts +1 -1
  110. package/commands/create/module.js +12 -14
  111. package/commands/create/react-app.d.ts +1 -1
  112. package/commands/create/react-app.js +3 -5
  113. package/commands/create/template.d.ts +1 -1
  114. package/commands/create/template.js +12 -14
  115. package/commands/create/vue-app.d.ts +1 -1
  116. package/commands/create/vue-app.js +3 -5
  117. package/commands/create/webpack-serverless.d.ts +1 -1
  118. package/commands/create/webpack-serverless.js +3 -5
  119. package/commands/create/website-theme.d.ts +1 -1
  120. package/commands/create/website-theme.js +5 -7
  121. package/commands/create.d.ts +2 -2
  122. package/commands/create.js +30 -35
  123. package/commands/customObject/__tests__/create.test.js +13 -18
  124. package/commands/customObject/__tests__/schema.test.js +18 -23
  125. package/commands/customObject/create.d.ts +1 -1
  126. package/commands/customObject/create.js +28 -30
  127. package/commands/customObject/schema/__tests__/create.test.js +13 -18
  128. package/commands/customObject/schema/__tests__/delete.test.js +13 -18
  129. package/commands/customObject/schema/__tests__/fetch-all.test.js +13 -18
  130. package/commands/customObject/schema/__tests__/fetch.test.js +13 -18
  131. package/commands/customObject/schema/__tests__/list.test.js +13 -18
  132. package/commands/customObject/schema/__tests__/update.test.js +13 -18
  133. package/commands/customObject/schema/create.d.ts +1 -1
  134. package/commands/customObject/schema/create.js +28 -30
  135. package/commands/customObject/schema/delete.d.ts +1 -1
  136. package/commands/customObject/schema/delete.js +24 -26
  137. package/commands/customObject/schema/fetch-all.d.ts +1 -1
  138. package/commands/customObject/schema/fetch-all.js +22 -24
  139. package/commands/customObject/schema/fetch.d.ts +1 -1
  140. package/commands/customObject/schema/fetch.js +24 -26
  141. package/commands/customObject/schema/list.d.ts +1 -1
  142. package/commands/customObject/schema/list.js +13 -15
  143. package/commands/customObject/schema/update.d.ts +1 -1
  144. package/commands/customObject/schema/update.js +32 -34
  145. package/commands/customObject/schema.d.ts +1 -1
  146. package/commands/customObject/schema.js +17 -22
  147. package/commands/customObject.d.ts +1 -1
  148. package/commands/customObject.js +13 -18
  149. package/commands/doctor.d.ts +1 -1
  150. package/commands/doctor.js +28 -33
  151. package/commands/feedback.d.ts +1 -1
  152. package/commands/feedback.js +19 -24
  153. package/commands/fetch.d.ts +1 -1
  154. package/commands/fetch.js +28 -30
  155. package/commands/filemanager/__tests__/fetch.test.js +17 -22
  156. package/commands/filemanager/__tests__/upload.test.js +15 -20
  157. package/commands/filemanager/fetch.d.ts +1 -1
  158. package/commands/filemanager/fetch.js +23 -25
  159. package/commands/filemanager/upload.d.ts +1 -1
  160. package/commands/filemanager/upload.js +39 -44
  161. package/commands/filemanager.d.ts +1 -1
  162. package/commands/filemanager.js +8 -13
  163. package/commands/function/deploy.d.ts +1 -1
  164. package/commands/function/deploy.js +35 -40
  165. package/commands/function/list.d.ts +1 -1
  166. package/commands/function/list.js +24 -29
  167. package/commands/function/server.d.ts +1 -1
  168. package/commands/function/server.js +15 -17
  169. package/commands/function.d.ts +1 -1
  170. package/commands/function.js +12 -18
  171. package/commands/getStarted.d.ts +1 -1
  172. package/commands/getStarted.js +119 -125
  173. package/commands/hubdb/__tests__/clear.test.js +13 -18
  174. package/commands/hubdb/__tests__/create.test.js +13 -18
  175. package/commands/hubdb/__tests__/delete.test.js +13 -18
  176. package/commands/hubdb/__tests__/fetch.test.js +13 -18
  177. package/commands/hubdb/__tests__/list.test.js +23 -28
  178. package/commands/hubdb/clear.d.ts +1 -1
  179. package/commands/hubdb/clear.js +20 -22
  180. package/commands/hubdb/create.d.ts +1 -1
  181. package/commands/hubdb/create.js +30 -35
  182. package/commands/hubdb/delete.d.ts +1 -1
  183. package/commands/hubdb/delete.js +24 -26
  184. package/commands/hubdb/fetch.d.ts +1 -1
  185. package/commands/hubdb/fetch.js +17 -19
  186. package/commands/hubdb/list.d.ts +1 -1
  187. package/commands/hubdb/list.js +33 -35
  188. package/commands/hubdb.d.ts +1 -1
  189. package/commands/hubdb.js +18 -24
  190. package/commands/init.d.ts +1 -1
  191. package/commands/init.js +83 -88
  192. package/commands/lint.d.ts +1 -1
  193. package/commands/lint.js +24 -26
  194. package/commands/list.d.ts +1 -1
  195. package/commands/list.js +32 -37
  196. package/commands/logs.d.ts +1 -1
  197. package/commands/logs.js +35 -37
  198. package/commands/mcp/__tests__/setup.test.js +7 -12
  199. package/commands/mcp/__tests__/start.test.js +7 -12
  200. package/commands/mcp/setup.d.ts +1 -1
  201. package/commands/mcp/setup.js +17 -19
  202. package/commands/mcp/start.d.ts +1 -1
  203. package/commands/mcp/start.js +32 -34
  204. package/commands/mcp.d.ts +1 -1
  205. package/commands/mcp.js +7 -12
  206. package/commands/module/marketplace-validate.d.ts +1 -1
  207. package/commands/module/marketplace-validate.js +21 -26
  208. package/commands/module.d.ts +1 -1
  209. package/commands/module.js +7 -13
  210. package/commands/mv.d.ts +1 -1
  211. package/commands/mv.js +20 -22
  212. package/commands/open.d.ts +1 -1
  213. package/commands/open.js +19 -21
  214. package/commands/project/__tests__/add.test.js +10 -15
  215. package/commands/project/__tests__/create.test.js +14 -19
  216. package/commands/project/__tests__/deploy.test.js +96 -134
  217. package/commands/project/__tests__/devUnifiedFlow.test.js +130 -159
  218. package/commands/project/__tests__/download.test.js +14 -19
  219. package/commands/project/__tests__/installDeps.test.js +32 -70
  220. package/commands/project/__tests__/listBuilds.test.js +14 -19
  221. package/commands/project/__tests__/logs.test.js +56 -94
  222. package/commands/project/__tests__/migrate.test.js +25 -30
  223. package/commands/project/__tests__/migrateApp.test.js +17 -22
  224. package/commands/project/__tests__/open.test.js +16 -21
  225. package/commands/project/__tests__/profile.test.js +14 -19
  226. package/commands/project/__tests__/upload.test.js +18 -23
  227. package/commands/project/__tests__/watch.test.js +14 -19
  228. package/commands/project/add.d.ts +1 -1
  229. package/commands/project/add.js +34 -36
  230. package/commands/project/cloneApp.d.ts +1 -1
  231. package/commands/project/cloneApp.js +67 -72
  232. package/commands/project/create.d.ts +2 -2
  233. package/commands/project/create.js +63 -68
  234. package/commands/project/deploy.d.ts +1 -1
  235. package/commands/project/deploy.js +67 -69
  236. package/commands/project/dev/deprecatedFlow.d.ts +2 -2
  237. package/commands/project/dev/deprecatedFlow.js +52 -58
  238. package/commands/project/dev/index.d.ts +1 -1
  239. package/commands/project/dev/index.js +44 -47
  240. package/commands/project/dev/unifiedFlow.d.ts +4 -4
  241. package/commands/project/dev/unifiedFlow.js +64 -75
  242. package/commands/project/download.d.ts +1 -1
  243. package/commands/project/download.js +35 -40
  244. package/commands/project/installDeps.d.ts +1 -1
  245. package/commands/project/installDeps.js +29 -34
  246. package/commands/project/listBuilds.d.ts +1 -1
  247. package/commands/project/listBuilds.js +40 -45
  248. package/commands/project/logs.d.ts +1 -1
  249. package/commands/project/logs.js +52 -54
  250. package/commands/project/migrate.d.ts +1 -1
  251. package/commands/project/migrate.js +24 -26
  252. package/commands/project/migrateApp.d.ts +2 -2
  253. package/commands/project/migrateApp.js +18 -20
  254. package/commands/project/open.d.ts +1 -1
  255. package/commands/project/open.js +25 -30
  256. package/commands/project/profile/add.d.ts +1 -1
  257. package/commands/project/profile/add.js +68 -73
  258. package/commands/project/profile/delete.d.ts +1 -1
  259. package/commands/project/profile/delete.js +68 -61
  260. package/commands/project/profile.d.ts +1 -1
  261. package/commands/project/profile.js +9 -14
  262. package/commands/project/upload.d.ts +1 -1
  263. package/commands/project/upload.js +50 -55
  264. package/commands/project/validate.d.ts +1 -1
  265. package/commands/project/validate.js +36 -40
  266. package/commands/project/watch.d.ts +1 -1
  267. package/commands/project/watch.js +59 -61
  268. package/commands/project.d.ts +1 -1
  269. package/commands/project.js +38 -43
  270. package/commands/remove.d.ts +1 -1
  271. package/commands/remove.js +15 -17
  272. package/commands/sandbox/__tests__/create.test.js +222 -20
  273. package/commands/sandbox/__tests__/delete.test.js +15 -20
  274. package/commands/sandbox/create.d.ts +2 -2
  275. package/commands/sandbox/create.js +92 -79
  276. package/commands/sandbox/delete.d.ts +1 -1
  277. package/commands/sandbox/delete.js +94 -96
  278. package/commands/sandbox.d.ts +1 -1
  279. package/commands/sandbox.js +9 -14
  280. package/commands/secret/__tests__/addSecret.test.js +13 -18
  281. package/commands/secret/__tests__/deleteSecret.test.js +13 -18
  282. package/commands/secret/__tests__/listSecret.test.js +13 -18
  283. package/commands/secret/__tests__/updateSecret.test.js +13 -18
  284. package/commands/secret/addSecret.d.ts +1 -1
  285. package/commands/secret/addSecret.js +26 -28
  286. package/commands/secret/deleteSecret.d.ts +1 -1
  287. package/commands/secret/deleteSecret.js +27 -29
  288. package/commands/secret/listSecret.d.ts +1 -1
  289. package/commands/secret/listSecret.js +19 -21
  290. package/commands/secret/updateSecret.d.ts +1 -1
  291. package/commands/secret/updateSecret.js +25 -27
  292. package/commands/secret.d.ts +1 -1
  293. package/commands/secret.js +13 -18
  294. package/commands/testAccount/__tests__/create.test.js +17 -22
  295. package/commands/testAccount/__tests__/createConfig.test.js +6 -11
  296. package/commands/testAccount/__tests__/delete.test.js +15 -20
  297. package/commands/testAccount/__tests__/importData.test.js +93 -0
  298. package/commands/testAccount/create.d.ts +1 -1
  299. package/commands/testAccount/create.js +63 -58
  300. package/commands/testAccount/createConfig.d.ts +1 -1
  301. package/commands/testAccount/createConfig.js +36 -41
  302. package/commands/testAccount/delete.d.ts +1 -1
  303. package/commands/testAccount/delete.js +17 -19
  304. package/commands/testAccount/importData.d.ts +9 -0
  305. package/commands/testAccount/importData.js +61 -0
  306. package/commands/testAccount.d.ts +1 -1
  307. package/commands/testAccount.js +12 -15
  308. package/commands/theme/__tests__/generate-selectors.test.js +7 -12
  309. package/commands/theme/__tests__/marketplace-validate.test.js +14 -19
  310. package/commands/theme/__tests__/preview.test.js +12 -17
  311. package/commands/theme/generate-selectors.d.ts +1 -1
  312. package/commands/theme/generate-selectors.js +23 -28
  313. package/commands/theme/marketplace-validate.d.ts +1 -1
  314. package/commands/theme/marketplace-validate.js +19 -24
  315. package/commands/theme/preview.d.ts +1 -1
  316. package/commands/theme/preview.js +60 -65
  317. package/commands/theme.d.ts +1 -1
  318. package/commands/theme.js +11 -16
  319. package/commands/upload.d.ts +1 -1
  320. package/commands/upload.js +77 -82
  321. package/commands/watch.d.ts +1 -1
  322. package/commands/watch.js +45 -51
  323. package/lang/en.d.ts +69 -9
  324. package/lang/en.js +442 -385
  325. package/lang/en.lyaml +4 -2
  326. package/lib/__tests__/accountTypes.test.js +20 -22
  327. package/lib/__tests__/buildAccount.test.js +88 -65
  328. package/lib/__tests__/commonOpts.test.js +20 -22
  329. package/lib/__tests__/dependencyManagement.test.js +46 -51
  330. package/lib/__tests__/developerTestAccounts.test.js +27 -62
  331. package/lib/__tests__/hasFeature.test.js +6 -8
  332. package/lib/__tests__/importData.test.js +89 -0
  333. package/lib/__tests__/npm.test.js +15 -20
  334. package/lib/__tests__/oauth.test.js +23 -28
  335. package/lib/__tests__/parsing.test.js +18 -20
  336. package/lib/__tests__/polling.test.js +24 -26
  337. package/lib/__tests__/process.test.js +14 -19
  338. package/lib/__tests__/projectProfiles.test.js +34 -39
  339. package/lib/__tests__/sandboxSync.test.js +30 -35
  340. package/lib/__tests__/sandboxes.test.js +29 -31
  341. package/lib/__tests__/serverlessLogs.test.js +8 -13
  342. package/lib/__tests__/usageTracking.test.js +33 -34
  343. package/lib/__tests__/validation.test.js +18 -20
  344. package/lib/__tests__/yargsUtils.test.js +17 -41
  345. package/lib/accountTypes.js +23 -34
  346. package/lib/app/__tests__/migrate.test.js +120 -112
  347. package/lib/app/__tests__/migrate_legacy.test.js +29 -31
  348. package/lib/app/migrate.d.ts +18 -4
  349. package/lib/app/migrate.js +151 -148
  350. package/lib/app/migrate_legacy.d.ts +1 -1
  351. package/lib/app/migrate_legacy.js +72 -78
  352. package/lib/app/urls.js +5 -9
  353. package/lib/buildAccount.d.ts +5 -2
  354. package/lib/buildAccount.js +126 -80
  355. package/lib/commonOpts.d.ts +1 -1
  356. package/lib/commonOpts.js +67 -59
  357. package/lib/configMigrate.js +34 -38
  358. package/lib/configOptions.d.ts +5 -0
  359. package/lib/configOptions.js +44 -40
  360. package/lib/constants.d.ts +9 -0
  361. package/lib/constants.js +40 -34
  362. package/lib/customObject.js +2 -6
  363. package/lib/dependencyManagement.js +37 -45
  364. package/lib/developerTestAccounts.d.ts +1 -1
  365. package/lib/developerTestAccounts.js +34 -39
  366. package/lib/doctor/Diagnosis.d.ts +1 -1
  367. package/lib/doctor/Diagnosis.js +25 -29
  368. package/lib/doctor/DiagnosticInfoBuilder.d.ts +1 -1
  369. package/lib/doctor/DiagnosticInfoBuilder.js +30 -37
  370. package/lib/doctor/Doctor.d.ts +1 -1
  371. package/lib/doctor/Doctor.js +94 -101
  372. package/lib/doctor/__tests__/Diagnosis.test.js +9 -14
  373. package/lib/doctor/__tests__/DiagnosticInfoBuilder.test.js +29 -34
  374. package/lib/doctor/__tests__/Doctor.test.js +24 -26
  375. package/lib/enums/exitCodes.js +1 -4
  376. package/lib/errorHandlers/index.js +33 -44
  377. package/lib/errorHandlers/suppressError.d.ts +1 -1
  378. package/lib/errorHandlers/suppressError.js +28 -31
  379. package/lib/errors/ProjectValidationError.d.ts +4 -0
  380. package/lib/errors/ProjectValidationError.js +9 -0
  381. package/lib/filesystem.js +8 -15
  382. package/lib/generateSelectors.js +18 -29
  383. package/lib/hasFeature.d.ts +2 -1
  384. package/lib/hasFeature.js +10 -6
  385. package/lib/importData.d.ts +3 -0
  386. package/lib/importData.js +50 -0
  387. package/lib/interpolation.js +11 -18
  388. package/lib/lang.d.ts +1 -1
  389. package/lib/lang.js +22 -27
  390. package/lib/links.js +16 -24
  391. package/lib/marketplaceValidate.js +29 -39
  392. package/lib/mcp/setup.d.ts +4 -0
  393. package/lib/mcp/setup.js +106 -82
  394. package/lib/middleware/__test__/configMiddleware.test.js +20 -55
  395. package/lib/middleware/__test__/gitMiddleware.test.js +7 -42
  396. package/lib/middleware/__test__/notificationsMiddleware.test.js +2 -4
  397. package/lib/middleware/__test__/requestMiddleware.test.js +6 -11
  398. package/lib/middleware/__test__/utils.test.js +9 -11
  399. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +9 -44
  400. package/lib/middleware/autoUpdateMiddleware.js +33 -40
  401. package/lib/middleware/configMiddleware.js +36 -42
  402. package/lib/middleware/fireAlarmMiddleware.js +12 -18
  403. package/lib/middleware/gitMiddleware.js +5 -8
  404. package/lib/middleware/notificationsMiddleware.js +16 -23
  405. package/lib/middleware/requestMiddleware.js +4 -10
  406. package/lib/middleware/utils.js +1 -4
  407. package/lib/middleware/yargsChecksMiddleware.js +10 -13
  408. package/lib/npm.js +14 -23
  409. package/lib/oauth.js +29 -35
  410. package/lib/parsing.js +3 -6
  411. package/lib/polling.js +11 -15
  412. package/lib/process.js +11 -19
  413. package/lib/projectProfiles.d.ts +2 -2
  414. package/lib/projectProfiles.js +32 -42
  415. package/lib/projects/ProjectLogsManager.js +18 -21
  416. package/lib/projects/__tests__/AppDevModeInterface.test.js +142 -148
  417. package/lib/projects/__tests__/LocalDevProcess.test.js +84 -144
  418. package/lib/projects/__tests__/LocalDevWebsocketServer.test.js +202 -38
  419. package/lib/projects/__tests__/ProjectLogsManager.test.js +56 -58
  420. package/lib/projects/__tests__/buildAndDeploy.test.js +7 -9
  421. package/lib/projects/__tests__/components.test.js +9 -14
  422. package/lib/projects/__tests__/localDevHelpers.test.d.ts +1 -0
  423. package/lib/projects/__tests__/localDevHelpers.test.js +118 -0
  424. package/lib/projects/__tests__/projects.test.js +35 -40
  425. package/lib/projects/__tests__/structure.test.js +43 -81
  426. package/lib/projects/add/__tests__/legacyAddComponent.test.js +26 -28
  427. package/lib/projects/add/__tests__/v3AddComponent.test.js +25 -30
  428. package/lib/projects/add/legacyAddComponent.d.ts +1 -1
  429. package/lib/projects/add/legacyAddComponent.js +24 -30
  430. package/lib/projects/add/v3AddComponent.d.ts +1 -1
  431. package/lib/projects/add/v3AddComponent.js +37 -42
  432. package/lib/projects/buildAndDeploy.d.ts +1 -1
  433. package/lib/projects/buildAndDeploy.js +88 -97
  434. package/lib/projects/components.js +19 -25
  435. package/lib/projects/config.d.ts +1 -1
  436. package/lib/projects/config.js +32 -41
  437. package/lib/projects/create/__tests__/legacy.test.js +22 -57
  438. package/lib/projects/create/__tests__/v3.test.js +5 -7
  439. package/lib/projects/create/index.d.ts +3 -3
  440. package/lib/projects/create/index.js +19 -22
  441. package/lib/projects/create/legacy.d.ts +1 -1
  442. package/lib/projects/create/legacy.js +25 -31
  443. package/lib/projects/create/v3.d.ts +3 -5
  444. package/lib/projects/create/v3.js +47 -59
  445. package/lib/projects/ensureProjectExists.js +31 -37
  446. package/lib/projects/localDev/AppDevModeInterface.d.ts +3 -3
  447. package/lib/projects/localDev/AppDevModeInterface.js +58 -60
  448. package/lib/projects/localDev/DevServerManager.d.ts +1 -1
  449. package/lib/projects/localDev/DevServerManager.js +22 -24
  450. package/lib/projects/localDev/DevServerManagerV2.d.ts +2 -2
  451. package/lib/projects/localDev/DevServerManagerV2.js +15 -20
  452. package/lib/projects/localDev/LocalDevLogger.d.ts +1 -5
  453. package/lib/projects/localDev/LocalDevLogger.js +66 -79
  454. package/lib/projects/localDev/LocalDevManager.d.ts +1 -1
  455. package/lib/projects/localDev/LocalDevManager.js +106 -111
  456. package/lib/projects/localDev/LocalDevProcess.d.ts +7 -6
  457. package/lib/projects/localDev/LocalDevProcess.js +40 -53
  458. package/lib/projects/localDev/LocalDevState.d.ts +10 -10
  459. package/lib/projects/localDev/LocalDevState.js +23 -19
  460. package/lib/projects/localDev/LocalDevWatcher.d.ts +1 -1
  461. package/lib/projects/localDev/LocalDevWatcher.js +6 -11
  462. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +4 -3
  463. package/lib/projects/localDev/LocalDevWebsocketServer.js +78 -55
  464. package/lib/projects/localDev/helpers.d.ts +10 -3
  465. package/lib/projects/localDev/helpers.js +211 -174
  466. package/lib/projects/structure.d.ts +3 -3
  467. package/lib/projects/structure.js +32 -78
  468. package/lib/projects/ui.js +10 -13
  469. package/lib/projects/upload.d.ts +1 -1
  470. package/lib/projects/upload.js +57 -73
  471. package/lib/projects/urls.d.ts +1 -1
  472. package/lib/projects/urls.js +15 -25
  473. package/lib/projects/watch.d.ts +1 -1
  474. package/lib/projects/watch.js +48 -54
  475. package/lib/prompts/__tests__/downloadProjectPrompt.test.js +9 -11
  476. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +11 -16
  477. package/lib/prompts/accountNamePrompt.d.ts +1 -1
  478. package/lib/prompts/accountNamePrompt.js +26 -31
  479. package/lib/prompts/accountsPrompt.js +12 -15
  480. package/lib/prompts/cmsFieldPrompt.js +13 -19
  481. package/lib/prompts/confirmImportDataPrompt.d.ts +1 -0
  482. package/lib/prompts/confirmImportDataPrompt.js +12 -0
  483. package/lib/prompts/createApiSamplePrompt.d.ts +1 -1
  484. package/lib/prompts/createApiSamplePrompt.js +9 -12
  485. package/lib/prompts/createDeveloperTestAccountConfigPrompt.d.ts +1 -1
  486. package/lib/prompts/createDeveloperTestAccountConfigPrompt.js +23 -26
  487. package/lib/prompts/createFunctionPrompt.js +17 -20
  488. package/lib/prompts/createModulePrompt.js +12 -15
  489. package/lib/prompts/createTemplatePrompt.js +5 -8
  490. package/lib/prompts/downloadProjectPrompt.js +17 -20
  491. package/lib/prompts/importDataFilePathPrompt.d.ts +1 -0
  492. package/lib/prompts/importDataFilePathPrompt.js +24 -0
  493. package/lib/prompts/importDataTestAccountSelectPrompt.d.ts +3 -0
  494. package/lib/prompts/importDataTestAccountSelectPrompt.js +29 -0
  495. package/lib/prompts/installAppPrompt.js +19 -26
  496. package/lib/prompts/personalAccessKeyPrompt.d.ts +2 -2
  497. package/lib/prompts/personalAccessKeyPrompt.js +40 -47
  498. package/lib/prompts/previewPrompt.js +15 -22
  499. package/lib/prompts/projectAddPrompt.d.ts +1 -1
  500. package/lib/prompts/projectAddPrompt.js +14 -18
  501. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +1 -1
  502. package/lib/prompts/projectDevTargetAccountPrompt.js +48 -54
  503. package/lib/prompts/projectNameAndDestPrompt.d.ts +1 -1
  504. package/lib/prompts/projectNameAndDestPrompt.js +22 -29
  505. package/lib/prompts/projectNamePrompt.js +11 -14
  506. package/lib/prompts/projectsLogsPrompt.js +5 -8
  507. package/lib/prompts/promptUtils.d.ts +1 -1
  508. package/lib/prompts/promptUtils.js +17 -24
  509. package/lib/prompts/sandboxesPrompt.d.ts +1 -1
  510. package/lib/prompts/sandboxesPrompt.js +26 -30
  511. package/lib/prompts/secretPrompt.js +10 -15
  512. package/lib/prompts/selectAppPrompt.js +11 -14
  513. package/lib/prompts/selectHubDBTablePrompt.js +24 -30
  514. package/lib/prompts/selectProjectTemplatePrompt.d.ts +1 -1
  515. package/lib/prompts/selectProjectTemplatePrompt.js +10 -13
  516. package/lib/prompts/selectPublicAppForMigrationPrompt.js +22 -25
  517. package/lib/prompts/setAsDefaultAccountPrompt.js +13 -16
  518. package/lib/prompts/uploadPrompt.js +11 -17
  519. package/lib/sandboxSync.d.ts +1 -1
  520. package/lib/sandboxSync.js +58 -65
  521. package/lib/sandboxes.d.ts +5 -1
  522. package/lib/sandboxes.js +72 -76
  523. package/lib/schema.js +13 -20
  524. package/lib/serverlessLogs.js +45 -52
  525. package/lib/testUtils.js +4 -8
  526. package/lib/ui/SpinniesManager.d.ts +1 -1
  527. package/lib/ui/SpinniesManager.js +29 -34
  528. package/lib/ui/__tests__/removeAnsiCodes.test.d.ts +1 -0
  529. package/lib/ui/__tests__/removeAnsiCodes.test.js +84 -0
  530. package/lib/ui/boxen.js +11 -14
  531. package/lib/ui/git.js +14 -20
  532. package/lib/ui/index.d.ts +6 -0
  533. package/lib/ui/index.js +56 -76
  534. package/lib/ui/logger.js +10 -13
  535. package/lib/ui/removeAnsiCodes.d.ts +1 -0
  536. package/lib/ui/removeAnsiCodes.js +4 -0
  537. package/lib/ui/serverlessFunctionLogs.js +14 -20
  538. package/lib/ui/spinniesUtils.js +24 -39
  539. package/lib/ui/supportHyperlinks.js +3 -6
  540. package/lib/ui/supportsColor.js +11 -17
  541. package/lib/ui/table.js +6 -13
  542. package/lib/upload.js +15 -21
  543. package/lib/usageTracking.js +35 -44
  544. package/lib/utils/hasFlag.js +2 -8
  545. package/lib/validation.js +48 -87
  546. package/lib/yargsUtils.d.ts +2 -1
  547. package/lib/yargsUtils.js +19 -16
  548. package/mcp-server/server.js +6 -8
  549. package/mcp-server/tools/index.js +15 -16
  550. package/mcp-server/tools/project/{AddFeatureToProject.d.ts → AddFeatureToProjectTool.d.ts} +5 -5
  551. package/mcp-server/tools/project/AddFeatureToProjectTool.js +76 -0
  552. package/mcp-server/tools/project/CreateProjectTool.d.ts +4 -4
  553. package/mcp-server/tools/project/CreateProjectTool.js +40 -54
  554. package/mcp-server/tools/project/{DeployProject.d.ts → DeployProjectTool.d.ts} +2 -2
  555. package/mcp-server/tools/project/DeployProjectTool.js +49 -0
  556. package/mcp-server/tools/project/GetConfigValuesTool.d.ts +20 -0
  557. package/mcp-server/tools/project/GetConfigValuesTool.js +51 -0
  558. package/mcp-server/tools/project/GuidedWalkthroughTool.d.ts +1 -1
  559. package/mcp-server/tools/project/GuidedWalkthroughTool.js +21 -25
  560. package/mcp-server/tools/project/UploadProjectTools.d.ts +1 -1
  561. package/mcp-server/tools/project/UploadProjectTools.js +12 -19
  562. package/mcp-server/tools/project/ValidateProjectTool.d.ts +1 -1
  563. package/mcp-server/tools/project/ValidateProjectTool.js +13 -17
  564. package/mcp-server/tools/project/__tests__/AddFeatureToProjectTool.test.d.ts +1 -0
  565. package/mcp-server/tools/project/__tests__/{AddFeatureToProject.test.js → AddFeatureToProjectTool.test.js} +15 -17
  566. package/mcp-server/tools/project/__tests__/CreateProjectTool.test.js +12 -15
  567. package/mcp-server/tools/project/__tests__/DeployProjectTool.test.d.ts +1 -0
  568. package/mcp-server/tools/project/__tests__/{DeployProject.test.js → DeployProjectTool.test.js} +6 -8
  569. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.d.ts +1 -0
  570. package/mcp-server/tools/project/__tests__/GetConfigValuesTool.test.js +198 -0
  571. package/mcp-server/tools/project/__tests__/GuidedWalkthroughTool.test.js +4 -6
  572. package/mcp-server/tools/project/__tests__/UploadProjectTools.test.js +4 -6
  573. package/mcp-server/tools/project/__tests__/ValidateProjectTool.test.js +4 -6
  574. package/mcp-server/tools/project/constants.d.ts +1 -0
  575. package/mcp-server/tools/project/constants.js +14 -9
  576. package/mcp-server/types.js +1 -5
  577. package/mcp-server/utils/__tests__/command.test.js +9 -11
  578. package/mcp-server/utils/__tests__/project.test.js +12 -17
  579. package/mcp-server/utils/command.d.ts +1 -1
  580. package/mcp-server/utils/command.js +4 -11
  581. package/mcp-server/utils/content.d.ts +1 -1
  582. package/mcp-server/utils/content.js +2 -6
  583. package/mcp-server/utils/project.js +8 -14
  584. package/mcp-server/utils/toolUsageTracking.js +11 -14
  585. package/package.json +21 -14
  586. package/types/Cms.d.ts +1 -1
  587. package/types/Cms.js +1 -2
  588. package/types/LocalDev.d.ts +4 -7
  589. package/types/LocalDev.js +1 -2
  590. package/types/ProjectComponents.d.ts +2 -2
  591. package/types/ProjectComponents.js +1 -2
  592. package/types/Projects.d.ts +1 -1
  593. package/types/Projects.js +2 -5
  594. package/types/Prompts.js +1 -2
  595. package/types/Sandboxes.js +1 -2
  596. package/types/Yargs.js +1 -2
  597. package/ui/index.d.ts +1 -0
  598. package/ui/index.js +6 -0
  599. package/mcp-server/tools/project/AddFeatureToProject.js +0 -88
  600. package/mcp-server/tools/project/DeployProject.js +0 -53
  601. /package/{mcp-server/tools/project/__tests__/AddFeatureToProject.test.d.ts → commands/testAccount/__tests__/importData.test.d.ts} +0 -0
  602. /package/{mcp-server/tools/project/__tests__/DeployProject.test.d.ts → lib/__tests__/importData.test.d.ts} +0 -0
package/lib/commonOpts.js CHANGED
@@ -1,35 +1,19 @@
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.addGlobalOptions = addGlobalOptions;
7
- exports.addAccountOptions = addAccountOptions;
8
- exports.addConfigOptions = addConfigOptions;
9
- exports.addOverwriteOptions = addOverwriteOptions;
10
- exports.addCmsPublishModeOptions = addCmsPublishModeOptions;
11
- exports.addTestingOptions = addTestingOptions;
12
- exports.addUseEnvironmentOptions = addUseEnvironmentOptions;
13
- exports.addJSONOutputOptions = addJSONOutputOptions;
14
- exports.addCustomHelpOutput = addCustomHelpOutput;
15
- exports.setLogLevel = setLogLevel;
16
- exports.getCommandName = getCommandName;
17
- exports.getCmsPublishMode = getCmsPublishMode;
18
- const chalk_1 = __importDefault(require("chalk"));
19
- const yargs_parser_1 = __importDefault(require("yargs-parser"));
20
- const logger_1 = require("@hubspot/local-dev-lib/logger");
21
- const files_1 = require("@hubspot/local-dev-lib/constants/files");
22
- const config_1 = require("@hubspot/local-dev-lib/config");
23
- const errorHandlers_1 = require("./errorHandlers");
24
- const exitCodes_1 = require("./enums/exitCodes");
25
- const ui_1 = require("./ui");
26
- const lang_1 = require("./lang");
27
- function addGlobalOptions(yargs) {
1
+ import chalk from 'chalk';
2
+ import yargsParser from 'yargs-parser';
3
+ import { LOG_LEVEL, logger, setLogLevel as setLoggerLogLevel, } from '@hubspot/local-dev-lib/logger';
4
+ import { DEFAULT_CMS_PUBLISH_MODE, CMS_PUBLISH_MODE, } from '@hubspot/local-dev-lib/constants/files';
5
+ import { getAccountConfig, getAndLoadConfigIfNeeded, } from '@hubspot/local-dev-lib/config';
6
+ import { debugError } from './errorHandlers/index.js';
7
+ import { EXIT_CODES } from './enums/exitCodes.js';
8
+ import { uiCommandReference } from './ui/index.js';
9
+ import { i18n } from './lang.js';
10
+ import { getTerminalUISupport, UI_COLORS } from './ui/index.js';
11
+ export function addGlobalOptions(yargs) {
28
12
  yargs.version(false);
29
13
  yargs.option('debug', {
30
14
  alias: 'd',
31
15
  default: false,
32
- describe: (0, lang_1.i18n)('lib.commonOpts.options.debug.describe'),
16
+ describe: i18n('lib.commonOpts.options.debug.describe'),
33
17
  type: 'boolean',
34
18
  });
35
19
  yargs.option('network-debug', {
@@ -39,63 +23,87 @@ function addGlobalOptions(yargs) {
39
23
  });
40
24
  return yargs;
41
25
  }
42
- function addAccountOptions(yargs) {
26
+ export function addAccountOptions(yargs) {
43
27
  return yargs.option('account', {
44
28
  alias: 'a',
45
- describe: (0, lang_1.i18n)('lib.commonOpts.options.account.describe'),
29
+ describe: i18n('lib.commonOpts.options.account.describe'),
46
30
  type: 'string',
47
31
  });
48
32
  }
49
- function addConfigOptions(yargs) {
33
+ export function addConfigOptions(yargs) {
50
34
  return yargs.option('config', {
51
35
  alias: 'c',
52
- describe: (0, lang_1.i18n)('lib.commonOpts.options.config.describe'),
36
+ describe: i18n('lib.commonOpts.options.config.describe'),
53
37
  type: 'string',
54
38
  });
55
39
  }
56
- function addOverwriteOptions(yargs) {
40
+ export function addOverwriteOptions(yargs) {
57
41
  return yargs.option('overwrite', {
58
42
  alias: 'o',
59
- describe: (0, lang_1.i18n)('lib.commonOpts.options.overwrite.describe'),
43
+ describe: i18n('lib.commonOpts.options.overwrite.describe'),
60
44
  type: 'boolean',
61
45
  default: false,
62
46
  });
63
47
  }
64
- function addCmsPublishModeOptions(yargs, { read, write }) {
65
- const cmsPublishModes = `<${Object.values(files_1.CMS_PUBLISH_MODE).join(' | ')}>`;
48
+ export function addCmsPublishModeOptions(yargs, { read, write }) {
49
+ const cmsPublishModes = `<${Object.values(CMS_PUBLISH_MODE).join(' | ')}>`;
66
50
  return yargs.option('cms-publish-mode', {
67
51
  alias: 'm',
68
- describe: (0, lang_1.i18n)(`lib.commonOpts.options.modes.describe.${read ? 'read' : write ? 'write' : 'default'}`, { modes: cmsPublishModes }),
52
+ describe: i18n(`lib.commonOpts.options.modes.describe.${read ? 'read' : write ? 'write' : 'default'}`, { modes: cmsPublishModes }),
69
53
  type: 'string',
70
54
  });
71
55
  }
72
- function addTestingOptions(yargs) {
56
+ export function addTestingOptions(yargs) {
73
57
  return yargs.option('qa', {
74
- describe: (0, lang_1.i18n)('lib.commonOpts.options.qa.describe'),
58
+ describe: i18n('lib.commonOpts.options.qa.describe'),
75
59
  type: 'boolean',
76
60
  default: false,
77
61
  hidden: true,
78
62
  });
79
63
  }
80
- function addUseEnvironmentOptions(yargs) {
64
+ export function addUseEnvironmentOptions(yargs) {
81
65
  yargs.option('use-env', {
82
- describe: (0, lang_1.i18n)('lib.commonOpts.options.useEnv.describe'),
66
+ describe: i18n('lib.commonOpts.options.useEnv.describe'),
83
67
  type: 'boolean',
84
68
  });
85
69
  yargs.conflicts('use-env', 'account');
86
70
  return yargs;
87
71
  }
88
- function addJSONOutputOptions(yargs) {
72
+ export function addJSONOutputOptions(yargs) {
89
73
  return yargs.option('json', {
90
74
  alias: 'format-output-as-json',
91
- describe: (0, lang_1.i18n)('lib.commonOpts.options.jsonOutput.describe'),
75
+ describe: i18n('lib.commonOpts.options.jsonOutput.describe'),
92
76
  type: 'boolean',
93
77
  hidden: true,
94
78
  });
95
79
  }
96
- async function addCustomHelpOutput(yargs, command, describe) {
80
+ // Remove this once we've upgraded to yargs 18.0.0
81
+ function uiBetaTagWithColor(message) {
82
+ const terminalUISupport = getTerminalUISupport();
83
+ const tag = i18n(`lib.ui.betaTagWithStyle`);
84
+ const result = `${terminalUISupport.color ? chalk.hex(UI_COLORS.SORBET)(tag) : tag} ${message}`;
85
+ return result;
86
+ }
87
+ // Remove this once we've upgraded to yargs 18.0.0
88
+ function uiDeprecatedTagWithColor(message) {
89
+ const terminalUISupport = getTerminalUISupport();
90
+ const tag = i18n(`lib.ui.deprecatedTagWithStyle`);
91
+ const result = `${terminalUISupport.color ? chalk.yellow(tag) : tag} ${message}`;
92
+ return result;
93
+ }
94
+ export async function addCustomHelpOutput(yargs, command, describe) {
97
95
  try {
98
- const parsedArgv = (0, yargs_parser_1.default)(process.argv.slice(2));
96
+ // Remove this once we've upgraded to yargs 18.0.0
97
+ if (describe && describe.includes(i18n(`lib.ui.betaTag`))) {
98
+ describe = describe.replace(i18n(`lib.ui.betaTag`) + ' ', '');
99
+ describe = uiBetaTagWithColor(describe);
100
+ }
101
+ // Remove this once we've upgraded to yargs 18.0.0
102
+ if (describe && describe.includes(i18n(`lib.ui.deprecatedTag`))) {
103
+ describe = describe.replace(i18n(`lib.ui.deprecatedTag`) + ' ', '');
104
+ describe = uiDeprecatedTagWithColor(describe);
105
+ }
106
+ const parsedArgv = yargsParser(process.argv.slice(2));
99
107
  if (parsedArgv && parsedArgv.help) {
100
108
  const commandBase = `hs ${parsedArgv._.slice(0, -1).join(' ')}`;
101
109
  // Make sure we are targeting the correct command by confirming that
@@ -116,7 +124,7 @@ async function addCustomHelpOutput(yargs, command, describe) {
116
124
  // Format the original help output to be more readable
117
125
  let commandHelp = await yargs.getHelp();
118
126
  ['Options:', 'Commands:', 'Examples:', 'Positionals:'].forEach(header => {
119
- commandHelp = commandHelp.replace(header, chalk_1.default.bold(header));
127
+ commandHelp = commandHelp.replace(header, chalk.bold(header));
120
128
  });
121
129
  // Remove "hs <command>" from the help output (this shows up for command buckets)
122
130
  commandHelp = commandHelp.replace('hs <command>\n', '');
@@ -124,35 +132,35 @@ async function addCustomHelpOutput(yargs, command, describe) {
124
132
  if (commandHelp.startsWith('\n')) {
125
133
  commandHelp = commandHelp.slice(1);
126
134
  }
127
- logger_1.logger.log(`${(0, ui_1.uiCommandReference)(fullCommand, false)}\n\n${describe ? `${describe}\n\n` : ''}${commandHelp}`);
128
- process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
135
+ logger.log(`${uiCommandReference(fullCommand, false)}\n\n${describe ? `${describe}\n\n` : ''}${commandHelp}`);
136
+ process.exit(EXIT_CODES.SUCCESS);
129
137
  }
130
138
  }
131
139
  catch (e) {
132
140
  // Ignore error to allow yargs to show the default help output using the command description
133
- (0, errorHandlers_1.debugError)(e);
141
+ debugError(e);
134
142
  }
135
143
  }
136
- function setLogLevel(options) {
144
+ export function setLogLevel(options) {
137
145
  const { debug, networkDebug, json } = options;
138
146
  if (json) {
139
- (0, logger_1.setLogLevel)(logger_1.LOG_LEVEL.ERROR);
147
+ setLoggerLogLevel(LOG_LEVEL.ERROR);
140
148
  }
141
149
  else if (debug) {
142
- (0, logger_1.setLogLevel)(logger_1.LOG_LEVEL.DEBUG);
150
+ setLoggerLogLevel(LOG_LEVEL.DEBUG);
143
151
  }
144
152
  else {
145
- (0, logger_1.setLogLevel)(logger_1.LOG_LEVEL.LOG);
153
+ setLoggerLogLevel(LOG_LEVEL.LOG);
146
154
  }
147
155
  if (networkDebug) {
148
156
  process.env.HUBSPOT_NETWORK_LOGGING = 'true';
149
- (0, logger_1.setLogLevel)(logger_1.LOG_LEVEL.DEBUG);
157
+ setLoggerLogLevel(LOG_LEVEL.DEBUG);
150
158
  }
151
159
  }
152
- function getCommandName(argv) {
160
+ export function getCommandName(argv) {
153
161
  return String(argv && argv._ && argv._[0]) || '';
154
162
  }
155
- function getCmsPublishMode(options) {
163
+ export function getCmsPublishMode(options) {
156
164
  // 1. --cmsPublishMode
157
165
  const { cmsPublishMode } = options;
158
166
  if (cmsPublishMode && typeof cmsPublishMode === 'string') {
@@ -160,14 +168,14 @@ function getCmsPublishMode(options) {
160
168
  }
161
169
  // 2. config[account].defaultCmsPublishMode
162
170
  if (options.derivedAccountId) {
163
- const accountConfig = (0, config_1.getAccountConfig)(options.derivedAccountId);
171
+ const accountConfig = getAccountConfig(options.derivedAccountId);
164
172
  if (accountConfig && accountConfig.defaultCmsPublishMode) {
165
173
  return accountConfig.defaultCmsPublishMode;
166
174
  }
167
175
  }
168
176
  // 3. config.defaultCmsPublishMode
169
177
  // 4. DEFAULT_CMS_PUBLISH_MODE
170
- const config = (0, config_1.getAndLoadConfigIfNeeded)();
178
+ const config = getAndLoadConfigIfNeeded();
171
179
  return ((config && config.defaultCmsPublishMode) ||
172
- files_1.DEFAULT_CMS_PUBLISH_MODE);
180
+ DEFAULT_CMS_PUBLISH_MODE);
173
181
  }
@@ -1,47 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleMigration = handleMigration;
4
- exports.handleMerge = handleMerge;
5
- const migrate_1 = require("@hubspot/local-dev-lib/config/migrate");
6
- const config_1 = require("@hubspot/local-dev-lib/constants/config");
7
- const promptUtils_1 = require("./prompts/promptUtils");
8
- const en_1 = require("../lang/en");
9
- const logger_1 = require("./ui/logger");
10
- async function handleMigration(deprecatedConfigPath, hideWarning) {
1
+ import { getDeprecatedConfig, getGlobalConfig, getConfigPath, migrateConfig, mergeConfigProperties, mergeExistingConfigs, } from '@hubspot/local-dev-lib/config/migrate';
2
+ import { ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME } from '@hubspot/local-dev-lib/constants/config';
3
+ import { promptUser } from './prompts/promptUtils.js';
4
+ import { lib } from '../lang/en.js';
5
+ import { uiLogger } from './ui/logger.js';
6
+ export async function handleMigration(deprecatedConfigPath, hideWarning) {
11
7
  if (!hideWarning) {
12
- logger_1.uiLogger.warn(en_1.lib.configMigrate.deprecatedConfigWarning(deprecatedConfigPath || (0, migrate_1.getConfigPath)(undefined, false)));
13
- logger_1.uiLogger.log('');
8
+ uiLogger.warn(lib.configMigrate.deprecatedConfigWarning(deprecatedConfigPath || getConfigPath(undefined, false)));
9
+ uiLogger.log('');
14
10
  }
15
- logger_1.uiLogger.log(en_1.lib.configMigrate.handleMigration.description(config_1.ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME));
16
- logger_1.uiLogger.log('');
17
- const { shouldMigrateConfig } = await (0, promptUtils_1.promptUser)({
11
+ uiLogger.log(lib.configMigrate.handleMigration.description(ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME));
12
+ uiLogger.log('');
13
+ const { shouldMigrateConfig } = await promptUser({
18
14
  name: 'shouldMigrateConfig',
19
15
  type: 'confirm',
20
- message: en_1.lib.configMigrate.handleMigration.confirmPrompt,
16
+ message: lib.configMigrate.handleMigration.confirmPrompt,
21
17
  });
22
18
  if (!shouldMigrateConfig) {
23
19
  return false;
24
20
  }
25
- const deprecatedConfig = (0, migrate_1.getDeprecatedConfig)(deprecatedConfigPath);
26
- (0, migrate_1.migrateConfig)(deprecatedConfig);
27
- logger_1.uiLogger.success(en_1.lib.configMigrate.handleMigration.success);
21
+ const deprecatedConfig = getDeprecatedConfig(deprecatedConfigPath);
22
+ migrateConfig(deprecatedConfig);
23
+ uiLogger.success(lib.configMigrate.handleMigration.success);
28
24
  return true;
29
25
  }
30
26
  async function handleMergeConfigProperties(globalConfig, deprecatedConfig, force) {
31
- const { initialConfig, conflicts, } = (0, migrate_1.mergeConfigProperties)(globalConfig, deprecatedConfig, force);
27
+ const { initialConfig, conflicts, } = mergeConfigProperties(globalConfig, deprecatedConfig, force);
32
28
  if (conflicts.length > 0) {
33
29
  const properties = conflicts.map(c => c.property);
34
30
  const propertyList = properties.length <= 2
35
31
  ? properties.join(' and ')
36
32
  : `${properties.slice(0, -1).join(', ')}, and ${properties.at(-1)}`;
37
- logger_1.uiLogger.log('');
38
- logger_1.uiLogger.warn(en_1.lib.configMigrate.handleMergeConfigProperties.mergeConflictMessage(conflicts.length, propertyList));
33
+ uiLogger.log('');
34
+ uiLogger.warn(lib.configMigrate.handleMergeConfigProperties.mergeConflictMessage(conflicts.length, propertyList));
39
35
  for (const conflict of conflicts) {
40
36
  const { property, newValue, oldValue } = conflict;
41
- const { shouldOverwrite } = await (0, promptUtils_1.promptUser)({
37
+ const { shouldOverwrite } = await promptUser({
42
38
  name: 'shouldOverwrite',
43
39
  type: 'confirm',
44
- message: en_1.lib.configMigrate.handleMergeConfigProperties.mergeConfigConflictPrompt(property, newValue.toString(), oldValue.toString()),
40
+ message: lib.configMigrate.handleMergeConfigProperties.mergeConfigConflictPrompt(property, newValue.toString(), oldValue.toString()),
45
41
  });
46
42
  if (shouldOverwrite) {
47
43
  // @ts-expect-error Cannot reconcile CLIConfig_NEW and CLIConfig_DEPRECATED
@@ -51,33 +47,33 @@ async function handleMergeConfigProperties(globalConfig, deprecatedConfig, force
51
47
  }
52
48
  return initialConfig;
53
49
  }
54
- async function handleMerge(deprecatedConfigPath, force, hideWarning) {
50
+ export async function handleMerge(deprecatedConfigPath, force, hideWarning) {
55
51
  if (!hideWarning) {
56
- logger_1.uiLogger.warn(en_1.lib.configMigrate.deprecatedConfigWarning(deprecatedConfigPath || (0, migrate_1.getConfigPath)(undefined, false)));
57
- logger_1.uiLogger.log('');
52
+ uiLogger.warn(lib.configMigrate.deprecatedConfigWarning(deprecatedConfigPath || getConfigPath(undefined, false)));
53
+ uiLogger.log('');
58
54
  }
59
- logger_1.uiLogger.log(en_1.lib.configMigrate.handleMerge.description(config_1.ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME));
60
- logger_1.uiLogger.log('');
61
- const { shouldMergeConfigs } = await (0, promptUtils_1.promptUser)({
55
+ uiLogger.log(lib.configMigrate.handleMerge.description(ARCHIVED_HUBSPOT_CONFIG_YAML_FILE_NAME));
56
+ uiLogger.log('');
57
+ const { shouldMergeConfigs } = await promptUser({
62
58
  name: 'shouldMergeConfigs',
63
59
  type: 'confirm',
64
- message: en_1.lib.configMigrate.handleMerge.confirmPrompt,
60
+ message: lib.configMigrate.handleMerge.confirmPrompt,
65
61
  });
66
62
  if (!shouldMergeConfigs) {
67
63
  return false;
68
64
  }
69
- const deprecatedConfig = (0, migrate_1.getDeprecatedConfig)(deprecatedConfigPath);
70
- const globalConfig = (0, migrate_1.getGlobalConfig)();
65
+ const deprecatedConfig = getDeprecatedConfig(deprecatedConfigPath);
66
+ const globalConfig = getGlobalConfig();
71
67
  if (!deprecatedConfig || !globalConfig) {
72
68
  return true;
73
69
  }
74
70
  const mergedConfig = await handleMergeConfigProperties(globalConfig, deprecatedConfig, force);
75
- const { skippedAccountIds } = (0, migrate_1.mergeExistingConfigs)(mergedConfig, deprecatedConfig);
71
+ const { skippedAccountIds } = mergeExistingConfigs(mergedConfig, deprecatedConfig);
76
72
  if (skippedAccountIds.length > 0) {
77
- logger_1.uiLogger.log('');
78
- logger_1.uiLogger.log(en_1.lib.configMigrate.handleMerge.skippedExistingAccounts(skippedAccountIds));
79
- logger_1.uiLogger.log('');
73
+ uiLogger.log('');
74
+ uiLogger.log(lib.configMigrate.handleMerge.skippedExistingAccounts(skippedAccountIds));
75
+ uiLogger.log('');
80
76
  }
81
- logger_1.uiLogger.success(en_1.lib.configMigrate.handleMerge.success);
77
+ uiLogger.success(lib.configMigrate.handleMerge.success);
82
78
  return true;
83
79
  }
@@ -15,3 +15,8 @@ export declare function setHttpTimeout({ accountId, httpTimeout, }: {
15
15
  accountId: number;
16
16
  httpTimeout?: string;
17
17
  }): Promise<void>;
18
+ export declare function setAutoOpenBrowser({ accountId, autoOpenBrowser, }: {
19
+ accountId: number;
20
+ autoOpenBrowser: boolean;
21
+ }): Promise<void>;
22
+ export declare function isAutoOpenBrowserEnabled(): boolean;
@@ -1,26 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setAllowUsageTracking = setAllowUsageTracking;
4
- exports.setAllowAutoUpdates = setAllowAutoUpdates;
5
- exports.setDefaultCmsPublishMode = setDefaultCmsPublishMode;
6
- exports.setHttpTimeout = setHttpTimeout;
7
- const config_1 = require("@hubspot/local-dev-lib/config");
8
- const files_1 = require("@hubspot/local-dev-lib/constants/files");
9
- const text_1 = require("@hubspot/local-dev-lib/text");
10
- const usageTracking_1 = require("./usageTracking");
11
- const promptUtils_1 = require("./prompts/promptUtils");
12
- const en_1 = require("../lang/en");
13
- const logger_1 = require("./ui/logger");
1
+ import { updateAllowUsageTracking, updateAllowAutoUpdates, updateDefaultCmsPublishMode, updateHttpTimeout, isConfigFlagEnabled, updateAutoOpenBrowser, } from '@hubspot/local-dev-lib/config';
2
+ import { CMS_PUBLISH_MODE } from '@hubspot/local-dev-lib/constants/files';
3
+ import { commaSeparatedValues } from '@hubspot/local-dev-lib/text';
4
+ import { trackCommandUsage } from './usageTracking.js';
5
+ import { promptUser, listPrompt } from './prompts/promptUtils.js';
6
+ import { lib } from '../lang/en.js';
7
+ import { uiLogger } from './ui/logger.js';
14
8
  async function enableOrDisableBooleanFieldPrompt(fieldName) {
15
- const isEnabled = await (0, promptUtils_1.listPrompt)(en_1.lib.configOptions.enableOrDisableBooleanFieldPrompt.message(fieldName), {
9
+ const isEnabled = await listPrompt(lib.configOptions.enableOrDisableBooleanFieldPrompt.message(fieldName), {
16
10
  choices: [
17
11
  {
18
- name: en_1.lib.configOptions.enableOrDisableBooleanFieldPrompt.labels
12
+ name: lib.configOptions.enableOrDisableBooleanFieldPrompt.labels
19
13
  .enabled,
20
14
  value: true,
21
15
  },
22
16
  {
23
- name: en_1.lib.configOptions.enableOrDisableBooleanFieldPrompt.labels
17
+ name: lib.configOptions.enableOrDisableBooleanFieldPrompt.labels
24
18
  .disabled,
25
19
  value: false,
26
20
  },
@@ -29,40 +23,40 @@ async function enableOrDisableBooleanFieldPrompt(fieldName) {
29
23
  });
30
24
  return isEnabled;
31
25
  }
32
- async function setAllowUsageTracking({ accountId, allowUsageTracking, }) {
33
- (0, usageTracking_1.trackCommandUsage)('config-set-allow-usage-tracking', undefined, accountId);
26
+ export async function setAllowUsageTracking({ accountId, allowUsageTracking, }) {
27
+ trackCommandUsage('config-set-allow-usage-tracking', undefined, accountId);
34
28
  let isEnabled;
35
29
  if (typeof allowUsageTracking === 'boolean') {
36
30
  isEnabled = allowUsageTracking;
37
31
  }
38
32
  else {
39
- isEnabled = await enableOrDisableBooleanFieldPrompt(en_1.lib.configOptions.setAllowUsageTracking.fieldName);
33
+ isEnabled = await enableOrDisableBooleanFieldPrompt(lib.configOptions.setAllowUsageTracking.fieldName);
40
34
  }
41
- (0, config_1.updateAllowUsageTracking)(isEnabled);
42
- logger_1.uiLogger.success(en_1.lib.configOptions.setAllowUsageTracking.success(isEnabled.toString()));
35
+ updateAllowUsageTracking(isEnabled);
36
+ uiLogger.success(lib.configOptions.setAllowUsageTracking.success(isEnabled.toString()));
43
37
  }
44
- async function setAllowAutoUpdates({ accountId, allowAutoUpdates, }) {
45
- (0, usageTracking_1.trackCommandUsage)('config-set-allow-auto-updates', undefined, accountId);
38
+ export async function setAllowAutoUpdates({ accountId, allowAutoUpdates, }) {
39
+ trackCommandUsage('config-set-allow-auto-updates', undefined, accountId);
46
40
  let isEnabled;
47
41
  if (typeof allowAutoUpdates === 'boolean') {
48
42
  isEnabled = allowAutoUpdates;
49
43
  }
50
44
  else {
51
- isEnabled = await enableOrDisableBooleanFieldPrompt(en_1.lib.configOptions.setAllowAutoUpdates.fieldName);
45
+ isEnabled = await enableOrDisableBooleanFieldPrompt(lib.configOptions.setAllowAutoUpdates.fieldName);
52
46
  }
53
- (0, config_1.updateAllowAutoUpdates)(isEnabled);
54
- logger_1.uiLogger.success(en_1.lib.configOptions.setAllowAutoUpdates.success(isEnabled.toString()));
47
+ updateAllowAutoUpdates(isEnabled);
48
+ uiLogger.success(lib.configOptions.setAllowAutoUpdates.success(isEnabled.toString()));
55
49
  }
56
- const ALL_CMS_PUBLISH_MODES = Object.values(files_1.CMS_PUBLISH_MODE);
50
+ const ALL_CMS_PUBLISH_MODES = Object.values(CMS_PUBLISH_MODE);
57
51
  async function selectCmsPublishMode() {
58
- const cmsPublishMode = await (0, promptUtils_1.listPrompt)(en_1.lib.configOptions.setDefaultCmsPublishMode.promptMessage, {
52
+ const cmsPublishMode = await listPrompt(lib.configOptions.setDefaultCmsPublishMode.promptMessage, {
59
53
  choices: ALL_CMS_PUBLISH_MODES,
60
- defaultAnswer: files_1.CMS_PUBLISH_MODE.publish,
54
+ defaultAnswer: CMS_PUBLISH_MODE.publish,
61
55
  });
62
56
  return cmsPublishMode;
63
57
  }
64
- async function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMode, }) {
65
- (0, usageTracking_1.trackCommandUsage)('config-set-default-mode', undefined, accountId);
58
+ export async function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMode, }) {
59
+ trackCommandUsage('config-set-default-mode', undefined, accountId);
66
60
  let newDefault;
67
61
  if (!defaultCmsPublishMode) {
68
62
  newDefault = await selectCmsPublishMode();
@@ -72,25 +66,25 @@ async function setDefaultCmsPublishMode({ accountId, defaultCmsPublishMode, }) {
72
66
  newDefault = defaultCmsPublishMode;
73
67
  }
74
68
  else {
75
- logger_1.uiLogger.error(en_1.lib.configOptions.setDefaultCmsPublishMode.error((0, text_1.commaSeparatedValues)(ALL_CMS_PUBLISH_MODES)));
69
+ uiLogger.error(lib.configOptions.setDefaultCmsPublishMode.error(commaSeparatedValues(ALL_CMS_PUBLISH_MODES)));
76
70
  newDefault = await selectCmsPublishMode();
77
71
  }
78
- (0, config_1.updateDefaultCmsPublishMode)(newDefault);
79
- logger_1.uiLogger.success(en_1.lib.configOptions.setDefaultCmsPublishMode.success(newDefault));
72
+ updateDefaultCmsPublishMode(newDefault);
73
+ uiLogger.success(lib.configOptions.setDefaultCmsPublishMode.success(newDefault));
80
74
  }
81
75
  async function enterTimeout() {
82
- const { timeout } = await (0, promptUtils_1.promptUser)([
76
+ const { timeout } = await promptUser([
83
77
  {
84
78
  name: 'timeout',
85
- message: en_1.lib.configOptions.setHttpTimeout.promptMessage,
79
+ message: lib.configOptions.setHttpTimeout.promptMessage,
86
80
  type: 'input',
87
81
  default: 30000,
88
82
  },
89
83
  ]);
90
84
  return timeout;
91
85
  }
92
- async function setHttpTimeout({ accountId, httpTimeout, }) {
93
- (0, usageTracking_1.trackCommandUsage)('config-set-http-timeout', undefined, accountId);
86
+ export async function setHttpTimeout({ accountId, httpTimeout, }) {
87
+ trackCommandUsage('config-set-http-timeout', undefined, accountId);
94
88
  let newHttpTimeout;
95
89
  if (!httpTimeout) {
96
90
  newHttpTimeout = await enterTimeout();
@@ -98,6 +92,16 @@ async function setHttpTimeout({ accountId, httpTimeout, }) {
98
92
  else {
99
93
  newHttpTimeout = httpTimeout;
100
94
  }
101
- (0, config_1.updateHttpTimeout)(newHttpTimeout);
102
- logger_1.uiLogger.success(en_1.lib.configOptions.setHttpTimeout.success(newHttpTimeout));
95
+ updateHttpTimeout(newHttpTimeout);
96
+ uiLogger.success(lib.configOptions.setHttpTimeout.success(newHttpTimeout));
97
+ }
98
+ export async function setAutoOpenBrowser({ accountId, autoOpenBrowser, }) {
99
+ trackCommandUsage('config-set-auto-open-browser', undefined, accountId);
100
+ updateAutoOpenBrowser(autoOpenBrowser);
101
+ uiLogger.success(autoOpenBrowser
102
+ ? lib.configOptions.setAutoOpenBrowser.enabled
103
+ : lib.configOptions.setAutoOpenBrowser.disabled);
104
+ }
105
+ export function isAutoOpenBrowserEnabled() {
106
+ return isConfigFlagEnabled('autoOpenBrowser', true);
103
107
  }
@@ -78,6 +78,8 @@ export declare const APP_AUTH_TYPES: {
78
78
  export declare const FEATURES: {
79
79
  readonly UNIFIED_THEME_PREVIEW: "cms:react:unifiedThemePreview";
80
80
  readonly UNIFIED_APPS: "Developers:UnifiedApps:PrivateBeta";
81
+ readonly SANDBOXES_V2: "sandboxes:v2:enabled";
82
+ readonly SANDBOXES_V2_CLI: "sandboxes:v2:cliEnabled";
81
83
  };
82
84
  export declare const LOCAL_DEV_UI_MESSAGE_SEND_TYPES: {
83
85
  UPLOAD_SUCCESS: string;
@@ -85,9 +87,11 @@ export declare const LOCAL_DEV_UI_MESSAGE_SEND_TYPES: {
85
87
  UPDATE_PROJECT_NODES: string;
86
88
  UPDATE_APP_DATA: string;
87
89
  UPDATE_PROJECT_DATA: string;
90
+ UPDATE_UPLOAD_WARNINGS: string;
88
91
  };
89
92
  export declare const LOCAL_DEV_UI_MESSAGE_RECEIVE_TYPES: {
90
93
  UPLOAD: string;
94
+ VIEWED_WELCOME_SCREEN: string;
91
95
  };
92
96
  export declare const APP_INSTALLATION_STATES: {
93
97
  readonly NOT_INSTALLED: "NOT_INSTALLED";
@@ -107,3 +111,8 @@ export declare const LOCAL_DEV_SERVER_MESSAGE_TYPES: {
107
111
  readonly INITIAL: "INITIAL";
108
112
  readonly WEBSOCKET_SERVER_CONNECTED: "WEBSOCKET_SERVER_CONNECTED";
109
113
  };
114
+ export declare const CONFIG_LOCAL_STATE_FLAGS: {
115
+ readonly LOCAL_DEV_UI_WELCOME: "LOCAL_DEV_UI_WELCOME";
116
+ };
117
+ export declare const EMPTY_PROJECT = "empty";
118
+ export declare const PROJECT_WITH_APP = "app";