@hubspot/cli 6.2.1 → 6.2.2-experimental.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (346) hide show
  1. package/bin/cli.d.ts +2 -0
  2. package/bin/cli.js +107 -128
  3. package/commands/accounts/clean.d.ts +4 -0
  4. package/commands/accounts/clean.js +80 -116
  5. package/commands/accounts/info.d.ts +4 -0
  6. package/commands/accounts/info.js +30 -43
  7. package/commands/accounts/list.d.ts +4 -0
  8. package/commands/accounts/list.js +63 -92
  9. package/commands/accounts/remove.d.ts +4 -0
  10. package/commands/accounts/remove.js +41 -73
  11. package/commands/accounts/rename.d.ts +4 -0
  12. package/commands/accounts/rename.js +24 -41
  13. package/commands/accounts/use.d.ts +4 -0
  14. package/commands/accounts/use.js +34 -57
  15. package/commands/accounts.d.ts +3 -0
  16. package/commands/accounts.js +14 -18
  17. package/commands/auth.d.ts +4 -0
  18. package/commands/auth.js +131 -200
  19. package/commands/cms/convertFields.d.ts +4 -0
  20. package/commands/cms/convertFields.js +64 -81
  21. package/commands/cms/lighthouseScore.d.ts +4 -0
  22. package/commands/cms/lighthouseScore.js +234 -298
  23. package/commands/cms/reactModules.d.ts +4 -0
  24. package/commands/cms/reactModules.js +44 -53
  25. package/commands/cms.d.ts +3 -0
  26. package/commands/cms.js +9 -13
  27. package/commands/config/set/allowUsageTracking.d.ts +4 -0
  28. package/commands/config/set/allowUsageTracking.js +31 -38
  29. package/commands/config/set/defaultMode.d.ts +4 -0
  30. package/commands/config/set/defaultMode.js +32 -43
  31. package/commands/config/set/httpTimeout.d.ts +4 -0
  32. package/commands/config/set/httpTimeout.js +21 -30
  33. package/commands/config/set.d.ts +4 -0
  34. package/commands/config/set.js +61 -76
  35. package/commands/config.d.ts +3 -0
  36. package/commands/config.js +5 -9
  37. package/commands/create/api-sample.d.ts +13 -0
  38. package/commands/create/api-sample.js +52 -72
  39. package/commands/create/app.d.ts +10 -0
  40. package/commands/create/app.js +6 -7
  41. package/commands/create/function.d.ts +6 -0
  42. package/commands/create/function.js +13 -14
  43. package/commands/create/index.d.ts +109 -0
  44. package/commands/create/index.js +10 -9
  45. package/commands/create/module.d.ts +11 -0
  46. package/commands/create/module.js +19 -19
  47. package/commands/create/react-app.d.ts +9 -0
  48. package/commands/create/react-app.js +5 -6
  49. package/commands/create/template.d.ts +12 -0
  50. package/commands/create/template.js +21 -24
  51. package/commands/create/vue-app.d.ts +9 -0
  52. package/commands/create/vue-app.js +5 -6
  53. package/commands/create/webpack-serverless.d.ts +9 -0
  54. package/commands/create/webpack-serverless.js +5 -6
  55. package/commands/create/website-theme.d.ts +9 -0
  56. package/commands/create/website-theme.js +13 -15
  57. package/commands/create.d.ts +4 -0
  58. package/commands/create.js +62 -80
  59. package/commands/customObject/create.d.ts +4 -0
  60. package/commands/customObject/create.js +31 -47
  61. package/commands/customObject/schema/create.d.ts +4 -0
  62. package/commands/customObject/schema/create.js +40 -67
  63. package/commands/customObject/schema/delete.d.ts +4 -0
  64. package/commands/customObject/schema/delete.js +26 -39
  65. package/commands/customObject/schema/fetch-all.d.ts +4 -0
  66. package/commands/customObject/schema/fetch-all.js +28 -39
  67. package/commands/customObject/schema/fetch.d.ts +4 -0
  68. package/commands/customObject/schema/fetch.js +46 -63
  69. package/commands/customObject/schema/list.d.ts +3 -0
  70. package/commands/customObject/schema/list.js +12 -17
  71. package/commands/customObject/schema/update.d.ts +4 -0
  72. package/commands/customObject/schema/update.js +44 -72
  73. package/commands/customObject/schema.d.ts +3 -0
  74. package/commands/customObject/schema.js +10 -12
  75. package/commands/customObject.d.ts +3 -0
  76. package/commands/customObject.js +12 -22
  77. package/commands/feedback.d.ts +4 -0
  78. package/commands/feedback.js +23 -33
  79. package/commands/fetch.d.ts +4 -0
  80. package/commands/fetch.js +51 -78
  81. package/commands/filemanager/fetch.d.ts +4 -0
  82. package/commands/filemanager/fetch.js +36 -56
  83. package/commands/filemanager/upload.d.ts +4 -0
  84. package/commands/filemanager/upload.js +86 -128
  85. package/commands/filemanager.d.ts +3 -0
  86. package/commands/filemanager.js +10 -18
  87. package/commands/functions/deploy.d.ts +4 -0
  88. package/commands/functions/deploy.js +71 -104
  89. package/commands/functions/list.d.ts +4 -0
  90. package/commands/functions/list.js +29 -47
  91. package/commands/functions/server.d.ts +4 -0
  92. package/commands/functions/server.js +48 -65
  93. package/commands/functions.d.ts +3 -0
  94. package/commands/functions.js +11 -15
  95. package/commands/hubdb/clear.d.ts +4 -0
  96. package/commands/hubdb/clear.js +35 -56
  97. package/commands/hubdb/create.d.ts +4 -0
  98. package/commands/hubdb/create.js +32 -57
  99. package/commands/hubdb/delete.d.ts +4 -0
  100. package/commands/hubdb/delete.js +27 -44
  101. package/commands/hubdb/fetch.d.ts +4 -0
  102. package/commands/hubdb/fetch.js +28 -46
  103. package/commands/hubdb.d.ts +3 -0
  104. package/commands/hubdb.js +10 -14
  105. package/commands/init.d.ts +4 -0
  106. package/commands/init.js +101 -160
  107. package/commands/lint.d.ts +4 -0
  108. package/commands/lint.js +32 -45
  109. package/commands/list.d.ts +4 -0
  110. package/commands/list.js +72 -101
  111. package/commands/logs.d.ts +4 -0
  112. package/commands/logs.js +96 -121
  113. package/commands/module/marketplace-validate.d.ts +4 -0
  114. package/commands/module/marketplace-validate.js +30 -57
  115. package/commands/module.d.ts +3 -0
  116. package/commands/module.js +5 -9
  117. package/commands/mv.d.ts +4 -0
  118. package/commands/mv.js +51 -71
  119. package/commands/open.d.ts +4 -0
  120. package/commands/open.js +46 -62
  121. package/commands/project/add.d.ts +4 -0
  122. package/commands/project/add.js +45 -70
  123. package/commands/project/cloneApp.d.ts +4 -0
  124. package/commands/project/cloneApp.js +117 -178
  125. package/commands/project/create.d.ts +4 -0
  126. package/commands/project/create.js +47 -81
  127. package/commands/project/deploy.d.ts +4 -0
  128. package/commands/project/deploy.js +103 -182
  129. package/commands/project/dev.d.ts +4 -0
  130. package/commands/project/dev.js +123 -227
  131. package/commands/project/download.d.ts +4 -0
  132. package/commands/project/download.js +71 -123
  133. package/commands/project/installDeps.d.ts +6 -0
  134. package/commands/project/installDeps.js +50 -59
  135. package/commands/project/listBuilds.d.ts +4 -0
  136. package/commands/project/listBuilds.js +95 -139
  137. package/commands/project/logs.d.ts +4 -0
  138. package/commands/project/logs.js +84 -128
  139. package/commands/project/migrateApp.d.ts +4 -0
  140. package/commands/project/migrateApp.js +156 -248
  141. package/commands/project/open.d.ts +4 -0
  142. package/commands/project/open.js +42 -68
  143. package/commands/project/upload.d.ts +4 -0
  144. package/commands/project/upload.js +70 -116
  145. package/commands/project/watch.d.ts +4 -0
  146. package/commands/project/watch.js +92 -152
  147. package/commands/project.d.ts +3 -0
  148. package/commands/project.js +19 -23
  149. package/commands/remove.d.ts +4 -0
  150. package/commands/remove.js +26 -43
  151. package/commands/sandbox/create.d.ts +4 -0
  152. package/commands/sandbox/create.js +141 -187
  153. package/commands/sandbox/delete.d.ts +4 -0
  154. package/commands/sandbox/delete.js +164 -221
  155. package/commands/sandbox.d.ts +3 -0
  156. package/commands/sandbox.js +8 -12
  157. package/commands/secrets/addSecret.d.ts +4 -0
  158. package/commands/secrets/addSecret.js +32 -52
  159. package/commands/secrets/deleteSecret.d.ts +4 -0
  160. package/commands/secrets/deleteSecret.js +31 -50
  161. package/commands/secrets/listSecrets.d.ts +4 -0
  162. package/commands/secrets/listSecrets.js +26 -42
  163. package/commands/secrets/updateSecret.d.ts +4 -0
  164. package/commands/secrets/updateSecret.js +33 -53
  165. package/commands/secrets.d.ts +3 -0
  166. package/commands/secrets.js +10 -13
  167. package/commands/theme/generate-selectors.d.ts +4 -0
  168. package/commands/theme/generate-selectors.js +127 -192
  169. package/commands/theme/marketplace-validate.d.ts +4 -0
  170. package/commands/theme/marketplace-validate.js +30 -57
  171. package/commands/theme/preview.d.ts +4 -0
  172. package/commands/theme/preview.js +161 -196
  173. package/commands/theme.d.ts +3 -0
  174. package/commands/theme.js +7 -11
  175. package/commands/upload.d.ts +4 -0
  176. package/commands/upload.js +197 -287
  177. package/commands/watch.d.ts +4 -0
  178. package/commands/watch.js +126 -172
  179. package/lib/DevServerManager.d.ts +35 -0
  180. package/lib/DevServerManager.js +97 -124
  181. package/lib/LocalDevManager.d.ts +41 -0
  182. package/lib/LocalDevManager.js +320 -490
  183. package/lib/accountTypes.d.ts +6 -0
  184. package/lib/accountTypes.js +16 -32
  185. package/lib/buildAccount.d.ts +22 -0
  186. package/lib/buildAccount.js +130 -179
  187. package/lib/commonOpts.d.ts +20 -0
  188. package/lib/commonOpts.js +58 -91
  189. package/lib/constants.d.ts +83 -0
  190. package/lib/constants.js +61 -71
  191. package/lib/debugInfo.d.ts +3 -0
  192. package/lib/debugInfo.js +12 -13
  193. package/lib/dependencyManagement.d.ts +7 -0
  194. package/lib/dependencyManagement.js +90 -132
  195. package/lib/developerTestAccounts.d.ts +7 -0
  196. package/lib/developerTestAccounts.js +65 -91
  197. package/lib/enums/exitCodes.d.ts +5 -0
  198. package/lib/enums/exitCodes.js +5 -7
  199. package/lib/environment.d.ts +1 -0
  200. package/lib/environment.js +10 -10
  201. package/lib/errorHandlers/index.d.ts +19 -0
  202. package/lib/errorHandlers/index.js +64 -80
  203. package/lib/errorHandlers/suppressError.d.ts +1 -0
  204. package/lib/errorHandlers/suppressError.js +64 -106
  205. package/lib/filesystem.d.ts +2 -0
  206. package/lib/filesystem.js +16 -24
  207. package/lib/generate-selectors.d.ts +6 -0
  208. package/lib/generate-selectors.js +99 -137
  209. package/lib/getFunctionArrays.d.ts +1 -0
  210. package/lib/getFunctionArrays.js +12 -13
  211. package/lib/hasFeature.d.ts +1 -0
  212. package/lib/hasFeature.js +5 -11
  213. package/lib/hasFlag.d.ts +2 -0
  214. package/lib/hasFlag.js +6 -10
  215. package/lib/hublValidate.d.ts +4 -0
  216. package/lib/hublValidate.js +20 -24
  217. package/lib/interpolation.d.ts +10 -0
  218. package/lib/interpolation.js +48 -92
  219. package/lib/interpolationHelpers.d.ts +6 -0
  220. package/lib/interpolationHelpers.js +19 -19
  221. package/lib/lang.d.ts +3 -0
  222. package/lib/lang.js +50 -78
  223. package/lib/links.d.ts +127 -0
  224. package/lib/links.js +92 -114
  225. package/lib/localDev.d.ts +11 -0
  226. package/lib/localDev.js +283 -439
  227. package/lib/marketplace-validate.d.ts +5 -0
  228. package/lib/marketplace-validate.js +103 -126
  229. package/lib/oauth.d.ts +1 -0
  230. package/lib/oauth.js +62 -78
  231. package/lib/polling.d.ts +1 -0
  232. package/lib/polling.js +24 -26
  233. package/lib/process.d.ts +2 -0
  234. package/lib/process.js +39 -53
  235. package/lib/projectLogsManager.d.ts +19 -0
  236. package/lib/projectLogsManager.js +76 -130
  237. package/lib/projectStructure.d.ts +13 -0
  238. package/lib/projectStructure.js +87 -109
  239. package/lib/projects.d.ts +40 -0
  240. package/lib/projects.js +589 -960
  241. package/lib/projectsWatch.d.ts +1 -0
  242. package/lib/projectsWatch.js +122 -228
  243. package/lib/prompts/accountNamePrompt.d.ts +11 -0
  244. package/lib/prompts/accountNamePrompt.js +58 -65
  245. package/lib/prompts/accountsPrompt.d.ts +3 -0
  246. package/lib/prompts/accountsPrompt.js +31 -37
  247. package/lib/prompts/activeInstallConfirmationPrompt.d.ts +1 -0
  248. package/lib/prompts/activeInstallConfirmationPrompt.js +11 -13
  249. package/lib/prompts/cleanUploadPrompt.d.ts +1 -0
  250. package/lib/prompts/cleanUploadPrompt.js +11 -13
  251. package/lib/prompts/cmsFieldPrompt.d.ts +1 -0
  252. package/lib/prompts/cmsFieldPrompt.js +35 -39
  253. package/lib/prompts/createApiSamplePrompt.d.ts +1 -0
  254. package/lib/prompts/createApiSamplePrompt.js +47 -52
  255. package/lib/prompts/createFunctionPrompt.d.ts +1 -0
  256. package/lib/prompts/createFunctionPrompt.js +55 -56
  257. package/lib/prompts/createModulePrompt.d.ts +1 -0
  258. package/lib/prompts/createModulePrompt.js +45 -50
  259. package/lib/prompts/createProjectPrompt.d.ts +1 -0
  260. package/lib/prompts/createProjectPrompt.js +88 -127
  261. package/lib/prompts/createTemplatePrompt.d.ts +1 -0
  262. package/lib/prompts/createTemplatePrompt.js +16 -19
  263. package/lib/prompts/deployBuildIdPrompt.d.ts +1 -0
  264. package/lib/prompts/deployBuildIdPrompt.js +13 -15
  265. package/lib/prompts/downloadProjectPrompt.d.ts +1 -0
  266. package/lib/prompts/downloadProjectPrompt.js +36 -40
  267. package/lib/prompts/feedbackPrompt.d.ts +2 -0
  268. package/lib/prompts/feedbackPrompt.js +27 -30
  269. package/lib/prompts/folderOverwritePrompt.d.ts +1 -0
  270. package/lib/prompts/folderOverwritePrompt.js +8 -10
  271. package/lib/prompts/installPublicAppPrompt.d.ts +1 -0
  272. package/lib/prompts/installPublicAppPrompt.js +27 -42
  273. package/lib/prompts/personalAccessKeyPrompt.d.ts +69 -0
  274. package/lib/prompts/personalAccessKeyPrompt.js +102 -110
  275. package/lib/prompts/previewPrompt.d.ts +2 -0
  276. package/lib/prompts/previewPrompt.js +44 -47
  277. package/lib/prompts/projectAddPrompt.d.ts +1 -0
  278. package/lib/prompts/projectAddPrompt.js +35 -38
  279. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +4 -0
  280. package/lib/prompts/projectDevTargetAccountPrompt.js +148 -193
  281. package/lib/prompts/projectNamePrompt.d.ts +1 -0
  282. package/lib/prompts/projectNamePrompt.js +23 -25
  283. package/lib/prompts/projectsLogsPrompt.d.ts +5 -0
  284. package/lib/prompts/projectsLogsPrompt.js +19 -27
  285. package/lib/prompts/promptUtils.d.ts +2 -0
  286. package/lib/prompts/promptUtils.js +15 -17
  287. package/lib/prompts/sandboxesPrompt.d.ts +2 -0
  288. package/lib/prompts/sandboxesPrompt.js +48 -59
  289. package/lib/prompts/secretPrompt.d.ts +1 -0
  290. package/lib/prompts/secretPrompt.js +13 -16
  291. package/lib/prompts/selectPublicAppPrompt.d.ts +5 -0
  292. package/lib/prompts/selectPublicAppPrompt.js +55 -83
  293. package/lib/prompts/setAsDefaultAccountPrompt.d.ts +1 -0
  294. package/lib/prompts/setAsDefaultAccountPrompt.js +17 -24
  295. package/lib/prompts/uploadPrompt.d.ts +1 -0
  296. package/lib/prompts/uploadPrompt.js +28 -30
  297. package/lib/regex.d.ts +1 -0
  298. package/lib/regex.js +2 -2
  299. package/lib/sandboxSync.d.ts +8 -0
  300. package/lib/sandboxSync.js +98 -166
  301. package/lib/sandboxes.d.ts +40 -0
  302. package/lib/sandboxes.js +199 -316
  303. package/lib/schema.d.ts +2 -0
  304. package/lib/schema.js +20 -26
  305. package/lib/serverlessLogs.d.ts +8 -0
  306. package/lib/serverlessLogs.js +128 -172
  307. package/lib/ui/SpinniesManager.d.ts +61 -0
  308. package/lib/ui/SpinniesManager.js +196 -254
  309. package/lib/ui/git.d.ts +1 -0
  310. package/lib/ui/git.js +18 -19
  311. package/lib/ui/index.d.ts +36 -0
  312. package/lib/ui/index.js +115 -167
  313. package/lib/ui/serverlessFunctionLogs.d.ts +1 -0
  314. package/lib/ui/serverlessFunctionLogs.js +51 -70
  315. package/lib/ui/spinniesUtils.d.ts +60 -0
  316. package/lib/ui/spinniesUtils.js +109 -133
  317. package/lib/ui/supportHyperlinks.d.ts +3 -0
  318. package/lib/ui/supportHyperlinks.js +46 -61
  319. package/lib/ui/supportsColor.d.ts +13 -0
  320. package/lib/ui/supportsColor.js +78 -108
  321. package/lib/ui/table.d.ts +2 -0
  322. package/lib/ui/table.js +47 -55
  323. package/lib/upload.d.ts +1 -0
  324. package/lib/upload.js +37 -42
  325. package/lib/usageTracking.d.ts +6 -0
  326. package/lib/usageTracking.js +131 -155
  327. package/lib/validation.d.ts +16 -0
  328. package/lib/validation.js +142 -203
  329. package/package.json +78 -47
  330. package/CHANGELOG.md +0 -16
  331. package/LICENSE +0 -12
  332. package/README.md +0 -154
  333. package/commands/__tests__/projects.test.js +0 -105
  334. package/commands/project/__tests__/deploy.test.js +0 -443
  335. package/commands/project/__tests__/installDeps.test.js +0 -168
  336. package/commands/project/__tests__/logs.test.js +0 -304
  337. package/hubspot.sample.config.yml +0 -28
  338. package/jest.config.js +0 -4
  339. package/lib/__tests__/commonOpts.test.js +0 -83
  340. package/lib/__tests__/dependencyManagement.test.js +0 -243
  341. package/lib/__tests__/downloadProjectPrompt.test.js +0 -31
  342. package/lib/__tests__/projectLogsManager.test.js +0 -212
  343. package/lib/__tests__/projects.test.js +0 -140
  344. package/lib/__tests__/serverlessLogs.test.js +0 -162
  345. package/lib/__tests__/validation.test.js +0 -140
  346. package/lib/prompts/__tests__/projectsLogsPrompt.test.js +0 -46
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Displays notification to user that we are about to open the browser,
3
+ * then opens their browser to the personal-access-key shortlink
4
+ */
5
+ export function personalAccessKeyPrompt({ env, account }?: {}): Promise<{
6
+ personalAccessKey: any;
7
+ env: any;
8
+ }>;
9
+ export namespace CLIENT_ID {
10
+ let name: string;
11
+ let message: any;
12
+ function validate(val: any): any;
13
+ }
14
+ export namespace CLIENT_SECRET {
15
+ let name_1: string;
16
+ export { name_1 as name };
17
+ let message_1: any;
18
+ export { message_1 as message };
19
+ export function validate(val: any): any;
20
+ }
21
+ export namespace ACCOUNT_ID {
22
+ let name_2: string;
23
+ export { name_2 as name };
24
+ let message_2: any;
25
+ export { message_2 as message };
26
+ export let type: string;
27
+ export function validate(val: any): any;
28
+ }
29
+ export namespace SCOPES {
30
+ let type_1: string;
31
+ export { type_1 as type };
32
+ let name_3: string;
33
+ export { name_3 as name };
34
+ let message_3: any;
35
+ export { message_3 as message };
36
+ export { DEFAULT_OAUTH_SCOPES as default };
37
+ export { OAUTH_SCOPES as choices };
38
+ }
39
+ export namespace PERSONAL_ACCESS_KEY {
40
+ let name_4: string;
41
+ export { name_4 as name };
42
+ let message_4: any;
43
+ export { message_4 as message };
44
+ export function transformer(val: any): any;
45
+ export function validate(val: any): any;
46
+ }
47
+ export const OAUTH_FLOW: ({
48
+ name: string;
49
+ message: any;
50
+ validate(val: any): any;
51
+ } | {
52
+ type: string;
53
+ name: string;
54
+ message: any;
55
+ default: readonly ["content"];
56
+ choices: readonly [{
57
+ readonly name: "All CMS APIs, Calendar API, Email and Email Events APIs";
58
+ readonly value: "content";
59
+ readonly checked: true;
60
+ }, {
61
+ readonly name: "HubDB API";
62
+ readonly value: "hubdb";
63
+ }, {
64
+ readonly name: "File Manager API";
65
+ readonly value: "files";
66
+ }];
67
+ })[];
68
+ import { DEFAULT_OAUTH_SCOPES } from "@hubspot/local-dev-lib/constants/auth";
69
+ import { OAUTH_SCOPES } from "@hubspot/local-dev-lib/constants/auth";
@@ -1,8 +1,6 @@
1
+ "use strict";
1
2
  const open = require('open');
