@hubspot/cli 7.4.9-experimental.0 → 7.4.10-beta.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 (366) hide show
  1. package/api/migrate.d.ts +14 -4
  2. package/api/migrate.js +16 -2
  3. package/bin/cli.js +9 -187
  4. package/commands/account/auth.d.ts +6 -0
  5. package/commands/account/auth.js +198 -0
  6. package/commands/account/clean.d.ts +3 -7
  7. package/commands/account/clean.js +54 -14
  8. package/commands/account/createOverride.d.ts +6 -0
  9. package/commands/account/createOverride.js +121 -0
  10. package/commands/account/info.d.ts +3 -7
  11. package/commands/account/info.js +51 -9
  12. package/commands/account/list.d.ts +3 -7
  13. package/commands/account/list.js +38 -13
  14. package/commands/account/remove.d.ts +3 -7
  15. package/commands/account/remove.js +57 -11
  16. package/commands/account/removeOverride.d.ts +6 -0
  17. package/commands/account/removeOverride.js +93 -0
  18. package/commands/account/rename.d.ts +3 -7
  19. package/commands/account/rename.js +16 -9
  20. package/commands/account/use.d.ts +5 -9
  21. package/commands/account/use.js +39 -9
  22. package/commands/account.d.ts +3 -4
  23. package/commands/account.js +35 -53
  24. package/commands/app/migrate.d.ts +5 -6
  25. package/commands/app/migrate.js +60 -44
  26. package/commands/app.d.ts +2 -5
  27. package/commands/app.js +9 -9
  28. package/commands/auth.d.ts +3 -7
  29. package/commands/auth.js +25 -15
  30. package/commands/cms/convertFields.d.ts +7 -1
  31. package/commands/cms/convertFields.js +57 -41
  32. package/commands/cms/getReactModule.d.ts +7 -1
  33. package/commands/cms/getReactModule.js +52 -34
  34. package/commands/cms/lighthouseScore.d.ts +8 -1
  35. package/commands/cms/lighthouseScore.js +133 -100
  36. package/commands/cms.d.ts +3 -1
  37. package/commands/cms.js +24 -16
  38. package/commands/completion.d.ts +3 -1
  39. package/commands/completion.js +25 -13
  40. package/commands/config/migrate.d.ts +6 -0
  41. package/commands/config/migrate.js +94 -0
  42. package/commands/config/set.d.ts +10 -1
  43. package/commands/config/set.js +61 -32
  44. package/commands/config.d.ts +3 -1
  45. package/commands/config.js +21 -11
  46. package/commands/create/api-sample.d.ts +3 -1
  47. package/commands/create/api-sample.js +34 -36
  48. package/commands/create/app.d.ts +3 -1
  49. package/commands/create/app.js +9 -7
  50. package/commands/create/function.d.ts +3 -1
  51. package/commands/create/function.js +11 -10
  52. package/commands/create/index.d.ts +5 -1
  53. package/commands/create/index.js +23 -11
  54. package/commands/create/module.d.ts +3 -1
  55. package/commands/create/module.js +14 -13
  56. package/commands/create/react-app.d.ts +3 -1
  57. package/commands/create/react-app.js +10 -7
  58. package/commands/create/template.d.ts +3 -1
  59. package/commands/create/template.js +14 -14
  60. package/commands/create/vue-app.d.ts +3 -1
  61. package/commands/create/vue-app.js +10 -7
  62. package/commands/create/webpack-serverless.d.ts +3 -1
  63. package/commands/create/webpack-serverless.js +10 -7
  64. package/commands/create/website-theme.d.ts +3 -1
  65. package/commands/create/website-theme.js +10 -9
  66. package/commands/create.d.ts +4 -24
  67. package/commands/create.js +64 -75
  68. package/commands/customObject/create.d.ts +4 -9
  69. package/commands/customObject/create.js +17 -10
  70. package/commands/customObject/schema/create.d.ts +4 -9
  71. package/commands/customObject/schema/create.js +18 -11
  72. package/commands/customObject/schema/delete.d.ts +4 -9
  73. package/commands/customObject/schema/delete.js +21 -11
  74. package/commands/customObject/schema/fetch-all.d.ts +4 -9
  75. package/commands/customObject/schema/fetch-all.js +19 -11
  76. package/commands/customObject/schema/fetch.d.ts +4 -9
  77. package/commands/customObject/schema/fetch.js +19 -11
  78. package/commands/customObject/schema/list.d.ts +4 -8
  79. package/commands/customObject/schema/list.js +17 -10
  80. package/commands/customObject/schema/update.d.ts +4 -9
  81. package/commands/customObject/schema/update.js +18 -11
  82. package/commands/customObject/schema.d.ts +3 -5
  83. package/commands/customObject/schema.js +27 -54
  84. package/commands/customObject.d.ts +3 -4
  85. package/commands/customObject.js +22 -48
  86. package/commands/doctor.d.ts +6 -8
  87. package/commands/doctor.js +32 -22
  88. package/commands/feedback.d.ts +4 -1
  89. package/commands/feedback.js +40 -48
  90. package/commands/fetch.d.ts +12 -1
  91. package/commands/fetch.js +49 -34
  92. package/commands/filemanager/fetch.d.ts +4 -9
  93. package/commands/filemanager/fetch.js +18 -11
  94. package/commands/filemanager/upload.d.ts +4 -9
  95. package/commands/filemanager/upload.js +17 -11
  96. package/commands/filemanager.d.ts +3 -4
  97. package/commands/filemanager.js +20 -42
  98. package/commands/function/deploy.d.ts +6 -1
  99. package/commands/function/deploy.js +70 -50
  100. package/commands/function/list.d.ts +6 -1
  101. package/commands/function/list.js +44 -32
  102. package/commands/function/server.d.ts +10 -1
  103. package/commands/function/server.js +49 -38
  104. package/commands/function.d.ts +5 -1
  105. package/commands/function.js +24 -11
  106. package/commands/hubdb/clear.d.ts +4 -9
  107. package/commands/hubdb/clear.js +21 -15
  108. package/commands/hubdb/create.d.ts +4 -9
  109. package/commands/hubdb/create.js +23 -17
  110. package/commands/hubdb/delete.d.ts +4 -9
  111. package/commands/hubdb/delete.js +24 -16
  112. package/commands/hubdb/fetch.d.ts +4 -9
  113. package/commands/hubdb/fetch.js +20 -14
  114. package/commands/hubdb.d.ts +3 -2
  115. package/commands/hubdb.js +24 -47
  116. package/commands/init.d.ts +3 -7
  117. package/commands/init.js +28 -23
  118. package/commands/lint.d.ts +6 -4
  119. package/commands/lint.js +44 -44
  120. package/commands/list.d.ts +3 -7
  121. package/commands/list.js +23 -16
  122. package/commands/logs.d.ts +10 -1
  123. package/commands/logs.js +53 -45
  124. package/commands/module/marketplace-validate.d.ts +6 -1
  125. package/commands/module/marketplace-validate.js +39 -28
  126. package/commands/module.d.ts +3 -1
  127. package/commands/module.js +22 -12
  128. package/commands/mv.d.ts +3 -7
  129. package/commands/mv.js +22 -15
  130. package/commands/open.d.ts +3 -7
  131. package/commands/open.js +22 -15
  132. package/commands/project/add.d.ts +3 -7
  133. package/commands/project/add.js +28 -23
  134. package/commands/project/cloneApp.d.ts +6 -8
  135. package/commands/project/cloneApp.js +49 -45
  136. package/commands/project/create.d.ts +10 -1
  137. package/commands/project/create.js +85 -63
  138. package/commands/project/deploy.d.ts +4 -6
  139. package/commands/project/deploy.js +66 -36
  140. package/commands/project/dev/deprecatedFlow.js +32 -25
  141. package/commands/project/dev/index.d.ts +4 -5
  142. package/commands/project/dev/index.js +70 -25
  143. package/commands/project/dev/unifiedFlow.d.ts +2 -1
  144. package/commands/project/dev/unifiedFlow.js +58 -27
  145. package/commands/project/download.d.ts +3 -7
  146. package/commands/project/download.js +18 -19
  147. package/commands/project/installDeps.d.ts +6 -1
  148. package/commands/project/installDeps.js +48 -32
  149. package/commands/project/listBuilds.d.ts +3 -7
  150. package/commands/project/listBuilds.js +32 -27
  151. package/commands/project/logs.d.ts +10 -1
  152. package/commands/project/logs.js +73 -65
  153. package/commands/project/migrate.d.ts +7 -0
  154. package/commands/project/migrate.js +71 -0
  155. package/commands/project/migrateApp.d.ts +3 -8
  156. package/commands/project/migrateApp.js +23 -20
  157. package/commands/project/open.d.ts +3 -7
  158. package/commands/project/open.js +29 -21
  159. package/commands/project/profile/add.d.ts +7 -0
  160. package/commands/project/profile/add.js +190 -0
  161. package/commands/project/profile/remove.d.ts +6 -0
  162. package/commands/project/profile/remove.js +119 -0
  163. package/commands/project/profile.d.ts +3 -0
  164. package/commands/project/profile.js +25 -0
  165. package/commands/project/upload.d.ts +10 -1
  166. package/commands/project/upload.js +110 -56
  167. package/commands/project/watch.d.ts +6 -1
  168. package/commands/project/watch.js +95 -61
  169. package/commands/project.d.ts +3 -1
  170. package/commands/project.js +49 -35
  171. package/commands/remove.d.ts +3 -7
  172. package/commands/remove.js +25 -15
  173. package/commands/sandbox/create.d.ts +4 -9
  174. package/commands/sandbox/create.js +27 -21
  175. package/commands/sandbox/delete.d.ts +4 -9
  176. package/commands/sandbox/delete.js +35 -29
  177. package/commands/sandbox.d.ts +3 -4
  178. package/commands/sandbox.js +20 -44
  179. package/commands/secret/addSecret.d.ts +4 -9
  180. package/commands/secret/addSecret.js +21 -15
  181. package/commands/secret/deleteSecret.d.ts +4 -9
  182. package/commands/secret/deleteSecret.js +28 -18
  183. package/commands/secret/listSecret.d.ts +4 -9
  184. package/commands/secret/listSecret.js +19 -13
  185. package/commands/secret/updateSecret.d.ts +4 -9
  186. package/commands/secret/updateSecret.js +25 -17
  187. package/commands/secret.d.ts +3 -4
  188. package/commands/secret.js +25 -49
  189. package/commands/theme/generate-selectors.d.ts +3 -7
  190. package/commands/theme/generate-selectors.js +18 -11
  191. package/commands/theme/marketplace-validate.d.ts +4 -9
  192. package/commands/theme/marketplace-validate.js +21 -15
  193. package/commands/theme/preview.d.ts +4 -9
  194. package/commands/theme/preview.js +31 -24
  195. package/commands/theme.d.ts +3 -4
  196. package/commands/theme.js +23 -47
  197. package/commands/upload.d.ts +12 -1
  198. package/commands/upload.js +118 -98
  199. package/commands/watch.d.ts +14 -1
  200. package/commands/watch.js +76 -66
  201. package/lang/en.d.ts +2932 -0
  202. package/lang/en.js +2796 -3318
  203. package/lang/en.lyaml +120 -58
  204. package/lib/accountTypes.d.ts +1 -0
  205. package/lib/accountTypes.js +12 -0
  206. package/lib/app/migrate.d.ts +33 -4
  207. package/lib/app/migrate.js +218 -93
  208. package/lib/app/migrate_legacy.d.ts +2 -2
  209. package/lib/app/migrate_legacy.js +15 -12
  210. package/lib/app/urls.d.ts +16 -0
  211. package/lib/app/urls.js +16 -0
  212. package/lib/buildAccount.d.ts +1 -2
  213. package/lib/buildAccount.js +11 -10
  214. package/lib/commonOpts.d.ts +3 -4
  215. package/lib/commonOpts.js +46 -18
  216. package/lib/configMigrate.d.ts +2 -0
  217. package/lib/configMigrate.js +118 -0
  218. package/lib/configOptions.d.ts +4 -0
  219. package/lib/configOptions.js +41 -45
  220. package/lib/constants.d.ts +10 -0
  221. package/lib/constants.js +11 -1
  222. package/lib/dependencyManagement.d.ts +0 -5
  223. package/lib/dependencyManagement.js +14 -40
  224. package/lib/doctor/Diagnosis.d.ts +1 -2
  225. package/lib/doctor/Diagnosis.js +19 -16
  226. package/lib/doctor/DiagnosticInfoBuilder.d.ts +2 -1
  227. package/lib/doctor/DiagnosticInfoBuilder.js +10 -9
  228. package/lib/doctor/Doctor.d.ts +1 -0
  229. package/lib/doctor/Doctor.js +59 -45
  230. package/lib/errorHandlers/index.js +6 -7
  231. package/lib/errorHandlers/suppressError.js +18 -26
  232. package/lib/filesystem.d.ts +1 -1
  233. package/lib/generateSelectors.js +1 -2
  234. package/lib/hasFeature.d.ts +3 -1
  235. package/lib/interpolation.d.ts +2 -3
  236. package/lib/lang.d.ts +2 -3
  237. package/lib/middleware/__test__/configMiddleware.test.d.ts +1 -0
  238. package/lib/middleware/__test__/configMiddleware.test.js +194 -0
  239. package/lib/middleware/__test__/gitMiddleware.test.d.ts +1 -0
  240. package/lib/middleware/__test__/gitMiddleware.test.js +76 -0
  241. package/lib/middleware/__test__/notificationsMiddleware.test.d.ts +1 -0
  242. package/lib/middleware/__test__/notificationsMiddleware.test.js +10 -0
  243. package/lib/middleware/__test__/requestMiddleware.test.d.ts +1 -0
  244. package/lib/middleware/__test__/requestMiddleware.test.js +20 -0
  245. package/lib/middleware/__test__/utils.test.d.ts +1 -0
  246. package/lib/middleware/__test__/utils.test.js +53 -0
  247. package/lib/middleware/__test__/yargsChecksMiddleware.test.d.ts +1 -0
  248. package/lib/middleware/__test__/yargsChecksMiddleware.test.js +81 -0
  249. package/lib/middleware/autoUpdateMiddleware.d.ts +1 -0
  250. package/lib/middleware/autoUpdateMiddleware.js +89 -0
  251. package/lib/middleware/configMiddleware.d.ts +13 -0
  252. package/lib/middleware/configMiddleware.js +124 -0
  253. package/lib/middleware/fireAlarmMiddleware.d.ts +4 -0
  254. package/lib/middleware/fireAlarmMiddleware.js +123 -0
  255. package/lib/middleware/gitMiddleware.d.ts +2 -0
  256. package/lib/middleware/gitMiddleware.js +14 -0
  257. package/lib/middleware/notificationsMiddleware.d.ts +1 -0
  258. package/lib/middleware/notificationsMiddleware.js +38 -0
  259. package/lib/middleware/requestMiddleware.d.ts +1 -0
  260. package/lib/middleware/requestMiddleware.js +11 -0
  261. package/lib/middleware/utils.d.ts +8 -0
  262. package/lib/middleware/utils.js +17 -0
  263. package/lib/middleware/yargsChecksMiddleware.d.ts +4 -0
  264. package/lib/middleware/yargsChecksMiddleware.js +24 -0
  265. package/lib/npm.d.ts +9 -0
  266. package/lib/npm.js +36 -0
  267. package/lib/oauth.js +1 -2
  268. package/lib/process.js +1 -2
  269. package/lib/projectProfiles.d.ts +6 -0
  270. package/lib/projectProfiles.js +65 -0
  271. package/lib/projects/ProjectLogsManager.d.ts +1 -1
  272. package/lib/projects/ProjectLogsManager.js +16 -21
  273. package/lib/projects/buildAndDeploy.js +45 -41
  274. package/lib/projects/config.d.ts +9 -0
  275. package/lib/projects/config.js +79 -0
  276. package/lib/projects/create.js +5 -6
  277. package/lib/projects/ensureProjectExists.d.ts +11 -0
  278. package/lib/projects/ensureProjectExists.js +97 -0
  279. package/lib/projects/localDev/AppDevModeInterface.d.ts +26 -0
  280. package/lib/projects/localDev/AppDevModeInterface.js +156 -0
  281. package/lib/{DevServerManager.d.ts → projects/localDev/DevServerManager.d.ts} +1 -1
  282. package/lib/{DevServerManager.js → projects/localDev/DevServerManager.js} +6 -6
  283. package/lib/projects/localDev/DevServerManagerV2.d.ts +22 -0
  284. package/lib/{DevServerManagerV2.js → projects/localDev/DevServerManagerV2.js} +22 -19
  285. package/lib/projects/localDev/LocalDevLogger.d.ts +30 -0
  286. package/lib/projects/localDev/LocalDevLogger.js +158 -0
  287. package/lib/{LocalDevManager.d.ts → projects/localDev/LocalDevManager.d.ts} +1 -1
  288. package/lib/{LocalDevManager.js → projects/localDev/LocalDevManager.js} +57 -83
  289. package/lib/projects/localDev/LocalDevProcess.d.ts +27 -0
  290. package/lib/projects/localDev/LocalDevProcess.js +171 -0
  291. package/lib/projects/localDev/LocalDevState.d.ts +37 -0
  292. package/lib/projects/localDev/LocalDevState.js +78 -0
  293. package/lib/projects/localDev/LocalDevWatcher.d.ts +10 -0
  294. package/lib/projects/localDev/LocalDevWatcher.js +56 -0
  295. package/lib/projects/localDev/LocalDevWebsocketServer.d.ts +17 -0
  296. package/lib/projects/localDev/LocalDevWebsocketServer.js +92 -0
  297. package/lib/{localDev.d.ts → projects/localDev/helpers.d.ts} +5 -4
  298. package/lib/{localDev.js → projects/localDev/helpers.js} +98 -114
  299. package/lib/projects/ui.d.ts +1 -0
  300. package/lib/projects/ui.js +15 -0
  301. package/lib/projects/upload.d.ts +14 -2
  302. package/lib/projects/upload.js +19 -35
  303. package/lib/projects/urls.d.ts +1 -0
  304. package/lib/projects/urls.js +6 -0
  305. package/lib/projects/watch.d.ts +1 -1
  306. package/lib/projects/watch.js +21 -18
  307. package/lib/prompts/accountNamePrompt.js +16 -13
  308. package/lib/prompts/accountsPrompt.js +1 -2
  309. package/lib/prompts/cmsFieldPrompt.js +1 -2
  310. package/lib/prompts/createApiSamplePrompt.d.ts +2 -10
  311. package/lib/prompts/createApiSamplePrompt.js +4 -5
  312. package/lib/prompts/createFunctionPrompt.js +13 -14
  313. package/lib/prompts/createModulePrompt.js +8 -9
  314. package/lib/prompts/createProjectPrompt.d.ts +11 -4
  315. package/lib/prompts/createProjectPrompt.js +14 -9
  316. package/lib/prompts/createTemplatePrompt.d.ts +22 -4
  317. package/lib/prompts/createTemplatePrompt.js +1 -2
  318. package/lib/prompts/downloadProjectPrompt.js +3 -4
  319. package/lib/prompts/installAppPrompt.d.ts +1 -0
  320. package/lib/prompts/installAppPrompt.js +35 -0
  321. package/lib/prompts/personalAccessKeyPrompt.js +17 -18
  322. package/lib/prompts/previewPrompt.js +5 -6
  323. package/lib/prompts/projectAddPrompt.js +4 -5
  324. package/lib/prompts/projectDevTargetAccountPrompt.js +18 -12
  325. package/lib/prompts/projectNamePrompt.js +5 -6
  326. package/lib/prompts/projectsLogsPrompt.js +3 -2
  327. package/lib/prompts/promptUtils.d.ts +3 -2
  328. package/lib/prompts/promptUtils.js +2 -1
  329. package/lib/prompts/sandboxesPrompt.js +5 -6
  330. package/lib/prompts/secretPrompt.js +2 -3
  331. package/lib/prompts/selectHubDBTablePrompt.js +11 -8
  332. package/lib/prompts/selectPublicAppPrompt.js +6 -7
  333. package/lib/prompts/setAsDefaultAccountPrompt.js +1 -2
  334. package/lib/prompts/uploadPrompt.js +4 -5
  335. package/lib/sandboxSync.js +15 -14
  336. package/lib/sandboxes.js +12 -13
  337. package/lib/serverlessLogs.js +4 -6
  338. package/lib/testUtils.d.ts +3 -3
  339. package/lib/testUtils.js +8 -9
  340. package/lib/ui/SpinniesManager.d.ts +1 -1
  341. package/lib/ui/boxen.d.ts +5 -0
  342. package/lib/ui/boxen.js +30 -0
  343. package/lib/ui/git.js +8 -9
  344. package/lib/ui/index.d.ts +4 -2
  345. package/lib/ui/index.js +20 -17
  346. package/lib/ui/logger.d.ts +10 -0
  347. package/lib/ui/logger.js +15 -0
  348. package/lib/ui/serverlessFunctionLogs.js +2 -3
  349. package/lib/ui/spinniesUtils.d.ts +5 -5
  350. package/lib/upload.d.ts +1 -1
  351. package/lib/validation.js +4 -5
  352. package/lib/yargsUtils.d.ts +5 -1
  353. package/lib/yargsUtils.js +6 -0
  354. package/package.json +10 -6
  355. package/types/Cms.d.ts +30 -0
  356. package/types/Cms.js +2 -0
  357. package/types/LocalDev.d.ts +24 -0
  358. package/types/LocalDev.js +2 -0
  359. package/types/Yargs.d.ts +12 -11
  360. package/lib/DevServerManagerV2.d.ts +0 -33
  361. package/lib/LocalDevManagerV2.d.ts +0 -64
  362. package/lib/LocalDevManagerV2.js +0 -377
  363. package/lib/projects/index.d.ts +0 -20
  364. package/lib/projects/index.js +0 -194
  365. package/lib/prompts/installPublicAppPrompt.d.ts +0 -1
  366. package/lib/prompts/installPublicAppPrompt.js +0 -40
