auth0-deploy-cli 7.7.1 → 7.10.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/CHANGELOG.md +40 -1
- package/README.md +2 -2
- package/lib/args.d.ts +29 -0
- package/lib/commands/export.d.ts +2 -0
- package/lib/commands/import.d.ts +2 -0
- package/lib/commands/index.d.ts +9 -0
- package/lib/configFactory.d.ts +7 -0
- package/lib/context/defaults.d.ts +1 -0
- package/lib/context/directory/handlers/actions.d.ts +6 -0
- package/lib/context/directory/handlers/attackProtection.d.ts +10 -0
- package/lib/context/directory/handlers/branding.d.ts +6 -0
- package/lib/context/directory/handlers/branding.js +55 -21
- package/lib/context/directory/handlers/clientGrants.d.ts +6 -0
- package/lib/context/directory/handlers/clients.d.ts +6 -0
- package/lib/context/directory/handlers/connections.d.ts +6 -0
- package/lib/context/directory/handlers/databases.d.ts +6 -0
- package/lib/context/directory/handlers/emailProvider.d.ts +6 -0
- package/lib/context/directory/handlers/emailTemplates.d.ts +6 -0
- package/lib/context/directory/handlers/guardianFactorProviders.d.ts +6 -0
- package/lib/context/directory/handlers/guardianFactorTemplates.d.ts +6 -0
- package/lib/context/directory/handlers/guardianFactors.d.ts +6 -0
- package/lib/context/directory/handlers/guardianPhoneFactorMessageTypes.d.ts +6 -0
- package/lib/context/directory/handlers/guardianPhoneFactorSelectedProvider.d.ts +6 -0
- package/lib/context/directory/handlers/guardianPolicies.d.ts +6 -0
- package/lib/context/directory/handlers/hooks.d.ts +6 -0
- package/lib/context/directory/handlers/index.d.ts +12 -0
- package/lib/context/directory/handlers/index.js +2 -0
- package/lib/context/directory/handlers/logStreams.d.ts +7 -0
- package/lib/context/directory/handlers/logStreams.js +49 -0
- package/lib/context/directory/handlers/migrations.d.ts +6 -0
- package/lib/context/directory/handlers/organizations.d.ts +6 -0
- package/lib/context/directory/handlers/pages.d.ts +6 -0
- package/lib/context/directory/handlers/resourceServers.d.ts +6 -0
- package/lib/context/directory/handlers/roles.d.ts +6 -0
- package/lib/context/directory/handlers/rules.d.ts +6 -0
- package/lib/context/directory/handlers/rulesConfigs.d.ts +6 -0
- package/lib/context/directory/handlers/tenant.d.ts +10 -0
- package/lib/context/directory/handlers/triggers.d.ts +6 -0
- package/lib/context/directory/index.d.ts +17 -0
- package/lib/context/index.d.ts +4 -0
- package/lib/context/yaml/handlers/actions.d.ts +6 -0
- package/lib/context/yaml/handlers/attackProtection.d.ts +6 -0
- package/lib/context/yaml/handlers/branding.d.ts +13 -0
- package/lib/context/yaml/handlers/branding.js +23 -6
- package/lib/context/yaml/handlers/clientGrants.d.ts +6 -0
- package/lib/context/yaml/handlers/clients.d.ts +6 -0
- package/lib/context/yaml/handlers/connections.d.ts +6 -0
- package/lib/context/yaml/handlers/databases.d.ts +6 -0
- package/lib/context/yaml/handlers/emailProvider.d.ts +6 -0
- package/lib/context/yaml/handlers/emailTemplates.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianFactorProviders.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianFactorTemplates.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianFactors.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianPhoneFactorMessageTypes.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianPhoneFactorSelectedProvider.d.ts +6 -0
- package/lib/context/yaml/handlers/guardianPolicies.d.ts +6 -0
- package/lib/context/yaml/handlers/hooks.d.ts +6 -0
- package/lib/context/yaml/handlers/index.d.ts +12 -0
- package/lib/context/yaml/handlers/index.js +2 -0
- package/lib/context/yaml/handlers/logStreams.d.ts +7 -0
- package/lib/context/yaml/handlers/logStreams.js +23 -0
- package/lib/context/yaml/handlers/migrations.d.ts +6 -0
- package/lib/context/yaml/handlers/organizations.d.ts +6 -0
- package/lib/context/yaml/handlers/pages.d.ts +6 -0
- package/lib/context/yaml/handlers/resourceServers.d.ts +6 -0
- package/lib/context/yaml/handlers/roles.d.ts +6 -0
- package/lib/context/yaml/handlers/rules.d.ts +6 -0
- package/lib/context/yaml/handlers/rulesConfigs.d.ts +6 -0
- package/lib/context/yaml/handlers/tenant.d.ts +6 -0
- package/lib/context/yaml/handlers/triggers.d.ts +6 -0
- package/lib/context/yaml/index.d.ts +13 -0
- package/lib/index.d.ts +89 -0
- package/lib/index.js +5 -2
- package/lib/logger.d.ts +2 -0
- package/lib/logger.js +7 -17
- package/lib/readonly.d.ts +2 -0
- package/lib/sessionDurationsToMinutes.d.ts +7 -0
- package/lib/tools/auth0/client.d.ts +2 -0
- package/lib/tools/auth0/handlers/actions.d.ts +95 -0
- package/lib/tools/auth0/handlers/actions.js +1 -1
- package/lib/tools/auth0/handlers/attackProtection.d.ts +28 -0
- package/lib/tools/auth0/handlers/branding.d.ts +27 -0
- package/lib/tools/auth0/handlers/clientGrants.d.ts +32 -0
- package/lib/tools/auth0/handlers/clients.d.ts +23 -0
- package/lib/tools/auth0/handlers/connections.d.ts +54 -0
- package/lib/tools/auth0/handlers/databases.d.ts +36 -0
- package/lib/tools/auth0/handlers/default.d.ts +54 -0
- package/lib/tools/auth0/handlers/default.js +23 -8
- package/lib/tools/auth0/handlers/emailProvider.d.ts +11 -0
- package/lib/tools/auth0/handlers/emailTemplates.d.ts +26 -0
- package/lib/tools/auth0/handlers/guardianFactorProviders.d.ts +25 -0
- package/lib/tools/auth0/handlers/guardianFactorTemplates.d.ts +21 -0
- package/lib/tools/auth0/handlers/guardianFactors.d.ts +21 -0
- package/lib/tools/auth0/handlers/guardianPhoneFactorMessageTypes.d.ts +21 -0
- package/lib/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.d.ts +18 -0
- package/lib/tools/auth0/handlers/guardianPolicies.d.ts +23 -0
- package/lib/tools/auth0/handlers/hooks.d.ts +58 -0
- package/lib/tools/auth0/handlers/index.d.ts +134 -0
- package/lib/tools/auth0/handlers/index.js +2 -0
- package/lib/tools/auth0/handlers/logStreams.d.ts +40 -0
- package/lib/tools/auth0/handlers/logStreams.js +77 -0
- package/lib/tools/auth0/handlers/migrations.d.ts +15 -0
- package/lib/tools/auth0/handlers/migrations.js +1 -1
- package/lib/tools/auth0/handlers/organizations.d.ts +51 -0
- package/lib/tools/auth0/handlers/organizations.js +2 -2
- package/lib/tools/auth0/handlers/pages.d.ts +42 -0
- package/lib/tools/auth0/handlers/prompts.d.ts +11 -0
- package/lib/tools/auth0/handlers/resourceServers.d.ts +51 -0
- package/lib/tools/auth0/handlers/resourceServers.js +1 -1
- package/lib/tools/auth0/handlers/roles.d.ts +48 -0
- package/lib/tools/auth0/handlers/roles.js +2 -2
- package/lib/tools/auth0/handlers/rules.d.ts +55 -0
- package/lib/tools/auth0/handlers/rules.js +2 -2
- package/lib/tools/auth0/handlers/rulesConfigs.d.ts +25 -0
- package/lib/tools/auth0/handlers/tenant.d.ts +11 -0
- package/lib/tools/auth0/handlers/triggers.d.ts +35 -0
- package/lib/tools/auth0/handlers/triggers.js +1 -1
- package/lib/tools/auth0/index.d.ts +15 -0
- package/lib/tools/auth0/schema.d.ts +15 -0
- package/lib/tools/calculateChanges.d.ts +26 -0
- package/lib/tools/calculateChanges.js +3 -3
- package/lib/tools/constants.d.ts +72 -0
- package/lib/tools/constants.js +4 -1
- package/lib/tools/deploy.d.ts +3 -0
- package/lib/tools/deploy.js +2 -2
- package/lib/tools/index.d.ts +83 -0
- package/lib/tools/utils.d.ts +18 -0
- package/lib/tools/utils.js +36 -3
- package/lib/tools/validationError.d.ts +5 -0
- package/lib/types.d.ts +257 -0
- package/lib/utils.d.ts +67 -0
- package/package.json +10 -10
- package/tsconfig.json +2 -1
- package/lib/tools/logger.js +0 -21
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
declare const constants: {
|
|
2
|
+
CONCURRENT_CALLS: number;
|
|
3
|
+
RULES_DIRECTORY: string;
|
|
4
|
+
RULES_STAGES: string[];
|
|
5
|
+
DEFAULT_RULE_STAGE: string;
|
|
6
|
+
HOOKS_HIDDEN_SECRET_VALUE: string;
|
|
7
|
+
OBFUSCATED_SECRET_VALUE: string;
|
|
8
|
+
HOOKS_DIRECTORY: string;
|
|
9
|
+
ACTIONS_DIRECTORY: string;
|
|
10
|
+
TRIGGERS_DIRECTORY: string;
|
|
11
|
+
RULES_CONFIGS_DIRECTORY: string;
|
|
12
|
+
PAGES_DIRECTORY: string;
|
|
13
|
+
PAGE_LOGIN: string;
|
|
14
|
+
PAGE_GUARDIAN_MULTIFACTOR: string;
|
|
15
|
+
PAGE_PASSWORD_RESET: string;
|
|
16
|
+
PAGE_ERROR: string;
|
|
17
|
+
DATABASE_CONNECTIONS_DIRECTORY: string;
|
|
18
|
+
DATABASE_SCRIPTS_CHANGE_EMAIL: string;
|
|
19
|
+
DATABASE_SCRIPTS_GET_USER: string;
|
|
20
|
+
EMAIL_TEMPLATES_TYPES: string[];
|
|
21
|
+
ACTIONS_TRIGGERS: string[];
|
|
22
|
+
EMAIL_TEMPLATES_DIRECTORY: string;
|
|
23
|
+
EMAIL_VERIFY: string;
|
|
24
|
+
EMAIL_VERIFY_BY_CODE: string;
|
|
25
|
+
EMAIL_RESET: string;
|
|
26
|
+
EMAIL_WELCOME: string;
|
|
27
|
+
EMAIL_BLOCKED: string;
|
|
28
|
+
EMAIL_STOLEN_CREDENTIALS: string;
|
|
29
|
+
EMAIL_ENROLLMENT: string;
|
|
30
|
+
EMAIL_CHANGE_PASSWORD: string;
|
|
31
|
+
EMAIL_PASSWORD_RESET: string;
|
|
32
|
+
EMAIL_MFA_OOB_CODE: string;
|
|
33
|
+
EMAIL_USER_INVITATION: string;
|
|
34
|
+
GUARDIAN_DIRECTORY: string;
|
|
35
|
+
GUARDIAN_FACTORS_DIRECTORY: string;
|
|
36
|
+
GUARDIAN_PROVIDERS_DIRECTORY: string;
|
|
37
|
+
GUARDIAN_TEMPLATES_DIRECTORY: string;
|
|
38
|
+
UNIVERSAL_LOGIN_TEMPLATE: string;
|
|
39
|
+
RESOURCE_SERVERS_DIRECTORY: string;
|
|
40
|
+
RESOURCE_SERVERS_CLIENT_NAME: string;
|
|
41
|
+
RESOURCE_SERVERS_MANAGEMENT_API_NAME: string;
|
|
42
|
+
RESOURCE_SERVERS_ID_NAME: string;
|
|
43
|
+
CLIENTS_DIRECTORY: string;
|
|
44
|
+
CLIENTS_GRANTS_DIRECTORY: string;
|
|
45
|
+
BRANDING_DIRECTORY: string;
|
|
46
|
+
BRANDING_TEMPLATES_DIRECTORY: string;
|
|
47
|
+
BRANDING_TEMPLATES_YAML_DIRECTORY: string;
|
|
48
|
+
CLIENTS_CLIENT_NAME: string;
|
|
49
|
+
CLIENTS_CLIENT_ID_NAME: string;
|
|
50
|
+
CONNECTIONS_DIRECTORY: string;
|
|
51
|
+
CONNECTIONS_CLIENT_NAME: string;
|
|
52
|
+
CONNECTIONS_ID_NAME: string;
|
|
53
|
+
ROLES_DIRECTORY: string;
|
|
54
|
+
ATTACK_PROTECTION_DIRECTORY: string;
|
|
55
|
+
GUARDIAN_FACTORS: string[];
|
|
56
|
+
GUARDIAN_POLICIES: string[];
|
|
57
|
+
GUARDIAN_PHONE_PROVIDERS: string[];
|
|
58
|
+
GUARDIAN_PHONE_MESSAGE_TYPES: string[];
|
|
59
|
+
GUARDIAN_FACTOR_TEMPLATES: string[];
|
|
60
|
+
GUARDIAN_FACTOR_PROVIDERS: {
|
|
61
|
+
sms: string[];
|
|
62
|
+
'push-notification': string[];
|
|
63
|
+
};
|
|
64
|
+
PAGE_NAMES: string[];
|
|
65
|
+
DATABASE_SCRIPTS: string[];
|
|
66
|
+
DATABASE_SCRIPTS_NO_IMPORT: string[];
|
|
67
|
+
DATABASE_SCRIPTS_IMPORT: string[];
|
|
68
|
+
EMAIL_TEMPLATES_NAMES: string[];
|
|
69
|
+
SUPPORTED_BRANDING_TEMPLATES: string[];
|
|
70
|
+
LOG_STREAMS_DIRECTORY: string;
|
|
71
|
+
};
|
|
72
|
+
export default constants;
|
package/lib/tools/constants.js
CHANGED
|
@@ -19,12 +19,14 @@ const EMAIL_PASSWORD_RESET = 'password_reset';
|
|
|
19
19
|
const EMAIL_MFA_OOB_CODE = 'mfa_oob_code';
|
|
20
20
|
const EMAIL_USER_INVITATION = 'user_invitation';
|
|
21
21
|
const UNIVERSAL_LOGIN_TEMPLATE = 'universal_login';
|
|
22
|
+
const OBFUSCATED_SECRET_VALUE = '_VALUE_NOT_SHOWN_';
|
|
22
23
|
const constants = {
|
|
23
24
|
CONCURRENT_CALLS: 5,
|
|
24
25
|
RULES_DIRECTORY: 'rules',
|
|
25
26
|
RULES_STAGES,
|
|
26
27
|
DEFAULT_RULE_STAGE: RULES_STAGES[0],
|
|
27
|
-
HOOKS_HIDDEN_SECRET_VALUE:
|
|
28
|
+
HOOKS_HIDDEN_SECRET_VALUE: OBFUSCATED_SECRET_VALUE,
|
|
29
|
+
OBFUSCATED_SECRET_VALUE,
|
|
28
30
|
HOOKS_DIRECTORY: 'hooks',
|
|
29
31
|
ACTIONS_DIRECTORY: 'actions',
|
|
30
32
|
TRIGGERS_DIRECTORY: 'triggers',
|
|
@@ -162,5 +164,6 @@ const constants = {
|
|
|
162
164
|
`${EMAIL_USER_INVITATION}.html`,
|
|
163
165
|
],
|
|
164
166
|
SUPPORTED_BRANDING_TEMPLATES: [UNIVERSAL_LOGIN_TEMPLATE],
|
|
167
|
+
LOG_STREAMS_DIRECTORY: 'log-streams',
|
|
165
168
|
};
|
|
166
169
|
exports.default = constants;
|
package/lib/tools/deploy.js
CHANGED
|
@@ -13,11 +13,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
const auth0_1 = __importDefault(require("./auth0"));
|
|
16
|
-
const logger_1 = __importDefault(require("
|
|
16
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
17
17
|
function deploy(assets, client, config) {
|
|
18
18
|
return __awaiter(this, void 0, void 0, function* () {
|
|
19
19
|
// Setup log level
|
|
20
|
-
logger_1.default.
|
|
20
|
+
logger_1.default.level = process.env.AUTH0_DEBUG === 'true' ? 'debug' : 'info';
|
|
21
21
|
logger_1.default.info('Getting access token for ' + config('AUTH0_CLIENT_ID') + '/' + config('AUTH0_DOMAIN'));
|
|
22
22
|
const auth0 = new auth0_1.default(client, assets, config);
|
|
23
23
|
// Validate Assets
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import constants from './constants';
|
|
2
|
+
import deploy from './deploy';
|
|
3
|
+
import Auth0 from './auth0';
|
|
4
|
+
import { keywordReplace, loadFileAndReplaceKeywords } from './utils';
|
|
5
|
+
declare const _default: {
|
|
6
|
+
constants: {
|
|
7
|
+
CONCURRENT_CALLS: number;
|
|
8
|
+
RULES_DIRECTORY: string;
|
|
9
|
+
RULES_STAGES: string[];
|
|
10
|
+
DEFAULT_RULE_STAGE: string;
|
|
11
|
+
HOOKS_HIDDEN_SECRET_VALUE: string;
|
|
12
|
+
OBFUSCATED_SECRET_VALUE: string;
|
|
13
|
+
HOOKS_DIRECTORY: string;
|
|
14
|
+
ACTIONS_DIRECTORY: string;
|
|
15
|
+
TRIGGERS_DIRECTORY: string;
|
|
16
|
+
RULES_CONFIGS_DIRECTORY: string;
|
|
17
|
+
PAGES_DIRECTORY: string;
|
|
18
|
+
PAGE_LOGIN: string;
|
|
19
|
+
PAGE_GUARDIAN_MULTIFACTOR: string;
|
|
20
|
+
PAGE_PASSWORD_RESET: string;
|
|
21
|
+
PAGE_ERROR: string;
|
|
22
|
+
DATABASE_CONNECTIONS_DIRECTORY: string;
|
|
23
|
+
DATABASE_SCRIPTS_CHANGE_EMAIL: string;
|
|
24
|
+
DATABASE_SCRIPTS_GET_USER: string;
|
|
25
|
+
EMAIL_TEMPLATES_TYPES: string[];
|
|
26
|
+
ACTIONS_TRIGGERS: string[];
|
|
27
|
+
EMAIL_TEMPLATES_DIRECTORY: string;
|
|
28
|
+
EMAIL_VERIFY: string;
|
|
29
|
+
EMAIL_VERIFY_BY_CODE: string;
|
|
30
|
+
EMAIL_RESET: string;
|
|
31
|
+
EMAIL_WELCOME: string;
|
|
32
|
+
EMAIL_BLOCKED: string;
|
|
33
|
+
EMAIL_STOLEN_CREDENTIALS: string;
|
|
34
|
+
EMAIL_ENROLLMENT: string;
|
|
35
|
+
EMAIL_CHANGE_PASSWORD: string;
|
|
36
|
+
EMAIL_PASSWORD_RESET: string;
|
|
37
|
+
EMAIL_MFA_OOB_CODE: string;
|
|
38
|
+
EMAIL_USER_INVITATION: string;
|
|
39
|
+
GUARDIAN_DIRECTORY: string;
|
|
40
|
+
GUARDIAN_FACTORS_DIRECTORY: string;
|
|
41
|
+
GUARDIAN_PROVIDERS_DIRECTORY: string;
|
|
42
|
+
GUARDIAN_TEMPLATES_DIRECTORY: string;
|
|
43
|
+
UNIVERSAL_LOGIN_TEMPLATE: string;
|
|
44
|
+
RESOURCE_SERVERS_DIRECTORY: string;
|
|
45
|
+
RESOURCE_SERVERS_CLIENT_NAME: string;
|
|
46
|
+
RESOURCE_SERVERS_MANAGEMENT_API_NAME: string;
|
|
47
|
+
RESOURCE_SERVERS_ID_NAME: string;
|
|
48
|
+
CLIENTS_DIRECTORY: string;
|
|
49
|
+
CLIENTS_GRANTS_DIRECTORY: string;
|
|
50
|
+
BRANDING_DIRECTORY: string;
|
|
51
|
+
BRANDING_TEMPLATES_DIRECTORY: string;
|
|
52
|
+
BRANDING_TEMPLATES_YAML_DIRECTORY: string;
|
|
53
|
+
CLIENTS_CLIENT_NAME: string;
|
|
54
|
+
CLIENTS_CLIENT_ID_NAME: string;
|
|
55
|
+
CONNECTIONS_DIRECTORY: string;
|
|
56
|
+
CONNECTIONS_CLIENT_NAME: string;
|
|
57
|
+
CONNECTIONS_ID_NAME: string;
|
|
58
|
+
ROLES_DIRECTORY: string;
|
|
59
|
+
ATTACK_PROTECTION_DIRECTORY: string;
|
|
60
|
+
GUARDIAN_FACTORS: string[];
|
|
61
|
+
GUARDIAN_POLICIES: string[];
|
|
62
|
+
GUARDIAN_PHONE_PROVIDERS: string[];
|
|
63
|
+
GUARDIAN_PHONE_MESSAGE_TYPES: string[];
|
|
64
|
+
GUARDIAN_FACTOR_TEMPLATES: string[];
|
|
65
|
+
GUARDIAN_FACTOR_PROVIDERS: {
|
|
66
|
+
sms: string[];
|
|
67
|
+
'push-notification': string[];
|
|
68
|
+
};
|
|
69
|
+
PAGE_NAMES: string[];
|
|
70
|
+
DATABASE_SCRIPTS: string[];
|
|
71
|
+
DATABASE_SCRIPTS_NO_IMPORT: string[];
|
|
72
|
+
DATABASE_SCRIPTS_IMPORT: string[];
|
|
73
|
+
EMAIL_TEMPLATES_NAMES: string[];
|
|
74
|
+
SUPPORTED_BRANDING_TEMPLATES: string[];
|
|
75
|
+
LOG_STREAMS_DIRECTORY: string;
|
|
76
|
+
};
|
|
77
|
+
deploy: typeof deploy;
|
|
78
|
+
keywordReplace: typeof keywordReplace;
|
|
79
|
+
loadFileAndReplaceKeywords: typeof loadFileAndReplaceKeywords;
|
|
80
|
+
Auth0: typeof Auth0;
|
|
81
|
+
};
|
|
82
|
+
export default _default;
|
|
83
|
+
export { constants, deploy, keywordReplace, loadFileAndReplaceKeywords, Auth0 };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Asset, Assets, CalculatedChanges, KeywordMappings } from '../types';
|
|
2
|
+
export declare function keywordArrayReplace(input: string, mappings: KeywordMappings): string;
|
|
3
|
+
export declare function keywordStringReplace(input: string, mappings: KeywordMappings): string;
|
|
4
|
+
export declare function keywordReplace(input: string, mappings: KeywordMappings): string;
|
|
5
|
+
export declare function convertClientNameToId(name: string, clients: Asset[]): string;
|
|
6
|
+
export declare function convertClientNamesToIds(names: string[], clients: Asset[]): string[];
|
|
7
|
+
export declare function loadFileAndReplaceKeywords(file: string, mappings: KeywordMappings): string;
|
|
8
|
+
export declare function flatten(list: any[]): any[];
|
|
9
|
+
export declare function convertJsonToString(obj: {
|
|
10
|
+
[key: string]: any;
|
|
11
|
+
}, spacing?: number): string;
|
|
12
|
+
export declare function stripFields(obj: Asset, fields: string[]): Asset;
|
|
13
|
+
export declare function getEnabledClients(assets: Assets, connection: Asset, existing: Asset[], clients: Asset[]): string[];
|
|
14
|
+
export declare function duplicateItems(arr: Asset[], key: string): Asset[];
|
|
15
|
+
export declare function filterExcluded(changes: CalculatedChanges, exclude: string[]): CalculatedChanges;
|
|
16
|
+
export declare function areArraysEquals(x: any[], y: any[]): boolean;
|
|
17
|
+
export declare const obfuscateSensitiveValues: (data: Asset | Asset[] | null, sensitiveFieldsToObfuscate: string[]) => Asset | Asset[] | null;
|
|
18
|
+
export declare const stripObfuscatedFieldsFromPayload: (data: Asset | Asset[] | null, obfuscatedFields: string[]) => Asset | Asset[] | null;
|
package/lib/tools/utils.js
CHANGED
|
@@ -26,12 +26,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.areArraysEquals = exports.filterExcluded = exports.duplicateItems = exports.getEnabledClients = exports.stripFields = exports.convertJsonToString = exports.flatten = exports.loadFileAndReplaceKeywords = exports.convertClientNamesToIds = exports.convertClientNameToId = exports.keywordReplace = exports.keywordStringReplace = exports.keywordArrayReplace = void 0;
|
|
29
|
+
exports.stripObfuscatedFieldsFromPayload = exports.obfuscateSensitiveValues = exports.areArraysEquals = exports.filterExcluded = exports.duplicateItems = exports.getEnabledClients = exports.stripFields = exports.convertJsonToString = exports.flatten = exports.loadFileAndReplaceKeywords = exports.convertClientNamesToIds = exports.convertClientNameToId = exports.keywordReplace = exports.keywordStringReplace = exports.keywordArrayReplace = void 0;
|
|
30
30
|
const path_1 = __importDefault(require("path"));
|
|
31
31
|
const fs_1 = __importStar(require("fs"));
|
|
32
32
|
const dot_prop_1 = __importDefault(require("dot-prop"));
|
|
33
33
|
const lodash_1 = __importDefault(require("lodash"));
|
|
34
|
-
const logger_1 = __importDefault(require("
|
|
34
|
+
const logger_1 = __importDefault(require("../logger"));
|
|
35
|
+
const constants_1 = __importDefault(require("./constants"));
|
|
35
36
|
function keywordArrayReplace(input, mappings) {
|
|
36
37
|
Object.keys(mappings).forEach(function (key) {
|
|
37
38
|
// Matching against two sets of patterns because a developer may provide their array replacement keyword with or without wrapping quotes. It is not obvious to the developer which to do depending if they're operating in YAML or JSON.
|
|
@@ -55,8 +56,8 @@ exports.keywordStringReplace = keywordStringReplace;
|
|
|
55
56
|
function keywordReplace(input, mappings) {
|
|
56
57
|
// Replace keywords with mappings within input.
|
|
57
58
|
if (mappings && Object.keys(mappings).length > 0) {
|
|
58
|
-
input = keywordStringReplace(input, mappings);
|
|
59
59
|
input = keywordArrayReplace(input, mappings);
|
|
60
|
+
input = keywordStringReplace(input, mappings);
|
|
60
61
|
}
|
|
61
62
|
return input;
|
|
62
63
|
}
|
|
@@ -175,3 +176,35 @@ function areArraysEquals(x, y) {
|
|
|
175
176
|
return lodash_1.default.isEqual(x && x.sort(), y && y.sort());
|
|
176
177
|
}
|
|
177
178
|
exports.areArraysEquals = areArraysEquals;
|
|
179
|
+
const obfuscateSensitiveValues = (data, sensitiveFieldsToObfuscate) => {
|
|
180
|
+
if (data === null)
|
|
181
|
+
return data;
|
|
182
|
+
if (Array.isArray(data)) {
|
|
183
|
+
return data.map((asset) => (0, exports.obfuscateSensitiveValues)(asset, sensitiveFieldsToObfuscate));
|
|
184
|
+
}
|
|
185
|
+
const newAsset = Object.assign({}, data);
|
|
186
|
+
sensitiveFieldsToObfuscate.forEach((sensitiveField) => {
|
|
187
|
+
if (dot_prop_1.default.get(newAsset, sensitiveField) !== undefined) {
|
|
188
|
+
dot_prop_1.default.set(newAsset, sensitiveField, constants_1.default.OBFUSCATED_SECRET_VALUE);
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
return newAsset;
|
|
192
|
+
};
|
|
193
|
+
exports.obfuscateSensitiveValues = obfuscateSensitiveValues;
|
|
194
|
+
// The reverse of `obfuscateSensitiveValues()`, preventing an obfuscated value from being passed to the API
|
|
195
|
+
const stripObfuscatedFieldsFromPayload = (data, obfuscatedFields) => {
|
|
196
|
+
if (data === null)
|
|
197
|
+
return data;
|
|
198
|
+
if (Array.isArray(data)) {
|
|
199
|
+
return data.map((asset) => (0, exports.stripObfuscatedFieldsFromPayload)(asset, obfuscatedFields));
|
|
200
|
+
}
|
|
201
|
+
const newAsset = Object.assign({}, data);
|
|
202
|
+
obfuscatedFields.forEach((sensitiveField) => {
|
|
203
|
+
const obfuscatedFieldValue = dot_prop_1.default.get(newAsset, sensitiveField);
|
|
204
|
+
if (obfuscatedFieldValue === constants_1.default.OBFUSCATED_SECRET_VALUE) {
|
|
205
|
+
dot_prop_1.default.delete(newAsset, sensitiveField);
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
return newAsset;
|
|
209
|
+
};
|
|
210
|
+
exports.stripObfuscatedFieldsFromPayload = stripObfuscatedFieldsFromPayload;
|
package/lib/types.d.ts
ADDED
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
declare type SharedPaginationParams = {
|
|
2
|
+
checkpoint?: boolean;
|
|
3
|
+
paginate?: boolean;
|
|
4
|
+
is_global?: boolean;
|
|
5
|
+
include_totals?: boolean;
|
|
6
|
+
id?: string;
|
|
7
|
+
strategy?: 'auth0';
|
|
8
|
+
};
|
|
9
|
+
export declare type CheckpointPaginationParams = SharedPaginationParams & {
|
|
10
|
+
from: string;
|
|
11
|
+
take: number;
|
|
12
|
+
};
|
|
13
|
+
export declare type PagePaginationParams = SharedPaginationParams & {
|
|
14
|
+
page: number;
|
|
15
|
+
per_page: number;
|
|
16
|
+
};
|
|
17
|
+
declare type APIClientBaseFunctions = {
|
|
18
|
+
getAll: (arg0: SharedPaginationParams) => Promise<Asset[]>;
|
|
19
|
+
create: (arg0: {
|
|
20
|
+
id: string;
|
|
21
|
+
}) => Promise<Asset>;
|
|
22
|
+
update: (arg0: {}, arg1: Asset) => Promise<Asset>;
|
|
23
|
+
delete: (arg0: Asset) => Promise<void>;
|
|
24
|
+
};
|
|
25
|
+
export declare type ApiResponse = {
|
|
26
|
+
start: number;
|
|
27
|
+
limit: number;
|
|
28
|
+
total: number;
|
|
29
|
+
next?: string;
|
|
30
|
+
} & {
|
|
31
|
+
[key in AssetTypes]: Asset[];
|
|
32
|
+
};
|
|
33
|
+
export declare type BaseAuth0APIClient = {
|
|
34
|
+
actions: APIClientBaseFunctions & {
|
|
35
|
+
deploy: ({ id: string }: {
|
|
36
|
+
id: any;
|
|
37
|
+
}) => Promise<void>;
|
|
38
|
+
getAllTriggers: () => Promise<{
|
|
39
|
+
triggers: Asset[];
|
|
40
|
+
}>;
|
|
41
|
+
getTriggerBindings: ({ trigger_id: string }: {
|
|
42
|
+
trigger_id: any;
|
|
43
|
+
}) => Promise<{
|
|
44
|
+
bindings: Asset[];
|
|
45
|
+
}>;
|
|
46
|
+
updateTriggerBindings: ({ trigger_id: string }: {
|
|
47
|
+
trigger_id: any;
|
|
48
|
+
}, { bindings: Object }: {
|
|
49
|
+
bindings: any;
|
|
50
|
+
}) => Promise<{
|
|
51
|
+
bindings: Asset[];
|
|
52
|
+
}>;
|
|
53
|
+
};
|
|
54
|
+
attackProtection: APIClientBaseFunctions & {
|
|
55
|
+
getBreachedPasswordDetectionConfig: () => Promise<Asset>;
|
|
56
|
+
getBruteForceConfig: () => Promise<Asset>;
|
|
57
|
+
getSuspiciousIpThrottlingConfig: () => Promise<Asset>;
|
|
58
|
+
updateBreachedPasswordDetectionConfig: ({}: {}, arg1: Asset) => Promise<void>;
|
|
59
|
+
updateSuspiciousIpThrottlingConfig: ({}: {}, arg1: Asset) => Promise<void>;
|
|
60
|
+
updateBruteForceConfig: ({}: {}, arg1: Asset) => Promise<void>;
|
|
61
|
+
};
|
|
62
|
+
branding: APIClientBaseFunctions & {
|
|
63
|
+
getSettings: () => Promise<Asset>;
|
|
64
|
+
getUniversalLoginTemplate: () => Promise<Asset>;
|
|
65
|
+
updateSettings: ({}: {}, Asset: any) => Promise<void>;
|
|
66
|
+
setUniversalLoginTemplate: ({}: {}, Asset: any) => Promise<void>;
|
|
67
|
+
};
|
|
68
|
+
clients: APIClientBaseFunctions;
|
|
69
|
+
clientGrants: APIClientBaseFunctions;
|
|
70
|
+
connections: APIClientBaseFunctions & {
|
|
71
|
+
get: (arg0: Asset) => Promise<Asset>;
|
|
72
|
+
getAll: (arg0: PagePaginationParams | CheckpointPaginationParams) => Promise<Asset[]>;
|
|
73
|
+
};
|
|
74
|
+
customDomains: APIClientBaseFunctions & {
|
|
75
|
+
getAll: () => Promise<Asset[]>;
|
|
76
|
+
};
|
|
77
|
+
emailProvider: APIClientBaseFunctions & {
|
|
78
|
+
delete: () => Promise<void>;
|
|
79
|
+
get: (arg0: Asset) => Promise<Asset>;
|
|
80
|
+
configure: (arg0: Object, arg1: Object) => Promise<Asset>;
|
|
81
|
+
};
|
|
82
|
+
emailTemplates: APIClientBaseFunctions & {
|
|
83
|
+
get: (arg0: Asset) => Promise<Asset>;
|
|
84
|
+
};
|
|
85
|
+
guardian: APIClientBaseFunctions & {
|
|
86
|
+
getFactorProvider: (arg0: Asset) => Promise<Asset>;
|
|
87
|
+
updateFactorProvider: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
88
|
+
getFactors: () => Promise<Asset[]>;
|
|
89
|
+
updateFactor: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
90
|
+
getPolicies: () => Promise<Asset[]>;
|
|
91
|
+
updatePolicies: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
92
|
+
getFactorTemplates: (arg0: {
|
|
93
|
+
name: string;
|
|
94
|
+
}) => Promise<Asset[]>;
|
|
95
|
+
updateFactorTemplates: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
96
|
+
updatePhoneFactorMessageTypes: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
97
|
+
getPhoneFactorSelectedProvider: () => Promise<Asset[]>;
|
|
98
|
+
getPhoneFactorMessageTypes: () => Promise<Asset[]>;
|
|
99
|
+
updatePhoneFactorSelectedProvider: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
100
|
+
};
|
|
101
|
+
hooks: APIClientBaseFunctions & {
|
|
102
|
+
get: ({ id: string }: {
|
|
103
|
+
id: any;
|
|
104
|
+
}) => Promise<Asset>;
|
|
105
|
+
removeSecrets: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
106
|
+
updateSecrets: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
107
|
+
getSecrets: ({ id: string }: {
|
|
108
|
+
id: any;
|
|
109
|
+
}) => Promise<Promise<Asset[]>>;
|
|
110
|
+
addSecrets: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
111
|
+
};
|
|
112
|
+
logStreams: APIClientBaseFunctions;
|
|
113
|
+
migrations: APIClientBaseFunctions & {
|
|
114
|
+
getMigrations: () => Promise<{
|
|
115
|
+
flags: Asset[];
|
|
116
|
+
}>;
|
|
117
|
+
updateMigrations: (arg0: {
|
|
118
|
+
flags: Asset[];
|
|
119
|
+
}) => Promise<void>;
|
|
120
|
+
};
|
|
121
|
+
organizations: APIClientBaseFunctions & {
|
|
122
|
+
updateEnabledConnection: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
123
|
+
addEnabledConnection: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
124
|
+
removeEnabledConnection: (arg0: Asset) => Promise<void>;
|
|
125
|
+
connections: {
|
|
126
|
+
get: (arg0: Asset) => Promise<Asset>;
|
|
127
|
+
};
|
|
128
|
+
};
|
|
129
|
+
prompts: APIClientBaseFunctions & {
|
|
130
|
+
getSettings: () => Promise<Asset[]>;
|
|
131
|
+
updateSettings: (arg0: {}, arg1: Asset) => Promise<void>;
|
|
132
|
+
};
|
|
133
|
+
resourceServers: APIClientBaseFunctions;
|
|
134
|
+
roles: APIClientBaseFunctions & {
|
|
135
|
+
permissions: APIClientBaseFunctions & {
|
|
136
|
+
delete: (arg0: {
|
|
137
|
+
id: string;
|
|
138
|
+
}, arg1: {
|
|
139
|
+
permissions: Asset[];
|
|
140
|
+
}) => Promise<void>;
|
|
141
|
+
create: (arg0: {
|
|
142
|
+
id: string;
|
|
143
|
+
}, arg1: {
|
|
144
|
+
permissions: Asset[];
|
|
145
|
+
}) => Promise<Asset>;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
rules: APIClientBaseFunctions;
|
|
149
|
+
rulesConfigs: APIClientBaseFunctions & {
|
|
150
|
+
getAll: () => Promise<Asset[]>;
|
|
151
|
+
};
|
|
152
|
+
tenant: APIClientBaseFunctions & {
|
|
153
|
+
getSettings: () => Promise<Asset>;
|
|
154
|
+
updateSettings: (arg0: Asset) => Promise<void>;
|
|
155
|
+
};
|
|
156
|
+
triggers: APIClientBaseFunctions & {
|
|
157
|
+
getTriggerBindings: () => Promise<Asset>;
|
|
158
|
+
};
|
|
159
|
+
updateRule: (arg0: {
|
|
160
|
+
id: string;
|
|
161
|
+
}, arg1: Asset) => Promise<Asset>;
|
|
162
|
+
};
|
|
163
|
+
export declare type Auth0APIClient = BaseAuth0APIClient & {
|
|
164
|
+
pool: {
|
|
165
|
+
addSingleTask: (arg0: {
|
|
166
|
+
data: Object;
|
|
167
|
+
generator: any;
|
|
168
|
+
}) => {
|
|
169
|
+
promise: () => Promise<ApiResponse>;
|
|
170
|
+
};
|
|
171
|
+
addEachTask: (arg0: {
|
|
172
|
+
data: Object;
|
|
173
|
+
generator: any;
|
|
174
|
+
}) => {
|
|
175
|
+
promise: () => Promise<Asset[][]>;
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
};
|
|
179
|
+
export declare type Config = {
|
|
180
|
+
AUTH0_DOMAIN: string;
|
|
181
|
+
AUTH0_CLIENT_ID: string;
|
|
182
|
+
AUTH0_CLIENT_SECRET: string;
|
|
183
|
+
AUTH0_INPUT_FILE: string;
|
|
184
|
+
AUTH0_ALLOW_DELETE: boolean;
|
|
185
|
+
AUTH0_EXCLUDED: AssetTypes[];
|
|
186
|
+
EXTENSION_SECRET: string;
|
|
187
|
+
AUTH0_ACCESS_TOKEN?: string;
|
|
188
|
+
AUTH0_BASE_PATH?: string;
|
|
189
|
+
AUTH0_AUDIENCE?: string;
|
|
190
|
+
AUTH0_API_MAX_RETRIES?: number;
|
|
191
|
+
AUTH0_KEYWORD_REPLACE_MAPPINGS?: KeywordMappings;
|
|
192
|
+
AUTH0_EXPORT_IDENTIFIERS?: boolean;
|
|
193
|
+
AUTH0_CONNECTIONS_DIRECTORY?: string;
|
|
194
|
+
EXCLUDED_PROPS?: {
|
|
195
|
+
[key: string]: string[];
|
|
196
|
+
};
|
|
197
|
+
INCLUDED_PROPS?: {
|
|
198
|
+
[key: string]: string[];
|
|
199
|
+
};
|
|
200
|
+
AUTH0_IGNORE_UNAVAILABLE_MIGRATIONS?: boolean;
|
|
201
|
+
AUTH0_EXCLUDED_RULES?: string[];
|
|
202
|
+
AUTH0_EXCLUDED_CLIENTS?: string[];
|
|
203
|
+
AUTH0_EXCLUDED_DATABASES?: string[];
|
|
204
|
+
AUTH0_EXCLUDED_CONNECTIONS?: string[];
|
|
205
|
+
AUTH0_EXCLUDED_RESOURCE_SERVERS?: string[];
|
|
206
|
+
AUTH0_EXCLUDED_DEFAULTS?: string[];
|
|
207
|
+
};
|
|
208
|
+
export declare type Asset = {
|
|
209
|
+
[key: string]: any;
|
|
210
|
+
};
|
|
211
|
+
export declare type Assets = {
|
|
212
|
+
actions: Asset[];
|
|
213
|
+
attackProtection: Asset;
|
|
214
|
+
branding: Asset;
|
|
215
|
+
clients: Asset[];
|
|
216
|
+
clientGrants: Asset[];
|
|
217
|
+
connections: Asset[];
|
|
218
|
+
databases: Asset[];
|
|
219
|
+
emailProvider: Asset;
|
|
220
|
+
emailTemplates: Asset[];
|
|
221
|
+
guardianFactorProviders: Asset[];
|
|
222
|
+
guardianFactors: Asset[];
|
|
223
|
+
guardianFactorTemplates: Asset[];
|
|
224
|
+
guardianPhoneFactorMessageTypes: {
|
|
225
|
+
message_types: Asset[];
|
|
226
|
+
};
|
|
227
|
+
guardianPhoneFactorSelectedProvider: Asset;
|
|
228
|
+
guardianPolicies: {
|
|
229
|
+
policies: Asset[];
|
|
230
|
+
};
|
|
231
|
+
hooks: Asset[];
|
|
232
|
+
logStreams: Asset[];
|
|
233
|
+
migrations: Asset[];
|
|
234
|
+
organizations: Asset[];
|
|
235
|
+
pages: Asset[];
|
|
236
|
+
resourceServers: Asset[];
|
|
237
|
+
roles: Asset[];
|
|
238
|
+
rules: Asset[];
|
|
239
|
+
rulesConfigs: Asset[];
|
|
240
|
+
tenant: Asset;
|
|
241
|
+
triggers: Asset[];
|
|
242
|
+
exclude?: {
|
|
243
|
+
[key: string]: string[];
|
|
244
|
+
};
|
|
245
|
+
clientsOrig: Asset[];
|
|
246
|
+
};
|
|
247
|
+
export declare type CalculatedChanges = {
|
|
248
|
+
del: Asset[];
|
|
249
|
+
update: Asset[];
|
|
250
|
+
conflicts: Asset[];
|
|
251
|
+
create: Asset[];
|
|
252
|
+
};
|
|
253
|
+
export declare type AssetTypes = 'rules' | 'rulesConfigs' | 'hooks' | 'pages' | 'databases' | 'clientGrants' | 'resourceServers' | 'clients' | 'connections' | 'tenant' | 'emailProvider' | 'emailTemplates' | 'guardianFactors' | 'guardianFactorProviders' | 'guardianFactorTemplates' | 'migrations' | 'guardianPhoneFactorMessageTypes' | 'guardianPhoneFactorSelectedProvider' | 'guardianPolicies' | 'roles' | 'actions' | 'organizations' | 'triggers' | 'attackProtection' | 'branding' | 'logStreams';
|
|
254
|
+
export declare type KeywordMappings = {
|
|
255
|
+
[key: string]: (string | number)[] | string | number;
|
|
256
|
+
};
|
|
257
|
+
export {};
|
package/lib/utils.d.ts
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Auth0 } from './tools';
|
|
2
|
+
import { Asset, Assets, Config, KeywordMappings } from './types';
|
|
3
|
+
export declare function isDirectory(filePath: string): boolean;
|
|
4
|
+
export declare function isFile(filePath: string): boolean;
|
|
5
|
+
export declare function getFiles(folder: string, exts: string[]): string[];
|
|
6
|
+
export declare function loadJSON(file: string, mappings: KeywordMappings): any;
|
|
7
|
+
export declare function dumpJSON(file: string, mappings: {
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}): void;
|
|
10
|
+
export declare function existsMustBeDir(folder: string): boolean;
|
|
11
|
+
export declare function toConfigFn(data: Config): (arg0: keyof Config) => any;
|
|
12
|
+
export declare function stripIdentifiers(auth0: Auth0, assets: Assets): {
|
|
13
|
+
actions: Asset[];
|
|
14
|
+
attackProtection: Asset;
|
|
15
|
+
branding: Asset;
|
|
16
|
+
clients: Asset[];
|
|
17
|
+
clientGrants: Asset[];
|
|
18
|
+
connections: Asset[];
|
|
19
|
+
databases: Asset[];
|
|
20
|
+
emailProvider: Asset;
|
|
21
|
+
emailTemplates: Asset[];
|
|
22
|
+
guardianFactorProviders: Asset[];
|
|
23
|
+
guardianFactors: Asset[];
|
|
24
|
+
guardianFactorTemplates: Asset[];
|
|
25
|
+
guardianPhoneFactorMessageTypes: {
|
|
26
|
+
message_types: Asset[];
|
|
27
|
+
};
|
|
28
|
+
guardianPhoneFactorSelectedProvider: Asset;
|
|
29
|
+
guardianPolicies: {
|
|
30
|
+
policies: Asset[];
|
|
31
|
+
};
|
|
32
|
+
hooks: Asset[];
|
|
33
|
+
logStreams: Asset[];
|
|
34
|
+
migrations: Asset[];
|
|
35
|
+
organizations: Asset[];
|
|
36
|
+
pages: Asset[];
|
|
37
|
+
resourceServers: Asset[];
|
|
38
|
+
roles: Asset[];
|
|
39
|
+
rules: Asset[];
|
|
40
|
+
rulesConfigs: Asset[];
|
|
41
|
+
tenant: Asset;
|
|
42
|
+
triggers: Asset[];
|
|
43
|
+
exclude?: {
|
|
44
|
+
[key: string]: string[];
|
|
45
|
+
} | undefined;
|
|
46
|
+
clientsOrig: Asset[];
|
|
47
|
+
};
|
|
48
|
+
export declare function sanitize(str: string): string;
|
|
49
|
+
declare type ImportantFields = {
|
|
50
|
+
name: string | null;
|
|
51
|
+
client_id: string | null;
|
|
52
|
+
audience: string | null;
|
|
53
|
+
template: string | null;
|
|
54
|
+
identifier: string | null;
|
|
55
|
+
strategy: string | null;
|
|
56
|
+
script: string | null;
|
|
57
|
+
stage: string | null;
|
|
58
|
+
id: string | null;
|
|
59
|
+
};
|
|
60
|
+
export declare function formatResults(item: any): Partial<ImportantFields>;
|
|
61
|
+
export declare function recordsSorter(a: Partial<ImportantFields>, b: Partial<ImportantFields>): number;
|
|
62
|
+
export declare function clearTenantFlags(tenant: Asset): void;
|
|
63
|
+
export declare function ensureProp(obj: Asset, props: string): void;
|
|
64
|
+
export declare function clearClientArrays(client: Asset): Asset;
|
|
65
|
+
export declare function convertClientIdToName(clientId: string, knownClients?: Asset[]): string;
|
|
66
|
+
export declare function mapClientID2NameSorted(enabledClients: string[], knownClients: Asset[]): string[];
|
|
67
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "auth0-deploy-cli",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.10.0",
|
|
4
4
|
"description": "A command line tool for deploying updates to your Auth0 tenant",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -40,35 +40,35 @@
|
|
|
40
40
|
"global-agent": "^2.1.12",
|
|
41
41
|
"js-yaml": "^4.1.0",
|
|
42
42
|
"lodash": "^4.17.20",
|
|
43
|
-
"mkdirp": "^0.5.
|
|
44
|
-
"nconf": "^0.11.
|
|
43
|
+
"mkdirp": "^0.5.6",
|
|
44
|
+
"nconf": "^0.11.4",
|
|
45
45
|
"promise-pool-executor": "^1.1.1",
|
|
46
46
|
"sanitize-filename": "^1.6.1",
|
|
47
47
|
"sinon": "^13.0.1",
|
|
48
48
|
"sinon-chai": "^3.7.0",
|
|
49
|
-
"winston": "^
|
|
49
|
+
"winston": "^3.6.0",
|
|
50
50
|
"yargs": "^15.3.1"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@types/expect": "^24.3.0",
|
|
54
54
|
"@types/mocha": "^9.1.0",
|
|
55
|
-
"
|
|
56
|
-
"
|
|
55
|
+
"chai": "^4.3.6",
|
|
56
|
+
"@typescript-eslint/parser": "^5.18.0",
|
|
57
57
|
"chai-as-promised": "^7.1.1",
|
|
58
58
|
"cross-env": "^3.1.4",
|
|
59
59
|
"eslint": "^7.28.0",
|
|
60
60
|
"eslint-config-airbnb-base": "^14.2.1",
|
|
61
61
|
"eslint-config-prettier": "^8.5.0",
|
|
62
|
-
"eslint-plugin-import": "^2.
|
|
62
|
+
"eslint-plugin-import": "^2.25.4",
|
|
63
63
|
"husky": "^7.0.4",
|
|
64
64
|
"kacl": "^1.1.1",
|
|
65
|
-
"mocha": "^9.
|
|
65
|
+
"mocha": "^9.2.2",
|
|
66
66
|
"nyc": "^15.0.1",
|
|
67
|
-
"prettier": "^2.6.
|
|
67
|
+
"prettier": "^2.6.2",
|
|
68
68
|
"pretty-quick": "^3.1.3",
|
|
69
69
|
"rimraf": "^3.0.2",
|
|
70
70
|
"rmdir-sync": "^1.0.1",
|
|
71
71
|
"ts-mocha": "^9.0.2",
|
|
72
|
-
"typescript": "^4.6.
|
|
72
|
+
"typescript": "^4.6.3"
|
|
73
73
|
}
|
|
74
74
|
}
|