@hubspot/cli 7.1.1 → 7.2.0-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 (126) hide show
  1. package/commands/create/api-sample.js +14 -4
  2. package/commands/customObject/create.d.ts +11 -0
  3. package/commands/customObject/create.js +37 -28
  4. package/commands/customObject/schema/create.d.ts +10 -0
  5. package/commands/customObject/schema/create.js +40 -42
  6. package/commands/customObject/schema/delete.d.ts +11 -0
  7. package/commands/customObject/schema/delete.js +34 -27
  8. package/commands/customObject/schema/fetch-all.d.ts +10 -0
  9. package/commands/customObject/schema/fetch-all.js +31 -24
  10. package/commands/customObject/schema/fetch.d.ts +11 -0
  11. package/commands/customObject/schema/fetch.js +34 -42
  12. package/commands/customObject/schema/list.d.ts +7 -0
  13. package/commands/customObject/schema/list.js +23 -14
  14. package/commands/customObject/schema/update.d.ts +11 -0
  15. package/commands/customObject/schema/update.js +44 -46
  16. package/commands/customObject/schema.d.ts +5 -1
  17. package/commands/customObject/schema.js +49 -11
  18. package/commands/customObject.d.ts +4 -1
  19. package/commands/customObject.js +54 -21
  20. package/commands/filemanager/fetch.d.ts +12 -0
  21. package/commands/filemanager/fetch.js +33 -30
  22. package/commands/filemanager/upload.d.ts +11 -0
  23. package/commands/filemanager/upload.js +53 -47
  24. package/commands/filemanager.d.ts +4 -1
  25. package/commands/filemanager.js +41 -7
  26. package/commands/hubdb/clear.d.ts +11 -0
  27. package/commands/hubdb/clear.js +33 -30
  28. package/commands/hubdb/create.d.ts +10 -0
  29. package/commands/hubdb/create.js +46 -40
  30. package/commands/hubdb/delete.d.ts +10 -0
  31. package/commands/hubdb/delete.js +38 -35
  32. package/commands/hubdb/fetch.d.ts +11 -0
  33. package/commands/hubdb/fetch.js +30 -27
  34. package/commands/hubdb.d.ts +4 -1
  35. package/commands/hubdb.js +45 -11
  36. package/commands/project/add.js +62 -16
  37. package/commands/project/cloneApp.js +3 -3
  38. package/commands/project/create.js +70 -15
  39. package/commands/project/dev/deprecatedFlow.d.ts +5 -0
  40. package/commands/project/dev/deprecatedFlow.js +137 -0
  41. package/commands/project/dev/index.d.ts +6 -0
  42. package/commands/project/dev/index.js +52 -0
  43. package/commands/project/dev/unifiedFlow.d.ts +5 -0
  44. package/commands/project/dev/unifiedFlow.js +112 -0
  45. package/commands/project/migrateApp.js +3 -3
  46. package/commands/project/upload.js +7 -2
  47. package/commands/sandbox/create.d.ts +12 -0
  48. package/commands/sandbox/create.js +90 -72
  49. package/commands/sandbox/delete.d.ts +11 -0
  50. package/commands/sandbox/delete.js +112 -95
  51. package/commands/sandbox.d.ts +4 -1
  52. package/commands/sandbox.js +44 -10
  53. package/commands/secret/addSecret.d.ts +10 -0
  54. package/commands/secret/addSecret.js +32 -31
  55. package/commands/secret/deleteSecret.d.ts +11 -0
  56. package/commands/secret/deleteSecret.js +31 -29
  57. package/commands/secret/listSecret.d.ts +9 -0
  58. package/commands/secret/listSecret.js +41 -0
  59. package/commands/secret/updateSecret.d.ts +10 -0
  60. package/commands/secret/updateSecret.js +33 -31
  61. package/commands/secret.d.ts +4 -1
  62. package/commands/secret.js +46 -12
  63. package/commands/theme/generate-selectors.d.ts +9 -0
  64. package/commands/theme/generate-selectors.js +61 -43
  65. package/commands/theme/marketplace-validate.d.ts +10 -0
  66. package/commands/theme/marketplace-validate.js +32 -26
  67. package/commands/theme/preview.d.ts +16 -0
  68. package/commands/theme/preview.js +104 -97
  69. package/commands/theme.d.ts +4 -1
  70. package/commands/theme.js +44 -10
  71. package/lang/en.lyaml +36 -16
  72. package/lib/DevServerManagerV2.d.ts +34 -0
  73. package/lib/DevServerManagerV2.js +85 -0
  74. package/lib/LocalDevManager.d.ts +2 -2
  75. package/lib/LocalDevManagerV2.d.ts +64 -0
  76. package/lib/LocalDevManagerV2.js +382 -0
  77. package/lib/buildAccount.d.ts +2 -3
  78. package/lib/constants.d.ts +12 -3
  79. package/lib/constants.js +13 -4
  80. package/lib/customObject.d.ts +3 -0
  81. package/lib/customObject.js +15 -0
  82. package/lib/doctor/DiagnosticInfoBuilder.d.ts +6 -0
  83. package/lib/doctor/DiagnosticInfoBuilder.js +5 -0
  84. package/lib/doctor/Doctor.d.ts +1 -0
  85. package/lib/doctor/Doctor.js +10 -0
  86. package/lib/localDev.d.ts +3 -2
  87. package/lib/localDev.js +2 -2
  88. package/lib/marketplaceValidate.d.ts +2 -2
  89. package/lib/process.d.ts +1 -0
  90. package/lib/process.js +11 -10
  91. package/lib/projects/buildAndDeploy.js +4 -1
  92. package/lib/projects/create.d.ts +5 -0
  93. package/lib/projects/create.js +51 -0
  94. package/lib/projects/index.d.ts +1 -5
  95. package/lib/projects/index.js +1 -62
  96. package/lib/projects/structure.d.ts +4 -0
  97. package/lib/projects/structure.js +9 -0
  98. package/lib/projects/upload.d.ts +1 -1
  99. package/lib/projects/upload.js +2 -2
  100. package/lib/prompts/createProjectPrompt.d.ts +6 -8
  101. package/lib/prompts/createProjectPrompt.js +26 -54
  102. package/lib/prompts/projectAddPrompt.d.ts +3 -3
  103. package/lib/prompts/projectAddPrompt.js +16 -6
  104. package/lib/prompts/projectDevTargetAccountPrompt.d.ts +3 -2
  105. package/lib/prompts/sandboxesPrompt.d.ts +3 -2
  106. package/lib/prompts/sandboxesPrompt.js +1 -1
  107. package/lib/sandboxSync.js +6 -2
  108. package/lib/sandboxes.d.ts +2 -5
  109. package/lib/testUtils.d.ts +12 -0
  110. package/lib/testUtils.js +10 -0
  111. package/lib/ui/index.d.ts +2 -2
  112. package/lib/ui/index.js +1 -0
  113. package/lib/upload.d.ts +1 -1
  114. package/lib/upload.js +20 -20
  115. package/lib/validation.d.ts +1 -1
  116. package/package.json +6 -5
  117. package/types/ProjectComponents.d.ts +38 -0
  118. package/types/ProjectComponents.js +3 -0
  119. package/types/Projects.d.ts +1 -6
  120. package/types/Prompts.d.ts +7 -0
  121. package/types/Sandboxes.d.ts +2 -0
  122. package/types/Yargs.d.ts +15 -0
  123. package/commands/project/dev.d.ts +0 -1
  124. package/commands/project/dev.js +0 -146
  125. package/commands/secret/listSecrets.d.ts +0 -1
  126. package/commands/secret/listSecrets.js +0 -39