package/lang/en.lyaml CHANGED
@@ -6,11 +6,13 @@ en:
6
6
  cmsUpdateNotification: "{{#bold}}The CMS CLI is now the HubSpot CLI{{/bold}}\n\nTo upgrade, uninstall {{#bold}}{{ packageName }}{{/bold}}\nand then run {{ updateCommand }}"
7
7
  cliUpdateNotification: "HubSpot CLI version {{#cyan}}{{#bold}}{currentVersion}{{/bold}}{{/cyan}} is outdated.\nRun {{ updateCommand }} to upgrade to version {{#cyan}}{{#bold}}{latestVersion}{{/bold}}{{/cyan}}"
8
8
  srcIsProject: "\"{{ src }}\" is in a project folder. Did you mean \"hs project {{command}}\"?"
9
- setDefaultAccountMoved: "This command has moved. Try `hs accounts use` instead"
10
9
  handleDeprecatedEnvVariables:
11
10
  portalEnvVarDeprecated: "The HUBSPOT_PORTAL_ID environment variable is deprecated. Please use HUBSPOT_ACCOUNT_ID instead."
12
11
  loadConfigMiddleware:
13
12
  configFileExists: "A configuration file already exists at {{ configPath }}. To specify a new configuration file, delete the existing one and try again."
