@hubspot/local-dev-lib 0.2.3 → 0.2.4-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.
- package/LICENSE +12 -0
- package/README.md +17 -0
- package/api/appsDev.d.ts +6 -0
- package/api/appsDev.js +29 -0
- package/api/customObjects.d.ts +8 -7
- package/api/customObjects.js +13 -16
- package/api/designManager.d.ts +4 -13
- package/api/designManager.js +6 -9
- package/api/developerTestAccounts.d.ts +7 -0
- package/api/developerTestAccounts.js +48 -0
- package/api/fileManager.d.ts +5 -4
- package/api/fileManager.js +11 -11
- package/api/fileMapper.d.ts +8 -7
- package/api/fileMapper.js +16 -16
- package/api/fileTransport.d.ts +4 -0
- package/api/fileTransport.js +39 -0
- package/api/functions.d.ts +7 -7
- package/api/functions.js +13 -16
- package/api/github.d.ts +7 -9
- package/api/github.js +31 -13
- package/api/hubdb.d.ts +11 -10
- package/api/hubdb.js +28 -22
- package/api/lighthouseScore.d.ts +4 -4
- package/api/lighthouseScore.js +9 -12
- package/api/localDevAuth.d.ts +8 -16
- package/api/localDevAuth.js +34 -13
- package/api/marketplaceValidation.d.ts +4 -4
- package/api/marketplaceValidation.js +8 -11
- package/api/projects.d.ts +31 -24
- package/api/projects.js +163 -43
- package/api/sandboxHubs.d.ts +6 -4
- package/api/sandboxHubs.js +10 -11
- package/api/sandboxSync.d.ts +4 -4
- package/api/sandboxSync.js +4 -13
- package/api/secrets.d.ts +6 -8
- package/api/secrets.js +9 -12
- package/api/validateHubl.d.ts +2 -1
- package/api/validateHubl.js +3 -6
- package/config/CLIConfiguration.d.ts +15 -11
- package/config/CLIConfiguration.js +175 -90
- package/config/configFile.js +13 -21
- package/config/configUtils.d.ts +2 -21
- package/config/configUtils.js +5 -4
- package/config/config_DEPRECATED.d.ts +6 -8
- package/config/config_DEPRECATED.js +79 -25
- package/config/environment.js +5 -4
- package/config/getAccountIdentifier.d.ts +2 -0
- package/config/getAccountIdentifier.js +15 -0
- package/config/index.d.ts +13 -8
- package/config/index.js +97 -57
- package/config/migrate.d.ts +22 -0
- package/config/migrate.js +166 -0
- package/constants/config.d.ts +26 -1
- package/constants/config.js +33 -3
- package/constants/environments.d.ts +1 -0
- package/constants/environments.js +1 -0
- package/constants/extensions.d.ts +2 -0
- package/constants/extensions.js +3 -1
- package/constants/files.d.ts +2 -2
- package/constants/files.js +3 -3
- package/errors/errors_DEPRECATED.d.ts +1 -5
- package/errors/errors_DEPRECATED.js +2 -2
- package/errors/index.d.ts +18 -0
- package/errors/index.js +63 -0
- package/http/addQueryParams.d.ts +2 -0
- package/http/addQueryParams.js +14 -0
- package/http/getAxiosConfig.d.ts +6 -3
- package/http/getAxiosConfig.js +49 -6
- package/http/index.d.ts +11 -12
- package/http/index.js +35 -41
- package/http/unauthed.d.ts +14 -0
- package/http/unauthed.js +38 -0
- package/lang/en.json +384 -386
- package/lib/archive.d.ts +2 -8
- package/lib/archive.js +34 -30
- package/lib/cms/functions.d.ts +7 -12
- package/lib/cms/functions.js +49 -51
- package/lib/cms/handleFieldsJS.js +16 -14
- package/lib/cms/modules.d.ts +4 -15
- package/lib/cms/modules.js +81 -78
- package/lib/cms/processFieldsJs.js +10 -33
- package/lib/cms/templates.d.ts +43 -3
- package/lib/cms/templates.js +53 -11
- package/lib/cms/uploadFolder.d.ts +3 -14
- package/lib/cms/uploadFolder.js +58 -42
- package/lib/cms/validate.js +1 -1
- package/lib/cms/watch.d.ts +2 -18
- package/lib/cms/watch.js +63 -68
- package/lib/customObjects.js +4 -15
- package/lib/fileManager.d.ts +2 -6
- package/lib/fileManager.js +54 -65
- package/lib/fileMapper.d.ts +4 -15
- package/lib/fileMapper.js +67 -88
- package/lib/fs.d.ts +1 -1
- package/lib/fs.js +10 -6
- package/lib/github.d.ts +12 -14
- package/lib/github.js +70 -35
- package/lib/gitignore.d.ts +2 -0
- package/lib/gitignore.js +21 -4
- package/lib/hubdb.d.ts +3 -2
- package/lib/hubdb.js +11 -9
- package/{utils → lib}/notify.js +2 -2
- package/lib/oauth.d.ts +2 -5
- package/lib/oauth.js +14 -25
- package/lib/path.d.ts +3 -0
- package/lib/path.js +46 -1
- package/lib/personalAccessKey.d.ts +8 -11
- package/lib/personalAccessKey.js +75 -38
- package/lib/portManager.d.ts +3 -5
- package/lib/portManager.js +18 -6
- package/lib/trackUsage.js +18 -11
- package/lib/urls.js +5 -1
- package/models/FileSystemError.d.ts +6 -0
- package/models/FileSystemError.js +47 -0
- package/models/HubSpotHttpError.d.ts +24 -0
- package/models/HubSpotHttpError.js +197 -0
- package/models/OAuth2Manager.d.ts +5 -27
- package/models/OAuth2Manager.js +41 -64
- package/package.json +35 -35
- package/types/Accounts.d.ts +103 -3
- package/types/Apps.d.ts +77 -0
- package/types/Archive.d.ts +9 -0
- package/types/Archive.js +2 -0
- package/types/Build.d.ts +4 -2
- package/types/ComponentStructure.d.ts +30 -10
- package/types/Config.d.ts +19 -2
- package/types/Deploy.d.ts +3 -2
- package/types/DesignManager.d.ts +10 -0
- package/types/DesignManager.js +2 -0
- package/types/Error.d.ts +9 -5
- package/types/FieldsJS.d.ts +1 -0
- package/types/FieldsJS.js +2 -0
- package/types/FileManager.d.ts +1 -1
- package/types/Files.d.ts +43 -4
- package/types/Functions.d.ts +52 -0
- package/types/Github.d.ts +13 -0
- package/types/Http.d.ts +12 -12
- package/types/Hubdb.d.ts +9 -0
- package/types/MarketplaceValidation.d.ts +7 -3
- package/types/Migration.d.ts +28 -0
- package/types/Migration.js +10 -0
- package/types/Modules.d.ts +11 -0
- package/types/PortManager.d.ts +7 -0
- package/types/Project.d.ts +30 -0
- package/types/ProjectLog.d.ts +9 -0
- package/types/ProjectLog.js +2 -0
- package/types/Sandbox.d.ts +37 -47
- package/types/Schemas.d.ts +56 -0
- package/types/Secrets.d.ts +3 -0
- package/types/Secrets.js +2 -0
- package/types/developerTestAccounts.d.ts +13 -0
- package/types/developerTestAccounts.js +2 -0
- package/utils/PortManagerServer.d.ts +6 -7
- package/utils/PortManagerServer.js +22 -16
- package/utils/{getAccountIdentifier.d.ts → accounts.d.ts} +0 -6
- package/utils/{getAccountIdentifier.js → accounts.js} +1 -13
- package/utils/cms/fieldsJS.d.ts +1 -2
- package/utils/cms/modules.js +2 -2
- package/utils/detectPort.js +3 -3
- package/utils/git.d.ts +1 -7
- package/utils/git.js +2 -18
- package/errors/apiErrors.d.ts +0 -16
- package/errors/apiErrors.js +0 -176
- package/errors/fileSystemErrors.d.ts +0 -6
- package/errors/fileSystemErrors.js +0 -35
- package/errors/standardErrors.d.ts +0 -21
- package/errors/standardErrors.js +0 -52
- package/lang/lang/en.json +0 -401
- package/lib/logging/git.d.ts +0 -2
- package/lib/logging/git.js +0 -54
- package/lib/logging/logs.d.ts +0 -22
- package/lib/logging/logs.js +0 -86
- package/lib/logging/table.d.ts +0 -3
- package/lib/logging/table.js +0 -47
- package/lib/sandboxes.d.ts +0 -14
- package/lib/sandboxes.js +0 -71
- package/models/HubSpotAuthError.d.ts +0 -12
- package/models/HubSpotAuthError.js +0 -20
- package/types/LogCallbacks.d.ts +0 -7
- package/utils/logger.d.ts +0 -5
- package/utils/logger.js +0 -23
- package/utils/objectUtils.d.ts +0 -8
- package/utils/objectUtils.js +0 -33
- /package/{utils → lib}/escapeRegExp.d.ts +0 -0
- /package/{utils → lib}/escapeRegExp.js +0 -0
- /package/lib/{logging/logger.d.ts → logger.d.ts} +0 -0
- /package/lib/{logging/logger.js → logger.js} +0 -0
- /package/{utils → lib}/notify.d.ts +0 -0
- /package/types/{LogCallbacks.js → Apps.js} +0 -0
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.isConfigFlagEnabled = exports.loadConfigFromEnvironment = exports.deleteConfigFile = exports.deleteEmptyConfigFile = exports.createEmptyConfigFile = exports.deleteAccount = exports.renameAccount = exports.updateAllowUsageTracking = exports.updateHttpTimeout = exports.
|
|
6
|
+
exports.isConfigFlagEnabled = exports.loadConfigFromEnvironment = exports.deleteConfigFile = exports.deleteEmptyConfigFile = exports.createEmptyConfigFile = exports.deleteAccount = exports.renameAccount = exports.updateAllowUsageTracking = exports.updateHttpTimeout = exports.updateDefaultCmsPublishMode = exports.updateDefaultAccount = exports.updateAccountConfig = exports.removeSandboxAccountFromConfig = exports.getAccountId = exports.getAccountConfig = exports.getAccountType = exports.getEnv = exports.findConfig = exports.getAndLoadConfigIfNeeded = exports.isTrackingAllowed = exports.loadConfig = exports.writeConfig = exports.getOrderedConfig = exports.getOrderedAccount = exports.accountNameExistsInConfig = exports.validateConfig = exports.getConfigPath = exports.setConfigPath = exports.getConfigAccountId = exports.getConfigDefaultAccount = exports.getConfigAccounts = exports.setConfig = exports.getConfig = void 0;
|
|
7
7
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
8
8
|
const js_yaml_1 = __importDefault(require("js-yaml"));
|
|
9
9
|
const findup_sync_1 = __importDefault(require("findup-sync"));
|
|
@@ -13,10 +13,10 @@ const environments_1 = require("../constants/environments");
|
|
|
13
13
|
const auth_1 = require("../constants/auth");
|
|
14
14
|
const files_1 = require("../constants/files");
|
|
15
15
|
const environment_1 = require("../lib/environment");
|
|
16
|
-
const logger_1 = require("../lib/
|
|
16
|
+
const logger_1 = require("../lib/logger");
|
|
17
17
|
const git_1 = require("../utils/git");
|
|
18
18
|
const errors_DEPRECATED_1 = require("../errors/errors_DEPRECATED");
|
|
19
|
-
const
|
|
19
|
+
const ALL_CMS_PUBLISH_MODES = Object.values(files_1.CMS_PUBLISH_MODE);
|
|
20
20
|
let _config;
|
|
21
21
|
let _configPath;
|
|
22
22
|
let environmentVariableConfigLoaded = false;
|
|
@@ -78,6 +78,10 @@ function validateConfig() {
|
|
|
78
78
|
logger_1.logger.error('config.portals[] is not defined');
|
|
79
79
|
return false;
|
|
80
80
|
}
|
|
81
|
+
if (accounts.length === 0) {
|
|
82
|
+
logger_1.logger.error('There are no accounts defined in the configuration file');
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
81
85
|
const accountIdsHash = {};
|
|
82
86
|
const accountNamesHash = {};
|
|
83
87
|
return accounts.every(cfg => {
|
|
@@ -105,6 +109,14 @@ function validateConfig() {
|
|
|
105
109
|
}
|
|
106
110
|
accountNamesHash[cfg.name] = cfg;
|
|
107
111
|
}
|
|
112
|
+
if (!cfg.accountType) {
|
|
113
|
+
updateAccountConfig({
|
|
114
|
+
...cfg,
|
|
115
|
+
portalId: accountId,
|
|
116
|
+
accountType: getAccountType(undefined, cfg.sandboxAccountType),
|
|
117
|
+
});
|
|
118
|
+
writeConfig();
|
|
119
|
+
}
|
|
108
120
|
accountIdsHash[accountId] = cfg;
|
|
109
121
|
return true;
|
|
110
122
|
});
|
|
@@ -131,10 +143,10 @@ function getOrderedAccount(unorderedAccount) {
|
|
|
131
143
|
}
|
|
132
144
|
exports.getOrderedAccount = getOrderedAccount;
|
|
133
145
|
function getOrderedConfig(unorderedConfig) {
|
|
134
|
-
const { defaultPortal,
|
|
146
|
+
const { defaultPortal, defaultCmsPublishMode, httpTimeout, allowUsageTracking, portals, ...rest } = unorderedConfig;
|
|
135
147
|
return {
|
|
136
148
|
...(defaultPortal && { defaultPortal }),
|
|
137
|
-
|
|
149
|
+
defaultCmsPublishMode,
|
|
138
150
|
httpTimeout,
|
|
139
151
|
allowUsageTracking,
|
|
140
152
|
...rest,
|
|
@@ -167,7 +179,7 @@ function writeConfig(options = {}) {
|
|
|
167
179
|
catch (err) {
|
|
168
180
|
(0, errors_DEPRECATED_1.logFileSystemErrorInstance)(err, {
|
|
169
181
|
filepath: configPath || '',
|
|
170
|
-
|
|
182
|
+
operation: 'write',
|
|
171
183
|
});
|
|
172
184
|
}
|
|
173
185
|
}
|
|
@@ -185,7 +197,10 @@ function readConfigFile() {
|
|
|
185
197
|
catch (err) {
|
|
186
198
|
error = err;
|
|
187
199
|
logger_1.logger.error('Config file could not be read "%s"', _configPath);
|
|
188
|
-
(0, errors_DEPRECATED_1.logFileSystemErrorInstance)(error, {
|
|
200
|
+
(0, errors_DEPRECATED_1.logFileSystemErrorInstance)(error, {
|
|
201
|
+
filepath: _configPath,
|
|
202
|
+
operation: 'read',
|
|
203
|
+
});
|
|
189
204
|
}
|
|
190
205
|
return { source: source && source.toString(), error };
|
|
191
206
|
}
|
|
@@ -223,7 +238,7 @@ function loadConfigFromFile(path, options = {}) {
|
|
|
223
238
|
const { parsed, error: parseError } = parseConfig(source);
|
|
224
239
|
if (parseError)
|
|
225
240
|
return;
|
|
226
|
-
setConfig(parsed);
|
|
241
|
+
setConfig(handleLegacyCmsPublishMode(parsed));
|
|
227
242
|
if (!(0, exports.getConfig)()) {
|
|
228
243
|
logger_1.logger.debug('The config file was empty config');
|
|
229
244
|
logger_1.logger.debug('Initializing an empty config');
|
|
@@ -287,6 +302,22 @@ function getEnv(nameOrId) {
|
|
|
287
302
|
return env;
|
|
288
303
|
}
|
|
289
304
|
exports.getEnv = getEnv;
|
|
305
|
+
// Deprecating sandboxAccountType in favor of accountType
|
|
306
|
+
function getAccountType(accountType, sandboxAccountType) {
|
|
307
|
+
if (accountType) {
|
|
308
|
+
return accountType;
|
|
309
|
+
}
|
|
310
|
+
if (typeof sandboxAccountType === 'string') {
|
|
311
|
+
if (sandboxAccountType.toUpperCase() === 'DEVELOPER') {
|
|
312
|
+
return config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX;
|
|
313
|
+
}
|
|
314
|
+
if (sandboxAccountType.toUpperCase() === 'STANDARD') {
|
|
315
|
+
return config_1.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
return config_1.HUBSPOT_ACCOUNT_TYPES.STANDARD;
|
|
319
|
+
}
|
|
320
|
+
exports.getAccountType = getAccountType;
|
|
290
321
|
function getAccountConfig(accountId) {
|
|
291
322
|
return getConfigAccounts(getAndLoadConfigIfNeeded())?.find(account => account.portalId === accountId);
|
|
292
323
|
}
|
|
@@ -343,7 +374,10 @@ function removeSandboxAccountFromConfig(nameOrId) {
|
|
|
343
374
|
throw new Error(`Unable to find account for ${nameOrId}.`);
|
|
344
375
|
}
|
|
345
376
|
const accountConfig = getAccountConfig(accountId);
|
|
346
|
-
|
|
377
|
+
const accountType = getAccountType(accountConfig?.accountType, accountConfig?.sandboxAccountType);
|
|
378
|
+
const isSandboxAccount = accountType === config_1.HUBSPOT_ACCOUNT_TYPES.DEVELOPMENT_SANDBOX ||
|
|
379
|
+
accountType === config_1.HUBSPOT_ACCOUNT_TYPES.STANDARD_SANDBOX;
|
|
380
|
+
if (!isSandboxAccount)
|
|
347
381
|
return promptDefaultAccount;
|
|
348
382
|
if (config.defaultPortal === accountConfig?.name) {
|
|
349
383
|
promptDefaultAccount = true;
|
|
@@ -362,13 +396,13 @@ exports.removeSandboxAccountFromConfig = removeSandboxAccountFromConfig;
|
|
|
362
396
|
* @throws {Error}
|
|
363
397
|
*/
|
|
364
398
|
function updateAccountConfig(configOptions) {
|
|
365
|
-
const {
|
|
399
|
+
const { accountType, apiKey, authType, clientId, clientSecret, defaultCmsPublishMode, environment, name, parentAccountId, personalAccessKey, portalId, sandboxAccountType, scopes, tokenInfo, } = configOptions;
|
|
366
400
|
if (!portalId) {
|
|
367
401
|
throw new Error('A portalId is required to update the config');
|
|
368
402
|
}
|
|
369
403
|
const config = getAndLoadConfigIfNeeded();
|
|
370
404
|
const accountConfig = getAccountConfig(portalId);
|
|
371
|
-
let auth =
|
|
405
|
+
let auth = accountConfig && accountConfig.auth;
|
|
372
406
|
if (clientId || clientSecret || scopes || tokenInfo) {
|
|
373
407
|
auth = {
|
|
374
408
|
...(accountConfig ? accountConfig.auth : {}),
|
|
@@ -381,7 +415,7 @@ function updateAccountConfig(configOptions) {
|
|
|
381
415
|
const env = (0, environment_1.getValidEnv)(environment ||
|
|
382
416
|
(configOptions && configOptions.env) ||
|
|
383
417
|
(accountConfig && accountConfig.env));
|
|
384
|
-
const
|
|
418
|
+
const cmsPublishMode = defaultCmsPublishMode?.toLowerCase();
|
|
385
419
|
const nextAccountConfig = {
|
|
386
420
|
...accountConfig,
|
|
387
421
|
name: name || (accountConfig && accountConfig.name),
|
|
@@ -389,8 +423,11 @@ function updateAccountConfig(configOptions) {
|
|
|
389
423
|
...(portalId && { portalId }),
|
|
390
424
|
authType,
|
|
391
425
|
auth,
|
|
426
|
+
accountType: getAccountType(accountType, sandboxAccountType),
|
|
392
427
|
apiKey,
|
|
393
|
-
|
|
428
|
+
defaultCmsPublishMode: cmsPublishMode && Object.hasOwn(files_1.CMS_PUBLISH_MODE, cmsPublishMode)
|
|
429
|
+
? cmsPublishMode
|
|
430
|
+
: undefined,
|
|
394
431
|
personalAccessKey,
|
|
395
432
|
sandboxAccountType,
|
|
396
433
|
parentAccountId,
|
|
@@ -430,16 +467,17 @@ exports.updateDefaultAccount = updateDefaultAccount;
|
|
|
430
467
|
/**
|
|
431
468
|
* @throws {Error}
|
|
432
469
|
*/
|
|
433
|
-
function
|
|
434
|
-
if (!
|
|
435
|
-
|
|
470
|
+
function updateDefaultCmsPublishMode(defaultCmsPublishMode) {
|
|
471
|
+
if (!defaultCmsPublishMode ||
|
|
472
|
+
!ALL_CMS_PUBLISH_MODES.find(m => m === defaultCmsPublishMode)) {
|
|
473
|
+
throw new Error(`The mode ${defaultCmsPublishMode} is invalid. Valid values are ${commaSeparatedValues(ALL_CMS_PUBLISH_MODES)}.`);
|
|
436
474
|
}
|
|
437
475
|
const config = getAndLoadConfigIfNeeded();
|
|
438
|
-
config.
|
|
476
|
+
config.defaultCmsPublishMode = defaultCmsPublishMode;
|
|
439
477
|
setDefaultConfigPathIfUnset();
|
|
440
478
|
writeConfig();
|
|
441
479
|
}
|
|
442
|
-
exports.
|
|
480
|
+
exports.updateDefaultCmsPublishMode = updateDefaultCmsPublishMode;
|
|
443
481
|
/**
|
|
444
482
|
* @throws {Error}
|
|
445
483
|
*/
|
|
@@ -550,12 +588,16 @@ function getConfigVariablesFromEnv() {
|
|
|
550
588
|
clientId: env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_CLIENT_ID],
|
|
551
589
|
clientSecret: env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_CLIENT_SECRET],
|
|
552
590
|
personalAccessKey: env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_PERSONAL_ACCESS_KEY],
|
|
553
|
-
portalId: parseInt(env[environments_1.ENVIRONMENT_VARIABLES.
|
|
591
|
+
portalId: parseInt(env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_ACCOUNT_ID] || '', 10) ||
|
|
592
|
+
parseInt(env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_PORTAL_ID] || '', 10),
|
|
554
593
|
refreshToken: env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_REFRESH_TOKEN],
|
|
594
|
+
httpTimeout: env[environments_1.ENVIRONMENT_VARIABLES.HTTP_TIMEOUT]
|
|
595
|
+
? parseInt(env[environments_1.ENVIRONMENT_VARIABLES.HTTP_TIMEOUT])
|
|
596
|
+
: undefined,
|
|
555
597
|
env: (0, environment_1.getValidEnv)(env[environments_1.ENVIRONMENT_VARIABLES.HUBSPOT_ENVIRONMENT]),
|
|
556
598
|
};
|
|
557
599
|
}
|
|
558
|
-
function generatePersonalAccessKeyConfig(portalId, personalAccessKey, env) {
|
|
600
|
+
function generatePersonalAccessKeyConfig(portalId, personalAccessKey, env, httpTimeout) {
|
|
559
601
|
return {
|
|
560
602
|
portals: [
|
|
561
603
|
{
|
|
@@ -565,9 +607,10 @@ function generatePersonalAccessKeyConfig(portalId, personalAccessKey, env) {
|
|
|
565
607
|
env,
|
|
566
608
|
},
|
|
567
609
|
],
|
|
610
|
+
httpTimeout,
|
|
568
611
|
};
|
|
569
612
|
}
|
|
570
|
-
function generateOauthConfig(portalId, clientId, clientSecret, refreshToken, scopes, env) {
|
|
613
|
+
function generateOauthConfig(portalId, clientId, clientSecret, refreshToken, scopes, env, httpTimeout) {
|
|
571
614
|
return {
|
|
572
615
|
portals: [
|
|
573
616
|
{
|
|
@@ -584,6 +627,7 @@ function generateOauthConfig(portalId, clientId, clientSecret, refreshToken, sco
|
|
|
584
627
|
env,
|
|
585
628
|
},
|
|
586
629
|
],
|
|
630
|
+
httpTimeout,
|
|
587
631
|
};
|
|
588
632
|
}
|
|
589
633
|
function generateApiKeyConfig(portalId, apiKey, env) {
|
|
@@ -599,17 +643,20 @@ function generateApiKeyConfig(portalId, apiKey, env) {
|
|
|
599
643
|
};
|
|
600
644
|
}
|
|
601
645
|
function loadConfigFromEnvironment({ useEnv = false, } = {}) {
|
|
602
|
-
const { apiKey, clientId, clientSecret, personalAccessKey, portalId, refreshToken, env, } = getConfigVariablesFromEnv();
|
|
646
|
+
const { apiKey, clientId, clientSecret, personalAccessKey, portalId, refreshToken, env, httpTimeout, } = getConfigVariablesFromEnv();
|
|
603
647
|
const unableToLoadEnvConfigError = 'Unable to load config from environment variables.';
|
|
604
648
|
if (!portalId) {
|
|
605
649
|
useEnv && logger_1.logger.error(unableToLoadEnvConfigError);
|
|
606
650
|
return;
|
|
607
651
|
}
|
|
652
|
+
if (httpTimeout && httpTimeout < config_1.MIN_HTTP_TIMEOUT) {
|
|
653
|
+
throw new Error(`The HTTP timeout value ${httpTimeout} is invalid. The value must be a number greater than ${config_1.MIN_HTTP_TIMEOUT}.`);
|
|
654
|
+
}
|
|
608
655
|
if (personalAccessKey) {
|
|
609
|
-
return generatePersonalAccessKeyConfig(portalId, personalAccessKey, env);
|
|
656
|
+
return generatePersonalAccessKeyConfig(portalId, personalAccessKey, env, httpTimeout);
|
|
610
657
|
}
|
|
611
658
|
else if (clientId && clientSecret && refreshToken) {
|
|
612
|
-
return generateOauthConfig(portalId, clientId, clientSecret, refreshToken, auth_1.OAUTH_SCOPES.map(scope => scope.value), env);
|
|
659
|
+
return generateOauthConfig(portalId, clientId, clientSecret, refreshToken, auth_1.OAUTH_SCOPES.map(scope => scope.value), env, httpTimeout);
|
|
613
660
|
}
|
|
614
661
|
else if (apiKey) {
|
|
615
662
|
return generateApiKeyConfig(portalId, apiKey, env);
|
|
@@ -627,7 +674,7 @@ function loadEnvironmentVariableConfig(options) {
|
|
|
627
674
|
}
|
|
628
675
|
const { portalId } = getConfigVariablesFromEnv();
|
|
629
676
|
logger_1.logger.debug(`Loaded config from environment variables for account ${portalId}`);
|
|
630
|
-
return setConfig(envConfig);
|
|
677
|
+
return setConfig(handleLegacyCmsPublishMode(envConfig));
|
|
631
678
|
}
|
|
632
679
|
function isConfigFlagEnabled(flag) {
|
|
633
680
|
if (!configFileExists() || configFileIsBlank()) {
|
|
@@ -637,3 +684,10 @@ function isConfigFlagEnabled(flag) {
|
|
|
637
684
|
return Boolean(config[flag] || false);
|
|
638
685
|
}
|
|
639
686
|
exports.isConfigFlagEnabled = isConfigFlagEnabled;
|
|
687
|
+
function handleLegacyCmsPublishMode(config) {
|
|
688
|
+
if (config?.defaultMode) {
|
|
689
|
+
config.defaultCmsPublishMode = config.defaultMode;
|
|
690
|
+
delete config.defaultMode;
|
|
691
|
+
}
|
|
692
|
+
return config;
|
|
693
|
+
}
|
package/config/environment.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadConfigFromEnvironment = void 0;
|
|
4
|
-
const logger_1 = require("../
|
|
4
|
+
const logger_1 = require("../lib/logger");
|
|
5
5
|
const environments_1 = require("../constants/environments");
|
|
6
6
|
const auth_1 = require("../constants/auth");
|
|
7
7
|
const configUtils_1 = require("./configUtils");
|
|
8
8
|
const environment_1 = require("../lib/environment");
|
|
9
|
+
const lang_1 = require("../utils/lang");
|
|
9
10
|
const i18nKey = 'config.environment';
|
|
10
11
|
function getConfigVariablesFromEnv() {
|
|
11
12
|
const env = process.env;
|
|
@@ -22,11 +23,11 @@ function getConfigVariablesFromEnv() {
|
|
|
22
23
|
function loadConfigFromEnvironment() {
|
|
23
24
|
const { apiKey, clientId, clientSecret, personalAccessKey, accountId, refreshToken, env, } = getConfigVariablesFromEnv();
|
|
24
25
|
if (!accountId) {
|
|
25
|
-
(0,
|
|
26
|
+
logger_1.logger.debug((0, lang_1.i18n)(`${i18nKey}.loadConfig.missingAccountId`));
|
|
26
27
|
return null;
|
|
27
28
|
}
|
|
28
29
|
if (!env) {
|
|
29
|
-
(0,
|
|
30
|
+
logger_1.logger.debug((0, lang_1.i18n)(`${i18nKey}.loadConfig.missingEnv`));
|
|
30
31
|
return null;
|
|
31
32
|
}
|
|
32
33
|
if (personalAccessKey) {
|
|
@@ -53,7 +54,7 @@ function loadConfigFromEnvironment() {
|
|
|
53
54
|
env,
|
|
54
55
|
});
|
|
55
56
|
}
|
|
56
|
-
(0,
|
|
57
|
+
logger_1.logger.debug((0, lang_1.i18n)(`${i18nKey}.loadConfig.unknownAuthType`));
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
59
60
|
exports.loadConfigFromEnvironment = loadConfigFromEnvironment;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getAccountIdentifier = void 0;
|
|
4
|
+
function getAccountIdentifier(account) {
|
|
5
|
+
if (!account) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
else if (Object.hasOwn(account, 'portalId')) {
|
|
9
|
+
return account.portalId;
|
|
10
|
+
}
|
|
11
|
+
else if (Object.hasOwn(account, 'accountId')) {
|
|
12
|
+
return account.accountId;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.getAccountIdentifier = getAccountIdentifier;
|
package/config/index.d.ts
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import * as config_DEPRECATED from './config_DEPRECATED';
|
|
2
|
-
import { CLIConfig } from '../types/Config';
|
|
2
|
+
import { CLIConfig_NEW, CLIConfig } from '../types/Config';
|
|
3
3
|
import { CLIOptions, WriteConfigOptions } from '../types/CLIOptions';
|
|
4
|
-
import { CLIAccount, FlatAccountFields } from '../types/Accounts';
|
|
4
|
+
import { AccountType, CLIAccount, CLIAccount_NEW, CLIAccount_DEPRECATED, FlatAccountFields } from '../types/Accounts';
|
|
5
|
+
import { CmsPublishMode } from '../types/Files';
|
|
5
6
|
export declare function loadConfig(path: string, options?: CLIOptions): CLIConfig | null;
|
|
6
7
|
export declare function getAndLoadConfigIfNeeded(options?: CLIOptions): Partial<CLIConfig> | null;
|
|
7
8
|
export declare function validateConfig(): boolean;
|
|
8
9
|
export declare function loadConfigFromEnvironment(): boolean;
|
|
9
10
|
export declare function createEmptyConfigFile(options?: {
|
|
10
11
|
path?: string;
|
|
11
|
-
},
|
|
12
|
+
}, useHiddenConfig?: boolean): void;
|
|
12
13
|
export declare function deleteEmptyConfigFile(): void;
|
|
13
14
|
export declare function getConfig(): CLIConfig | null;
|
|
14
15
|
export declare function writeConfig(options?: WriteConfigOptions): void;
|
|
15
|
-
export declare function getConfigPath(path?: string): string | null;
|
|
16
|
+
export declare function getConfigPath(path?: string, useHiddenConfig?: boolean): string | null;
|
|
17
|
+
export declare function configFileExists(useHiddenConfig?: boolean): boolean;
|
|
16
18
|
export declare function getAccountConfig(accountId?: number): CLIAccount | null;
|
|
17
19
|
export declare function accountNameExistsInConfig(name: string): boolean;
|
|
18
20
|
export declare function updateAccountConfig(configOptions: Partial<FlatAccountFields>): FlatAccountFields | null;
|
|
@@ -20,19 +22,22 @@ export declare function updateDefaultAccount(nameOrId: string | number): void;
|
|
|
20
22
|
export declare function renameAccount(currentName: string, newName: string): Promise<void>;
|
|
21
23
|
export declare function getAccountId(nameOrId?: string | number): number | null;
|
|
22
24
|
export declare function removeSandboxAccountFromConfig(nameOrId: string | number): boolean;
|
|
23
|
-
export declare function deleteAccount(accountName: string): Promise<void>;
|
|
25
|
+
export declare function deleteAccount(accountName: string): Promise<void | boolean>;
|
|
24
26
|
export declare function updateHttpTimeout(timeout: string): void;
|
|
25
27
|
export declare function updateAllowUsageTracking(isEnabled: boolean): void;
|
|
26
28
|
export declare function deleteConfigFile(): void;
|
|
27
29
|
export declare function isConfigFlagEnabled(flag: keyof CLIConfig): boolean;
|
|
28
30
|
export declare function isTrackingAllowed(): boolean;
|
|
29
31
|
export declare function getEnv(nameOrId?: string | number): import("../types/Config").Environment;
|
|
30
|
-
export declare
|
|
31
|
-
export declare
|
|
32
|
+
export declare function getAccountType(accountType?: AccountType, sandboxAccountType?: string | null): AccountType;
|
|
33
|
+
export declare function getConfigDefaultAccount(): string | number | null | undefined;
|
|
34
|
+
export declare function getConfigAccounts(): Array<CLIAccount_NEW> | Array<CLIAccount_DEPRECATED> | null | undefined;
|
|
35
|
+
export declare function updateDefaultCmsPublishMode(cmsPublishMode: CmsPublishMode): void | CLIConfig_NEW | null;
|
|
36
|
+
export declare function getCWDAccountOverride(): string | number | null | undefined;
|
|
37
|
+
export declare function getDefaultAccountOverrideFilePath(): string | null | undefined;
|
|
32
38
|
export declare const getConfigAccountId: typeof config_DEPRECATED.getConfigAccountId;
|
|
33
39
|
export declare const getOrderedAccount: typeof config_DEPRECATED.getOrderedAccount;
|
|
34
40
|
export declare const getOrderedConfig: typeof config_DEPRECATED.getOrderedConfig;
|
|
35
41
|
export declare const setConfig: typeof config_DEPRECATED.setConfig;
|
|
36
42
|
export declare const setConfigPath: typeof config_DEPRECATED.setConfigPath;
|
|
37
43
|
export declare const findConfig: typeof config_DEPRECATED.findConfig;
|
|
38
|
-
export declare const updateDefaultMode: typeof config_DEPRECATED.updateDefaultMode;
|