@@ -6,8 +6,11 @@ const { confirmPrompt } = require('../../lib/prompts/promptUtils');
6
6
  const { logger } = require('@hubspot/local-dev-lib/logger');
7
7
  const path = require('path');
8
8
  const fs = require('fs-extra');
9
- const { fetchFileFromRepository, cloneGithubRepo, } = require('@hubspot/local-dev-lib/github');
9
+ const { fetchRepoFile } = require('@hubspot/local-dev-lib/api/github');
10
+ const { cloneGithubRepo } = require('@hubspot/local-dev-lib/github');
10
11
  const { i18n } = require('../../lib/lang');
12
+ const { debugError } = require('../../lib/errorHandlers');
13
+ const { EXIT_CODES } = require('../../lib/enums/exitCodes');
11
14
  const i18nKey = 'commands.create.subcommands.apiSample';
12
15
  module.exports = {
13
16
  hidden: true,
@@ -30,15 +33,22 @@ module.exports = {
30
33
  return;
31
34
  }
32
35
  }
33
- const samplesConfig = await fetchFileFromRepository('HubSpot/sample-apps-list', 'samples.json', 'main');
36
+ let samplesConfig;
37
+ try {
38
+ const { data } = await fetchRepoFile('HubSpot/sample-apps-list', 'samples.json', 'main');
39
+ samplesConfig = data;
40
+ }
41
+ catch (err) {
42
+ debugError(err);
43
+ }
34
44
  if (!samplesConfig) {
35
45
  logger.error(i18n(`${i18nKey}.errors.noSamples`));
36
- return;
46
+ process.exit(EXIT_CODES.ERROR);
37
47
  }
38
48
  const { sampleType, sampleLanguage } = await createApiSamplePrompt(samplesConfig);
39
49
  if (!sampleType || !sampleLanguage) {
40
50
  logger.error(i18n(`${i18nKey}.errors.noSamples`));
41
- return;
51
+ process.exit(EXIT_CODES.ERROR);
42
52
  }