13
+ injectAccountIdMiddleware:
14
+ invalidAccountId: "In the default override file ({{ hsAccountFileName }}), the account ID must be a number. Please delete the current file and generate a new one using {{ overrideCommand }}."
15
+ accountNotFound: "The account in the default override file ({{ hsAccountFileName }}) wasn't found in your configured accounts. You can authorize this account using {{ authCommand }}."
14
16
  completion:
15
17
  describe: "Enable bash completion shortcuts for commands. Concat the generated script to your .bashrc, .bash_profile, or .zshrc file."
16
18
  examples:
@@ -18,11 +20,56 @@ en:
18
20
  account:
19
21
  describe: "Commands for managing configured accounts."
20
22
  subcommands:
23
+ auth:
24
+ describe: "Configure authentication for your HubSpot account."
25
+ verboseDescribe: "Configure authentication for a HubSpot account. This will create or update the global config file at {{ globalConfigPath }} that stores your account information.\n\nThe recommended authentication method is {{#bold}}{{ authMethod }}{{/bold}}, which uses an access token tied to a specific user account.\nIf a deprecated config file exists, you will be prompted to migrate it to the new global config file. If both deprecated and global config files exist, you will be prompted to merge them. If any conflicts exist between the two files, you will be prompted to reconcile them."
26
+ options:
27
+ account:
28
+ describe: "HubSpot account to authenticate"
29
+ errors:
30
+ failedToUpdateConfig: "Failed to update the configuration file. Please try again."
31
+ migrationNotConfirmed: "Did not migrate. Use the {{ authCommand }} command to update the deprecated config at {{ deprecatedConfigPath }}."
32
+ mergeNotConfirmed: "Did not merge. When you are ready to merge the deprecated config file with the global config file, run the {{ authCommand }} or {{ migrateCommand }} command."
33
+ success:
34
+ configFileCreated: "Created config file \"{{ configPath }}\""
35
+ configFileUpdated: "Connected account \"{{ account }}\" and set it as the default account"
36
+ createOverride:
37
+ describe: "Create a new default account override file ({{ hsAccountFileName }}) in the current working directory."
38
+ success: "Default account override file created at {{ overrideFilePath }}"
39
+ accountOverride: "An account override file already exists at {{ overrideFilePath }} associated with account \"{{ accountOverride }}\"."
40
+ prompts:
41
+ replaceOverrideFile: "Replace existing account override file?"
42
+ errors:
43
+ globalConfigNotFound: "This command is only compatible with our new global config. Run {{ authCommand }} to get started."
44
+ accountNotFound: "The specified account could not be found in the config file {{ configPath }}"
45
+ options:
46
+ account:
47
+ describe: "Name or ID of the account to create an override file for."
48
+ examples:
49
+ default: "Create a new default account override file ({{ hsAccountFileName }}) in the current working directory"
50
+ idBased: "Create a new default account override file ({{ hsAccountFileName }}) in the current working directory, using the account with accountId \"1234567\""
51
+ nameBased: "Create a new default account override file ({{ hsAccountFileName }}) in the current working directory, using the account with name \"MyAccount\""
52
+ removeOverride:
53
+ describe: "Remove the default account override file ({{ overrideFile }}) from the current working directory."
54
+ accountOverride: "There is an account override file at {{ overrideFilePath }} associated with account \"{{ accountOverride }}\"."
55
+ prompts:
56
+ deleteOverrideFile: "Delete account override file?"
57
+ success: "Removed the default account override file."
58
+ noOverrideFile: "No default account override file found in the current working directory. No action required."
59
+ errors:
60
+ globalConfigNotFound: "This command is only compatible with our new global config. Run {{ authCommand }} to get started."
61
+ options:
62
+ force:
63
+ describe: "Skip confirmation prompt when removing the override file"
21
64
  list:
22
- accounts: "{{#bold}}Accounts{{/bold}}:"
23
- defaultAccount: "{{#bold}}Default account{{/bold}}: {{ account }}"
24
65
  describe: "List names of accounts defined in config."
25
- configPath: "{{#bold}}Config path{{/bold}}: {{ configPath }}"
66
+ accounts: "{{#bold}}Accounts{{/bold}}:"
67
+ defaultAccountTitle: "{{#bold}}Default Account{{/bold}}"
68
+ defaultAccount: "Account: {{ account }}"
69
+ configPath: "Source: {{ configPath }}"
70
+ overrideFilePathTitle: "{{#bold}}Default Account Override{{/bold}}"
71
+ overrideFilePath: "Source: {{ overrideFilePath }}"
72
+ overrideAccount: "Account: {{ account }}"
26
73
  labels:
27
74
  accountId: "Account ID"
28
75
  authType: "Auth Type"
@@ -40,6 +87,8 @@ en:
40
87
  describe: "Set the Hubspot account to use as the default account. The default account can be overridden with the \"--account\" option."
41
88
  errors:
42
89
  accountNotFound: "The account \"{{ specifiedAccount }}\" could not be found in {{ configPath }}"
90
+ accountOverride: "This project currently has an account override set: \"{{ accountOverride }}\". Account \"{{accountOverride}}\" will continue to act as the default account for this project."
91
+ accountOverrideCommands: "Use {{ createOverrideCommand }} to change override accounts, or {{ removeOverrideCommand }} to remove the override and use your default account."
43
92
  examples:
44
93
  default: "Select a HubSpot account to use as the default account"
45
94
  idBased: "Set the default account to the account in the config with accountId equal to \"1234567\""
@@ -55,6 +104,7 @@ en:
55
104
  logs:
56
105
  replaceDefaultAccount: "The removed account was the default account."
57
106
  prompts:
107
+ deleteOverrideFile: "Delete the override file ({{ overrideFilePath }}) associated with {{ accountName }}?"
58
108
  selectAccountToRemove: "Select an account to remove from the config"
59
109
  errors:
60
110
  accountNotFound: "The account \"{{ specifiedAccount }}\" could not be found in {{ configPath }}"
@@ -70,6 +120,12 @@ en:
70
120
  info:
71
121
  accountId: "{{#bold}}Account ID{{/bold}}: {{ accountId }}"
72
122
  describe: "Print information about the default account, or about the account specified with the \"account\" option."
123
+ defaultAccountTitle: "{{#bold}}Default Account{{/bold}}"
124
+ defaultAccount: "Account: {{ account }}"
125
+ configPath: "Source: {{ configPath }}"
126
+ overrideFilePathTitle: "{{#bold}}Default Account Override{{/bold}}"
127
+ overrideFilePath: "Source: {{ overrideFilePath }}"
128
+ overrideAccount: "Account: {{ account }}"
73
129
  errors:
74
130
  notUsingPersonalAccessKey: "This command currently only supports fetching scopes for the personal access key auth type."
75
131
  options:
@@ -92,13 +148,15 @@ en:
92
148
  confirm:
93
149
  one: "Remove 1 inactive account from the CLI config?"
94
150
  other: "Remove {{ count }} inactive accounts from the CLI config?"
151
+ defaultAccountOverride: "\n(This will also delete the default account override file at {{ overrideFilePath }})"
152
+ replaceDefaultAccount: "The default account was removed."
95
153
  removeSuccess: "Removed {{ accountName }} from the CLI config."
96
154
  auth:
97
155
  describe: "Configure authentication for your HubSpot account."
98
156
  verboseDescribe: "Configure authentication for a HubSpot account. This will update the {{ configName }} file that stores your account information.\n\nThe recommended authentication method is {{#bold}}{{ authMethod }}{{/bold}}, which uses an access token tied to a specific user account."
99
157
  errors:
100
- noConfigFileFound: "No config file was found. To create a new config file, use the \"hs init\" command."
101
158
  unsupportedAuthType: "Unsupported auth type: {{ type }}. The only supported authentication protocols are {{ supportedProtocols }}."
159
+ globalConfigFileExists: "A global config file exists at {{ configPath }}. To authorize an account, please use {{ authCommand }}."
102
160
  options:
103
161
  authType:
104
162
  describe: "Authentication method"
@@ -109,6 +167,17 @@ en:
109
167
  config:
110
168
  describe: "Commands for managing the CLI config file."
111
169
  subcommands:
170
+ migrate:
171
+ describe: "Migrate from the deprecated {{ deprecatedConfigPath }} file to the new global config file at {{ globalConfigPath }}."
172
+ verboseDescribe: "This command will create a new global configuration file in your root directory and rename the deprecated config to {{ archivedConfigPath }}. If any conflicting values are detected, we will prompt you to reconcile them unless the \"--force\" flag is supplied."
173
+ migrationAlreadyCompleted: "No {{ deprecatedConfigPath }} deprecated configuration file found. No migration necessary."
174
+ errors:
175
+ configNotFound: "A configuration file at {{ configPath }} could not be found. Please try again with a valid file path."
176
+ options:
177
+ force: "When merging a deprecated configuration file with an existing global configuration file, overwrite any conflicting values in the global config with the deprecated config values."
178
+ examples:
179
+ default: "Migrate from the deprecated {{ deprecatedConfigPath }} file to the new global config file at {{ globalConfigPath }}"
180
+ configFlag: "Migrate a specific config file (specified with the config flag) to the new global config file at {{ globalConfigPath }}"
112
181
  set:
113
182
  describe: "Set various configuration options within the hubspot.config.yml file."
114
183
  promptMessage: "Select a config option to update"
@@ -456,8 +525,6 @@ en:
456
525
  describe: "Authentication method"
457
526
  account:
458
527
  describe: "HubSpot account to authenticate"
459
- useHiddenConfig:
460
- describe: "Use the new HubSpot configuration file located in a hidden file in the user's home directory"
461
528
  success:
462
529
  configFileCreated: "Created config file \"{{ configPath }}\""
463
530
  configFileUpdated: "Connected account \"{{ account }}\" using \"{{ authType }}\" and set it as the default account"
@@ -465,7 +532,7 @@ en:
465
532
  updateConfig: "To update an existing config file, use the \"hs auth\" command."
466
533
  errors:
467
534
  configFileExists: "The config file {{ configPath }} already exists."
468
- bothConfigFilesNotAllowed: "Unable to create config file, because there is an existing one at \"{{ path }}\". To create a new config file, delete the existing one and try again."
535
+ globalConfigFileExists: "A global config file already exists at {{ configPath }}. To specify a new local config file, delete the existing one and try again."
469
536
  lint:
470
537
  issuesFound: "{{ count }} issues found."
471
538
  groupName: "Linting {{ path }}"
@@ -535,10 +602,14 @@ en:
535
602
  invalidUnifiedAppsAccount: "Local development of Unified Apps is currently only supported in standard and developer accounts. Target a standard or developer account with {{ authCommand }} and try again."
536
603
  examples:
537
604
  default: "Start local dev for the current project"
605
+ options:
606
+ profile:
607
+ describe: "The profile to target during local dev"
538
608
  create:
539
609
  describe: "Create a new project."
540
610
  errors:
541
611
  failedToDownloadProject: "Failed to download project. Please try again later."
612
+ invalidTemplateSource: "Invalid template source provided. Use the format <Owner>/<Repo> and try again."
542
613
  failedToFetchProjectList: "Failed to fetch the list of available project templates. Please try again later."
543
614
  cannotNestProjects: "A project already exists at {{ projectDir }}. Projects cannot be nested within other projects. Please choose a different destination and try again."
544
615
  logs:
@@ -568,7 +639,7 @@ en:
568
639
  name:
569
640
  describe: "Project name (cannot be changed)"
570
641
  header:
571
- text: "Migrate an app to the projects framework"
642
+ text: "This command will migrate an app to the projects framework. It will walk you through the fields required to complete the migration and download the project source code into a directory of your choosing."
572
643
  link: "Learn more about migrating apps to the projects framework"
573
644
  deprecationWarning: "The {{ oldCommand }} command is deprecated and will be removed. Use {{ newCommand }} going forward."
574
645
  migrationStatus:
@@ -586,40 +657,15 @@ en:
586
657
  migrationInterrupted: "\nThe command is terminated, but app migration is still in progress. Please check your account to ensure that the project and associated app have been created successfully."
587
658
  createAppPrompt: "Proceed with migrating this app to a project component (this process can't be aborted)?"
588
659
  projectDetailsLink: "View project details in your developer account"
589
- componentsToBeMigrated: "The following component types will be migrated: {{ components }}"
660
+ componentsToBeMigrated: "The following features will be migrated: {{ components }}"
590
661
  componentsThatWillNotBeMigrated: "[NOTE] These component types are not yet supported for migration but will be available later: {{ components }}"
591
662
  errors:
592
- noAppsEligible: "No apps in account {{ accountId }} are currently migratable"
663
+ noAppsForProject: "No apps associated with project {{ projectName }}"
593
664
  noAccountConfig: "There is no account associated with {{ accountId }} in the config file. Please choose another account and try again, or authenticate {{ accountId }} using {{ authCommand }}."
594
- invalidAccountTypeTitle: "{{#bold}}Developer account not targeted{{/bold}}"
595
- invalidAccountTypeDescription: "Only public apps created in a developer account can be converted to a project component. Select a connected developer account with {{useCommand}} or {{authCommand}} and try again."
596
665
  projectAlreadyExists: "A project with name {{ projectName }} already exists. Please choose another name."
597
666
  invalidApp: "Could not migrate appId {{ appId }}. This app cannot be migrated at this time. Please choose another public app."
598
- appWithAppIdNotFound: "Could not find an app with the id {{ appId }} "
599
667
  migrationFailed: 'Migration Failed'
600
- prompt:
601
- chooseApp: 'Which app would you like to migrate?'
602
- inputName: '[--name] What would you like to name the project?'
603
- inputDest: '[--dest] Where would you like to save the project?'
604
- uidForComponent: 'What UID would you like to use for {{ componentName }}?'
605
- proceed: 'Would you like to proceed?'
606
- spinners:
607
- beginningMigration: "Beginning migration"
608
- unableToStartMigration: "Unable to begin migration"
609
- finishingMigration: "Wrapping up migration"
610
- migrationComplete: "Migration completed"
611
- migrationFailed: "Migration failed"
612
- downloadingProjectContents: "Downloading migrated project files"
613
- downloadingProjectContentsComplete: "Migrated project files downloaded"
614
- downloadingProjectContentsFailed: "Unable to download migrated project files"
615
- copyingProjectFiles: "Copying migrated project files"
616
- copyingProjectFilesComplete: "Migrated project files copied"
617
- copyingProjectFilesFailed: "Unable to copy migrated project files"
618
- unmigratableReasons:
619
- upToDate: 'App is already up to date'
620
- isPrivateApp: 'Private apps are not currently migratable'
621
- listedInMarketplace: 'Listed apps are not currently migratable'
622
- generic: "Unable to migrate app: {{ reasonCode }}"
668
+ notAllowedWithinProject: 'This command cannot be run from within a project directory. Run the command again from outside a project directory. If you are trying to migrate a project, run {{ command }}'
623
669
  cloneApp:
624
670
  describe: "Clone a public app using the projects framework."
625
671
  examples:
@@ -677,6 +723,8 @@ en:
677
723
  describe: "Project build ID to be deployed"
678
724
  project:
679
725
  describe: "Project name"
726
+ profile:
727
+ describe: "The profile to target with this deploy"
680
728
  listBuilds:
681
729
  describe: "List the project's builds."
682
730
  continueOrExitPrompt: "Press <enter> to load more, or ctrl+c to exit"
@@ -744,6 +792,8 @@ en:
744
792
  describe: "Automatically create project if it does not exist"
745
793
  message:
746
794
  describe: "Add a message when you upload your project and create a build"
795
+ profile:
796
+ describe: "The profile to target with this upload"
747
797
  watch:
748
798
  describe: "Watch your local project for changes and automatically upload changed files to a new build in HubSpot."
749
799
  examples:
@@ -769,9 +819,12 @@ en:
769
819
  attemptNewBuild: "Attempting to create a new build"
770
820
  fileAlreadyQueued: "File \"{{ filePath }}\" is already queued for upload"
771
821
  errors:
822
+ projectConfigNotFound: "No project config found. Please ensure that you are in a project directory."
823
+ projectLockedError: "Your project is locked. This may mean that another user is running the {{#bold}}`hs project dev`{{/bold}} command for this project. If this is you, unlock the project in Projects UI."
772
824
  uploadFailed: "Failed to upload file \"{{ filePath }}\" to \"{{ remotePath }}\""
773
825
  deleteFileFailed: "Failed to delete file \"{{ remotePath }}\""
774
826
  deleteFolderFailed: "Failed to delete folder \"{{ remotePath }}\""
827
+ v3ApiError: "{{ command }} is not supported for platform version '{{ platformVersion}}', use {{ newCommand }} instead to develop locally. {{ linkToDocs }}"
775
828
  download:
776
829
  describe: "Download your project files from HubSpot."
777
830
  examples:
@@ -800,18 +853,10 @@ en:
800
853
  default: "Opens the projects page for the specified account"
801
854
  success: "Successfully opened \"{{ projectName }}\""
802
855
  feedback:
803
- describe: "Leave feedback on HubSpot projects or file a bug report."
804
- feedbackType:
805
- prompt: "What type of feedback would you like to leave?"
806
- bug: "[--bug] Report a bug"
807
- general: "[--general] Tell us about your experience with HubSpot's developer tools"
808
- openPrompt: "Create a Github issue in your browser?"
856
+ describe: "Leave feedback or file a bug report."
857
+ openPrompt: "Open the feedback form in your browser?"
809
858
  success: "We opened {{ url }} in your browser."
810
- options:
811
- bug:
812
- describe: "Open Github issues in your browser to report a bug."
813
- general:
814
- describe: "Open Github issues in your browser to give feedback."
859
+ error: "Navigate to {{ url }} to leave feedback."
815
860
  installDeps:
816
861
  help:
817
862
  describe: "Install the dependencies for your project, or add a dependency to a subcomponent of a project."
@@ -1158,7 +1203,7 @@ en:
1158
1203
  missingPropertiesInConfig: "Found misconfigured projects in the target repository's config.json file. Please ensure that each project in the target repository's config.json file contains the following properties: [\"name\", \"label\", \"path\", \"insertPath\"]."
1159
1204
  validateProjectConfig:
1160
1205
  configNotFound: "Unable to locate a project configuration file. Try running again from a project directory, or run {{ createCommand }} to create a new project."
1161
- configMissingFields: "The project configuruation file is missing required fields."
1206
+ configMissingFields: "The project configuration file is missing required fields."
1162
1207
  srcDirNotFound: "Project source directory {{#bold}}{{ srcDir }}{{/bold}} could not be found in {{#bold}}{{ projectDir }}{{/bold}}."
1163
1208
  srcOutsideProjectDir: "Invalid value for 'srcDir' in {{ projectConfig }}: {{#bold}}srcDir: \"{{ srcDir }}\"{{/bold}}\n\t'srcDir' must be a relative path to a folder under the project root, such as \".\" or \"./src\""
1164
1209
  ensureProjectExists:
@@ -1215,11 +1260,14 @@ en:
1215
1260
  command: "--account"
1216
1261
  message: "Use the {{ command }} option with any command to override the default account"
1217
1262
  accountsListCommand:
1218
- command: hs accounts list
1263
+ command: "hs account list"
1219
1264
  message: "Run {{ command }} to see a list of configured HubSpot accounts"
1220
1265
  accountsUseCommand:
1221
- command: "hs accounts use"
1266
+ command: "hs account use"
1222
1267
  message: "Run {{ command }} to set the Hubspot account that the CLI will target by default"
1268
+ accountAuthCommand:
1269
+ command: "hs account auth"
1270
+ message: "Run {{ command }} to connect the CLI to additional HubSpot accounts"
1223
1271
  authCommand:
1224
1272
  command: "hs auth"
1225
1273
  message: "Run {{ command }} to connect the CLI to additional HubSpot accounts"
@@ -1284,16 +1332,30 @@ en:
1284
1332
  describe: "Use environment variable config"
1285
1333
  debug:
1286
1334
  describe: "Set log level to debug"
1335
+ configMigrate:
1336
+ migrationHeader: "Migrate your existing configuration file to the new global location?"
1337
+ migrationDescription: "This action will create a new global configuration file in your root directory and rename the deprecated config to {{ archivedConfigPath}}. If any conflicting values are detected, we will prompt you to reconcile them unless the \"--force\" flag is supplied."
1338
+ mergeHeader: "Merge your existing configuration file with the global config?"
1339
+ mergeDescription: "This action will merge your deprecated config file with the global config file located in your root directory. It will also rename the deprecated config to {{ archivedConfigPath }}. If any conflicting values are detected, we will prompt you to reconcile them unless the \"--force\" flag is supplied."
1340
+ migrateConfigPromptDescription: "From deprecated config file: {{ deprecatedConfigPath }}\nTo new global config file: {{ globalConfigPath }}"
1341
+ migrateConfigPrompt: "Migrate to the new config?"
1342
+ mergeConfigConflictPrompt: "Change the {{ property }} property in the global config from {{ newValue }} to {{ oldValue }}?"
1343
+ mergeConfigsPromptDescription: "Two config files detected. \nDeprecated config file: {{ deprecatedConfigPath }}\nGlobal config: {{ globalConfigPath }}"
1344
+ mergeConfigsPrompt: "Merge configs?"
1345
+ migrationSuccess: "The deprecated config file has been migrated to the new global config file at {{ globalConfigPath }}."
1346
+ mergeSuccess: "The deprecated config file has been merged with the global config file at {{ globalConfigPath }}."
1347
+ skippedExistingAccounts: "\nThe following accounts were not merged, because they already exist in the global config: {{ skippedAccountIds }}.\n"
1287
1348
  prompts:
1288
1349
  projectDevTargetAccountPrompt:
1289
1350
  createNewSandboxOption: "<Test on a new development sandbox>"
1290
1351
  createNewDeveloperTestAccountOption: "<Test on a new developer test account>"
1352
+ testOnThisAccountOption: '<Test on this account>'
1291
1353
  chooseDefaultAccountOption: "<{{#bold}}\U00002757{{/bold}} Test on this production account {{#bold}}\U00002757{{/bold}}>"
1292
1354
  promptMessage: "[--account] Choose a {{ accountType }} under {{ accountIdentifier }} to test with:"
1293
1355
  sandboxLimit: "Your account reached the limit of {{ limit }} development sandboxes"
1294
1356
  sandboxLimitWithSuggestion: "Your account reached the limit of {{ limit }} development sandboxes. Run {{ authCommand }} to add an existing one to the config."
1295
1357
  developerTestAccountLimit: "Your account reached the limit of {{ limit }} developer test accounts."
1296
- confirmDefaultAccount: "Continue testing on {{#bold}}{{ accountName }} ({{ accountType }}){{/bold}}? (Y/n)"
1358
+ confirmDefaultAccount: "Proceed with local development on {{#bold}}{{ accountName }} [{{ accountType }}]{{/bold}}? (Y/n)"
1297
1359
  confirmUseExistingDeveloperTestAccount: "Continue with {{ accountName }}? This account isn't currently connected to the HubSpot CLI. By continuing, you'll be prompted to generate a personal access key and connect it."
1298
1360
  noAccountId: "No account ID found for the selected account. Please try again."
1299
1361
  projectLogsPrompt:
@@ -1371,6 +1433,7 @@ en:
1371
1433
  invalidDest: "There is an existing project at this destination. Please provide a new path for this project."
1372
1434
  invalidCharacters: "The selected destination contains invalid characters. Please provide a new path and try again."
1373
1435
  invalidTemplate: "[--template] Could not find template \"{{ template }}\". Please choose an available template:"
1436
+ projectTemplateRequired: "Project template is required when projectTemplates is provided"
1374
1437
  selectPublicAppPrompt:
1375
1438
  selectAppIdMigrate: "[--appId] Choose an app under {{ accountName }} to migrate:"
1376
1439
  selectAppIdClone: "[--appId] Choose an app under {{ accountName }} to clone:"
@@ -1426,12 +1489,6 @@ en:
1426
1489
  errors:
1427
1490
  srcRequired: "You must specify a source directory."
1428
1491
  destRequired: "You must specify a destination directory."
1429
- installPublicAppPrompt:
1430
- explanation: "Local development requires this app to be installed in the target test account"
1431
- reinstallExplanation: "This app's required scopes have been updated since it was last installed on the target test account. To avoid issues with local development, we recommend reinstalling the app with the updated scopes."
1432
- prompt: "Open HubSpot to install this app?"
1433
- reinstallPrompt: "Open HubSpot to reinstall this app?"
1434
- decline: "To continue local development of this app, install it in your target test account and re-run {{#bold}}`hs project dev`{{/bold}}"
1435
1492
  selectHubDBTablePrompt:
