auth0-deploy-cli 8.22.0 → 8.23.1
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/.circleci/config.yml +57 -5
- package/CHANGELOG.md +41 -2
- package/README.md +1 -1
- package/eslint.config.js +131 -0
- package/lib/args.js +0 -1
- package/lib/commands/export.js +41 -49
- package/lib/commands/import.js +36 -43
- package/lib/commands/index.js +0 -1
- package/lib/configFactory.js +0 -1
- package/lib/context/defaults.d.ts +1 -0
- package/lib/context/defaults.js +57 -10
- package/lib/context/directory/handlers/actions.js +40 -39
- package/lib/context/directory/handlers/attackProtection.js +22 -34
- package/lib/context/directory/handlers/branding.js +12 -21
- package/lib/context/directory/handlers/clientGrants.js +52 -62
- package/lib/context/directory/handlers/clients.js +44 -57
- package/lib/context/directory/handlers/connectionProfiles.d.ts +1 -1
- package/lib/context/directory/handlers/connectionProfiles.js +20 -30
- package/lib/context/directory/handlers/connections.js +32 -41
- package/lib/context/directory/handlers/customDomains.js +9 -21
- package/lib/context/directory/handlers/databases.js +37 -35
- package/lib/context/directory/handlers/emailProvider.js +22 -36
- package/lib/context/directory/handlers/emailTemplates.js +20 -29
- package/lib/context/directory/handlers/flowVaultConnections.js +40 -49
- package/lib/context/directory/handlers/flows.js +38 -48
- package/lib/context/directory/handlers/forms.js +38 -48
- package/lib/context/directory/handlers/guardianFactorProviders.js +9 -21
- package/lib/context/directory/handlers/guardianFactorTemplates.js +9 -21
- package/lib/context/directory/handlers/guardianFactors.js +9 -21
- package/lib/context/directory/handlers/guardianPhoneFactorMessageTypes.js +8 -20
- package/lib/context/directory/handlers/guardianPhoneFactorSelectedProvider.js +8 -20
- package/lib/context/directory/handlers/guardianPolicies.js +8 -20
- package/lib/context/directory/handlers/hooks.js +24 -34
- package/lib/context/directory/handlers/index.js +4 -1
- package/lib/context/directory/handlers/logStreams.js +12 -24
- package/lib/context/directory/handlers/networkACLs.js +22 -34
- package/lib/context/directory/handlers/organizations.js +39 -44
- package/lib/context/directory/handlers/pages.js +31 -37
- package/lib/context/directory/handlers/phoneProvider.js +12 -24
- package/lib/context/directory/handlers/phoneTemplates.d.ts +6 -0
- package/lib/context/directory/handlers/phoneTemplates.js +39 -0
- package/lib/context/directory/handlers/prompts.js +58 -76
- package/lib/context/directory/handlers/resourceServers.d.ts +1 -1
- package/lib/context/directory/handlers/resourceServers.js +18 -30
- package/lib/context/directory/handlers/roles.js +21 -31
- package/lib/context/directory/handlers/rules.js +22 -32
- package/lib/context/directory/handlers/rulesConfigs.js +3 -15
- package/lib/context/directory/handlers/selfServiceProfiles.js +28 -40
- package/lib/context/directory/handlers/tenant.js +14 -34
- package/lib/context/directory/handlers/themes.js +9 -21
- package/lib/context/directory/handlers/tokenExchangeProfiles.d.ts +5 -0
- package/lib/context/directory/handlers/tokenExchangeProfiles.js +41 -0
- package/lib/context/directory/handlers/triggers.d.ts +1 -1
- package/lib/context/directory/handlers/triggers.js +16 -26
- package/lib/context/directory/handlers/userAttributeProfiles.d.ts +1 -1
- package/lib/context/directory/handlers/userAttributeProfiles.js +16 -26
- package/lib/context/directory/index.js +66 -80
- package/lib/context/index.js +7 -18
- package/lib/context/yaml/handlers/actions.js +39 -41
- package/lib/context/yaml/handlers/attackProtection.js +27 -41
- package/lib/context/yaml/handlers/branding.js +47 -69
- package/lib/context/yaml/handlers/clientGrants.js +26 -40
- package/lib/context/yaml/handlers/clients.js +69 -84
- package/lib/context/yaml/handlers/connectionProfiles.d.ts +1 -1
- package/lib/context/yaml/handlers/connectionProfiles.js +20 -34
- package/lib/context/yaml/handlers/connections.js +63 -67
- package/lib/context/yaml/handlers/customDomains.js +7 -19
- package/lib/context/yaml/handlers/databases.js +63 -65
- package/lib/context/yaml/handlers/emailProvider.js +22 -37
- package/lib/context/yaml/handlers/emailTemplates.js +28 -39
- package/lib/context/yaml/handlers/flowVaultConnections.js +37 -50
- package/lib/context/yaml/handlers/flows.js +55 -66
- package/lib/context/yaml/handlers/forms.js +55 -66
- package/lib/context/yaml/handlers/guardianFactorProviders.js +7 -19
- package/lib/context/yaml/handlers/guardianFactorTemplates.js +7 -19
- package/lib/context/yaml/handlers/guardianFactors.js +7 -19
- package/lib/context/yaml/handlers/guardianPhoneFactorMessageTypes.js +7 -19
- package/lib/context/yaml/handlers/guardianPhoneFactorSelectedProvider.js +7 -19
- package/lib/context/yaml/handlers/guardianPolicies.js +7 -19
- package/lib/context/yaml/handlers/hooks.js +34 -48
- package/lib/context/yaml/handlers/index.js +4 -1
- package/lib/context/yaml/handlers/logStreams.js +16 -30
- package/lib/context/yaml/handlers/networkACLs.js +25 -39
- package/lib/context/yaml/handlers/organizations.js +37 -46
- package/lib/context/yaml/handlers/pages.js +31 -39
- package/lib/context/yaml/handlers/phoneProvider.js +17 -31
- package/lib/context/yaml/handlers/phoneTemplates.d.ts +6 -0
- package/lib/context/yaml/handlers/phoneTemplates.js +25 -0
- package/lib/context/yaml/handlers/prompts.js +22 -47
- package/lib/context/yaml/handlers/resourceServers.d.ts +1 -1
- package/lib/context/yaml/handlers/resourceServers.js +21 -33
- package/lib/context/yaml/handlers/roles.js +19 -33
- package/lib/context/yaml/handlers/rules.js +28 -39
- package/lib/context/yaml/handlers/rulesConfigs.js +14 -28
- package/lib/context/yaml/handlers/selfServiceProfiles.js +29 -43
- package/lib/context/yaml/handlers/tenant.js +19 -41
- package/lib/context/yaml/handlers/themes.js +7 -19
- package/lib/context/yaml/handlers/tokenExchangeProfiles.d.ts +5 -0
- package/lib/context/yaml/handlers/tokenExchangeProfiles.js +27 -0
- package/lib/context/yaml/handlers/triggers.d.ts +1 -1
- package/lib/context/yaml/handlers/triggers.js +15 -29
- package/lib/context/yaml/handlers/userAttributeProfiles.d.ts +1 -1
- package/lib/context/yaml/handlers/userAttributeProfiles.js +7 -19
- package/lib/context/yaml/index.js +120 -128
- package/lib/index.d.ts +4 -96
- package/lib/index.js +24 -34
- package/lib/keywordPreservation.d.ts +1 -1
- package/lib/keywordPreservation.js +11 -6
- package/lib/logger.js +0 -1
- package/lib/readonly.js +3 -4
- package/lib/sessionDurationsToMinutes.js +0 -1
- package/lib/tools/auth0/client.js +108 -127
- package/lib/tools/auth0/handlers/actions.d.ts +8 -26
- package/lib/tools/auth0/handlers/actions.js +138 -149
- package/lib/tools/auth0/handlers/attackProtection.js +80 -92
- package/lib/tools/auth0/handlers/branding.js +75 -99
- package/lib/tools/auth0/handlers/clientGrants.d.ts +2 -9
- package/lib/tools/auth0/handlers/clientGrants.js +68 -73
- package/lib/tools/auth0/handlers/clients.d.ts +17 -16
- package/lib/tools/auth0/handlers/clients.js +120 -106
- package/lib/tools/auth0/handlers/connectionProfiles.d.ts +3 -1
- package/lib/tools/auth0/handlers/connectionProfiles.js +36 -32
- package/lib/tools/auth0/handlers/connections.d.ts +3 -1
- package/lib/tools/auth0/handlers/connections.js +130 -135
- package/lib/tools/auth0/handlers/customDomains.d.ts +4 -1
- package/lib/tools/auth0/handlers/customDomains.js +43 -53
- package/lib/tools/auth0/handlers/databases.js +94 -114
- package/lib/tools/auth0/handlers/default.d.ts +2 -2
- package/lib/tools/auth0/handlers/default.js +210 -171
- package/lib/tools/auth0/handlers/emailProvider.js +41 -52
- package/lib/tools/auth0/handlers/emailTemplates.d.ts +1 -0
- package/lib/tools/auth0/handlers/emailTemplates.js +54 -70
- package/lib/tools/auth0/handlers/flowVaultConnections.d.ts +5 -12
- package/lib/tools/auth0/handlers/flowVaultConnections.js +102 -145
- package/lib/tools/auth0/handlers/flows.d.ts +2 -3
- package/lib/tools/auth0/handlers/flows.js +92 -129
- package/lib/tools/auth0/handlers/forms.d.ts +3 -3
- package/lib/tools/auth0/handlers/forms.js +98 -112
- package/lib/tools/auth0/handlers/guardianFactorProviders.js +61 -84
- package/lib/tools/auth0/handlers/guardianFactorTemplates.js +46 -68
- package/lib/tools/auth0/handlers/guardianFactors.js +35 -45
- package/lib/tools/auth0/handlers/guardianPhoneFactorMessageTypes.js +29 -45
- package/lib/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.js +29 -45
- package/lib/tools/auth0/handlers/guardianPolicies.js +20 -35
- package/lib/tools/auth0/handlers/hooks.js +123 -153
- package/lib/tools/auth0/handlers/index.js +4 -1
- package/lib/tools/auth0/handlers/logStreams.js +42 -47
- package/lib/tools/auth0/handlers/networkACLs.d.ts +5 -4
- package/lib/tools/auth0/handlers/networkACLs.js +115 -133
- package/lib/tools/auth0/handlers/organizations.d.ts +10 -9
- package/lib/tools/auth0/handlers/organizations.js +350 -431
- package/lib/tools/auth0/handlers/pages.js +74 -83
- package/lib/tools/auth0/handlers/phoneProvider.d.ts +2 -2
- package/lib/tools/auth0/handlers/phoneProvider.js +69 -82
- package/lib/tools/auth0/handlers/phoneTemplates.d.ts +63 -0
- package/lib/tools/auth0/handlers/phoneTemplates.js +221 -0
- package/lib/tools/auth0/handlers/prompts.d.ts +7 -7
- package/lib/tools/auth0/handlers/prompts.js +246 -240
- package/lib/tools/auth0/handlers/resourceServers.d.ts +6 -2
- package/lib/tools/auth0/handlers/resourceServers.js +94 -105
- package/lib/tools/auth0/handlers/roles.js +149 -178
- package/lib/tools/auth0/handlers/rules.js +144 -162
- package/lib/tools/auth0/handlers/rulesConfigs.js +30 -39
- package/lib/tools/auth0/handlers/scimHandler.d.ts +4 -3
- package/lib/tools/auth0/handlers/scimHandler.js +110 -132
- package/lib/tools/auth0/handlers/selfServiceProfiles.d.ts +12 -3
- package/lib/tools/auth0/handlers/selfServiceProfiles.js +173 -203
- package/lib/tools/auth0/handlers/tenant.d.ts +5 -3
- package/lib/tools/auth0/handlers/tenant.js +46 -52
- package/lib/tools/auth0/handlers/themes.d.ts +12 -12
- package/lib/tools/auth0/handlers/themes.js +86 -102
- package/lib/tools/auth0/handlers/tokenExchangeProfiles.d.ts +60 -0
- package/lib/tools/auth0/handlers/tokenExchangeProfiles.js +263 -0
- package/lib/tools/auth0/handlers/triggers.js +59 -75
- package/lib/tools/auth0/handlers/userAttributeProfiles.d.ts +3 -2
- package/lib/tools/auth0/handlers/userAttributeProfiles.js +41 -43
- package/lib/tools/auth0/index.js +35 -48
- package/lib/tools/auth0/schema.js +6 -4
- package/lib/tools/calculateChanges.js +24 -15
- package/lib/tools/constants.d.ts +4 -2
- package/lib/tools/constants.js +3 -1
- package/lib/tools/deploy.js +17 -29
- package/lib/tools/index.d.ts +3 -89
- package/lib/tools/index.js +3 -2
- package/lib/tools/utils.d.ts +1 -1
- package/lib/tools/utils.js +12 -22
- package/lib/tools/validationError.js +0 -1
- package/lib/types.d.ts +13 -5
- package/lib/types.js +0 -1
- package/lib/utils.d.ts +3 -58
- package/lib/utils.js +8 -5
- package/package.json +11 -10
- package/tsconfig.json +4 -3
- package/.eslintignore +0 -5
- package/.eslintrc +0 -69
- package/lib/args.js.map +0 -1
- package/lib/commands/export.js.map +0 -1
- package/lib/commands/import.js.map +0 -1
- package/lib/commands/index.js.map +0 -1
- package/lib/configFactory.js.map +0 -1
- package/lib/context/defaults.js.map +0 -1
- package/lib/context/directory/handlers/actions.js.map +0 -1
- package/lib/context/directory/handlers/attackProtection.js.map +0 -1
- package/lib/context/directory/handlers/branding.js.map +0 -1
- package/lib/context/directory/handlers/clientGrants.js.map +0 -1
- package/lib/context/directory/handlers/clients.js.map +0 -1
- package/lib/context/directory/handlers/connectionProfiles.js.map +0 -1
- package/lib/context/directory/handlers/connections.js.map +0 -1
- package/lib/context/directory/handlers/customDomains.js.map +0 -1
- package/lib/context/directory/handlers/databases.js.map +0 -1
- package/lib/context/directory/handlers/emailProvider.js.map +0 -1
- package/lib/context/directory/handlers/emailTemplates.js.map +0 -1
- package/lib/context/directory/handlers/flowVaultConnections.js.map +0 -1
- package/lib/context/directory/handlers/flows.js.map +0 -1
- package/lib/context/directory/handlers/forms.js.map +0 -1
- package/lib/context/directory/handlers/guardianFactorProviders.js.map +0 -1
- package/lib/context/directory/handlers/guardianFactorTemplates.js.map +0 -1
- package/lib/context/directory/handlers/guardianFactors.js.map +0 -1
- package/lib/context/directory/handlers/guardianPhoneFactorMessageTypes.js.map +0 -1
- package/lib/context/directory/handlers/guardianPhoneFactorSelectedProvider.js.map +0 -1
- package/lib/context/directory/handlers/guardianPolicies.js.map +0 -1
- package/lib/context/directory/handlers/hooks.js.map +0 -1
- package/lib/context/directory/handlers/index.js.map +0 -1
- package/lib/context/directory/handlers/logStreams.js.map +0 -1
- package/lib/context/directory/handlers/networkACLs.js.map +0 -1
- package/lib/context/directory/handlers/organizations.js.map +0 -1
- package/lib/context/directory/handlers/pages.js.map +0 -1
- package/lib/context/directory/handlers/phoneProvider.js.map +0 -1
- package/lib/context/directory/handlers/prompts.js.map +0 -1
- package/lib/context/directory/handlers/resourceServers.js.map +0 -1
- package/lib/context/directory/handlers/roles.js.map +0 -1
- package/lib/context/directory/handlers/rules.js.map +0 -1
- package/lib/context/directory/handlers/rulesConfigs.js.map +0 -1
- package/lib/context/directory/handlers/selfServiceProfiles.js.map +0 -1
- package/lib/context/directory/handlers/tenant.js.map +0 -1
- package/lib/context/directory/handlers/themes.js.map +0 -1
- package/lib/context/directory/handlers/triggers.js.map +0 -1
- package/lib/context/directory/handlers/userAttributeProfiles.js.map +0 -1
- package/lib/context/directory/index.js.map +0 -1
- package/lib/context/index.js.map +0 -1
- package/lib/context/yaml/handlers/actions.js.map +0 -1
- package/lib/context/yaml/handlers/attackProtection.js.map +0 -1
- package/lib/context/yaml/handlers/branding.js.map +0 -1
- package/lib/context/yaml/handlers/clientGrants.js.map +0 -1
- package/lib/context/yaml/handlers/clients.js.map +0 -1
- package/lib/context/yaml/handlers/connectionProfiles.js.map +0 -1
- package/lib/context/yaml/handlers/connections.js.map +0 -1
- package/lib/context/yaml/handlers/customDomains.js.map +0 -1
- package/lib/context/yaml/handlers/databases.js.map +0 -1
- package/lib/context/yaml/handlers/emailProvider.js.map +0 -1
- package/lib/context/yaml/handlers/emailTemplates.js.map +0 -1
- package/lib/context/yaml/handlers/flowVaultConnections.js.map +0 -1
- package/lib/context/yaml/handlers/flows.js.map +0 -1
- package/lib/context/yaml/handlers/forms.js.map +0 -1
- package/lib/context/yaml/handlers/guardianFactorProviders.js.map +0 -1
- package/lib/context/yaml/handlers/guardianFactorTemplates.js.map +0 -1
- package/lib/context/yaml/handlers/guardianFactors.js.map +0 -1
- package/lib/context/yaml/handlers/guardianPhoneFactorMessageTypes.js.map +0 -1
- package/lib/context/yaml/handlers/guardianPhoneFactorSelectedProvider.js.map +0 -1
- package/lib/context/yaml/handlers/guardianPolicies.js.map +0 -1
- package/lib/context/yaml/handlers/hooks.js.map +0 -1
- package/lib/context/yaml/handlers/index.js.map +0 -1
- package/lib/context/yaml/handlers/logStreams.js.map +0 -1
- package/lib/context/yaml/handlers/networkACLs.js.map +0 -1
- package/lib/context/yaml/handlers/organizations.js.map +0 -1
- package/lib/context/yaml/handlers/pages.js.map +0 -1
- package/lib/context/yaml/handlers/phoneProvider.js.map +0 -1
- package/lib/context/yaml/handlers/prompts.js.map +0 -1
- package/lib/context/yaml/handlers/resourceServers.js.map +0 -1
- package/lib/context/yaml/handlers/roles.js.map +0 -1
- package/lib/context/yaml/handlers/rules.js.map +0 -1
- package/lib/context/yaml/handlers/rulesConfigs.js.map +0 -1
- package/lib/context/yaml/handlers/selfServiceProfiles.js.map +0 -1
- package/lib/context/yaml/handlers/tenant.js.map +0 -1
- package/lib/context/yaml/handlers/themes.js.map +0 -1
- package/lib/context/yaml/handlers/triggers.js.map +0 -1
- package/lib/context/yaml/handlers/userAttributeProfiles.js.map +0 -1
- package/lib/context/yaml/index.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/keywordPreservation.js.map +0 -1
- package/lib/logger.js.map +0 -1
- package/lib/readonly.js.map +0 -1
- package/lib/sessionDurationsToMinutes.js.map +0 -1
- package/lib/tools/auth0/client.js.map +0 -1
- package/lib/tools/auth0/handlers/actions.js.map +0 -1
- package/lib/tools/auth0/handlers/attackProtection.js.map +0 -1
- package/lib/tools/auth0/handlers/branding.js.map +0 -1
- package/lib/tools/auth0/handlers/clientGrants.js.map +0 -1
- package/lib/tools/auth0/handlers/clients.js.map +0 -1
- package/lib/tools/auth0/handlers/connectionProfiles.js.map +0 -1
- package/lib/tools/auth0/handlers/connections.js.map +0 -1
- package/lib/tools/auth0/handlers/customDomains.js.map +0 -1
- package/lib/tools/auth0/handlers/databases.js.map +0 -1
- package/lib/tools/auth0/handlers/default.js.map +0 -1
- package/lib/tools/auth0/handlers/emailProvider.js.map +0 -1
- package/lib/tools/auth0/handlers/emailTemplates.js.map +0 -1
- package/lib/tools/auth0/handlers/flowVaultConnections.js.map +0 -1
- package/lib/tools/auth0/handlers/flows.js.map +0 -1
- package/lib/tools/auth0/handlers/forms.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianFactorProviders.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianFactorTemplates.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianFactors.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianPhoneFactorMessageTypes.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianPhoneFactorSelectedProvider.js.map +0 -1
- package/lib/tools/auth0/handlers/guardianPolicies.js.map +0 -1
- package/lib/tools/auth0/handlers/hooks.js.map +0 -1
- package/lib/tools/auth0/handlers/index.js.map +0 -1
- package/lib/tools/auth0/handlers/logStreams.js.map +0 -1
- package/lib/tools/auth0/handlers/networkACLs.js.map +0 -1
- package/lib/tools/auth0/handlers/organizations.js.map +0 -1
- package/lib/tools/auth0/handlers/pages.js.map +0 -1
- package/lib/tools/auth0/handlers/phoneProvider.js.map +0 -1
- package/lib/tools/auth0/handlers/prompts.js.map +0 -1
- package/lib/tools/auth0/handlers/resourceServers.js.map +0 -1
- package/lib/tools/auth0/handlers/roles.js.map +0 -1
- package/lib/tools/auth0/handlers/rules.js.map +0 -1
- package/lib/tools/auth0/handlers/rulesConfigs.js.map +0 -1
- package/lib/tools/auth0/handlers/scimHandler.js.map +0 -1
- package/lib/tools/auth0/handlers/selfServiceProfiles.js.map +0 -1
- package/lib/tools/auth0/handlers/tenant.js.map +0 -1
- package/lib/tools/auth0/handlers/themes.js.map +0 -1
- package/lib/tools/auth0/handlers/triggers.js.map +0 -1
- package/lib/tools/auth0/handlers/userAttributeProfiles.js.map +0 -1
- package/lib/tools/auth0/index.js.map +0 -1
- package/lib/tools/auth0/schema.js.map +0 -1
- package/lib/tools/calculateChanges.js.map +0 -1
- package/lib/tools/constants.js.map +0 -1
- package/lib/tools/deploy.js.map +0 -1
- package/lib/tools/index.js.map +0 -1
- package/lib/tools/utils.js.map +0 -1
- package/lib/tools/validationError.js.map +0 -1
- package/lib/types.js.map +0 -1
- package/lib/utils.js.map +0 -1
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -61,177 +52,168 @@ exports.schema = {
|
|
|
61
52
|
};
|
|
62
53
|
class RulesHandler extends default_1.default {
|
|
63
54
|
constructor(options) {
|
|
64
|
-
super(
|
|
55
|
+
super({
|
|
56
|
+
...options,
|
|
57
|
+
type: 'rules',
|
|
58
|
+
stripUpdateFields: ['stage'], // Fields not allowed in updates
|
|
59
|
+
});
|
|
65
60
|
}
|
|
66
|
-
getType() {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (this.existing)
|
|
70
|
-
return this.existing;
|
|
71
|
-
const rules = yield (0, client_1.paginate)(this.client.rules.getAll, {
|
|
72
|
-
paginate: true,
|
|
73
|
-
include_totals: true,
|
|
74
|
-
});
|
|
75
|
-
this.existing = rules;
|
|
61
|
+
async getType() {
|
|
62
|
+
try {
|
|
63
|
+
if (this.existing)
|
|
76
64
|
return this.existing;
|
|
65
|
+
const rules = await (0, client_1.paginate)(this.client.rules.list, {
|
|
66
|
+
paginate: true,
|
|
67
|
+
});
|
|
68
|
+
this.existing = rules;
|
|
69
|
+
return this.existing;
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
if ((0, utils_1.isDeprecatedError)(err)) {
|
|
73
|
+
return null;
|
|
77
74
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
return null;
|
|
81
|
-
}
|
|
82
|
-
throw err;
|
|
83
|
-
}
|
|
84
|
-
});
|
|
75
|
+
throw err;
|
|
76
|
+
}
|
|
85
77
|
}
|
|
86
78
|
objString(rule) {
|
|
87
79
|
return super.objString({ name: rule.name, order: rule.order });
|
|
88
80
|
}
|
|
89
|
-
calcChanges(
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (existing === null) {
|
|
95
|
-
return {
|
|
96
|
-
del: [],
|
|
97
|
-
update: [],
|
|
98
|
-
conflicts: [],
|
|
99
|
-
create: [],
|
|
100
|
-
reOrder: [],
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
// Filter excluded rules
|
|
104
|
-
if (!includeExcluded) {
|
|
105
|
-
rules = rules.filter((r) => !excludedRules.includes(r.name));
|
|
106
|
-
existing = existing.filter((r) => !excludedRules.includes(r.name));
|
|
107
|
-
}
|
|
108
|
-
// Figure out what needs to be updated vs created
|
|
109
|
-
const { del, update, create, conflicts } = (0, calculateChanges_1.calculateChanges)({
|
|
110
|
-
handler: this,
|
|
111
|
-
assets: rules,
|
|
112
|
-
existing,
|
|
113
|
-
identifiers: this.identifiers,
|
|
114
|
-
allowDelete: !!this.config('AUTH0_ALLOW_DELETE'),
|
|
115
|
-
});
|
|
116
|
-
// Figure out the rules that need to be re-ordered
|
|
117
|
-
const futureRules = [...create, ...update];
|
|
118
|
-
const futureMaxOrder = Math.max(...futureRules.map((r) => r.order));
|
|
119
|
-
const existingMaxOrder = Math.max(...existing.map((r) => r.order));
|
|
120
|
-
let nextOrderNo = Math.max(futureMaxOrder, existingMaxOrder);
|
|
121
|
-
//@ts-ignore because we know reOrder is Asset[]
|
|
122
|
-
const reOrder = futureRules.reduce((accum, r) => {
|
|
123
|
-
if (existing === null)
|
|
124
|
-
return accum;
|
|
125
|
-
const conflict = existing.find((f) => r.order === f.order && r.name !== f.name);
|
|
126
|
-
if (conflict !== undefined) {
|
|
127
|
-
nextOrderNo += 1;
|
|
128
|
-
return [
|
|
129
|
-
...accum,
|
|
130
|
-
Object.assign(Object.assign({}, conflict), { order: nextOrderNo }),
|
|
131
|
-
];
|
|
132
|
-
}
|
|
133
|
-
return accum;
|
|
134
|
-
}, []);
|
|
81
|
+
async calcChanges(assets, includeExcluded = false) {
|
|
82
|
+
let { rules } = assets;
|
|
83
|
+
const excludedRules = (assets.exclude && assets.exclude.rules) || [];
|
|
84
|
+
let existing = await this.getType();
|
|
85
|
+
if (existing === null) {
|
|
135
86
|
return {
|
|
136
|
-
del,
|
|
137
|
-
update,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
87
|
+
del: [],
|
|
88
|
+
update: [],
|
|
89
|
+
conflicts: [],
|
|
90
|
+
create: [],
|
|
91
|
+
reOrder: [],
|
|
141
92
|
};
|
|
93
|
+
}
|
|
94
|
+
// Filter excluded rules
|
|
95
|
+
if (!includeExcluded) {
|
|
96
|
+
rules = rules.filter((r) => !excludedRules.includes(r.name));
|
|
97
|
+
existing = existing.filter((r) => !excludedRules.includes(r.name));
|
|
98
|
+
}
|
|
99
|
+
// Figure out what needs to be updated vs created
|
|
100
|
+
const { del, update, create, conflicts } = (0, calculateChanges_1.calculateChanges)({
|
|
101
|
+
handler: this,
|
|
102
|
+
assets: rules,
|
|
103
|
+
existing,
|
|
104
|
+
identifiers: this.identifiers,
|
|
105
|
+
allowDelete: !!this.config('AUTH0_ALLOW_DELETE'),
|
|
142
106
|
});
|
|
107
|
+
// Figure out the rules that need to be re-ordered
|
|
108
|
+
const futureRules = [...create, ...update];
|
|
109
|
+
const futureMaxOrder = Math.max(...futureRules.map((r) => r.order));
|
|
110
|
+
const existingMaxOrder = Math.max(...existing.map((r) => r.order));
|
|
111
|
+
let nextOrderNo = Math.max(futureMaxOrder, existingMaxOrder);
|
|
112
|
+
// @ts-ignore because we know reOrder is Asset[]
|
|
113
|
+
const reOrder = futureRules.reduce((accum, r) => {
|
|
114
|
+
if (existing === null)
|
|
115
|
+
return accum;
|
|
116
|
+
const conflict = existing.find((f) => r.order === f.order && r.name !== f.name);
|
|
117
|
+
if (conflict !== undefined) {
|
|
118
|
+
nextOrderNo += 1;
|
|
119
|
+
return [
|
|
120
|
+
...accum,
|
|
121
|
+
{
|
|
122
|
+
...conflict,
|
|
123
|
+
order: nextOrderNo,
|
|
124
|
+
},
|
|
125
|
+
];
|
|
126
|
+
}
|
|
127
|
+
return accum;
|
|
128
|
+
}, []);
|
|
129
|
+
return {
|
|
130
|
+
del,
|
|
131
|
+
update,
|
|
132
|
+
create,
|
|
133
|
+
reOrder,
|
|
134
|
+
conflicts,
|
|
135
|
+
};
|
|
143
136
|
}
|
|
144
|
-
validate(assets) {
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
const rulesSameOrder = (0, utils_1.duplicateItems)(futureRules, 'order');
|
|
165
|
-
if (rulesSameOrder.length > 0) {
|
|
166
|
-
const formatted = rulesSameOrder.map((dups) => dups.map((d) => `${d.name}`));
|
|
167
|
-
throw new validationError_1.default(`There are multiple rules for the following stage-order combinations
|
|
137
|
+
async validate(assets) {
|
|
138
|
+
const { rules } = assets;
|
|
139
|
+
// Do nothing if not set
|
|
140
|
+
if (!rules)
|
|
141
|
+
return;
|
|
142
|
+
const excludedRules = (assets.exclude && assets.exclude.rules) || [];
|
|
143
|
+
// Figure out what needs to be updated vs created
|
|
144
|
+
const { update, create, del } = await this.calcChanges(assets, true);
|
|
145
|
+
// Include del rules which are actually not going to be deleted but are excluded
|
|
146
|
+
// they can still muck up the ordering so we must take it into consideration.
|
|
147
|
+
const futureRules = [
|
|
148
|
+
...create,
|
|
149
|
+
...update,
|
|
150
|
+
...del.filter((r) => excludedRules.includes(r.name)),
|
|
151
|
+
];
|
|
152
|
+
// Detect rules with the same order
|
|
153
|
+
const rulesSameOrder = (0, utils_1.duplicateItems)(futureRules, 'order');
|
|
154
|
+
if (rulesSameOrder.length > 0) {
|
|
155
|
+
const formatted = rulesSameOrder.map((dups) => dups.map((d) => `${d.name}`));
|
|
156
|
+
throw new validationError_1.default(`There are multiple rules for the following stage-order combinations
|
|
168
157
|
${(0, utils_1.convertJsonToString)(formatted)}.
|
|
169
158
|
Only one rule must be defined for the same order number in a stage.`);
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
159
|
+
}
|
|
160
|
+
// Detect Rules that are changing stage as it's not allowed.
|
|
161
|
+
const existing = await this.getType();
|
|
162
|
+
if (existing === null)
|
|
163
|
+
return;
|
|
164
|
+
const stateChanged = futureRules
|
|
165
|
+
.reduce((changed, rule) => [
|
|
166
|
+
...changed,
|
|
167
|
+
...existing.filter((r) => rule.name.toLowerCase() === r.name.toLowerCase() && r.stage !== rule.stage),
|
|
168
|
+
], [])
|
|
169
|
+
.map((r) => r.name);
|
|
170
|
+
if (stateChanged.length > 0) {
|
|
171
|
+
throw new validationError_1.default(`The following rules changed stage which is not allowed:
|
|
183
172
|
${(0, utils_1.convertJsonToString)(stateChanged)}.
|
|
184
173
|
Rename the rules to recreate them and avoid this error.`);
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
});
|
|
174
|
+
}
|
|
175
|
+
await super.validate(assets);
|
|
188
176
|
}
|
|
189
|
-
processChanges(assets) {
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
177
|
+
async processChanges(assets) {
|
|
178
|
+
const { rules } = assets;
|
|
179
|
+
// Do nothing if not set
|
|
180
|
+
if (!rules)
|
|
181
|
+
return;
|
|
182
|
+
logger_1.default.warn('Rules are deprecated, migrate to using actions instead. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
183
|
+
try {
|
|
184
|
+
// Figure out what needs to be updated vs created
|
|
185
|
+
const changes = await this.calcChanges(assets);
|
|
186
|
+
// Temporally re-order rules with conflicting ordering
|
|
187
|
+
await this.client.pool
|
|
188
|
+
.addEachTask({
|
|
189
|
+
data: changes.reOrder,
|
|
190
|
+
generator: (rule) => this.client.rules
|
|
191
|
+
.update(rule.id, (0, utils_1.stripFields)(rule, this.stripUpdateFields))
|
|
192
|
+
.then(() => {
|
|
193
|
+
const updated = {
|
|
194
|
+
name: rule.name,
|
|
195
|
+
stage: rule.stage,
|
|
196
|
+
order: rule.order,
|
|
197
|
+
id: rule.id,
|
|
198
|
+
};
|
|
199
|
+
logger_1.default.info(`Temporally re-order Rule ${(0, utils_1.convertJsonToString)(updated)}`);
|
|
200
|
+
}),
|
|
201
|
+
})
|
|
202
|
+
.promise();
|
|
203
|
+
await super.processChanges(assets, {
|
|
204
|
+
del: changes.del,
|
|
205
|
+
create: changes.create,
|
|
206
|
+
update: changes.update,
|
|
207
|
+
conflicts: changes.conflicts,
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
catch (err) {
|
|
211
|
+
if ((0, utils_1.isDeprecatedError)(err)) {
|
|
212
|
+
logger_1.default.warn('Failed to update rules because functionality has been deprecated in favor of actions. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
197
213
|
return;
|
|
198
|
-
logger_1.default.warn('Rules are deprecated, migrate to using actions instead. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
199
|
-
try {
|
|
200
|
-
// Figure out what needs to be updated vs created
|
|
201
|
-
const changes = yield this.calcChanges(assets);
|
|
202
|
-
// Temporally re-order rules with conflicting ordering
|
|
203
|
-
yield this.client.pool
|
|
204
|
-
.addEachTask({
|
|
205
|
-
data: changes.reOrder,
|
|
206
|
-
generator: (rule) => this.client.rules
|
|
207
|
-
.update({ id: rule.id }, (0, utils_1.stripFields)(rule, this.stripUpdateFields))
|
|
208
|
-
.then(() => {
|
|
209
|
-
const updated = {
|
|
210
|
-
name: rule.name,
|
|
211
|
-
stage: rule.stage,
|
|
212
|
-
order: rule.order,
|
|
213
|
-
id: rule.id,
|
|
214
|
-
};
|
|
215
|
-
logger_1.default.info(`Temporally re-order Rule ${(0, utils_1.convertJsonToString)(updated)}`);
|
|
216
|
-
}),
|
|
217
|
-
})
|
|
218
|
-
.promise();
|
|
219
|
-
yield _super.processChanges.call(this, assets, {
|
|
220
|
-
del: changes.del,
|
|
221
|
-
create: changes.create,
|
|
222
|
-
update: changes.update,
|
|
223
|
-
conflicts: changes.conflicts,
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
|
-
catch (err) {
|
|
227
|
-
if ((0, utils_1.isDeprecatedError)(err)) {
|
|
228
|
-
logger_1.default.warn('Failed to update rules because functionality has been deprecated in favor of actions. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
229
|
-
return;
|
|
230
|
-
}
|
|
231
|
-
throw err;
|
|
232
214
|
}
|
|
233
|
-
|
|
215
|
+
throw err;
|
|
216
|
+
}
|
|
234
217
|
}
|
|
235
218
|
}
|
|
236
219
|
exports.default = RulesHandler;
|
|
237
|
-
//# sourceMappingURL=rules.js.map
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -30,47 +21,47 @@ exports.schema = {
|
|
|
30
21
|
};
|
|
31
22
|
class RulesConfigsHandler extends default_1.default {
|
|
32
23
|
constructor(options) {
|
|
33
|
-
super(
|
|
24
|
+
super({
|
|
25
|
+
...options,
|
|
26
|
+
type: 'rulesConfigs',
|
|
27
|
+
id: 'key',
|
|
28
|
+
functions: {
|
|
34
29
|
update: 'set', // Update or Creation of a ruleConfig is via set not update
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
getType() {
|
|
38
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
try {
|
|
40
|
-
const { data } = yield this.client.rulesConfigs.getAll();
|
|
41
|
-
return data;
|
|
42
|
-
}
|
|
43
|
-
catch (err) {
|
|
44
|
-
if ((0, utils_1.isDeprecatedError)(err))
|
|
45
|
-
return null;
|
|
46
|
-
throw err;
|
|
47
|
-
}
|
|
30
|
+
},
|
|
48
31
|
});
|
|
49
32
|
}
|
|
33
|
+
async getType() {
|
|
34
|
+
try {
|
|
35
|
+
const data = await this.client.rulesConfigs.list();
|
|
36
|
+
return data;
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
if ((0, utils_1.isDeprecatedError)(err))
|
|
40
|
+
return null;
|
|
41
|
+
throw err;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
50
44
|
objString(item) {
|
|
51
45
|
return super.objString({ key: item.key });
|
|
52
46
|
}
|
|
53
|
-
calcChanges(assets) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
if (!rulesConfigs || !rulesConfigs.length)
|
|
58
|
-
return {
|
|
59
|
-
del: [],
|
|
60
|
-
update: [],
|
|
61
|
-
create: [],
|
|
62
|
-
conflicts: [],
|
|
63
|
-
};
|
|
64
|
-
logger_1.default.warn('Rules are deprecated, migrate to using actions instead. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
65
|
-
// Intention is to not delete/cleanup old configRules, that needs to be handled manually.
|
|
47
|
+
async calcChanges(assets) {
|
|
48
|
+
const { rulesConfigs } = assets;
|
|
49
|
+
// Do nothing if not set
|
|
50
|
+
if (!rulesConfigs || !rulesConfigs.length)
|
|
66
51
|
return {
|
|
67
52
|
del: [],
|
|
68
|
-
update:
|
|
53
|
+
update: [],
|
|
69
54
|
create: [],
|
|
70
55
|
conflicts: [],
|
|
71
56
|
};
|
|
72
|
-
|
|
57
|
+
logger_1.default.warn('Rules are deprecated, migrate to using actions instead. See: https://auth0.com/docs/customize/actions/migrate/migrate-from-rules-to-actions for more information.');
|
|
58
|
+
// Intention is to not delete/cleanup old configRules, that needs to be handled manually.
|
|
59
|
+
return {
|
|
60
|
+
del: [],
|
|
61
|
+
update: rulesConfigs,
|
|
62
|
+
create: [],
|
|
63
|
+
conflicts: [],
|
|
64
|
+
};
|
|
73
65
|
}
|
|
74
66
|
}
|
|
75
67
|
exports.default = RulesConfigsHandler;
|
|
76
|
-
//# sourceMappingURL=rulesConfigs.js.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PromisePoolExecutor } from 'promise-pool-executor';
|
|
2
|
+
import { Management } from 'auth0';
|
|
2
3
|
import { Asset } from '../../../types';
|
|
3
4
|
interface ScimRequestParams {
|
|
4
5
|
id: string;
|
|
@@ -64,7 +65,7 @@ export default class ScimHandler {
|
|
|
64
65
|
/**
|
|
65
66
|
* Retrieves `SCIM` configuration of an enterprise connection.
|
|
66
67
|
*/
|
|
67
|
-
getScimConfiguration({ id }: ScimRequestParams): Promise<
|
|
68
|
+
getScimConfiguration({ id, }: ScimRequestParams): Promise<Management.GetScimConfigurationResponseContent | null>;
|
|
68
69
|
/**
|
|
69
70
|
* Updates an existing `SCIM` configuration.
|
|
70
71
|
*/
|
|
@@ -73,7 +74,7 @@ export default class ScimHandler {
|
|
|
73
74
|
* Deletes an existing `SCIM` configuration.
|
|
74
75
|
*/
|
|
75
76
|
deleteScimConfiguration({ id }: ScimRequestParams): Promise<Asset | null>;
|
|
76
|
-
updateOverride(requestParams: ScimRequestParams, bodyParams: Asset): Promise<
|
|
77
|
-
createOverride(bodyParams: Asset): Promise<
|
|
77
|
+
updateOverride(requestParams: ScimRequestParams, bodyParams: Asset): Promise<Management.UpdateConnectionResponseContent>;
|
|
78
|
+
createOverride(bodyParams: Asset): Promise<Management.CreateConnectionResponseContent>;
|
|
78
79
|
}
|
|
79
80
|
export {};
|