2
- const {
3
- OAUTH_SCOPES,
4
- DEFAULT_OAUTH_SCOPES,
5
- } = require('@hubspot/local-dev-lib/constants/auth');
3
+ const { OAUTH_SCOPES, DEFAULT_OAUTH_SCOPES, } = require('@hubspot/local-dev-lib/constants/auth');
6
4
  const { deleteEmptyConfigFile } = require('@hubspot/local-dev-lib/config');
7
5
  const { getHubSpotWebsiteOrigin } = require('@hubspot/local-dev-lib/urls');
8
6
  const { logger } = require('@hubspot/local-dev-lib/logger');
@@ -11,133 +9,127 @@ const { getCliAccountNamePromptConfig } = require('./accountNamePrompt');
11
9
  const { i18n } = require('../lang');
12
10
  const { uiInfoSection } = require('../ui');
13
11
  const { EXIT_CODES } = require('../enums/exitCodes');
14
-
15
12
  const i18nKey = 'lib.prompts.personalAccessKeyPrompt';
16
-
17
13
  /**
18
14
  * Displays notification to user that we are about to open the browser,
19
15
  * then opens their browser to the personal-access-key shortlink
20
16
  */
21
17
  const personalAccessKeyPrompt = async ({ env, account } = {}) => {
22
- const websiteOrigin = getHubSpotWebsiteOrigin(env);
23
- let url = `${websiteOrigin}/l/personal-access-key`;
24
- if (process.env.BROWSER !== 'none') {
25
- uiInfoSection(i18n(`${i18nKey}.personalAccessKeySetupTitle`), () => {
26
- logger.log(i18n(`${i18nKey}.personalAccessKeyBrowserOpenPrep`));
27
- });
28
- if (account) {
29
- url = `${websiteOrigin}/personal-access-key/${account}`;
18
+ const websiteOrigin = getHubSpotWebsiteOrigin(env);
19
+ let url = `${websiteOrigin}/l/personal-access-key`;
20
+ if (process.env.BROWSER !== 'none') {
21
+ uiInfoSection(i18n(`${i18nKey}.personalAccessKeySetupTitle`), () => {
22
+ logger.log(i18n(`${i18nKey}.personalAccessKeyBrowserOpenPrep`));
23
+ });
24
+ if (account) {
25
+ url = `${websiteOrigin}/personal-access-key/${account}`;
26
+ }
27
+ const { personalAcessKeyBrowserOpenPrep: shouldOpen } = await promptUser([
28
+ PERSONAL_ACCESS_KEY_BROWSER_OPEN_PREP,
29
+ ]);
30
+ if (shouldOpen) {
31
+ open(url, { url: true });
32
+ }
33
+ else {
34
+ deleteEmptyConfigFile();
35
+ process.exit(EXIT_CODES.SUCCESS);
36
+ }
30
37
  }
31
- const { personalAcessKeyBrowserOpenPrep: shouldOpen } = await promptUser([
32
- PERSONAL_ACCESS_KEY_BROWSER_OPEN_PREP,
33
- ]);
34
- if (shouldOpen) {
35
- open(url, { url: true });
36
- } else {
37
- deleteEmptyConfigFile();
38
- process.exit(EXIT_CODES.SUCCESS);
39
- }
40
- }
41
-
42
- logger.log(i18n(`${i18nKey}.logs.openingWebBrowser`, { url }));
43
- const { personalAccessKey } = await promptUser(PERSONAL_ACCESS_KEY);
44
-
45
- return {
46
- personalAccessKey,
47
- env,
48
- };
38
+ logger.log(i18n(`${i18nKey}.logs.openingWebBrowser`, { url }));
39
+ const { personalAccessKey } = await promptUser(PERSONAL_ACCESS_KEY);
40
+ return {
41
+ personalAccessKey,
42
+ env,
43
+ };
49
44
  };
50
-
51
45
  const ACCOUNT_ID = {
52
- name: 'accountId',
53
- message: i18n(`${i18nKey}.enterAccountId`),
54
- type: 'number',
55
- validate(val) {
56
- if (!Number.isNaN(val) && val > 0) {
57
- return true;
58
- }
59
- return i18n(`${i18nKey}.errors.invalidAccountId`);
60
- },
46
+ name: 'accountId',
47
+ message: i18n(`${i18nKey}.enterAccountId`),
48
+ type: 'number',
49
+ validate(val) {
50
+ if (!Number.isNaN(val) && val > 0) {
51
+ return true;
52
+ }
53
+ return i18n(`${i18nKey}.errors.invalidAccountId`);
54
+ },
61
55
  };
62
-
63
56
  const CLIENT_ID = {
64
- name: 'clientId',
65
- message: i18n(`${i18nKey}.enterClientId`),
66
- validate(val) {
67
- if (typeof val !== 'string') {
68
- return i18n(`${i18nKey}.errors.invalidOauthClientId`);
69
- } else if (val.length !== 36) {
70
- return i18n(`${i18nKey}.errors.invalidOauthClientIdLength`);
71
- }
72
- return true;
73
- },
57
+ name: 'clientId',
58
+ message: i18n(`${i18nKey}.enterClientId`),
59
+ validate(val) {
60
+ if (typeof val !== 'string') {
61
+ return i18n(`${i18nKey}.errors.invalidOauthClientId`);
62
+ }
63
+ else if (val.length !== 36) {
64
+ return i18n(`${i18nKey}.errors.invalidOauthClientIdLength`);
65
+ }
66
+ return true;
67
+ },
74
68
  };
75
-
76
69
  const CLIENT_SECRET = {
77
- name: 'clientSecret',
78
- message: i18n(`${i18nKey}.enterClientSecret`),
79
- validate(val) {
80
- if (typeof val !== 'string') {
81
- return i18n(`${i18nKey}.errors.invalidOauthClientSecret`);
82
- } else if (val.length !== 36) {
83
- return i18n(`${i18nKey}.errors.invalidOauthClientSecretLength`);
84
- } else if (val[0] === '*') {
85
- return i18n(`${i18nKey}.errors.invalidOauthClientSecretCopy`);
86
- }
87
- return true;
88
- },
70
+ name: 'clientSecret',
71
+ message: i18n(`${i18nKey}.enterClientSecret`),
72
+ validate(val) {
73
+ if (typeof val !== 'string') {
74
+ return i18n(`${i18nKey}.errors.invalidOauthClientSecret`);
75
+ }
76
+ else if (val.length !== 36) {
77
+ return i18n(`${i18nKey}.errors.invalidOauthClientSecretLength`);
78
+ }
79
+ else if (val[0] === '*') {
80
+ return i18n(`${i18nKey}.errors.invalidOauthClientSecretCopy`);
81
+ }
82
+ return true;
83
+ },
89
84
  };
90
-
91
85
  const PERSONAL_ACCESS_KEY_BROWSER_OPEN_PREP = {
92
- name: 'personalAcessKeyBrowserOpenPrep',
93
- type: 'confirm',
94
- message: i18n(`${i18nKey}.personalAccessKeyBrowserOpenPrompt`),
86
+ name: 'personalAcessKeyBrowserOpenPrep',
87
+ type: 'confirm',
88
+ message: i18n(`${i18nKey}.personalAccessKeyBrowserOpenPrompt`),
95
89
  };
96
-
97
90
  const PERSONAL_ACCESS_KEY = {
98
- name: 'personalAccessKey',
99
- message: i18n(`${i18nKey}.enterPersonalAccessKey`),
100
- transformer: val => {
101
- if (!val) return val;
102
- let res = '';
103
- for (let i = 0; i < val.length; i++) {
104
- res += '*';
105
- }
106
- return res;
107
- },
108
- validate(val) {
109
- if (!val || typeof val !== 'string') {
110
- return i18n(`${i18nKey}.errors.invalidPersonalAccessKey`);
111
- } else if (val[0] === '•') {
112
- return i18n(`${i18nKey}.errors.invalidPersonalAccessKeyCopy`);
113
- }
114
- return true;
115
- },
91
+ name: 'personalAccessKey',
92
+ message: i18n(`${i18nKey}.enterPersonalAccessKey`),
93
+ transformer: val => {
94
+ if (!val)
95
+ return val;
96
+ let res = '';
97
+ for (let i = 0; i < val.length; i++) {
98
+ res += '*';
99
+ }
100
+ return res;
101
+ },
102
+ validate(val) {
103
+ if (!val || typeof val !== 'string') {
104
+ return i18n(`${i18nKey}.errors.invalidPersonalAccessKey`);
105
+ }
106
+ else if (val[0] === '•') {
107
+ return i18n(`${i18nKey}.errors.invalidPersonalAccessKeyCopy`);
108
+ }
109
+ return true;
110
+ },
116
111
  };
117
-
118
112
  const SCOPES = {
119
- type: 'checkbox',
120
- name: 'scopes',
121
- message: i18n(`${i18nKey}.selectScopes`),
122
- default: DEFAULT_OAUTH_SCOPES,
123
- choices: OAUTH_SCOPES,
113
+ type: 'checkbox',
114
+ name: 'scopes',
115
+ message: i18n(`${i18nKey}.selectScopes`),
116
+ default: DEFAULT_OAUTH_SCOPES,
117
+ choices: OAUTH_SCOPES,
124
118
  };
125
-
126
119
  const OAUTH_FLOW = [
127
- getCliAccountNamePromptConfig(),
128
- ACCOUNT_ID,
129
- CLIENT_ID,
130
- CLIENT_SECRET,
131
- SCOPES,
120
+ getCliAccountNamePromptConfig(),
121
+ ACCOUNT_ID,
122
+ CLIENT_ID,
123
+ CLIENT_SECRET,
124
+ SCOPES,
132
125
  ];
133
-
134
126
  module.exports = {
135
- personalAccessKeyPrompt,
136
- CLIENT_ID,
137
- CLIENT_SECRET,
138
- ACCOUNT_ID,
139
- SCOPES,
140
- PERSONAL_ACCESS_KEY,
141
- // Flows
142
- OAUTH_FLOW,
127
+ personalAccessKeyPrompt,
128
+ CLIENT_ID,
129
+ CLIENT_SECRET,
130
+ ACCOUNT_ID,
131
+ SCOPES,
132
+ PERSONAL_ACCESS_KEY,
133
+ // Flows
134
+ OAUTH_FLOW,
143
135
  };
@@ -0,0 +1,2 @@
1
+ export function previewPrompt(promptOptions?: {}): Promise<any>;
2
+ export function previewProjectPrompt(themeComponents: any): Promise<any>;
@@ -1,57 +1,54 @@
1
+ "use strict";
1
2
  const path = require('path');
2
3
  const { getCwd } = require('@hubspot/local-dev-lib/path');
3
4
  const { promptUser } = require('./promptUtils');
4
5
  const { i18n } = require('../lang');
5
-
6
6
  const i18nKey = 'lib.prompts.previewPrompt';
7
-
8
7
  const previewPrompt = (promptOptions = {}) => {
9
- return promptUser([
10
- {
11
- name: 'src',
12
- message: i18n(`${i18nKey}.enterSrc`),
13
- when: !promptOptions.src,
14
- default: '.',
15
- validate: input => {
16
- if (!input) {
17
- return i18n(`${i18nKey}.errors.srcRequired`);
18
- }
19
- return true;
20
- },
21
- },
22
- {
23
- name: 'dest',
24
- message: i18n(`${i18nKey}.enterDest`),
25
- when: !promptOptions.dest,
26
- default: path.basename(getCwd()),
27
- validate: input => {
28
- if (!input) {
29
- return i18n(`${i18nKey}.errors.destRequired`);
30
- }
31
- return true;
32
- },
33
- },
34
- ]);
8
+ return promptUser([
9
+ {
10
+ name: 'src',
11
+ message: i18n(`${i18nKey}.enterSrc`),
12
+ when: !promptOptions.src,
13
+ default: '.',
14
+ validate: input => {
15
+ if (!input) {
16
+ return i18n(`${i18nKey}.errors.srcRequired`);
17
+ }
18
+ return true;
19
+ },
20
+ },
21
+ {
22
+ name: 'dest',
23
+ message: i18n(`${i18nKey}.enterDest`),
24
+ when: !promptOptions.dest,
25
+ default: path.basename(getCwd()),
26
+ validate: input => {
27
+ if (!input) {
28
+ return i18n(`${i18nKey}.errors.destRequired`);
29
+ }
30
+ return true;
31
+ },
32
+ },
33
+ ]);
35
34
  };
36
-
37
- const previewProjectPrompt = async themeComponents => {
38
- return promptUser([
39
- {
40
- name: 'themeComponentPath',
41
- message: i18n(`${i18nKey}.themeProjectSelect`),
42
- type: 'list',
43
- choices: themeComponents.map(t => {
44
- const themeName = path.basename(t.path);
45
- return {
46
- name: themeName,
47
- value: t.path,
48
- };
49
- }),
50
- },
51
- ]);
35
+ const previewProjectPrompt = async (themeComponents) => {
36
+ return promptUser([
37
+ {
38
+ name: 'themeComponentPath',
39
+ message: i18n(`${i18nKey}.themeProjectSelect`),
40
+ type: 'list',
41
+ choices: themeComponents.map(t => {
42
+ const themeName = path.basename(t.path);
43
+ return {
44
+ name: themeName,
45
+ value: t.path,
46
+ };
47
+ }),
48
+ },
49
+ ]);
52
50
  };
53
-
54
51
  module.exports = {
55
- previewPrompt,
56
- previewProjectPrompt,
52
+ previewPrompt,
53
+ previewProjectPrompt,
57
54
  };
@@ -0,0 +1 @@
1
+ export function projectAddPrompt(components: any, promptOptions?: {}): Promise<any>;
@@ -1,45 +1,42 @@
1
+ "use strict";
1
2
  const { promptUser } = require('./promptUtils');
2
3
  const { i18n } = require('../lang');
3
-
4
4
  const i18nKey = 'lib.prompts.projectAddPrompt';
5
-
6
5
  const projectAddPrompt = async (components, promptOptions = {}) => {
7
- return promptUser([
8
- {
9
- name: 'component',
10
- message: () => {
11
- return promptOptions.type &&
12
- !components.find(t => t.path === promptOptions.type)
13
- ? i18n(`${i18nKey}.errors.invalidType`, {
14
- type: promptOptions.type,
15
- })
16
- : i18n(`${i18nKey}.selectType`);
17
- },
18
- when:
19
- !promptOptions.type ||
20
- !components.find(t => t.path === promptOptions.type),
21
- type: 'list',
22
- choices: components.map(type => {
23
- return {
24
- name: type.label,
25
- value: type,
26
- };
27
- }),
28
- },
29
- {
30
- name: 'name',
31
- message: i18n(`${i18nKey}.enterName`),
32
- when: !promptOptions.name,
33
- validate: input => {
34
- if (!input) {
35
- return i18n(`${i18nKey}.errors.nameRequired`);
36
- }
37
- return true;
38
- },
39
- },
40
- ]);
6
+ return promptUser([
7
+ {
8
+ name: 'component',
9
+ message: () => {
10
+ return promptOptions.type &&
11
+ !components.find(t => t.path === promptOptions.type)
12
+ ? i18n(`${i18nKey}.errors.invalidType`, {
13
+ type: promptOptions.type,
14
+ })
15
+ : i18n(`${i18nKey}.selectType`);
16
+ },
17
+ when: !promptOptions.type ||
18
+ !components.find(t => t.path === promptOptions.type),
19
+ type: 'list',
20
+ choices: components.map(type => {
21
+ return {
22
+ name: type.label,
23
+ value: type,
24
+ };
25
+ }),
26
+ },
27
+ {
28
+ name: 'name',
29
+ message: i18n(`${i18nKey}.enterName`),
30
+ when: !promptOptions.name,
31
+ validate: input => {
32
+ if (!input) {
33
+ return i18n(`${i18nKey}.errors.nameRequired`);
34
+ }
35
+ return true;
36
+ },
37
+ },
38
+ ]);
41
39
  };
42
-
43
40
  module.exports = {
44
- projectAddPrompt,
41
+ projectAddPrompt,
45
42
  };
@@ -0,0 +1,4 @@
1
+ export function selectSandboxTargetAccountPrompt(accounts: any, defaultAccountConfig: any): Promise<any>;
2
+ export function selectDeveloperTestTargetAccountPrompt(accounts: any, defaultAccountConfig: any): Promise<any>;
3
+ export function confirmDefaultAccountPrompt(accountName: any, accountType: any): Promise<any>;
4
+ export function confirmUseExistingDeveloperTestAccountPrompt(account: any): Promise<any>;