@salesforce/core 3.30.14 → 3.31.7

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.
Files changed (153) hide show
  1. package/LICENSE.txt +11 -11
  2. package/README.md +222 -227
  3. package/lib/config/aliasesConfig.d.ts +12 -12
  4. package/lib/config/aliasesConfig.js +27 -27
  5. package/lib/config/authInfoConfig.d.ts +19 -19
  6. package/lib/config/authInfoConfig.js +34 -34
  7. package/lib/config/config.d.ts +311 -311
  8. package/lib/config/config.js +574 -574
  9. package/lib/config/configAggregator.d.ts +232 -232
  10. package/lib/config/configAggregator.js +379 -379
  11. package/lib/config/configFile.d.ts +199 -199
  12. package/lib/config/configFile.js +340 -340
  13. package/lib/config/configGroup.d.ts +141 -141
  14. package/lib/config/configGroup.js +224 -224
  15. package/lib/config/configStore.d.ts +241 -241
  16. package/lib/config/configStore.js +352 -352
  17. package/lib/config/envVars.d.ts +101 -101
  18. package/lib/config/envVars.js +456 -456
  19. package/lib/config/orgUsersConfig.d.ts +31 -31
  20. package/lib/config/orgUsersConfig.js +41 -41
  21. package/lib/config/sandboxOrgConfig.d.ts +37 -37
  22. package/lib/config/sandboxOrgConfig.js +50 -50
  23. package/lib/config/sandboxProcessCache.d.ts +16 -16
  24. package/lib/config/sandboxProcessCache.js +37 -37
  25. package/lib/config/tokensConfig.d.ts +10 -10
  26. package/lib/config/tokensConfig.js +28 -28
  27. package/lib/config/ttlConfig.d.ts +34 -34
  28. package/lib/config/ttlConfig.js +54 -54
  29. package/lib/crypto/crypto.d.ts +54 -54
  30. package/lib/crypto/crypto.js +220 -220
  31. package/lib/crypto/keyChain.d.ts +8 -8
  32. package/lib/crypto/keyChain.js +61 -61
  33. package/lib/crypto/keyChainImpl.d.ts +116 -116
  34. package/lib/crypto/keyChainImpl.js +486 -486
  35. package/lib/crypto/secureBuffer.d.ts +46 -46
  36. package/lib/crypto/secureBuffer.js +82 -82
  37. package/lib/deviceOauthService.d.ts +71 -71
  38. package/lib/deviceOauthService.js +191 -191
  39. package/lib/exported.d.ts +38 -38
  40. package/lib/exported.js +118 -118
  41. package/lib/global.d.ts +70 -70
  42. package/lib/global.js +109 -109
  43. package/lib/lifecycleEvents.d.ts +93 -93
  44. package/lib/lifecycleEvents.js +188 -188
  45. package/lib/logger.d.ts +381 -381
  46. package/lib/logger.js +734 -734
  47. package/lib/messages.d.ts +291 -291
  48. package/lib/messages.js +543 -543
  49. package/lib/org/authInfo.d.ts +344 -344
  50. package/lib/org/authInfo.js +892 -892
  51. package/lib/org/authRemover.d.ts +88 -88
  52. package/lib/org/authRemover.js +182 -182
  53. package/lib/org/connection.d.ts +197 -197
  54. package/lib/org/connection.js +395 -395
  55. package/lib/org/index.d.ts +6 -6
  56. package/lib/org/index.js +28 -28
  57. package/lib/org/org.d.ts +558 -558
  58. package/lib/org/org.js +1267 -1267
  59. package/lib/org/orgConfigProperties.d.ts +69 -69
  60. package/lib/org/orgConfigProperties.js +136 -136
  61. package/lib/org/permissionSetAssignment.d.ts +35 -35
  62. package/lib/org/permissionSetAssignment.js +125 -125
  63. package/lib/org/scratchOrgCache.d.ts +20 -20
  64. package/lib/org/scratchOrgCache.js +32 -32
  65. package/lib/org/scratchOrgCreate.d.ts +54 -54
  66. package/lib/org/scratchOrgCreate.js +216 -216
  67. package/lib/org/scratchOrgErrorCodes.d.ts +10 -10
  68. package/lib/org/scratchOrgErrorCodes.js +88 -88
  69. package/lib/org/scratchOrgFeatureDeprecation.d.ts +26 -26
  70. package/lib/org/scratchOrgFeatureDeprecation.js +109 -109
  71. package/lib/org/scratchOrgInfoApi.d.ts +68 -68
  72. package/lib/org/scratchOrgInfoApi.js +413 -413
  73. package/lib/org/scratchOrgInfoGenerator.d.ts +64 -64
  74. package/lib/org/scratchOrgInfoGenerator.js +241 -241
  75. package/lib/org/scratchOrgLifecycleEvents.d.ts +10 -10
  76. package/lib/org/scratchOrgLifecycleEvents.js +40 -40
  77. package/lib/org/scratchOrgSettingsGenerator.d.ts +78 -78
  78. package/lib/org/scratchOrgSettingsGenerator.js +276 -276
  79. package/lib/org/scratchOrgTypes.d.ts +43 -43
  80. package/lib/org/scratchOrgTypes.js +8 -8
  81. package/lib/org/user.d.ts +187 -187
  82. package/lib/org/user.js +448 -448
  83. package/lib/schema/printer.d.ts +79 -79
  84. package/lib/schema/printer.js +260 -260
  85. package/lib/schema/validator.d.ts +70 -70
  86. package/lib/schema/validator.js +169 -169
  87. package/lib/sfError.d.ts +73 -73
  88. package/lib/sfError.js +136 -136
  89. package/lib/sfProject.d.ts +357 -357
  90. package/lib/sfProject.js +671 -671
  91. package/lib/stateAggregator/accessors/aliasAccessor.d.ts +98 -98
  92. package/lib/stateAggregator/accessors/aliasAccessor.js +145 -145
  93. package/lib/stateAggregator/accessors/orgAccessor.d.ts +101 -101
  94. package/lib/stateAggregator/accessors/orgAccessor.js +240 -240
  95. package/lib/stateAggregator/accessors/sandboxAccessor.d.ts +8 -8
  96. package/lib/stateAggregator/accessors/sandboxAccessor.js +27 -27
  97. package/lib/stateAggregator/accessors/tokenAccessor.d.ts +63 -63
  98. package/lib/stateAggregator/accessors/tokenAccessor.js +79 -79
  99. package/lib/stateAggregator/index.d.ts +4 -4
  100. package/lib/stateAggregator/index.js +26 -26
  101. package/lib/stateAggregator/stateAggregator.d.ts +25 -25
  102. package/lib/stateAggregator/stateAggregator.js +45 -45
  103. package/lib/status/myDomainResolver.d.ts +66 -66
  104. package/lib/status/myDomainResolver.js +124 -124
  105. package/lib/status/pollingClient.d.ts +85 -85
  106. package/lib/status/pollingClient.js +115 -115
  107. package/lib/status/streamingClient.d.ts +244 -244
  108. package/lib/status/streamingClient.js +436 -436
  109. package/lib/status/types.d.ts +89 -89
  110. package/lib/status/types.js +17 -17
  111. package/lib/testSetup.d.ts +553 -530
  112. package/lib/testSetup.js +871 -727
  113. package/lib/util/cache.d.ts +11 -11
  114. package/lib/util/cache.js +69 -69
  115. package/lib/util/checkLightningDomain.d.ts +1 -1
  116. package/lib/util/checkLightningDomain.js +28 -28
  117. package/lib/util/directoryWriter.d.ts +12 -12
  118. package/lib/util/directoryWriter.js +53 -53
  119. package/lib/util/getJwtAudienceUrl.d.ts +4 -4
  120. package/lib/util/getJwtAudienceUrl.js +18 -18
  121. package/lib/util/internal.d.ts +58 -58
  122. package/lib/util/internal.js +118 -118
  123. package/lib/util/jsonXmlTools.d.ts +14 -14
  124. package/lib/util/jsonXmlTools.js +38 -38
  125. package/lib/util/mapKeys.d.ts +14 -14
  126. package/lib/util/mapKeys.js +51 -51
  127. package/lib/util/sfdc.d.ts +52 -52
  128. package/lib/util/sfdc.js +85 -85
  129. package/lib/util/sfdcUrl.d.ts +72 -72
  130. package/lib/util/sfdcUrl.js +215 -215
  131. package/lib/util/structuredWriter.d.ts +9 -9
  132. package/lib/util/structuredWriter.js +2 -2
  133. package/lib/util/zipWriter.d.ts +16 -16
  134. package/lib/util/zipWriter.js +67 -67
  135. package/lib/webOAuthServer.d.ts +156 -156
  136. package/lib/webOAuthServer.js +388 -388
  137. package/messages/auth.md +37 -37
  138. package/messages/config.md +156 -156
  139. package/messages/connection.md +30 -30
  140. package/messages/core.json +20 -20
  141. package/messages/core.md +67 -67
  142. package/messages/encryption.md +85 -85
  143. package/messages/envVars.md +303 -303
  144. package/messages/org.md +63 -63
  145. package/messages/permissionSetAssignment.md +31 -31
  146. package/messages/scratchOrgCreate.md +23 -23
  147. package/messages/scratchOrgErrorCodes.md +115 -115
  148. package/messages/scratchOrgFeatureDeprecation.md +11 -11
  149. package/messages/scratchOrgInfoApi.md +15 -15
  150. package/messages/scratchOrgInfoGenerator.md +23 -23
  151. package/messages/streaming.md +23 -23
  152. package/messages/user.md +35 -35
  153. package/package.json +97 -97
