@salesforce/core 3.31.7 → 3.31.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +11 -11
- package/README.md +222 -222
- package/lib/config/aliasesConfig.d.ts +12 -12
- package/lib/config/aliasesConfig.js +27 -27
- package/lib/config/authInfoConfig.d.ts +19 -19
- package/lib/config/authInfoConfig.js +34 -34
- package/lib/config/config.d.ts +311 -311
- package/lib/config/config.js +574 -574
- package/lib/config/configAggregator.d.ts +232 -232
- package/lib/config/configAggregator.js +379 -379
- package/lib/config/configFile.d.ts +199 -199
- package/lib/config/configFile.js +340 -340
- package/lib/config/configGroup.d.ts +141 -141
- package/lib/config/configGroup.js +224 -224
- package/lib/config/configStore.d.ts +241 -241
- package/lib/config/configStore.js +352 -352
- package/lib/config/envVars.d.ts +101 -101
- package/lib/config/envVars.js +456 -456
- package/lib/config/orgUsersConfig.d.ts +31 -31
- package/lib/config/orgUsersConfig.js +41 -41
- package/lib/config/sandboxOrgConfig.d.ts +37 -37
- package/lib/config/sandboxOrgConfig.js +50 -50
- package/lib/config/sandboxProcessCache.d.ts +16 -16
- package/lib/config/sandboxProcessCache.js +37 -37
- package/lib/config/tokensConfig.d.ts +10 -10
- package/lib/config/tokensConfig.js +28 -28
- package/lib/config/ttlConfig.d.ts +34 -34
- package/lib/config/ttlConfig.js +54 -54
- package/lib/crypto/crypto.d.ts +54 -54
- package/lib/crypto/crypto.js +220 -220
- package/lib/crypto/keyChain.d.ts +8 -8
- package/lib/crypto/keyChain.js +61 -61
- package/lib/crypto/keyChainImpl.d.ts +116 -116
- package/lib/crypto/keyChainImpl.js +486 -486
- package/lib/crypto/secureBuffer.d.ts +46 -46
- package/lib/crypto/secureBuffer.js +82 -82
- package/lib/deviceOauthService.d.ts +71 -71
- package/lib/deviceOauthService.js +191 -191
- package/lib/exported.d.ts +38 -38
- package/lib/exported.js +118 -118
- package/lib/global.d.ts +70 -70
- package/lib/global.js +109 -109
- package/lib/lifecycleEvents.d.ts +93 -93
- package/lib/lifecycleEvents.js +188 -188
- package/lib/logger.d.ts +381 -381
- package/lib/logger.js +734 -734
- package/lib/messages.d.ts +291 -291
- package/lib/messages.js +543 -543
- package/lib/org/authInfo.d.ts +344 -344
- package/lib/org/authInfo.js +892 -892
- package/lib/org/authRemover.d.ts +88 -88
- package/lib/org/authRemover.js +182 -182
- package/lib/org/connection.d.ts +197 -197
- package/lib/org/connection.js +395 -395
- package/lib/org/index.d.ts +6 -6
- package/lib/org/index.js +28 -28
- package/lib/org/org.d.ts +558 -558
- package/lib/org/org.js +1267 -1267
- package/lib/org/orgConfigProperties.d.ts +69 -69
- package/lib/org/orgConfigProperties.js +136 -136
- package/lib/org/permissionSetAssignment.d.ts +35 -35
- package/lib/org/permissionSetAssignment.js +125 -125
- package/lib/org/scratchOrgCache.d.ts +20 -20
- package/lib/org/scratchOrgCache.js +32 -32
- package/lib/org/scratchOrgCreate.d.ts +54 -54
- package/lib/org/scratchOrgCreate.js +216 -216
- package/lib/org/scratchOrgErrorCodes.d.ts +10 -10
- package/lib/org/scratchOrgErrorCodes.js +88 -88
- package/lib/org/scratchOrgFeatureDeprecation.d.ts +26 -26
- package/lib/org/scratchOrgFeatureDeprecation.js +109 -109
- package/lib/org/scratchOrgInfoApi.d.ts +68 -68
- package/lib/org/scratchOrgInfoApi.js +413 -413
- package/lib/org/scratchOrgInfoGenerator.d.ts +64 -64
- package/lib/org/scratchOrgInfoGenerator.js +241 -241
- package/lib/org/scratchOrgLifecycleEvents.d.ts +10 -10
- package/lib/org/scratchOrgLifecycleEvents.js +40 -40
- package/lib/org/scratchOrgSettingsGenerator.d.ts +78 -78
- package/lib/org/scratchOrgSettingsGenerator.js +276 -276
- package/lib/org/scratchOrgTypes.d.ts +43 -43
- package/lib/org/scratchOrgTypes.js +8 -8
- package/lib/org/user.d.ts +187 -187
- package/lib/org/user.js +448 -448
- package/lib/schema/printer.d.ts +79 -79
- package/lib/schema/printer.js +260 -260
- package/lib/schema/validator.d.ts +70 -70
- package/lib/schema/validator.js +169 -169
- package/lib/sfError.d.ts +73 -73
- package/lib/sfError.js +136 -136
- package/lib/sfProject.d.ts +357 -357
- package/lib/sfProject.js +671 -671
- package/lib/stateAggregator/accessors/aliasAccessor.d.ts +98 -98
- package/lib/stateAggregator/accessors/aliasAccessor.js +145 -145
- package/lib/stateAggregator/accessors/orgAccessor.d.ts +101 -101
- package/lib/stateAggregator/accessors/orgAccessor.js +240 -240
- package/lib/stateAggregator/accessors/sandboxAccessor.d.ts +8 -8
- package/lib/stateAggregator/accessors/sandboxAccessor.js +27 -27
- package/lib/stateAggregator/accessors/tokenAccessor.d.ts +63 -63
- package/lib/stateAggregator/accessors/tokenAccessor.js +79 -79
- package/lib/stateAggregator/index.d.ts +4 -4
- package/lib/stateAggregator/index.js +26 -26
- package/lib/stateAggregator/stateAggregator.d.ts +25 -25
- package/lib/stateAggregator/stateAggregator.js +45 -45
- package/lib/status/myDomainResolver.d.ts +66 -66
- package/lib/status/myDomainResolver.js +124 -124
- package/lib/status/pollingClient.d.ts +85 -85
- package/lib/status/pollingClient.js +115 -115
- package/lib/status/streamingClient.d.ts +244 -244
- package/lib/status/streamingClient.js +436 -436
- package/lib/status/types.d.ts +89 -89
- package/lib/status/types.js +17 -17
- package/lib/testSetup.d.ts +553 -553
- package/lib/testSetup.js +871 -871
- package/lib/util/cache.d.ts +11 -11
- package/lib/util/cache.js +69 -69
- package/lib/util/checkLightningDomain.d.ts +1 -1
- package/lib/util/checkLightningDomain.js +28 -28
- package/lib/util/directoryWriter.d.ts +12 -12
- package/lib/util/directoryWriter.js +53 -53
- package/lib/util/getJwtAudienceUrl.d.ts +4 -4
- package/lib/util/getJwtAudienceUrl.js +18 -18
- package/lib/util/internal.d.ts +58 -58
- package/lib/util/internal.js +118 -118
- package/lib/util/jsonXmlTools.d.ts +14 -14
- package/lib/util/jsonXmlTools.js +38 -38
- package/lib/util/mapKeys.d.ts +14 -14
- package/lib/util/mapKeys.js +51 -51
- package/lib/util/sfdc.d.ts +52 -52
- package/lib/util/sfdc.js +85 -85
- package/lib/util/sfdcUrl.d.ts +72 -72
- package/lib/util/sfdcUrl.js +215 -215
- package/lib/util/structuredWriter.d.ts +9 -9
- package/lib/util/structuredWriter.js +2 -2
- package/lib/util/zipWriter.d.ts +16 -16
- package/lib/util/zipWriter.js +67 -67
- package/lib/webOAuthServer.d.ts +156 -156
- package/lib/webOAuthServer.js +388 -388
- package/messages/auth.md +37 -37
- package/messages/config.md +156 -156
- package/messages/connection.md +30 -30
- package/messages/core.json +20 -20
- package/messages/core.md +67 -67
- package/messages/encryption.md +85 -85
- package/messages/envVars.md +303 -303
- package/messages/org.md +63 -63
- package/messages/permissionSetAssignment.md +31 -31
- package/messages/scratchOrgCreate.md +23 -23
- package/messages/scratchOrgErrorCodes.md +115 -115
- package/messages/scratchOrgFeatureDeprecation.md +11 -11
- package/messages/scratchOrgInfoApi.md +15 -15
- package/messages/scratchOrgInfoGenerator.md +23 -23
- package/messages/streaming.md +23 -23
- package/messages/user.md +35 -35
- package/package.json +97 -97
|
@@ -1,98 +1,98 @@
|
|
|
1
|
-
import { AsyncOptionalCreatable } from '@salesforce/kit';
|
|
2
|
-
import { Nullable } from '@salesforce/ts-types';
|
|
3
|
-
import { AuthFields, ConfigContents } from '../../exported';
|
|
4
|
-
import { SfToken } from './tokenAccessor';
|
|
5
|
-
export declare type Aliasable = string | (Partial<AuthFields> & Partial<SfToken>);
|
|
6
|
-
export declare class AliasAccessor extends AsyncOptionalCreatable {
|
|
7
|
-
private config;
|
|
8
|
-
/**
|
|
9
|
-
* Returns all the aliases for all the values
|
|
10
|
-
*/
|
|
11
|
-
getAll(): ConfigContents<string>;
|
|
12
|
-
/**
|
|
13
|
-
* Returns all the aliases for a given entity
|
|
14
|
-
*
|
|
15
|
-
* @param entity the aliasable entity that you want to get the aliases of
|
|
16
|
-
*/
|
|
17
|
-
getAll(entity: Aliasable): string[];
|
|
18
|
-
/**
|
|
19
|
-
* Returns the first alias found for a given entity
|
|
20
|
-
*
|
|
21
|
-
* @param entity the aliasable entity that you want to get the alias of
|
|
22
|
-
*/
|
|
23
|
-
get(entity: Aliasable): Nullable<string>;
|
|
24
|
-
/**
|
|
25
|
-
* Returns the value that corresponds to the given alias if it exists
|
|
26
|
-
*
|
|
27
|
-
* @param alias the alias that corresponds to a value
|
|
28
|
-
*/
|
|
29
|
-
getValue(alias: string): Nullable<string>;
|
|
30
|
-
/**
|
|
31
|
-
* Returns the username that corresponds to the given alias if it exists
|
|
32
|
-
*
|
|
33
|
-
* @param alias the alias that corresponds to a username
|
|
34
|
-
*/
|
|
35
|
-
getUsername(alias: string): Nullable<string>;
|
|
36
|
-
/**
|
|
37
|
-
* If the provided string is an alias, it returns the corresponding value.
|
|
38
|
-
* If the provided string is not an alias, we assume that the provided string
|
|
39
|
-
* is the value and return it.
|
|
40
|
-
*
|
|
41
|
-
* This method is helpful when you don't know if the string you have is a value
|
|
42
|
-
* or an alias.
|
|
43
|
-
*
|
|
44
|
-
* @param valueOrAlias a string that might be a value or might be an alias
|
|
45
|
-
*/
|
|
46
|
-
resolveValue(valueOrAlias: string): string;
|
|
47
|
-
/**
|
|
48
|
-
* If the provided string is an alias, it returns the corresponding username.
|
|
49
|
-
* If the provided string is not an alias, we assume that the provided string
|
|
50
|
-
* is the username and return it.
|
|
51
|
-
*
|
|
52
|
-
* This method is helpful when you don't know if the string you have is a username
|
|
53
|
-
* or an alias.
|
|
54
|
-
*
|
|
55
|
-
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
56
|
-
*/
|
|
57
|
-
resolveUsername(usernameOrAlias: string): string;
|
|
58
|
-
/**
|
|
59
|
-
* If the provided string is an alias, return it.
|
|
60
|
-
* If the provided string is not an alias, return the username of the provided alias
|
|
61
|
-
*
|
|
62
|
-
* This method is helpful when you don't know if the string you have is a username
|
|
63
|
-
* or an alias.
|
|
64
|
-
*
|
|
65
|
-
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
66
|
-
*/
|
|
67
|
-
resolveAlias(usernameOrAlias: string): Nullable<string>;
|
|
68
|
-
/**
|
|
69
|
-
* Set an alias for the given aliasable entity
|
|
70
|
-
*
|
|
71
|
-
* @param alias the alias you want to set
|
|
72
|
-
* @param entity the aliasable entity that's being aliased
|
|
73
|
-
*/
|
|
74
|
-
set(alias: string, entity: Aliasable): void;
|
|
75
|
-
/**
|
|
76
|
-
* Unset the given alias.
|
|
77
|
-
*
|
|
78
|
-
*/
|
|
79
|
-
unset(alias: string): void;
|
|
80
|
-
/**
|
|
81
|
-
* Unsets all the aliases for the given entity.
|
|
82
|
-
*
|
|
83
|
-
* @param entity the aliasable entity for which you want to unset all aliases
|
|
84
|
-
*/
|
|
85
|
-
unsetAll(entity: Aliasable): void;
|
|
86
|
-
write(): Promise<ConfigContents>;
|
|
87
|
-
/**
|
|
88
|
-
* Returns true if the provided alias exists
|
|
89
|
-
*
|
|
90
|
-
* @param alias the alias you want to check
|
|
91
|
-
*/
|
|
92
|
-
has(alias: string): boolean;
|
|
93
|
-
protected init(): Promise<void>;
|
|
94
|
-
/**
|
|
95
|
-
* Returns the username of given aliasable entity
|
|
96
|
-
*/
|
|
97
|
-
private getNameOf;
|
|
98
|
-
}
|
|
1
|
+
import { AsyncOptionalCreatable } from '@salesforce/kit';
|
|
2
|
+
import { Nullable } from '@salesforce/ts-types';
|
|
3
|
+
import { AuthFields, ConfigContents } from '../../exported';
|
|
4
|
+
import { SfToken } from './tokenAccessor';
|
|
5
|
+
export declare type Aliasable = string | (Partial<AuthFields> & Partial<SfToken>);
|
|
6
|
+
export declare class AliasAccessor extends AsyncOptionalCreatable {
|
|
7
|
+
private config;
|
|
8
|
+
/**
|
|
9
|
+
* Returns all the aliases for all the values
|
|
10
|
+
*/
|
|
11
|
+
getAll(): ConfigContents<string>;
|
|
12
|
+
/**
|
|
13
|
+
* Returns all the aliases for a given entity
|
|
14
|
+
*
|
|
15
|
+
* @param entity the aliasable entity that you want to get the aliases of
|
|
16
|
+
*/
|
|
17
|
+
getAll(entity: Aliasable): string[];
|
|
18
|
+
/**
|
|
19
|
+
* Returns the first alias found for a given entity
|
|
20
|
+
*
|
|
21
|
+
* @param entity the aliasable entity that you want to get the alias of
|
|
22
|
+
*/
|
|
23
|
+
get(entity: Aliasable): Nullable<string>;
|
|
24
|
+
/**
|
|
25
|
+
* Returns the value that corresponds to the given alias if it exists
|
|
26
|
+
*
|
|
27
|
+
* @param alias the alias that corresponds to a value
|
|
28
|
+
*/
|
|
29
|
+
getValue(alias: string): Nullable<string>;
|
|
30
|
+
/**
|
|
31
|
+
* Returns the username that corresponds to the given alias if it exists
|
|
32
|
+
*
|
|
33
|
+
* @param alias the alias that corresponds to a username
|
|
34
|
+
*/
|
|
35
|
+
getUsername(alias: string): Nullable<string>;
|
|
36
|
+
/**
|
|
37
|
+
* If the provided string is an alias, it returns the corresponding value.
|
|
38
|
+
* If the provided string is not an alias, we assume that the provided string
|
|
39
|
+
* is the value and return it.
|
|
40
|
+
*
|
|
41
|
+
* This method is helpful when you don't know if the string you have is a value
|
|
42
|
+
* or an alias.
|
|
43
|
+
*
|
|
44
|
+
* @param valueOrAlias a string that might be a value or might be an alias
|
|
45
|
+
*/
|
|
46
|
+
resolveValue(valueOrAlias: string): string;
|
|
47
|
+
/**
|
|
48
|
+
* If the provided string is an alias, it returns the corresponding username.
|
|
49
|
+
* If the provided string is not an alias, we assume that the provided string
|
|
50
|
+
* is the username and return it.
|
|
51
|
+
*
|
|
52
|
+
* This method is helpful when you don't know if the string you have is a username
|
|
53
|
+
* or an alias.
|
|
54
|
+
*
|
|
55
|
+
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
56
|
+
*/
|
|
57
|
+
resolveUsername(usernameOrAlias: string): string;
|
|
58
|
+
/**
|
|
59
|
+
* If the provided string is an alias, return it.
|
|
60
|
+
* If the provided string is not an alias, return the username of the provided alias
|
|
61
|
+
*
|
|
62
|
+
* This method is helpful when you don't know if the string you have is a username
|
|
63
|
+
* or an alias.
|
|
64
|
+
*
|
|
65
|
+
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
66
|
+
*/
|
|
67
|
+
resolveAlias(usernameOrAlias: string): Nullable<string>;
|
|
68
|
+
/**
|
|
69
|
+
* Set an alias for the given aliasable entity
|
|
70
|
+
*
|
|
71
|
+
* @param alias the alias you want to set
|
|
72
|
+
* @param entity the aliasable entity that's being aliased
|
|
73
|
+
*/
|
|
74
|
+
set(alias: string, entity: Aliasable): void;
|
|
75
|
+
/**
|
|
76
|
+
* Unset the given alias.
|
|
77
|
+
*
|
|
78
|
+
*/
|
|
79
|
+
unset(alias: string): void;
|
|
80
|
+
/**
|
|
81
|
+
* Unsets all the aliases for the given entity.
|
|
82
|
+
*
|
|
83
|
+
* @param entity the aliasable entity for which you want to unset all aliases
|
|
84
|
+
*/
|
|
85
|
+
unsetAll(entity: Aliasable): void;
|
|
86
|
+
write(): Promise<ConfigContents>;
|
|
87
|
+
/**
|
|
88
|
+
* Returns true if the provided alias exists
|
|
89
|
+
*
|
|
90
|
+
* @param alias the alias you want to check
|
|
91
|
+
*/
|
|
92
|
+
has(alias: string): boolean;
|
|
93
|
+
protected init(): Promise<void>;
|
|
94
|
+
/**
|
|
95
|
+
* Returns the username of given aliasable entity
|
|
96
|
+
*/
|
|
97
|
+
private getNameOf;
|
|
98
|
+
}
|
|
@@ -1,146 +1,146 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright (c) 2021, salesforce.com, inc.
|
|
4
|
-
* All rights reserved.
|
|
5
|
-
* Licensed under the BSD 3-Clause license.
|
|
6
|
-
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.AliasAccessor = void 0;
|
|
10
|
-
const kit_1 = require("@salesforce/kit");
|
|
11
|
-
const aliasesConfig_1 = require("../../config/aliasesConfig");
|
|
12
|
-
const sfError_1 = require("../../sfError");
|
|
13
|
-
class AliasAccessor extends kit_1.AsyncOptionalCreatable {
|
|
14
|
-
getAll(entity) {
|
|
15
|
-
// This will only return aliases under "orgs". This will need to be modified
|
|
16
|
-
// if/when we want to support more aliases groups.
|
|
17
|
-
const all = (this.config.getGroup() ?? {});
|
|
18
|
-
if (entity) {
|
|
19
|
-
const value = this.getNameOf(entity);
|
|
20
|
-
return Object.entries(all)
|
|
21
|
-
.filter((entry) => entry[1] === value)
|
|
22
|
-
.map((entry) => entry[0]);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
return all;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Returns the first alias found for a given entity
|
|
30
|
-
*
|
|
31
|
-
* @param entity the aliasable entity that you want to get the alias of
|
|
32
|
-
*/
|
|
33
|
-
get(entity) {
|
|
34
|
-
return this.getAll(entity).find((alias) => alias) ?? null;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Returns the value that corresponds to the given alias if it exists
|
|
38
|
-
*
|
|
39
|
-
* @param alias the alias that corresponds to a value
|
|
40
|
-
*/
|
|
41
|
-
getValue(alias) {
|
|
42
|
-
return this.getAll()[alias] ?? null;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Returns the username that corresponds to the given alias if it exists
|
|
46
|
-
*
|
|
47
|
-
* @param alias the alias that corresponds to a username
|
|
48
|
-
*/
|
|
49
|
-
getUsername(alias) {
|
|
50
|
-
return this.getAll()[alias] ?? null;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* If the provided string is an alias, it returns the corresponding value.
|
|
54
|
-
* If the provided string is not an alias, we assume that the provided string
|
|
55
|
-
* is the value and return it.
|
|
56
|
-
*
|
|
57
|
-
* This method is helpful when you don't know if the string you have is a value
|
|
58
|
-
* or an alias.
|
|
59
|
-
*
|
|
60
|
-
* @param valueOrAlias a string that might be a value or might be an alias
|
|
61
|
-
*/
|
|
62
|
-
resolveValue(valueOrAlias) {
|
|
63
|
-
return this.getValue(valueOrAlias) ?? valueOrAlias;
|
|
64
|
-
}
|
|
65
|
-
/**
|
|
66
|
-
* If the provided string is an alias, it returns the corresponding username.
|
|
67
|
-
* If the provided string is not an alias, we assume that the provided string
|
|
68
|
-
* is the username and return it.
|
|
69
|
-
*
|
|
70
|
-
* This method is helpful when you don't know if the string you have is a username
|
|
71
|
-
* or an alias.
|
|
72
|
-
*
|
|
73
|
-
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
74
|
-
*/
|
|
75
|
-
resolveUsername(usernameOrAlias) {
|
|
76
|
-
return this.getUsername(usernameOrAlias) ?? usernameOrAlias;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* If the provided string is an alias, return it.
|
|
80
|
-
* If the provided string is not an alias, return the username of the provided alias
|
|
81
|
-
*
|
|
82
|
-
* This method is helpful when you don't know if the string you have is a username
|
|
83
|
-
* or an alias.
|
|
84
|
-
*
|
|
85
|
-
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
86
|
-
*/
|
|
87
|
-
resolveAlias(usernameOrAlias) {
|
|
88
|
-
if (this.has(usernameOrAlias))
|
|
89
|
-
return usernameOrAlias;
|
|
90
|
-
return Object.entries(this.getAll()).find(([, username]) => username === usernameOrAlias)?.[0];
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Set an alias for the given aliasable entity
|
|
94
|
-
*
|
|
95
|
-
* @param alias the alias you want to set
|
|
96
|
-
* @param entity the aliasable entity that's being aliased
|
|
97
|
-
*/
|
|
98
|
-
set(alias, entity) {
|
|
99
|
-
this.config.set(alias, this.getNameOf(entity));
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Unset the given alias.
|
|
103
|
-
*
|
|
104
|
-
*/
|
|
105
|
-
unset(alias) {
|
|
106
|
-
this.config.unset(alias);
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Unsets all the aliases for the given entity.
|
|
110
|
-
*
|
|
111
|
-
* @param entity the aliasable entity for which you want to unset all aliases
|
|
112
|
-
*/
|
|
113
|
-
unsetAll(entity) {
|
|
114
|
-
const aliases = this.getAll(entity);
|
|
115
|
-
aliases.forEach((alias) => this.unset(alias));
|
|
116
|
-
}
|
|
117
|
-
async write() {
|
|
118
|
-
return this.config.write();
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Returns true if the provided alias exists
|
|
122
|
-
*
|
|
123
|
-
* @param alias the alias you want to check
|
|
124
|
-
*/
|
|
125
|
-
has(alias) {
|
|
126
|
-
return this.config.has(alias);
|
|
127
|
-
}
|
|
128
|
-
async init() {
|
|
129
|
-
this.config = await aliasesConfig_1.AliasesConfig.create(aliasesConfig_1.AliasesConfig.getDefaultOptions());
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Returns the username of given aliasable entity
|
|
133
|
-
*/
|
|
134
|
-
// eslint-disable-next-line class-methods-use-this
|
|
135
|
-
getNameOf(entity) {
|
|
136
|
-
if (typeof entity === 'string')
|
|
137
|
-
return entity;
|
|
138
|
-
const aliaseeName = entity.username ?? entity.user;
|
|
139
|
-
if (!aliaseeName) {
|
|
140
|
-
throw new sfError_1.SfError(`Invalid aliasee, it must contain a user or username property: ${JSON.stringify(entity)}`);
|
|
141
|
-
}
|
|
142
|
-
return aliaseeName;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
exports.AliasAccessor = AliasAccessor;
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2021, salesforce.com, inc.
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Licensed under the BSD 3-Clause license.
|
|
6
|
+
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.AliasAccessor = void 0;
|
|
10
|
+
const kit_1 = require("@salesforce/kit");
|
|
11
|
+
const aliasesConfig_1 = require("../../config/aliasesConfig");
|
|
12
|
+
const sfError_1 = require("../../sfError");
|
|
13
|
+
class AliasAccessor extends kit_1.AsyncOptionalCreatable {
|
|
14
|
+
getAll(entity) {
|
|
15
|
+
// This will only return aliases under "orgs". This will need to be modified
|
|
16
|
+
// if/when we want to support more aliases groups.
|
|
17
|
+
const all = (this.config.getGroup() ?? {});
|
|
18
|
+
if (entity) {
|
|
19
|
+
const value = this.getNameOf(entity);
|
|
20
|
+
return Object.entries(all)
|
|
21
|
+
.filter((entry) => entry[1] === value)
|
|
22
|
+
.map((entry) => entry[0]);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return all;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Returns the first alias found for a given entity
|
|
30
|
+
*
|
|
31
|
+
* @param entity the aliasable entity that you want to get the alias of
|
|
32
|
+
*/
|
|
33
|
+
get(entity) {
|
|
34
|
+
return this.getAll(entity).find((alias) => alias) ?? null;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Returns the value that corresponds to the given alias if it exists
|
|
38
|
+
*
|
|
39
|
+
* @param alias the alias that corresponds to a value
|
|
40
|
+
*/
|
|
41
|
+
getValue(alias) {
|
|
42
|
+
return this.getAll()[alias] ?? null;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Returns the username that corresponds to the given alias if it exists
|
|
46
|
+
*
|
|
47
|
+
* @param alias the alias that corresponds to a username
|
|
48
|
+
*/
|
|
49
|
+
getUsername(alias) {
|
|
50
|
+
return this.getAll()[alias] ?? null;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* If the provided string is an alias, it returns the corresponding value.
|
|
54
|
+
* If the provided string is not an alias, we assume that the provided string
|
|
55
|
+
* is the value and return it.
|
|
56
|
+
*
|
|
57
|
+
* This method is helpful when you don't know if the string you have is a value
|
|
58
|
+
* or an alias.
|
|
59
|
+
*
|
|
60
|
+
* @param valueOrAlias a string that might be a value or might be an alias
|
|
61
|
+
*/
|
|
62
|
+
resolveValue(valueOrAlias) {
|
|
63
|
+
return this.getValue(valueOrAlias) ?? valueOrAlias;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* If the provided string is an alias, it returns the corresponding username.
|
|
67
|
+
* If the provided string is not an alias, we assume that the provided string
|
|
68
|
+
* is the username and return it.
|
|
69
|
+
*
|
|
70
|
+
* This method is helpful when you don't know if the string you have is a username
|
|
71
|
+
* or an alias.
|
|
72
|
+
*
|
|
73
|
+
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
74
|
+
*/
|
|
75
|
+
resolveUsername(usernameOrAlias) {
|
|
76
|
+
return this.getUsername(usernameOrAlias) ?? usernameOrAlias;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* If the provided string is an alias, return it.
|
|
80
|
+
* If the provided string is not an alias, return the username of the provided alias
|
|
81
|
+
*
|
|
82
|
+
* This method is helpful when you don't know if the string you have is a username
|
|
83
|
+
* or an alias.
|
|
84
|
+
*
|
|
85
|
+
* @param usernameOrAlias a string that might be a username or might be an alias
|
|
86
|
+
*/
|
|
87
|
+
resolveAlias(usernameOrAlias) {
|
|
88
|
+
if (this.has(usernameOrAlias))
|
|
89
|
+
return usernameOrAlias;
|
|
90
|
+
return Object.entries(this.getAll()).find(([, username]) => username === usernameOrAlias)?.[0];
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Set an alias for the given aliasable entity
|
|
94
|
+
*
|
|
95
|
+
* @param alias the alias you want to set
|
|
96
|
+
* @param entity the aliasable entity that's being aliased
|
|
97
|
+
*/
|
|
98
|
+
set(alias, entity) {
|
|
99
|
+
this.config.set(alias, this.getNameOf(entity));
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Unset the given alias.
|
|
103
|
+
*
|
|
104
|
+
*/
|
|
105
|
+
unset(alias) {
|
|
106
|
+
this.config.unset(alias);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Unsets all the aliases for the given entity.
|
|
110
|
+
*
|
|
111
|
+
* @param entity the aliasable entity for which you want to unset all aliases
|
|
112
|
+
*/
|
|
113
|
+
unsetAll(entity) {
|
|
114
|
+
const aliases = this.getAll(entity);
|
|
115
|
+
aliases.forEach((alias) => this.unset(alias));
|
|
116
|
+
}
|
|
117
|
+
async write() {
|
|
118
|
+
return this.config.write();
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Returns true if the provided alias exists
|
|
122
|
+
*
|
|
123
|
+
* @param alias the alias you want to check
|
|
124
|
+
*/
|
|
125
|
+
has(alias) {
|
|
126
|
+
return this.config.has(alias);
|
|
127
|
+
}
|
|
128
|
+
async init() {
|
|
129
|
+
this.config = await aliasesConfig_1.AliasesConfig.create(aliasesConfig_1.AliasesConfig.getDefaultOptions());
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Returns the username of given aliasable entity
|
|
133
|
+
*/
|
|
134
|
+
// eslint-disable-next-line class-methods-use-this
|
|
135
|
+
getNameOf(entity) {
|
|
136
|
+
if (typeof entity === 'string')
|
|
137
|
+
return entity;
|
|
138
|
+
const aliaseeName = entity.username ?? entity.user;
|
|
139
|
+
if (!aliaseeName) {
|
|
140
|
+
throw new sfError_1.SfError(`Invalid aliasee, it must contain a user or username property: ${JSON.stringify(entity)}`);
|
|
141
|
+
}
|
|
142
|
+
return aliaseeName;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
exports.AliasAccessor = AliasAccessor;
|
|
146
146
|
//# sourceMappingURL=aliasAccessor.js.map
|