auth0-deploy-cli 7.17.1 → 7.17.3
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/.nyc_output/4931ff4a-8b09-4a9b-899c-ce541c2f6b8a.json +1 -0
- package/.nyc_output/processinfo/{7746620e-e4aa-4851-a0e0-8720b493c434.json → 4931ff4a-8b09-4a9b-899c-ce541c2f6b8a.json} +1 -1
- package/.nyc_output/processinfo/760b21c1-74f0-47a2-bacb-55b1796d1d84.json +1 -0
- package/.nyc_output/processinfo/f8a6012a-6f3c-46cf-8693-1687738e001c.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/CHANGELOG.md +19 -1
- package/README.md +5 -4
- package/coverage/lcov-report/index.html +25 -25
- package/coverage/lcov-report/src/args.ts.html +1 -1
- package/coverage/lcov-report/src/commands/export.ts.html +1 -1
- package/coverage/lcov-report/src/commands/import.ts.html +1 -1
- package/coverage/lcov-report/src/commands/index.html +1 -1
- package/coverage/lcov-report/src/configFactory.ts.html +1 -1
- package/coverage/lcov-report/src/context/defaults.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/actions.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/attackProtection.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/branding.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/clientGrants.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/clients.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/connections.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/customDomains.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/databases.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/emailProvider.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/emailTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianFactorProviders.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianFactorTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianFactors.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianPhoneFactorMessageTypes.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianPhoneFactorSelectedProvider.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/guardianPolicies.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/hooks.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/index.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/index.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/logStreams.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/migrations.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/organizations.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/pages.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/prompts.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/resourceServers.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/roles.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/rules.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/rulesConfigs.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/tenant.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/themes.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/handlers/triggers.ts.html +1 -1
- package/coverage/lcov-report/src/context/directory/index.html +1 -1
- package/coverage/lcov-report/src/context/directory/index.ts.html +1 -1
- package/coverage/lcov-report/src/context/index.html +1 -1
- package/coverage/lcov-report/src/context/index.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/actions.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/attackProtection.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/branding.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/clientGrants.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/clients.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/connections.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/customDomains.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/databases.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/emailProvider.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/emailTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianFactorProviders.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianFactorTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianFactors.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianPhoneFactorMessageTypes.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianPhoneFactorSelectedProvider.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/guardianPolicies.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/hooks.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/index.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/index.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/logStreams.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/migrations.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/organizations.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/pages.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/prompts.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/resourceServers.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/roles.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/rules.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/rulesConfigs.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/tenant.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/themes.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/handlers/triggers.ts.html +1 -1
- package/coverage/lcov-report/src/context/yaml/index.html +1 -1
- package/coverage/lcov-report/src/context/yaml/index.ts.html +1 -1
- package/coverage/lcov-report/src/index.html +17 -17
- package/coverage/lcov-report/src/index.ts.html +1 -1
- package/coverage/lcov-report/src/keywordPreservation.ts.html +211 -100
- package/coverage/lcov-report/src/logger.ts.html +1 -1
- package/coverage/lcov-report/src/readonly.ts.html +1 -1
- package/coverage/lcov-report/src/sessionDurationsToMinutes.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/client.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/actions.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/attackProtection.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/branding.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/clientGrants.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/clients.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/connections.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/customDomains.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/databases.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/default.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/emailProvider.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/emailTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianFactorProviders.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianFactorTemplates.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianFactors.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianPhoneFactorMessageTypes.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/guardianPolicies.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/hooks.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/index.html +13 -13
- package/coverage/lcov-report/src/tools/auth0/handlers/index.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/logStreams.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/migrations.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/organizations.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/pages.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/prompts.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/resourceServers.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/roles.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/rules.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/rulesConfigs.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/tenant.ts.html +24 -15
- package/coverage/lcov-report/src/tools/auth0/handlers/themes.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/handlers/triggers.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/index.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/index.ts.html +1 -1
- package/coverage/lcov-report/src/tools/auth0/schema.ts.html +1 -1
- package/coverage/lcov-report/src/tools/calculateChanges.ts.html +1 -1
- package/coverage/lcov-report/src/tools/constants.ts.html +1 -1
- package/coverage/lcov-report/src/tools/deploy.ts.html +1 -1
- package/coverage/lcov-report/src/tools/index.html +1 -1
- package/coverage/lcov-report/src/tools/index.ts.html +1 -1
- package/coverage/lcov-report/src/tools/utils.ts.html +18 -18
- package/coverage/lcov-report/src/tools/validationError.ts.html +1 -1
- package/coverage/lcov-report/src/types.ts.html +1 -1
- package/coverage/lcov-report/src/utils.ts.html +1 -1
- package/coverage/lcov.info +237 -211
- package/docs/keyword-replacement.md +13 -4
- package/docs/using-as-cli.md +1 -1
- package/docs/using-as-node-module.md +1 -1
- package/lib/keywordPreservation.d.ts +33 -31
- package/lib/keywordPreservation.js +42 -15
- package/lib/keywordPreservation.js.map +1 -1
- package/lib/tools/auth0/handlers/tenant.js +5 -2
- package/lib/tools/auth0/handlers/tenant.js.map +1 -1
- package/package.json +1 -1
- package/.nyc_output/7746620e-e4aa-4851-a0e0-8720b493c434.json +0 -1
- package/.nyc_output/processinfo/8e8d4fa2-9be8-4228-b4c1-c9b7e72c99ea.json +0 -1
- package/.nyc_output/processinfo/cf32e35e-b65d-442d-bf1a-0484952dc58e.json +0 -1
- /package/.nyc_output/{8e8d4fa2-9be8-4228-b4c1-c9b7e72c99ea.json → 760b21c1-74f0-47a2-bacb-55b1796d1d84.json} +0 -0
- /package/.nyc_output/{cf32e35e-b65d-442d-bf1a-0484952dc58e.json → f8a6012a-6f3c-46cf-8693-1687738e001c.json} +0 -0
package/docs/using-as-cli.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Using as a CLI
|
|
2
2
|
|
|
3
|
-
The Deploy CLI can be used as a standalone command line utility. Doing so provides a simple way to manage your Auth0 tenant configuration in CI/CD workflows.
|
|
3
|
+
The Deploy CLI can be used as a standalone command line utility. Doing so provides a simple way to manage your Auth0 tenant configuration in CI/CD workflows. Refer to the [Configuring the Deploy CLI](./configuring-the-deploy-cli.md) documentation for a comprehensive list of configuration settings.
|
|
4
4
|
|
|
5
5
|
## `export` command
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Using as a Node Module
|
|
2
2
|
|
|
3
|
-
The Deploy CLI can not only be used as a standalone CLI, but as a node module. Doing so allows you to manage Auth0 resources within expressive node scripts.
|
|
3
|
+
The Deploy CLI can not only be used as a standalone CLI, but as a node module. Doing so allows you to manage Auth0 resources within expressive node scripts. Refer to the [Configuring the Deploy CLI](./configuring-the-deploy-cli.md) documentation for a comprehensive list of configuration settings.
|
|
4
4
|
|
|
5
5
|
## `dump` function
|
|
6
6
|
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import { AssetTypes, KeywordMappings } from './types';
|
|
2
2
|
import APIHandler from './tools/auth0/handlers/default';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const doesHaveKeywordMarker: (string: string, keywordMappings: KeywordMappings) => boolean;
|
|
4
4
|
export declare const getPreservableFieldsFromAssets: (asset: object, keywordMappings: KeywordMappings, resourceSpecificIdentifiers: Partial<{
|
|
5
|
-
rules: string;
|
|
6
|
-
hooks: string;
|
|
7
|
-
actions: string;
|
|
8
|
-
triggers: string;
|
|
9
|
-
pages: string;
|
|
10
|
-
resourceServers: string;
|
|
11
|
-
clients: string;
|
|
12
|
-
branding: string;
|
|
13
|
-
connections: string;
|
|
14
|
-
roles: string;
|
|
15
|
-
prompts: string;
|
|
16
|
-
themes: string;
|
|
17
|
-
attackProtection: string;
|
|
18
|
-
clientGrants: string;
|
|
19
|
-
customDomains: string;
|
|
20
|
-
databases: string;
|
|
21
|
-
emailProvider: string;
|
|
22
|
-
emailTemplates: string;
|
|
23
|
-
guardianFactorProviders: string;
|
|
24
|
-
guardianFactors: string;
|
|
25
|
-
guardianFactorTemplates: string;
|
|
26
|
-
guardianPhoneFactorMessageTypes: string;
|
|
27
|
-
guardianPhoneFactorSelectedProvider: string;
|
|
28
|
-
guardianPolicies: string;
|
|
29
|
-
logStreams: string;
|
|
30
|
-
migrations: string;
|
|
31
|
-
organizations: string;
|
|
32
|
-
rulesConfigs: string;
|
|
33
|
-
tenant: string;
|
|
5
|
+
rules: string | string[];
|
|
6
|
+
hooks: string | string[];
|
|
7
|
+
actions: string | string[];
|
|
8
|
+
triggers: string | string[];
|
|
9
|
+
pages: string | string[];
|
|
10
|
+
resourceServers: string | string[];
|
|
11
|
+
clients: string | string[];
|
|
12
|
+
branding: string | string[];
|
|
13
|
+
connections: string | string[];
|
|
14
|
+
roles: string | string[];
|
|
15
|
+
prompts: string | string[];
|
|
16
|
+
themes: string | string[];
|
|
17
|
+
attackProtection: string | string[];
|
|
18
|
+
clientGrants: string | string[];
|
|
19
|
+
customDomains: string | string[];
|
|
20
|
+
databases: string | string[];
|
|
21
|
+
emailProvider: string | string[];
|
|
22
|
+
emailTemplates: string | string[];
|
|
23
|
+
guardianFactorProviders: string | string[];
|
|
24
|
+
guardianFactors: string | string[];
|
|
25
|
+
guardianFactorTemplates: string | string[];
|
|
26
|
+
guardianPhoneFactorMessageTypes: string | string[];
|
|
27
|
+
guardianPhoneFactorSelectedProvider: string | string[];
|
|
28
|
+
guardianPolicies: string | string[];
|
|
29
|
+
logStreams: string | string[];
|
|
30
|
+
migrations: string | string[];
|
|
31
|
+
organizations: string | string[];
|
|
32
|
+
rulesConfigs: string | string[];
|
|
33
|
+
tenant: string | string[];
|
|
34
34
|
}>, address?: string) => string[];
|
|
35
35
|
export declare const getAssetsValueByAddress: (address: string, assets: any) => any;
|
|
36
36
|
export declare const convertAddressToDotNotation: (assets: any, address: string, finalAddressTrail?: string) => string | null;
|
|
@@ -39,5 +39,7 @@ export declare const preserveKeywords: ({ localAssets, remoteAssets, keywordMapp
|
|
|
39
39
|
localAssets: object;
|
|
40
40
|
remoteAssets: object;
|
|
41
41
|
keywordMappings: KeywordMappings;
|
|
42
|
-
auth0Handlers: Pick<APIHandler, 'id' | '
|
|
42
|
+
auth0Handlers: (Pick<APIHandler, 'id' | 'type'> & {
|
|
43
|
+
identifiers: (string | string[])[];
|
|
44
|
+
})[];
|
|
43
45
|
}) => object;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.preserveKeywords = exports.updateAssetsByAddress = exports.convertAddressToDotNotation = exports.getAssetsValueByAddress = exports.getPreservableFieldsFromAssets = exports.
|
|
3
|
+
exports.preserveKeywords = exports.updateAssetsByAddress = exports.convertAddressToDotNotation = exports.getAssetsValueByAddress = exports.getPreservableFieldsFromAssets = exports.doesHaveKeywordMarker = void 0;
|
|
4
4
|
const dot_prop_1 = require("dot-prop");
|
|
5
5
|
const utils_1 = require("./tools/utils");
|
|
6
6
|
const utils_2 = require("./tools/utils");
|
|
@@ -9,17 +9,17 @@ const lodash_1 = require("lodash");
|
|
|
9
9
|
RFC for Keyword Preservation: https://github.com/auth0/auth0-deploy-cli/issues/688
|
|
10
10
|
Original Github Issue: https://github.com/auth0/auth0-deploy-cli/issues/328
|
|
11
11
|
*/
|
|
12
|
-
const
|
|
12
|
+
const doesHaveKeywordMarker = (string, keywordMappings) => {
|
|
13
13
|
return !Object.keys(keywordMappings).every((keyword) => {
|
|
14
14
|
const hasArrayMarker = (0, utils_2.keywordReplaceArrayRegExp)(keyword).test(string);
|
|
15
15
|
const hasStringMarker = (0, utils_2.keywordReplaceStringRegExp)(keyword).test(string);
|
|
16
16
|
return !hasArrayMarker && !hasStringMarker;
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
|
-
exports.
|
|
19
|
+
exports.doesHaveKeywordMarker = doesHaveKeywordMarker;
|
|
20
20
|
const getPreservableFieldsFromAssets = (asset, keywordMappings, resourceSpecificIdentifiers, address = '') => {
|
|
21
21
|
if (typeof asset === 'string') {
|
|
22
|
-
if ((0, exports.
|
|
22
|
+
if ((0, exports.doesHaveKeywordMarker)(asset, keywordMappings)) {
|
|
23
23
|
return [address];
|
|
24
24
|
}
|
|
25
25
|
return [];
|
|
@@ -28,13 +28,24 @@ const getPreservableFieldsFromAssets = (asset, keywordMappings, resourceSpecific
|
|
|
28
28
|
if (Array.isArray(asset)) {
|
|
29
29
|
return asset
|
|
30
30
|
.map((arrayItem) => {
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
return [];
|
|
37
|
-
|
|
31
|
+
const resourceIdentifiers = (() => {
|
|
32
|
+
const identifiers = resourceSpecificIdentifiers[address];
|
|
33
|
+
if (Array.isArray(identifiers)) {
|
|
34
|
+
return identifiers;
|
|
35
|
+
}
|
|
36
|
+
return [identifiers];
|
|
37
|
+
})();
|
|
38
|
+
return resourceIdentifiers
|
|
39
|
+
.map((resourceIdentifier) => {
|
|
40
|
+
resourceSpecificIdentifiers[address];
|
|
41
|
+
if (resourceIdentifier === undefined)
|
|
42
|
+
return []; // See if this specific resource type has an identifier
|
|
43
|
+
const identifierFieldValue = arrayItem[resourceIdentifier];
|
|
44
|
+
if (identifierFieldValue === undefined)
|
|
45
|
+
return []; // See if this specific array item possess the resource-specific identifier
|
|
46
|
+
return (0, exports.getPreservableFieldsFromAssets)(arrayItem, keywordMappings, resourceSpecificIdentifiers, `${address}${shouldRenderDot ? '.' : ''}[${resourceIdentifier}=${identifierFieldValue}]`);
|
|
47
|
+
})
|
|
48
|
+
.flat();
|
|
38
49
|
})
|
|
39
50
|
.flat();
|
|
40
51
|
}
|
|
@@ -66,7 +77,7 @@ const getAssetsValueByAddress = (address, assets) => {
|
|
|
66
77
|
}
|
|
67
78
|
// It is easier to handle an address piece-by-piece by
|
|
68
79
|
// splitting on the period into separate "directions"
|
|
69
|
-
const directions = address.split(
|
|
80
|
+
const directions = address.split(/\.(?![^\[]*\])/g);
|
|
70
81
|
// If the the next directions are the proprietary array syntax (ex: `[name=foo]`)
|
|
71
82
|
// then perform lookup against unique array-item property
|
|
72
83
|
if (directions[0].charAt(0) === '[') {
|
|
@@ -87,7 +98,7 @@ exports.getAssetsValueByAddress = getAssetsValueByAddress;
|
|
|
87
98
|
// of updating a specific property for a given asset tree using the dot-prop library
|
|
88
99
|
// returns null if address value does not exist in asset tree
|
|
89
100
|
const convertAddressToDotNotation = (assets, address, finalAddressTrail = '') => {
|
|
90
|
-
const directions = address.split(
|
|
101
|
+
const directions = address.split(/\.(?![^\[]*\])/g);
|
|
91
102
|
if (directions[0] === '')
|
|
92
103
|
return finalAddressTrail;
|
|
93
104
|
if (directions[0].charAt(0) === '[') {
|
|
@@ -133,7 +144,14 @@ const preserveKeywords = ({ localAssets, remoteAssets, keywordMappings, auth0Han
|
|
|
133
144
|
let updatedRemoteAssets = (0, lodash_1.cloneDeep)(remoteAssets);
|
|
134
145
|
addresses.forEach((address) => {
|
|
135
146
|
const localValue = (0, exports.getAssetsValueByAddress)(address, localAssets);
|
|
136
|
-
const
|
|
147
|
+
const remoteAssetsAddress = (() => {
|
|
148
|
+
const doesAddressHaveKeyword = (0, exports.doesHaveKeywordMarker)(address, keywordMappings);
|
|
149
|
+
if (doesAddressHaveKeyword) {
|
|
150
|
+
return (0, utils_1.keywordReplace)(address, keywordMappings);
|
|
151
|
+
}
|
|
152
|
+
return address;
|
|
153
|
+
})();
|
|
154
|
+
const remoteValue = (0, exports.getAssetsValueByAddress)(remoteAssetsAddress, remoteAssets);
|
|
137
155
|
const localValueWithReplacement = (0, utils_1.keywordReplace)(localValue, keywordMappings);
|
|
138
156
|
const localAndRemoteValuesAreEqual = (() => {
|
|
139
157
|
if (typeof remoteValue === 'string') {
|
|
@@ -144,7 +162,16 @@ const preserveKeywords = ({ localAssets, remoteAssets, keywordMappings, auth0Han
|
|
|
144
162
|
if (!localAndRemoteValuesAreEqual) {
|
|
145
163
|
console.warn(`WARNING! The remote value with address of ${address} has value of "${remoteValue}" but will be preserved with "${localValueWithReplacement}" due to keyword preservation.`);
|
|
146
164
|
}
|
|
147
|
-
|
|
165
|
+
// Two address possibilities are provided to account for cases when there is a keyword
|
|
166
|
+
// in the resources's identifier field. When the resource identifier's field is preserved
|
|
167
|
+
// on the remote assets tree, it loses its identify, so we'll need to try two addresses:
|
|
168
|
+
// one where the identifier field has a keyword and one where the identifier field has
|
|
169
|
+
// the literal replaced value.
|
|
170
|
+
// Example: `customDomains.[domain=##DOMAIN].domain` and `customDomains.[domain=travel0.com].domain`
|
|
171
|
+
updatedRemoteAssets = (0, exports.updateAssetsByAddress)(updatedRemoteAssets, address, //Two possible addresses need to be passed, one with identifier field keyword replaced and one where it is not replaced. Ex: `customDomains.[domain=##DOMAIN].domain` and `customDomains.[domain=travel0.com].domain`
|
|
172
|
+
localValue);
|
|
173
|
+
updatedRemoteAssets = (0, exports.updateAssetsByAddress)(updatedRemoteAssets, remoteAssetsAddress, //Two possible addresses need to be passed, one with identifier field keyword replaced and one where it is not replaced. Ex: `customDomains.[domain=##DOMAIN].domain` and `customDomains.[domain=travel0.com].domain`
|
|
174
|
+
localValue);
|
|
148
175
|
});
|
|
149
176
|
return updatedRemoteAssets;
|
|
150
177
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keywordPreservation.js","sourceRoot":"","sources":["../src/keywordPreservation.ts"],"names":[],"mappings":";;;AAAA,uCAA4E;AAC5E,yCAA+C;AAE/C,yCAAsF;AACtF,mCAAmC;AAGnC;;;EAGE;AAEK,MAAM,
|
|
1
|
+
{"version":3,"file":"keywordPreservation.js","sourceRoot":"","sources":["../src/keywordPreservation.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,10 +89,13 @@ class TenantHandler extends default_1.default {
|
|
|
89
89
|
if (!tenant)
|
|
90
90
|
return;
|
|
91
91
|
const existingTenant = this.existing || (yield this.getType());
|
|
92
|
-
const updatedTenant = Object.assign(
|
|
92
|
+
const updatedTenant = Object.assign({}, tenant);
|
|
93
|
+
if ('flags' in updatedTenant) {
|
|
94
|
+
updatedTenant.flags = (0, exports.sanitizeMigrationFlags)({
|
|
93
95
|
existingFlags: existingTenant.flags,
|
|
94
96
|
proposedFlags: tenant.flags,
|
|
95
|
-
})
|
|
97
|
+
});
|
|
98
|
+
}
|
|
96
99
|
if (updatedTenant && Object.keys(updatedTenant).length > 0) {
|
|
97
100
|
yield this.client.tenant.updateSettings(updatedTenant);
|
|
98
101
|
this.updated += 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../../src/tools/auth0/handlers/tenant.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAAoD;AAEpD,qDAAkD;AAClD,mCAAsD;AACtD,uCAAkD;AAGrC,QAAA,MAAM,GAAG;IACpB,IAAI,EAAE,QAAQ;CACf,CAAC;AAIF,MAAM,aAAa,GAAG;IACpB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAW,CAAC;IAC3B,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAW,CAAC;IAC7B,GAAG,sBAAc;CAClB,CAAC;AAEF,MAAqB,aAAc,SAAQ,iBAAc;IAGvD,YAAY,OAAuB;QACjC,KAAK,iCACA,OAAO,KACV,IAAI,EAAE,QAAQ,IACd,CAAC;IACL,CAAC;IAEK,OAAO;;YACX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAEtD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;YAEvB,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC5B,IAAI,MAAM,CAAC,GAAG,CAAC;oBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAEK,QAAQ,CAAC,MAAc;;YAC3B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAE1B,uBAAuB;YACvB,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEpB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACvB,MAAM,IAAI,yBAAe,CACvB,uBAAuB,IAAA,2BAAmB,EACxC,QAAQ,CACT,oGAAoG,CACtG,CAAC;aACH;QACH,CAAC;KAAA;IAED,kFAAkF;IAE5E,cAAc,CAAC,MAAc;;YACjC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;YAE1B,wBAAwB;YACxB,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEpB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YAE/D,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../../src/tools/auth0/handlers/tenant.ts"],"names":[],"mappings":"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"}
|