@@ -1,241 +1,241 @@
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.OrgAccessor = exports.BaseOrgAccessor = void 0;
10
- const fs = require("fs");
11
- const path = require("path");
12
- const kit_1 = require("@salesforce/kit");
13
- const authInfoConfig_1 = require("../../config/authInfoConfig");
14
- const global_1 = require("../../global");
15
- const logger_1 = require("../../logger");
16
- const messages_1 = require("../../messages");
17
- function chunk(array, chunkSize) {
18
- const final = [];
19
- for (let i = 0, len = array.length; i < len; i += chunkSize)
20
- final.push(array.slice(i, i + chunkSize));
21
- return final;
22
- }
23
- class BaseOrgAccessor extends kit_1.AsyncOptionalCreatable {
24
- constructor() {
25
- super(...arguments);
26
- this.configs = new Map();
27
- this.contents = new Map();
28
- }
29
- /**
30
- * Read the auth file for the given username. Once the file has been read, it can be re-accessed with the `get` method.
31
- *
32
- * @param username username to read
33
- * @param decrypt if true, decrypt encrypted values
34
- * @param throwOnNotFound throw if file is not found for username
35
- */
36
- async read(username, decrypt = false, throwOnNotFound = true) {
37
- try {
38
- const config = await this.initAuthFile(username, throwOnNotFound);
39
- this.configs.set(username, config);
40
- return this.get(username, decrypt);
41
- }
42
- catch (err) {
43
- return null;
44
- }
45
- }
46
- /**
47
- * Read all the auth files under the global state directory
48
- *
49
- * @param decrypt if true, decrypt encrypted values
50
- */
51
- async readAll(decrypt = false) {
52
- const fileChunks = chunk(await this.getAllFiles(), 50);
53
- for (const fileChunk of fileChunks) {
54
- const promises = fileChunk.map(async (f) => {
55
- const username = this.parseUsername(f);
56
- const config = await this.initAuthFile(username);
57
- this.configs.set(username, config);
58
- });
59
- // eslint-disable-next-line no-await-in-loop
60
- await Promise.all(promises);
61
- }
62
- return this.getAll(decrypt);
63
- }
64
- /**
65
- * Return the contents of the username's auth file from cache.
66
- * The `read` or `readAll` methods must be called first in order to populate the cache.
67
- * If throwOnNotFound is not true, an empty object {} is returned if the org is not found.
68
- *
69
- * @param username username to get
70
- * @param decrypt if true, decrypt encrypted values
71
- * @param throwOnNotFound if true, throw if the auth file does not already exist in the cache
72
- */
73
- get(username, decrypt = false, throwOnNotFound = false) {
74
- const config = this.configs.get(username);
75
- if (throwOnNotFound && config?.keys().length === 0) {
76
- messages_1.Messages.importMessagesDirectory(__dirname);
77
- const messages = messages_1.Messages.load('@salesforce/core', 'core', ['namedOrgNotFound']);
78
- throw messages.createError('namedOrgNotFound', [username]);
79
- }
80
- if (config) {
81
- this.contents.set(username, config.getContents(decrypt));
82
- }
83
- return this.contents.get(username);
84
- }
85
- /**
86
- * Return the contents of all the auth files from cache. The `read` or `readAll` methods must be called first in order to populate the cache.
87
- *
88
- * @param decrypt if true, decrypt encrypted values
89
- * @returns
90
- */
91
- getAll(decrypt = false) {
92
- return [...this.configs.keys()].map((username) => this.get(username, decrypt)).filter((org) => !(0, kit_1.isEmpty)(org));
93
- }
94
- /**
95
- * Returns true if the username has been cached.
96
- *
97
- * @param username
98
- */
99
- has(username) {
100
- return this.contents.has(username);
101
- }
102
- /**
103
- * Returns true if there is an auth file for the given username. The `read` or `readAll` methods must be called first in order to populate the cache.
104
- *
105
- * @param username
106
- */
107
- async exists(username) {
108
- const config = this.configs.get(username);
109
- return config ? config.exists() : false;
110
- }
111
- /**
112
- * Return the file stats for a given userame's auth file.
113
- *
114
- * @param username
115
- */
116
- async stat(username) {
117
- const config = this.configs.get(username);
118
- return config ? config.stat() : null;
119
- }
120
- /**
121
- * Returns true if there is an auth file for the given username
122
- *
123
- * @param username
124
- */
125
- async hasFile(username) {
126
- try {
127
- await fs.promises.access(this.parseFilename(username));
128
- return true;
129
- }
130
- catch {
131
- this.logger.debug(`No auth file found for ${username}`);
132
- return false;
133
- }
134
- }
135
- /**
136
- * Return all auth files under the global state directory.
137
- */
138
- async list() {
139
- return this.getAllFiles();
140
- }
141
- /**
142
- * Set the contents for a given username.
143
- *
144
- * @param username
145
- * @param org
146
- */
147
- set(username, org) {
148
- const config = this.configs.get(username);
149
- if (config) {
150
- config.setContentsFromObject(org);
151
- const contents = config.getContents();
152
- contents.username ?? (contents.username = username);
153
- this.contents.set(username, contents);
154
- }
155
- else {
156
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
157
- // @ts-ignore
158
- org.username ?? (org.username = username);
159
- this.contents.set(username, org);
160
- }
161
- }
162
- /**
163
- * Update the contents for a given username.
164
- *
165
- * @param username
166
- * @param org
167
- */
168
- update(username, org) {
169
- const existing = this.get(username) || {};
170
- const merged = Object.assign({}, existing, org);
171
- return this.set(username, merged);
172
- }
173
- /**
174
- * Delete the auth file for a given username.
175
- *
176
- * @param username
177
- */
178
- async remove(username) {
179
- await this.configs.get(username)?.unlink();
180
- this.configs.delete(username);
181
- this.contents.delete(username);
182
- }
183
- /**
184
- * Write the contents of the auth file for a given username.
185
- *
186
- * @param username
187
- */
188
- async write(username) {
189
- const config = this.configs.get(username);
190
- if (config) {
191
- return (await config.write());
192
- }
193
- else {
194
- const contents = this.contents.get(username) ?? {};
195
- await this.read(username, false, false);
196
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
197
- const readConfig = this.configs.get(username);
198
- readConfig.setContentsFromObject(contents);
199
- return (await readConfig.write());
200
- }
201
- }
202
- async init() {
203
- this.logger = await logger_1.Logger.child(this.constructor.name);
204
- }
205
- async getAllFiles() {
206
- const regex = this.getFileRegex();
207
- try {
208
- return (await fs.promises.readdir(global_1.Global.DIR)).filter((file) => regex.test(file));
209
- }
210
- catch {
211
- return [];
212
- }
213
- }
214
- parseUsername(filename) {
215
- return filename.replace(this.getFileExtension(), '');
216
- }
217
- parseFilename(username) {
218
- return path.join(global_1.Global.DIR, `${username}${this.getFileExtension()}`);
219
- }
220
- }
221
- exports.BaseOrgAccessor = BaseOrgAccessor;
222
- class OrgAccessor extends BaseOrgAccessor {
223
- // eslint-disable-next-line class-methods-use-this
224
- async initAuthFile(username, throwOnNotFound = false) {
225
- return authInfoConfig_1.AuthInfoConfig.create({
226
- ...authInfoConfig_1.AuthInfoConfig.getOptions(username),
227
- throwOnNotFound,
228
- });
229
- }
230
- // eslint-disable-next-line class-methods-use-this
231
- getFileRegex() {
232
- // The regular expression that filters files stored in $HOME/.sfdx
233
- return /^[^.][^@]*@[^.]+(\.[^.\s]+)+\.json$/;
234
- }
235
- // eslint-disable-next-line class-methods-use-this
236
- getFileExtension() {
237
- return '.json';
238
- }
239
- }
240
- exports.OrgAccessor = OrgAccessor;
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.OrgAccessor = exports.BaseOrgAccessor = void 0;
10
+ const fs = require("fs");
11
+ const path = require("path");
12
+ const kit_1 = require("@salesforce/kit");
13
+ const authInfoConfig_1 = require("../../config/authInfoConfig");
14
+ const global_1 = require("../../global");
15
+ const logger_1 = require("../../logger");
16
+ const messages_1 = require("../../messages");
17
+ function chunk(array, chunkSize) {
18
+ const final = [];
19
+ for (let i = 0, len = array.length; i < len; i += chunkSize)
20
+ final.push(array.slice(i, i + chunkSize));
21
+ return final;
22
+ }
23
+ class BaseOrgAccessor extends kit_1.AsyncOptionalCreatable {
24
+ constructor() {
25
+ super(...arguments);
26
+ this.configs = new Map();
27
+ this.contents = new Map();
28
+ }
29
+ /**
30
+ * Read the auth file for the given username. Once the file has been read, it can be re-accessed with the `get` method.
31
+ *
32
+ * @param username username to read
33
+ * @param decrypt if true, decrypt encrypted values
34
+ * @param throwOnNotFound throw if file is not found for username
35
+ */
36
+ async read(username, decrypt = false, throwOnNotFound = true) {
37
+ try {
38
+ const config = await this.initAuthFile(username, throwOnNotFound);
39
+ this.configs.set(username, config);
40
+ return this.get(username, decrypt);
41
+ }
42
+ catch (err) {
43
+ return null;
44
+ }
45
+ }
46
+ /**
47
+ * Read all the auth files under the global state directory
48
+ *
49
+ * @param decrypt if true, decrypt encrypted values
50
+ */
51
+ async readAll(decrypt = false) {
52
+ const fileChunks = chunk(await this.getAllFiles(), 50);
53
+ for (const fileChunk of fileChunks) {
54
+ const promises = fileChunk.map(async (f) => {
55
+ const username = this.parseUsername(f);
56
+ const config = await this.initAuthFile(username);
57
+ this.configs.set(username, config);
58
+ });
59
+ // eslint-disable-next-line no-await-in-loop
60
+ await Promise.all(promises);
61
+ }
62
+ return this.getAll(decrypt);
63
+ }
64
+ /**
65
+ * Return the contents of the username's auth file from cache.
66
+ * The `read` or `readAll` methods must be called first in order to populate the cache.
67
+ * If throwOnNotFound is not true, an empty object {} is returned if the org is not found.
68
+ *
69
+ * @param username username to get
70
+ * @param decrypt if true, decrypt encrypted values
71
+ * @param throwOnNotFound if true, throw if the auth file does not already exist in the cache
72
+ */
73
+ get(username, decrypt = false, throwOnNotFound = false) {
74
+ const config = this.configs.get(username);
75
+ if (throwOnNotFound && config?.keys().length === 0) {
76
+ messages_1.Messages.importMessagesDirectory(__dirname);
77
+ const messages = messages_1.Messages.load('@salesforce/core', 'core', ['namedOrgNotFound']);
78
+ throw messages.createError('namedOrgNotFound', [username]);
79
+ }
80
+ if (config) {
81
+ this.contents.set(username, config.getContents(decrypt));
82
+ }
83
+ return this.contents.get(username);
84
+ }
85
+ /**
86
+ * Return the contents of all the auth files from cache. The `read` or `readAll` methods must be called first in order to populate the cache.
87
+ *
88
+ * @param decrypt if true, decrypt encrypted values
89
+ * @returns
90
+ */
91
+ getAll(decrypt = false) {
92
+ return [...this.configs.keys()].map((username) => this.get(username, decrypt)).filter((org) => !(0, kit_1.isEmpty)(org));
93
+ }
94
+ /**
95
+ * Returns true if the username has been cached.
96
+ *
97
+ * @param username
98
+ */
99
+ has(username) {
100
+ return this.contents.has(username);
101
+ }
102
+ /**
103
+ * Returns true if there is an auth file for the given username. The `read` or `readAll` methods must be called first in order to populate the cache.
104
+ *
105
+ * @param username
106
+ */
107
+ async exists(username) {
108
+ const config = this.configs.get(username);
109
+ return config ? config.exists() : false;
110
+ }
111
+ /**
112
+ * Return the file stats for a given userame's auth file.
113
+ *
114
+ * @param username
115
+ */
116
+ async stat(username) {
117
+ const config = this.configs.get(username);
118
+ return config ? config.stat() : null;
119
+ }
120
+ /**
121
+ * Returns true if there is an auth file for the given username
122
+ *
123
+ * @param username
124
+ */
125
+ async hasFile(username) {
126
+ try {
127
+ await fs.promises.access(this.parseFilename(username));
128
+ return true;
129
+ }
130
+ catch {
131
+ this.logger.debug(`No auth file found for ${username}`);
132
+ return false;
133
+ }
134
+ }
135
+ /**
136
+ * Return all auth files under the global state directory.
137
+ */
138
+ async list() {
139
+ return this.getAllFiles();
140
+ }
141
+ /**
142
+ * Set the contents for a given username.
143
+ *
144
+ * @param username
145
+ * @param org
146
+ */
147
+ set(username, org) {
148
+ const config = this.configs.get(username);
149
+ if (config) {
150
+ config.setContentsFromObject(org);
151
+ const contents = config.getContents();
152
+ contents.username ?? (contents.username = username);
153
+ this.contents.set(username, contents);
154
+ }
155
+ else {
156
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
157
+ // @ts-ignore
158
+ org.username ?? (org.username = username);
159
+ this.contents.set(username, org);
160
+ }
161
+ }
162
+ /**
163
+ * Update the contents for a given username.
164
+ *
165
+ * @param username
166
+ * @param org
167
+ */
168
+ update(username, org) {
169
+ const existing = this.get(username) || {};
170
+ const merged = Object.assign({}, existing, org);
171
+ return this.set(username, merged);
172
+ }
173
+ /**
174
+ * Delete the auth file for a given username.
175
+ *
176
+ * @param username
177
+ */
178
+ async remove(username) {
179
+ await this.configs.get(username)?.unlink();
180
+ this.configs.delete(username);
181
+ this.contents.delete(username);
182
+ }
183
+ /**
184
+ * Write the contents of the auth file for a given username.
185
+ *
186
+ * @param username
187
+ */
188
+ async write(username) {
189
+ const config = this.configs.get(username);
190
+ if (config) {
191
+ return (await config.write());
192
+ }
193
+ else {
194
+ const contents = this.contents.get(username) ?? {};
195
+ await this.read(username, false, false);
196
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
197
+ const readConfig = this.configs.get(username);
198
+ readConfig.setContentsFromObject(contents);
199
+ return (await readConfig.write());
200
+ }
201
+ }
202
+ async init() {
203
+ this.logger = await logger_1.Logger.child(this.constructor.name);
204
+ }
205
+ async getAllFiles() {
206
+ const regex = this.getFileRegex();
207
+ try {
208
+ return (await fs.promises.readdir(global_1.Global.DIR)).filter((file) => regex.test(file));
209
+ }
210
+ catch {
211
+ return [];
212
+ }
213
+ }
214
+ parseUsername(filename) {
215
+ return filename.replace(this.getFileExtension(), '');
216
+ }
217
+ parseFilename(username) {
218
+ return path.join(global_1.Global.DIR, `${username}${this.getFileExtension()}`);
219
+ }
220
+ }
221
+ exports.BaseOrgAccessor = BaseOrgAccessor;
222
+ class OrgAccessor extends BaseOrgAccessor {
223
+ // eslint-disable-next-line class-methods-use-this
224
+ async initAuthFile(username, throwOnNotFound = false) {
225
+ return authInfoConfig_1.AuthInfoConfig.create({
226
+ ...authInfoConfig_1.AuthInfoConfig.getOptions(username),
227
+ throwOnNotFound,
228
+ });
229
+ }
230
+ // eslint-disable-next-line class-methods-use-this
231
+ getFileRegex() {
232
+ // The regular expression that filters files stored in $HOME/.sfdx
233
+ return /^[^.][^@]*@[^.]+(\.[^.\s]+)+\.json$/;
234
+ }
235
+ // eslint-disable-next-line class-methods-use-this
236
+ getFileExtension() {
237
+ return '.json';
238
+ }
239
+ }
240
+ exports.OrgAccessor = OrgAccessor;
241
241
  //# sourceMappingURL=orgAccessor.js.map