43
53
  logger.info(i18n(`${i18nKey}.info.sampleChosen`, {
44
54
  sampleType,
@@ -1 +1,12 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { CommonArgs, ConfigArgs, AccountArgs, EnvironmentArgs } from '../../types/Yargs';
3
+ export declare const command = "create [name]";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs;
6
+ type CustomObjectCreateArgs = CombinedArgs & {
7
+ name?: string;
8
+ path?: string;
9
+ };
10
+ export declare function handler(args: ArgumentsCamelCase<CustomObjectCreateArgs>): Promise<void>;
11
+ export declare function builder(yargs: Argv): Argv<CustomObjectCreateArgs>;
1
12
  export {};
@@ -1,53 +1,62 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // @ts-nocheck
3
+ exports.describe = exports.command = void 0;
4
+ exports.handler = handler;
5
+ exports.builder = builder;
6
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
7
+ const customObjects_1 = require("@hubspot/local-dev-lib/api/customObjects");
4
8
  const promptUtils_1 = require("../../lib/prompts/promptUtils");
5
- const { logger } = require('@hubspot/local-dev-lib/logger');
6
- const { logError } = require('../../lib/errorHandlers/index');
7
- const { getAbsoluteFilePath } = require('@hubspot/local-dev-lib/path');
8
- const { checkAndConvertToJson } = require('../../lib/validation');
9
- const { trackCommandUsage } = require('../../lib/usageTracking');
10
- const { batchCreateObjects, } = require('@hubspot/local-dev-lib/api/customObjects');
11
- const { i18n } = require('../../lib/lang');
9
+ const index_1 = require("../../lib/errorHandlers/index");
10
+ const path_1 = require("@hubspot/local-dev-lib/path");
11
+ const validation_1 = require("../../lib/validation");
12
+ const usageTracking_1 = require("../../lib/usageTracking");
13
+ const lang_1 = require("../../lib/lang");
14
+ const exitCodes_1 = require("../../lib/enums/exitCodes");
15
+ const customObject_1 = require("../../lib/customObject");
16
+ const commonOpts_1 = require("../../lib/commonOpts");
12
17
  const i18nKey = 'commands.customObject.subcommands.create';
13
- const { EXIT_CODES } = require('../../lib/enums/exitCodes');
14
18
  exports.command = 'create [name]';
15
- exports.describe = i18n(`${i18nKey}.describe`);
16
- exports.handler = async (options) => {
17
- const { path, name: providedName, derivedAccountId } = options;
19
+ exports.describe = (0, lang_1.i18n)(`${i18nKey}.describe`);
20
+ async function handler(args) {
21
+ const { path, name: providedName, derivedAccountId } = args;
18
22
  let definitionPath = path;
19
23
  let name = providedName;
20
- trackCommandUsage('custom-object-batch-create', null, derivedAccountId);
24
+ (0, usageTracking_1.trackCommandUsage)('custom-object-batch-create', {}, derivedAccountId);
21
25
  if (!name) {
22
- name = await (0, promptUtils_1.inputPrompt)(i18n(`${i18nKey}.inputName`));
26
+ name = await (0, promptUtils_1.inputPrompt)((0, lang_1.i18n)(`${i18nKey}.inputName`));
23
27
  }
24
28
  if (!definitionPath) {
25
- definitionPath = await (0, promptUtils_1.inputPrompt)(i18n(`${i18nKey}.inputPath`));
29
+ definitionPath = await (0, promptUtils_1.inputPrompt)((0, lang_1.i18n)(`${i18nKey}.inputPath`));
26
30
  }
27
- const filePath = getAbsoluteFilePath(definitionPath);
28
- const objectJson = checkAndConvertToJson(filePath);
29
- if (!objectJson) {
30
- process.exit(EXIT_CODES.ERROR);
31
+ const filePath = (0, path_1.getAbsoluteFilePath)(definitionPath);
32
+ const objectJson = (0, validation_1.checkAndConvertToJson)(filePath);
33
+ if (!(0, customObject_1.isObjectDefinition)(objectJson)) {
34
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.invalidObjectDefinition`));
35
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
31
36
  }
32
37
  try {
33
- await batchCreateObjects(derivedAccountId, name, objectJson);
34
- logger.success(i18n(`${i18nKey}.success.objectsCreated`));
38
+ await (0, customObjects_1.batchCreateObjects)(derivedAccountId, name, objectJson);
39
+ logger_1.logger.success((0, lang_1.i18n)(`${i18nKey}.success.objectsCreated`));
35
40
  }
36
41
  catch (e) {
37
- logError(e, { accountId: derivedAccountId });
38
- logger.error(i18n(`${i18nKey}.errors.creationFailed`, {
42
+ (0, index_1.logError)(e, { accountId: derivedAccountId });
43
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.creationFailed`, {
39
44
  definition: definitionPath,
40
45
  }));
41
46
  }
42
- };
43
- exports.builder = yargs => {
47
+ }
48
+ function builder(yargs) {
49
+ (0, commonOpts_1.addConfigOptions)(yargs);
50
+ (0, commonOpts_1.addAccountOptions)(yargs);
51
+ (0, commonOpts_1.addUseEnvironmentOptions)(yargs);
44
52
  yargs
45
53
  .positional('name', {
46
- describe: i18n(`${i18nKey}.positionals.name.describe`),
54
+ describe: (0, lang_1.i18n)(`${i18nKey}.positionals.name.describe`),
47
55
  type: 'string',
48
56
  })
49
57
  .option('path', {
50
- describe: i18n(`${i18nKey}.options.path.describe`),
58
+ describe: (0, lang_1.i18n)(`${i18nKey}.options.path.describe`),
51
59
  type: 'string',
52
60
  });
53
- };
61
+ return yargs;
62
+ }
@@ -1 +1,11 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { CommonArgs, ConfigArgs, AccountArgs, EnvironmentArgs, TestingArgs } from '../../../types/Yargs';
3
+ export declare const command = "create";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs & TestingArgs;
6
+ type SchemaCreateArgs = CombinedArgs & {
7
+ path: string;
8
+ };
9
+ export declare function handler(args: ArgumentsCamelCase<SchemaCreateArgs>): Promise<void>;
10
+ export declare function builder(yargs: Argv): Argv<SchemaCreateArgs>;
1
11
  export {};
@@ -1,57 +1,55 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // @ts-nocheck
4
- const { logger } = require('@hubspot/local-dev-lib/logger');
5
- const { logError } = require('../../../lib/errorHandlers/index');
6
- const { getAbsoluteFilePath } = require('@hubspot/local-dev-lib/path');
7
- const { checkAndConvertToJson } = require('../../../lib/validation');
8
- const { trackCommandUsage } = require('../../../lib/usageTracking');
9
- const { addTestingOptions } = require('../../../lib/commonOpts');
10
- const { getEnv, isConfigFlagEnabled, } = require('@hubspot/local-dev-lib/config');
11
- const { ENVIRONMENTS, } = require('@hubspot/local-dev-lib/constants/environments');
12
- const { CONFIG_FLAGS } = require('../../../lib/constants');
13
- const { createObjectSchema, } = require('@hubspot/local-dev-lib/api/customObjects');
14
- const { createSchema: createSchemaFromHubFile, } = require('@hubspot/local-dev-lib/api/fileTransport');
15
- const { getHubSpotWebsiteOrigin } = require('@hubspot/local-dev-lib/urls');
16
- const { i18n } = require('../../../lib/lang');
3
+ exports.describe = exports.command = void 0;
4
+ exports.handler = handler;
5
+ exports.builder = builder;
6
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
7
+ const config_1 = require("@hubspot/local-dev-lib/config");
8
+ const environments_1 = require("@hubspot/local-dev-lib/constants/environments");
9
+ const path_1 = require("@hubspot/local-dev-lib/path");
10
+ const customObjects_1 = require("@hubspot/local-dev-lib/api/customObjects");
11
+ const urls_1 = require("@hubspot/local-dev-lib/urls");
12
+ const index_1 = require("../../../lib/errorHandlers/index");
13
+ const validation_1 = require("../../../lib/validation");
14
+ const usageTracking_1 = require("../../../lib/usageTracking");
15
+ const commonOpts_1 = require("../../../lib/commonOpts");
16
+ const lang_1 = require("../../../lib/lang");
17
+ const exitCodes_1 = require("../../../lib/enums/exitCodes");
18
+ const customObject_1 = require("../../../lib/customObject");
17
19
  const i18nKey = 'commands.customObject.subcommands.schema.subcommands.create';
18
- const { EXIT_CODES } = require('../../../lib/enums/exitCodes');
19
20
  exports.command = 'create';
20
- exports.describe = i18n(`${i18nKey}.describe`);
21
- exports.handler = async (options) => {
22
- const { path, derivedAccountId } = options;
23
- trackCommandUsage('custom-object-schema-create', null, derivedAccountId);
24
- const filePath = getAbsoluteFilePath(path);
25
- const schemaJson = checkAndConvertToJson(filePath);
26
- if (!schemaJson) {
27
- process.exit(EXIT_CODES.ERROR);
21
+ exports.describe = (0, lang_1.i18n)(`${i18nKey}.describe`);
22
+ async function handler(args) {
23
+ const { path, derivedAccountId } = args;
24
+ (0, usageTracking_1.trackCommandUsage)('custom-object-schema-create', {}, derivedAccountId);
25
+ const filePath = (0, path_1.getAbsoluteFilePath)(path);
26
+ const schemaJson = (0, validation_1.checkAndConvertToJson)(filePath);
27
+ if (!(0, customObject_1.isSchemaDefinition)(schemaJson)) {
28
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.invalidSchema`));
29
+ process.exit(exitCodes_1.EXIT_CODES.ERROR);
28
30
  }
29
31
  try {
30
- if (isConfigFlagEnabled(CONFIG_FLAGS.USE_CUSTOM_OBJECT_HUBFILE)) {
31
- await createSchemaFromHubFile(derivedAccountId, filePath);
32
- logger.success(i18n(`${i18nKey}.success.schemaCreated`, {
33
- accountId: derivedAccountId,
34
- }));
35
- }
36
- else {
37
- const { data } = await createObjectSchema(derivedAccountId, schemaJson);
38
- logger.success(i18n(`${i18nKey}.success.schemaViewable`, {
39
- url: `${getHubSpotWebsiteOrigin(getEnv() === 'qa' ? ENVIRONMENTS.QA : ENVIRONMENTS.PROD)}/contacts/${derivedAccountId}/objects/${data.objectTypeId}`,
40
- }));
41
- }
32
+ const { data } = await (0, customObjects_1.createObjectSchema)(derivedAccountId, schemaJson);
33
+ logger_1.logger.success((0, lang_1.i18n)(`${i18nKey}.success.schemaViewable`, {
34
+ url: `${(0, urls_1.getHubSpotWebsiteOrigin)((0, config_1.getEnv)() === 'qa' ? environments_1.ENVIRONMENTS.QA : environments_1.ENVIRONMENTS.PROD)}/contacts/${derivedAccountId}/objects/${data.objectTypeId}`,
35
+ }));
42
36
  }
43
37
  catch (e) {
44
- logError(e, { accountId: derivedAccountId });
45
- logger.error(i18n(`${i18nKey}.errors.creationFailed`, {
38
+ (0, index_1.logError)(e, { accountId: derivedAccountId });
39
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.creationFailed`, {
46
40
  definition: path,
47
41
  }));
48
42
  }
49
- };
50
- exports.builder = yargs => {
51
- addTestingOptions(yargs);
43
+ }
44
+ function builder(yargs) {
45
+ (0, commonOpts_1.addConfigOptions)(yargs);
46
+ (0, commonOpts_1.addAccountOptions)(yargs);
47
+ (0, commonOpts_1.addUseEnvironmentOptions)(yargs);
48
+ (0, commonOpts_1.addTestingOptions)(yargs);
52
49
  yargs.option('path', {
53
- describe: i18n(`${i18nKey}.options.definition.describe`),
50
+ describe: (0, lang_1.i18n)(`${i18nKey}.options.definition.describe`),
54
51
  type: 'string',
55
52
  required: true,
56
53
  });
57
- };
54
+ return yargs;
55
+ }
@@ -1 +1,12 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { CommonArgs, ConfigArgs, AccountArgs, EnvironmentArgs } from '../../../types/Yargs';
3
+ export declare const command = "delete [name]";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs;
6
+ type SchemaDeleteArgs = CombinedArgs & {
7
+ name?: string;
8
+ force?: boolean;
9
+ };
10
+ export declare function handler(args: ArgumentsCamelCase<SchemaDeleteArgs>): Promise<void>;
11
+ export declare function builder(yargs: Argv): Argv<SchemaDeleteArgs>;
1
12
  export {};
@@ -1,58 +1,65 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // @ts-nocheck
3
+ exports.describe = exports.command = void 0;
4
+ exports.handler = handler;
5
+ exports.builder = builder;
6
+ const customObjects_1 = require("@hubspot/local-dev-lib/api/customObjects");
4
7
  const exitCodes_1 = require("../../../lib/enums/exitCodes");
5
8
  const promptUtils_1 = require("../../../lib/prompts/promptUtils");
6
- const customObjects_1 = require("@hubspot/local-dev-lib/api/customObjects");
7
- const { logger } = require('@hubspot/local-dev-lib/logger');
8
- const { trackCommandUsage } = require('../../../lib/usageTracking');
9
- const { deleteObjectSchema, } = require('@hubspot/local-dev-lib/api/customObjects');
10
- const { i18n } = require('../../../lib/lang');
11
- const { logError } = require('../../../lib/errorHandlers');
9
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
10
+ const usageTracking_1 = require("../../../lib/usageTracking");
11
+ const lang_1 = require("../../../lib/lang");
12
+ const errorHandlers_1 = require("../../../lib/errorHandlers");
13
+ const commonOpts_1 = require("../../../lib/commonOpts");
12
14
  const i18nKey = 'commands.customObject.subcommands.schema.subcommands.delete';
13
15
  exports.command = 'delete [name]';
14
- exports.describe = i18n(`${i18nKey}.describe`);
15
- exports.handler = async (options) => {
16
- const { name: providedName, force, derivedAccountId } = options;
17
- trackCommandUsage('custom-object-schema-delete', null, derivedAccountId);
16
+ exports.describe = (0, lang_1.i18n)(`${i18nKey}.describe`);
17
+ async function handler(args) {
18
+ const { name: providedName, force, derivedAccountId } = args;
19
+ (0, usageTracking_1.trackCommandUsage)('custom-object-schema-delete', {}, derivedAccountId);
18
20
  let name;
19
21
  try {
20
22
  const { data: { results }, } = await (0, customObjects_1.fetchObjectSchemas)(derivedAccountId);
21
23
  const schemaNames = results?.map(({ name: schemaName }) => schemaName);
22
24
  name =
23
- providedName ||
24
- (await (0, promptUtils_1.listPrompt)(i18n(`${i18nKey}.selectSchema`), {
25
+ providedName && typeof providedName === 'string'
26
+ ? providedName
27
+ : await (0, promptUtils_1.listPrompt)((0, lang_1.i18n)(`${i18nKey}.selectSchema`), {
25
28
  choices: schemaNames,
26
- }));
29
+ });
27
30
  const shouldDelete = force ||
28
- (await (0, promptUtils_1.confirmPrompt)(i18n(`${i18nKey}.confirmDelete`, { name })));
31
+ (await (0, promptUtils_1.confirmPrompt)((0, lang_1.i18n)(`${i18nKey}.confirmDelete`, { name })));
29
32
  if (!shouldDelete) {
30
- logger.info(i18n(`${i18nKey}.deleteCancelled`, { name }));
33
+ logger_1.logger.info((0, lang_1.i18n)(`${i18nKey}.deleteCancelled`, { name }));
31
34
  return process.exit(exitCodes_1.EXIT_CODES.SUCCESS);
32
35
  }
33
- await deleteObjectSchema(derivedAccountId, name);
34
- logger.success(i18n(`${i18nKey}.success.delete`, {
36
+ await (0, customObjects_1.deleteObjectSchema)(derivedAccountId, name);
37
+ logger_1.logger.success((0, lang_1.i18n)(`${i18nKey}.success.delete`, {
35
38
  name,
36
39
  }));
37
40
  }
38
41
  catch (e) {
39
- logError(e);
40
- logger.error(i18n(`${i18nKey}.errors.delete`, {
41
- name,
42
+ (0, errorHandlers_1.logError)(e);
43
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.delete`, {
44
+ name: name || '',
42
45
  }));
43
46
  }
44
- };
45
- exports.builder = yargs => {
47
+ }
48
+ function builder(yargs) {
49
+ (0, commonOpts_1.addConfigOptions)(yargs);
50
+ (0, commonOpts_1.addAccountOptions)(yargs);
51
+ (0, commonOpts_1.addUseEnvironmentOptions)(yargs);
46
52
  yargs
47
53
  .example([
48
- ['$0 schema delete schemaName', i18n(`${i18nKey}.examples.default`)],
54
+ ['$0 schema delete schemaName', (0, lang_1.i18n)(`${i18nKey}.examples.default`)],
49
55
  ])
50
56
  .positional('name', {
51
- describe: i18n(`${i18nKey}.positionals.name.describe`),
57
+ describe: (0, lang_1.i18n)(`${i18nKey}.positionals.name.describe`),
52
58
  type: 'string',
53
59
  })
54
60
  .option('force', {
55
- describe: i18n(`${i18nKey}.options.force.describe`),
61
+ describe: (0, lang_1.i18n)(`${i18nKey}.options.force.describe`),
56
62
  type: 'boolean',
57
63
  });
58
- };
64
+ return yargs;
65
+ }
@@ -1 +1,11 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { AccountArgs, CommonArgs, ConfigArgs, EnvironmentArgs } from '../../../types/Yargs';
3
+ export declare const command = "fetch-all [dest]";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs;
6
+ type SchemaFetchAllArgs = CombinedArgs & {
7
+ dest?: string;
8
+ };
9
+ export declare function handler(args: ArgumentsCamelCase<SchemaFetchAllArgs>): Promise<void>;
10
+ export declare function builder(yargs: Argv): Argv<SchemaFetchAllArgs>;
1
11
  export {};
@@ -1,46 +1,53 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // @ts-nocheck
3
+ exports.describe = exports.command = void 0;
4
+ exports.handler = handler;
5
+ exports.builder = builder;
6
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
7
+ const customObjects_1 = require("@hubspot/local-dev-lib/customObjects");
4
8
  const promptUtils_1 = require("../../../lib/prompts/promptUtils");
5
- const { logger } = require('@hubspot/local-dev-lib/logger');
6
- const { trackCommandUsage } = require('../../../lib/usageTracking');
7
- const { downloadSchemas, getResolvedPath, } = require('@hubspot/local-dev-lib/customObjects');
8
- const { i18n } = require('../../../lib/lang');
9
- const { logSchemas } = require('../../../lib/schema');
10
- const { logError } = require('../../../lib/errorHandlers');
9
+ const usageTracking_1 = require("../../../lib/usageTracking");
10
+ const lang_1 = require("../../../lib/lang");
11
+ const schema_1 = require("../../../lib/schema");
12
+ const errorHandlers_1 = require("../../../lib/errorHandlers");
13
+ const commonOpts_1 = require("../../../lib/commonOpts");
11
14
  const i18nKey = 'commands.customObject.subcommands.schema.subcommands.fetchAll';
12
15
  exports.command = 'fetch-all [dest]';
13
- exports.describe = i18n(`${i18nKey}.describe`);
14
- exports.handler = async (options) => {
15
- const { derivedAccountId, dest: providedDest } = options;
16
- trackCommandUsage('custom-object-schema-fetch-all', null, derivedAccountId);
16
+ exports.describe = (0, lang_1.i18n)(`${i18nKey}.describe`);
17
+ async function handler(args) {
18
+ const { derivedAccountId, dest: providedDest } = args;
19
+ (0, usageTracking_1.trackCommandUsage)('custom-object-schema-fetch-all', {}, derivedAccountId);
17
20
  try {
18
- const dest = providedDest || (await (0, promptUtils_1.inputPrompt)(i18n(`${i18nKey}.inputDest`)));
19
- const schemas = await downloadSchemas(derivedAccountId, dest);
20
- logSchemas(schemas);
21
- logger.success(i18n(`${i18nKey}.success.fetch`, {
22
- path: getResolvedPath(dest),
21
+ const dest = providedDest || (await (0, promptUtils_1.inputPrompt)((0, lang_1.i18n)(`${i18nKey}.inputDest`)));
22
+ const schemas = await (0, customObjects_1.downloadSchemas)(derivedAccountId, dest);
23
+ (0, schema_1.logSchemas)(schemas);
24
+ logger_1.logger.success((0, lang_1.i18n)(`${i18nKey}.success.fetch`, {
25
+ path: (0, customObjects_1.getResolvedPath)(dest),
23
26
  }));
24
27
  }
25
28
  catch (e) {
26
- logError(e);
27
- logger.error(i18n(`${i18nKey}.errors.fetch`));
29
+ (0, errorHandlers_1.logError)(e);
30
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.fetch`));
28
31
  }
29
- };
30
- exports.builder = yargs => {
32
+ }
33
+ function builder(yargs) {
34
+ (0, commonOpts_1.addConfigOptions)(yargs);
35
+ (0, commonOpts_1.addAccountOptions)(yargs);
36
+ (0, commonOpts_1.addUseEnvironmentOptions)(yargs);
31
37
  yargs
32
38
  .example([
33
39
  [
34
40
  '$0 custom-object schema fetch-all',
35
- i18n(`${i18nKey}.examples.default`),
41
+ (0, lang_1.i18n)(`${i18nKey}.examples.default`),
36
42
  ],
37
43
  [
38
44
  '$0 custom-object schema fetch-all my/folder',
39
- i18n(`${i18nKey}.examples.specifyPath`),
45
+ (0, lang_1.i18n)(`${i18nKey}.examples.specifyPath`),
40
46
  ],
41
47
  ])
42
48
  .positional('dest', {
43
- describe: i18n(`${i18nKey}.positionals.dest.describe`),
49
+ describe: (0, lang_1.i18n)(`${i18nKey}.positionals.dest.describe`),
44
50
  type: 'string',
45
51
  });
46
- };
52
+ return yargs;
53
+ }
@@ -1 +1,12 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { CommonArgs, ConfigArgs, AccountArgs, EnvironmentArgs } from '../../../types/Yargs';
3
+ export declare const command = "fetch [name] [dest]";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs;
6
+ type SchemaFetchArgs = CombinedArgs & {
7
+ name?: string;
8
+ dest?: string;
9
+ };
10
+ export declare function handler(args: ArgumentsCamelCase<SchemaFetchArgs>): Promise<void>;
11
+ export declare function builder(yargs: Argv): Argv<SchemaFetchArgs>;
1
12
  export {};
@@ -1,74 +1,66 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // @ts-nocheck
4
- const promptUtils_1 = require("../../../lib/prompts/promptUtils");
3
+ exports.describe = exports.command = void 0;
4
+ exports.handler = handler;
5
+ exports.builder = builder;
5
6
  const customObjects_1 = require("@hubspot/local-dev-lib/api/customObjects");
6
- const path = require('path');
7
- const { isConfigFlagEnabled } = require('@hubspot/local-dev-lib/config');
8
- const { logger } = require('@hubspot/local-dev-lib/logger');
9
- const { CONFIG_FLAGS } = require('../../../lib/constants');
10
- const { downloadSchema, getResolvedPath, } = require('@hubspot/local-dev-lib/customObjects');
11
- const { fetchSchema } = require('@hubspot/local-dev-lib/api/fileTransport');
12
- const { getCwd } = require('@hubspot/local-dev-lib/path');
13
- const { trackCommandUsage } = require('../../../lib/usageTracking');
14
- const { i18n } = require('../../../lib/lang');
15
- const { logError } = require('../../../lib/errorHandlers');
7
+ const logger_1 = require("@hubspot/local-dev-lib/logger");
8
+ const customObjects_2 = require("@hubspot/local-dev-lib/customObjects");
9
+ const promptUtils_1 = require("../../../lib/prompts/promptUtils");
10
+ const usageTracking_1 = require("../../../lib/usageTracking");
11
+ const lang_1 = require("../../../lib/lang");
12
+ const errorHandlers_1 = require("../../../lib/errorHandlers");
13
+ const commonOpts_1 = require("../../../lib/commonOpts");
16
14
  const i18nKey = 'commands.customObject.subcommands.schema.subcommands.fetch';
17
15
  exports.command = 'fetch [name] [dest]';
18
- exports.describe = i18n(`${i18nKey}.describe`);
19
- exports.handler = async (options) => {
20
- const { name: providedName, dest: providedDest, derivedAccountId } = options;
21
- trackCommandUsage('custom-object-schema-fetch', null, derivedAccountId);
16
+ exports.describe = (0, lang_1.i18n)(`${i18nKey}.describe`);
17
+ async function handler(args) {
18
+ const { name: providedName, dest: providedDest, derivedAccountId } = args;
19
+ (0, usageTracking_1.trackCommandUsage)('custom-object-schema-fetch', {}, derivedAccountId);
22
20
  let name;
23
21
  try {
24
22
  const { data: { results }, } = await (0, customObjects_1.fetchObjectSchemas)(derivedAccountId);
25
23
  const schemaNames = results?.map(({ name: schemaName }) => schemaName);
26
24
  name =
27
25
  providedName ||
28
- (await (0, promptUtils_1.listPrompt)(i18n(`${i18nKey}.selectSchema`), {
26
+ (await (0, promptUtils_1.listPrompt)((0, lang_1.i18n)(`${i18nKey}.selectSchema`), {
29
27
  choices: schemaNames,
30
28
  }));
31
- const dest = providedDest || (await (0, promptUtils_1.inputPrompt)(i18n(`${i18nKey}.inputDest`)));
32
- if (isConfigFlagEnabled(CONFIG_FLAGS.USE_CUSTOM_OBJECT_HUBFILE)) {
33
- const fullpath = path.resolve(getCwd(), dest);
34
- await fetchSchema(derivedAccountId, name, fullpath);
35
- logger.success(i18n(`${i18nKey}.success.save`, {
36
- name,
37
- path: fullpath,
38
- }));
39
- }
40
- else {
41
- await downloadSchema(derivedAccountId, name, dest);
42
- logger.success(i18n(`${i18nKey}.success.savedToPath`, {
43
- path: getResolvedPath(dest, name),
44
- }));
45
- }
29
+ const dest = providedDest || (await (0, promptUtils_1.inputPrompt)((0, lang_1.i18n)(`${i18nKey}.inputDest`)));
30
+ await (0, customObjects_2.downloadSchema)(derivedAccountId, name, dest);
31
+ logger_1.logger.success((0, lang_1.i18n)(`${i18nKey}.success.savedToPath`, {
32
+ path: (0, customObjects_2.getResolvedPath)(dest, name),
33
+ }));
46
34
  }
47
35
  catch (e) {
48
- logError(e);
49
- logger.error(i18n(`${i18nKey}.errors.fetch`, {
50
- name,
36
+ (0, errorHandlers_1.logError)(e);
37
+ logger_1.logger.error((0, lang_1.i18n)(`${i18nKey}.errors.fetch`, {
38
+ name: name || '',
51
39
  }));
52
40
  }
53
- };
54
- exports.builder = yargs => {
41
+ }
42
+ function builder(yargs) {
43
+ (0, commonOpts_1.addConfigOptions)(yargs);
44
+ (0, commonOpts_1.addAccountOptions)(yargs);
45
+ (0, commonOpts_1.addUseEnvironmentOptions)(yargs);
55
46
  yargs
56
47
  .example([
57
48
  [
58
49
  '$0 custom-object schema fetch schemaName',
59
- i18n(`${i18nKey}.examples.default`),
50
+ (0, lang_1.i18n)(`${i18nKey}.examples.default`),
60
51
  ],
61
52
  [
62
53
  '$0 custom-object schema fetch schemaName my/folder',
63
- i18n(`${i18nKey}.examples.specifyPath`),
54
+ (0, lang_1.i18n)(`${i18nKey}.examples.specifyPath`),
64
55
  ],
65
56
  ])
66
57
  .positional('name', {
67
- describe: i18n(`${i18nKey}.positionals.name.describe`),
58
+ describe: (0, lang_1.i18n)(`${i18nKey}.positionals.name.describe`),
68
59
  type: 'string',
69
60
  })
70
61
  .positional('dest', {
71
- describe: i18n(`${i18nKey}.positionals.dest.describe`),
62
+ describe: (0, lang_1.i18n)(`${i18nKey}.positionals.dest.describe`),
72
63
  type: 'string',
73
64
  });
74
- };
65
+ return yargs;
66
+ }
@@ -1 +1,8 @@
1
+ import { Argv, ArgumentsCamelCase } from 'yargs';
2
+ import { CommonArgs, ConfigArgs, AccountArgs, EnvironmentArgs } from '../../../types/Yargs';
3
+ export declare const command = "list";
4
+ export declare const describe: string;
5
+ type CombinedArgs = CommonArgs & ConfigArgs & AccountArgs & EnvironmentArgs;
6
+ export declare function handler(args: ArgumentsCamelCase<CombinedArgs>): Promise<void>;
7
+ export declare function builder(yargs: Argv): Argv<CombinedArgs>;
1
8
  export {};