1436
1493
  selectTable: "Select a HubDB table:"
1437
1494
  enterDest: "Enter the destination path:"
@@ -1570,6 +1627,9 @@ en:
1570
1627
  doctor:
1571
1628
  runningDiagnostics: "Running diagnostics..."
1572
1629
  diagnosticsComplete: "Diagnostics complete"
1630
+ defaultAccountOverrideFileChecks:
1631
+ overrideActive: "Default account override file active: {{ defaultAccountOverrideFile }}"
1632
+ overrideAccountId: "Active account ID: {{ overrideAccountId }}"
1573
1633
  accountChecks:
1574
1634
  active: "Default account active"
1575
1635
  inactive: "Default account isn't active"
@@ -1621,6 +1681,8 @@ en:
1621
1681
  settings:
1622
1682
  httpUseLocalhost: "The setting {{#bold}}httpUseLocalhost{{/bold}} is enabled"
1623
1683
  httpUseLocalhostSecondary: "This setting causes all CLI requests to route to localhost"
1684
+ defaultAccountOverrideFile:
1685
+ header: "Default account override file path:"
1624
1686
  projectConfig:
1625
1687
  header: "Project configuration"
1626
1688
  projectDirSubHeader: "Project dir: {{#bold}}{{ projectDir }}{{/bold}}"
@@ -5,3 +5,4 @@ export declare function isStandardSandbox(accountConfig: CLIAccount): boolean;
5
5
  export declare function isDevelopmentSandbox(accountConfig: CLIAccount): boolean;
6
6
  export declare function isDeveloperTestAccount(accountConfig: CLIAccount): boolean;
7
7
  export declare function isAppDeveloperAccount(accountConfig: CLIAccount): boolean;
8
+ export declare function isUnifiedAccount(account: CLIAccount): Promise<boolean>;
@@ -6,7 +6,11 @@ exports.isStandardSandbox = isStandardSandbox;
6
6
  exports.isDevelopmentSandbox = isDevelopmentSandbox;
7
7
  exports.isDeveloperTestAccount = isDeveloperTestAccount;
8
8
  exports.isAppDeveloperAccount = isAppDeveloperAccount;
9
+ exports.isUnifiedAccount = isUnifiedAccount;
9
10
  const config_1 = require("@hubspot/local-dev-lib/constants/config");
11
+ const hasFeature_1 = require("./hasFeature");
12
+ const constants_1 = require("./constants");
13
+ const getAccountIdentifier_1 = require("@hubspot/local-dev-lib/config/getAccountIdentifier");
10
14
  function isAccountType(accountConfig, accountType) {
11
15
  return (Boolean(accountConfig.accountType) &&
12
16
  accountConfig.accountType === accountType);
@@ -30,3 +34,11 @@ function isDeveloperTestAccount(accountConfig) {
30
34
  function isAppDeveloperAccount(accountConfig) {
31
35
  return isAccountType(accountConfig, config_1.HUBSPOT_ACCOUNT_TYPES.APP_DEVELOPER);
32
36
  }
37
+ async function isUnifiedAccount(account) {
38
+ const accountId = (0, getAccountIdentifier_1.getAccountIdentifier)(account);
39
+ if (!accountId) {
40
+ return false;
41
+ }
42
+ const isUngatedForUnifiedApps = await (0, hasFeature_1.hasFeature)(accountId, constants_1.FEATURES.UNIFIED_APPS);
43
+ return isStandardAccount(account) && isUngatedForUnifiedApps;
44
+ }
@@ -1,5 +1,34 @@
1
1
  import { ArgumentsCamelCase } from 'yargs';
2
- import { MigrateAppOptions } from '../../types/Yargs';
3
- export declare function downloadProjectFiles(derivedAccountId: number, projectName: string, buildId: number, projectDest: string): Promise<void>;
4
- export declare function migrateApp2025_2(derivedAccountId: number, options: ArgumentsCamelCase<MigrateAppOptions>): Promise<void>;
5
- export declare function logInvalidAccountError(i18nKey: string): void;
2
+ import { LoadedProjectConfig } from '../projects/config';
3
+ import { MigrationApp, MigrationFailed, MigrationStatus } from '../../api/migrate';
4
+ import { AccountArgs, CommonArgs, ConfigArgs, EnvironmentArgs } from '../../types/Yargs';
5
+ export type MigrateAppArgs = CommonArgs & AccountArgs & EnvironmentArgs & ConfigArgs & {
6
+ name?: string;
7
+ dest?: string;
8
+ appId?: number;
9
+ platformVersion: string;
10
+ unstable: boolean;
11
+ };
12
+ export declare function getUnmigratableReason(reasonCode: string, projectName: string | undefined, accountId: number): string;
13
+ export declare function generateFilterAppsByProjectNameFunction(projectConfig?: LoadedProjectConfig): (app: MigrationApp) => boolean;
14
+ export declare function buildErrorMessageFromMigrationStatus(error: MigrationFailed): string;
15
+ export declare function fetchMigrationApps(appId: MigrateAppArgs['appId'], derivedAccountId: number, platformVersion: string, projectConfig?: LoadedProjectConfig): Promise<MigrationApp[]>;
16
+ export declare function promptForAppToMigrate(allApps: MigrationApp[], derivedAccountId: number): Promise<number>;
17
+ export declare function selectAppToMigrate(allApps: MigrationApp[], derivedAccountId: number, appId?: number): Promise<{
18
+ proceed: boolean;
19
+ appIdToMigrate?: number;
20
+ }>;
21
+ export declare function handleMigrationSetup(derivedAccountId: number, options: ArgumentsCamelCase<MigrateAppArgs>, projectConfig?: LoadedProjectConfig): Promise<{
22
+ appIdToMigrate?: number | undefined;
23
+ projectName?: string;
24
+ projectDest?: string;
25
+ }>;
26
+ export declare function beginMigration(derivedAccountId: number, appId: number, platformVersion: string): Promise<{
27
+ migrationId: number;
28
+ uidMap: Record<string, string>;
29
+ } | undefined>;
30
+ export declare function pollMigrationStatus(derivedAccountId: number, migrationId: number, successStates?: string[]): Promise<MigrationStatus>;
31
+ export declare function finalizeMigration(derivedAccountId: number, migrationId: number, uidMap: Record<string, string>, projectName: string): Promise<number>;
32
+ export declare function downloadProjectFiles(derivedAccountId: number, projectName: string, buildId: number, projectDest: string, projectConfig?: LoadedProjectConfig): Promise<void>;
33
+ export declare function migrateApp2025_2(derivedAccountId: number, options: ArgumentsCamelCase<MigrateAppArgs>, projectConfig?: LoadedProjectConfig): Promise<void>;
34
+ export declare function logInvalidAccountError(): void;