@@ -1,8 +1,8 @@
1
- import { SandboxOrgConfig } from '../../config/sandboxOrgConfig';
2
- import { SandboxFields } from '../../org';
3
- import { BaseOrgAccessor } from './orgAccessor';
4
- export declare class SandboxAccessor extends BaseOrgAccessor<SandboxOrgConfig, SandboxFields> {
5
- protected initAuthFile(username: string, throwOnNotFound?: boolean): Promise<SandboxOrgConfig>;
6
- protected getFileRegex(): RegExp;
7
- protected getFileExtension(): string;
8
- }
1
+ import { SandboxOrgConfig } from '../../config/sandboxOrgConfig';
2
+ import { SandboxFields } from '../../org';
3
+ import { BaseOrgAccessor } from './orgAccessor';
4
+ export declare class SandboxAccessor extends BaseOrgAccessor<SandboxOrgConfig, SandboxFields> {
5
+ protected initAuthFile(username: string, throwOnNotFound?: boolean): Promise<SandboxOrgConfig>;
6
+ protected getFileRegex(): RegExp;
7
+ protected getFileExtension(): string;
8
+ }
@@ -1,28 +1,28 @@
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
- /* eslint-disable class-methods-use-this */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.SandboxAccessor = void 0;
11
- const sandboxOrgConfig_1 = require("../../config/sandboxOrgConfig");
12
- const orgAccessor_1 = require("./orgAccessor");
13
- class SandboxAccessor extends orgAccessor_1.BaseOrgAccessor {
14
- async initAuthFile(username, throwOnNotFound = false) {
15
- return sandboxOrgConfig_1.SandboxOrgConfig.create({
16
- ...sandboxOrgConfig_1.SandboxOrgConfig.getOptions(username),
17
- throwOnNotFound,
18
- });
19
- }
20
- getFileRegex() {
21
- return /^(00D.*?)\.sandbox\.json$/;
22
- }
23
- getFileExtension() {
24
- return '.sandbox.json';
25
- }
26
- }
27
- exports.SandboxAccessor = SandboxAccessor;
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
+ /* eslint-disable class-methods-use-this */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.SandboxAccessor = void 0;
11
+ const sandboxOrgConfig_1 = require("../../config/sandboxOrgConfig");
12
+ const orgAccessor_1 = require("./orgAccessor");
13
+ class SandboxAccessor extends orgAccessor_1.BaseOrgAccessor {
14
+ async initAuthFile(username, throwOnNotFound = false) {
15
+ return sandboxOrgConfig_1.SandboxOrgConfig.create({
16
+ ...sandboxOrgConfig_1.SandboxOrgConfig.getOptions(username),
17
+ throwOnNotFound,
18
+ });
19
+ }
20
+ getFileRegex() {
21
+ return /^(00D.*?)\.sandbox\.json$/;
22
+ }
23
+ getFileExtension() {
24
+ return '.sandbox.json';
25
+ }
26
+ }
27
+ exports.SandboxAccessor = SandboxAccessor;
28
28
  //# sourceMappingURL=sandboxAccessor.js.map