@salesforce/plugin-auth 2.4.2 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/lib/authBaseCommand.d.ts +11 -0
  2. package/lib/authBaseCommand.js +64 -0
  3. package/lib/authBaseCommand.js.map +1 -0
  4. package/lib/commands/auth/accesstoken/store.d.ts +15 -3
  5. package/lib/commands/auth/accesstoken/store.js +39 -31
  6. package/lib/commands/auth/accesstoken/store.js.map +1 -1
  7. package/lib/commands/auth/device/login.d.ts +16 -4
  8. package/lib/commands/auth/device/login.js +48 -33
  9. package/lib/commands/auth/device/login.js.map +1 -1
  10. package/lib/commands/auth/jwt/grant.d.ts +18 -3
  11. package/lib/commands/auth/jwt/grant.js +54 -31
  12. package/lib/commands/auth/jwt/grant.js.map +1 -1
  13. package/lib/commands/auth/list.d.ts +14 -4
  14. package/lib/commands/auth/list.js +17 -14
  15. package/lib/commands/auth/list.js.map +1 -1
  16. package/lib/commands/auth/logout.d.ts +15 -6
  17. package/lib/commands/auth/logout.js +47 -26
  18. package/lib/commands/auth/logout.js.map +1 -1
  19. package/lib/commands/auth/sfdxurl/store.d.ts +11 -3
  20. package/lib/commands/auth/sfdxurl/store.js +37 -24
  21. package/lib/commands/auth/sfdxurl/store.js.map +1 -1
  22. package/lib/commands/auth/web/login.d.ts +18 -3
  23. package/lib/commands/auth/web/login.js +49 -31
  24. package/lib/commands/auth/web/login.js.map +1 -1
  25. package/messages/accesstoken.store.md +22 -0
  26. package/messages/device.login.md +28 -0
  27. package/messages/jwt.grant.md +29 -0
  28. package/messages/list.md +15 -0
  29. package/messages/logout.md +45 -0
  30. package/messages/messages.md +58 -0
  31. package/messages/sfdxurl.store.md +27 -0
  32. package/messages/web.login.md +31 -0
  33. package/oclif.manifest.json +371 -626
  34. package/package.json +16 -14
  35. package/lib/prompts.d.ts +0 -11
  36. package/lib/prompts.js +0 -65
  37. package/lib/prompts.js.map +0 -1
  38. package/messages/accesstoken.store.json +0 -9
  39. package/messages/device.login.json +0 -11
  40. package/messages/jwt.grant.json +0 -11
  41. package/messages/list.json +0 -4
  42. package/messages/logout.json +0 -9
  43. package/messages/messages.json +0 -37
  44. package/messages/sfdxurl.store.json +0 -8
  45. package/messages/web.login.json +0 -12
@@ -0,0 +1,11 @@
1
+ import { SfCommand } from '@salesforce/sf-plugins-core';
2
+ import { Config } from '@oclif/core';
3
+ export declare abstract class AuthBaseCommand<T> extends SfCommand<T> {
4
+ constructor(argv: string[], config: Config);
5
+ protected askForHiddenResponse(messageKey: string, disableMasking?: boolean): Promise<string>;
6
+ protected shouldExitCommand(noPrompt?: boolean, message?: string): Promise<boolean>;
7
+ protected shouldRunCommand(noPrompt?: boolean, message?: string, defaultAnswer?: boolean): Promise<boolean>;
8
+ protected askForClientSecret(disableMasking?: boolean): Promise<string>;
9
+ protected askForAccessToken(disableMasking?: boolean): Promise<string>;
10
+ protected askOverwriteAuthFile(username: string): Promise<boolean>;
11
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthBaseCommand = void 0;
4
+ /*
5
+ * Copyright (c) 2020, salesforce.com, inc.
6
+ * All rights reserved.
7
+ * Licensed under the BSD 3-Clause license.
8
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
9
+ */
10
+ const core_1 = require("@salesforce/core");
11
+ const chalk = require("chalk");
12
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
13
+ core_1.Messages.importMessagesDirectory(__dirname);
14
+ const messages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'messages');
15
+ function dimMessage(message) {
16
+ return chalk.dim(message);
17
+ }
18
+ class AuthBaseCommand extends sf_plugins_core_1.SfCommand {
19
+ constructor(argv, config) {
20
+ super(argv, config);
21
+ }
22
+ async askForHiddenResponse(messageKey, disableMasking = false) {
23
+ const msg = dimMessage(messages.getMessage(messageKey));
24
+ const hidden = await this.prompt({
25
+ message: msg,
26
+ type: 'input',
27
+ name: 'response',
28
+ transformer: (input) => (disableMasking ? input : '*'.repeat(input.length)),
29
+ });
30
+ return hidden.response;
31
+ }
32
+ async shouldExitCommand(noPrompt, message) {
33
+ if (noPrompt || core_1.Global.getEnvironmentMode() !== core_1.Mode.DEMO) {
34
+ return false;
35
+ }
36
+ else {
37
+ const msg = dimMessage(message ?? messages.getMessage('warnAuth', [this.config.bin]));
38
+ const answer = await this.confirm(msg);
39
+ return !answer;
40
+ }
41
+ }
42
+ async shouldRunCommand(noPrompt, message, defaultAnswer = true) {
43
+ if (noPrompt || core_1.Global.getEnvironmentMode() === core_1.Mode.DEMO) {
44
+ return true;
45
+ }
46
+ else {
47
+ const msg = dimMessage(message ?? messages.getMessage('warnAuth', [this.config.bin]));
48
+ const answer = await this.confirm(msg, 10000, defaultAnswer);
49
+ return answer;
50
+ }
51
+ }
52
+ async askForClientSecret(disableMasking = false) {
53
+ return this.askForHiddenResponse('clientSecretStdin', disableMasking);
54
+ }
55
+ async askForAccessToken(disableMasking = false) {
56
+ return this.askForHiddenResponse('accessTokenStdin', disableMasking);
57
+ }
58
+ async askOverwriteAuthFile(username) {
59
+ const yN = await this.confirm(messages.getMessage('overwriteAccessTokenAuthUserFile', [username]));
60
+ return yN;
61
+ }
62
+ }
63
+ exports.AuthBaseCommand = AuthBaseCommand;
64
+ //# sourceMappingURL=authBaseCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authBaseCommand.js","sourceRoot":"","sources":["../src/authBaseCommand.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,2CAA0D;AAC1D,+BAA+B;AAC/B,iEAAwD;AAGxD,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;AAE9E,SAAS,UAAU,CAAC,OAAe;IACjC,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC;AAED,MAAsB,eAAmB,SAAQ,2BAAY;IAC3D,YAAmB,IAAc,EAAE,MAAc;QAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtB,CAAC;IAES,KAAK,CAAC,oBAAoB,CAAC,UAAkB,EAAE,cAAc,GAAG,KAAK;QAC7E,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QACxD,MAAM,MAAM,GAAyB,MAAM,IAAI,CAAC,MAAM,CAAC;YACrD,OAAO,EAAE,GAAG;YACZ,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SACpF,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,QAAQ,CAAC;IACzB,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,QAAkB,EAAE,OAAgB;QACpE,IAAI,QAAQ,IAAI,aAAM,CAAC,kBAAkB,EAAE,KAAK,WAAI,CAAC,IAAI,EAAE;YACzD,OAAO,KAAK,CAAC;SACd;aAAM;YACL,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,CAAC,MAAM,CAAC;SAChB;IACH,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,QAAkB,EAAE,OAAgB,EAAE,aAAa,GAAG,IAAI;QACzF,IAAI,QAAQ,IAAI,aAAM,CAAC,kBAAkB,EAAE,KAAK,WAAI,CAAC,IAAI,EAAE;YACzD,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACtF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;SACf;IACH,CAAC;IAES,KAAK,CAAC,kBAAkB,CAAC,cAAc,GAAG,KAAK;QACvD,OAAO,IAAI,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IACxE,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,cAAc,GAAG,KAAK;QACtD,OAAO,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IACvE,CAAC;IAES,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACnD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,kCAAkC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACnG,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAhDD,0CAgDC"}
@@ -1,10 +1,22 @@
1
- import { FlagsConfig, SfdxCommand } from '@salesforce/command';
1
+ /// <reference types="node" />
2
2
  import { AuthFields } from '@salesforce/core';
3
- export default class Store extends SfdxCommand {
3
+ import { Interfaces } from '@oclif/core';
4
+ import { AuthBaseCommand } from '../../../authBaseCommand';
5
+ export default class Store extends AuthBaseCommand<AuthFields> {
6
+ static readonly summary: string;
4
7
  static readonly description: string;
5
8
  static readonly examples: string[];
9
+ static readonly deprecateAliases = true;
6
10
  static aliases: string[];
7
- static readonly flagsConfig: FlagsConfig;
11
+ static readonly flags: {
12
+ 'instance-url': Interfaces.OptionFlag<import("url").URL, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ 'set-default-dev-hub': Interfaces.BooleanFlag<boolean>;
14
+ 'set-default': Interfaces.BooleanFlag<boolean>;
15
+ alias: Interfaces.OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
+ 'no-prompt': Interfaces.BooleanFlag<boolean>;
17
+ loglevel: Interfaces.OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
18
+ };
19
+ private flags;
8
20
  run(): Promise<AuthFields>;
9
21
  private getUserInfo;
10
22
  private storeAuthFromAccessToken;
@@ -6,19 +6,20 @@
6
6
  * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- const os = require("os");
10
- const command_1 = require("@salesforce/command");
9
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
11
10
  const core_1 = require("@salesforce/core");
12
11
  const ts_types_1 = require("@salesforce/ts-types");
13
12
  const kit_1 = require("@salesforce/kit");
14
- const prompts_1 = require("../../../prompts");
13
+ const authBaseCommand_1 = require("../../../authBaseCommand");
15
14
  core_1.Messages.importMessagesDirectory(__dirname);
16
15
  const messages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'accesstoken.store');
17
16
  const commonMessages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'messages');
18
17
  const ACCESS_TOKEN_FORMAT = '"<org id>!<accesstoken>"';
19
- class Store extends command_1.SfdxCommand {
18
+ class Store extends authBaseCommand_1.AuthBaseCommand {
20
19
  async run() {
21
- const instanceUrl = (0, ts_types_1.ensureString)((0, ts_types_1.getString)(this.flags, 'instanceurl.href'));
20
+ const { flags } = await this.parse(Store);
21
+ this.flags = flags;
22
+ const instanceUrl = (0, ts_types_1.ensureString)((0, ts_types_1.getString)(flags, 'instance-url.href'));
22
23
  const accessToken = await this.getAccessToken();
23
24
  const authInfo = await this.getUserInfo(accessToken, instanceUrl);
24
25
  return this.storeAuthFromAccessToken(authInfo);
@@ -35,36 +36,30 @@ class Store extends command_1.SfdxCommand {
35
36
  authInfo.getUsername(),
36
37
  authInfo.getFields(true).orgId,
37
38
  ]);
38
- this.ux.log(successMsg);
39
+ this.logSuccess(successMsg);
39
40
  }
40
41
  return authInfo.getFields(true);
41
42
  }
42
43
  async saveAuthInfo(authInfo) {
43
44
  await authInfo.save();
44
45
  await authInfo.handleAliasAndDefaultSettings({
45
- alias: this.flags.setalias,
46
- setDefault: this.flags.setdefaultusername,
47
- setDefaultDevHub: this.flags.setdefaultdevhubusername,
46
+ alias: this.flags.alias,
47
+ setDefault: this.flags['set-default'],
48
+ setDefaultDevHub: this.flags['set-default-dev-hub'],
48
49
  });
49
50
  await core_1.AuthInfo.identifyPossibleScratchOrgs(authInfo.getFields(true), authInfo);
50
51
  }
51
52
  async overwriteAuthInfo(username) {
52
- if (!this.flags.noprompt) {
53
+ if (!this.flags['no-prompt']) {
53
54
  const stateAggregator = await core_1.StateAggregator.getInstance();
54
55
  if (await stateAggregator.orgs.exists(username)) {
55
- return prompts_1.Prompts.askOverwriteAuthFile(this.ux, username);
56
+ return this.askOverwriteAuthFile(username);
56
57
  }
57
58
  }
58
59
  return true;
59
60
  }
60
61
  async getAccessToken() {
61
- let accessToken;
62
- if (kit_1.env.getString('SFDX_ACCESS_TOKEN')) {
63
- accessToken = kit_1.env.getString('SFDX_ACCESS_TOKEN');
64
- }
65
- else {
66
- accessToken = await prompts_1.Prompts.askForAccessToken(this.ux);
67
- }
62
+ const accessToken = kit_1.env.getString('SFDX_ACCESS_TOKEN') ?? (await this.askForAccessToken());
68
63
  if (!core_1.sfdc.matchesAccessToken(accessToken)) {
69
64
  throw new core_1.SfError(messages.getMessage('invalidAccessTokenFormat', [ACCESS_TOKEN_FORMAT]));
70
65
  }
@@ -72,34 +67,47 @@ class Store extends command_1.SfdxCommand {
72
67
  }
73
68
  }
74
69
  exports.default = Store;
75
- Store.description = messages.getMessage('description', [ACCESS_TOKEN_FORMAT]);
76
- Store.examples = messages.getMessage('examples').split(os.EOL);
70
+ Store.summary = messages.getMessage('summary');
71
+ Store.description = messages.getMessage('description');
72
+ Store.examples = messages.getMessages('examples');
73
+ Store.deprecateAliases = true;
77
74
  Store.aliases = ['force:auth:accesstoken:store'];
78
- Store.flagsConfig = {
79
- instanceurl: command_1.flags.url({
75
+ Store.flags = {
76
+ 'instance-url': sf_plugins_core_1.Flags.url({
80
77
  char: 'r',
81
- description: commonMessages.getMessage('instanceUrl'),
78
+ summary: commonMessages.getMessage('instanceUrl'),
82
79
  required: true,
80
+ deprecateAliases: true,
81
+ aliases: ['instanceurl'],
83
82
  }),
84
- setdefaultdevhubusername: command_1.flags.boolean({
83
+ 'set-default-dev-hub': sf_plugins_core_1.Flags.boolean({
85
84
  char: 'd',
86
- description: commonMessages.getMessage('setDefaultDevHub'),
85
+ summary: commonMessages.getMessage('setDefaultDevHub'),
87
86
  default: false,
87
+ deprecateAliases: true,
88
+ aliases: ['setdefaultdevhub'],
88
89
  }),
89
- setdefaultusername: command_1.flags.boolean({
90
+ 'set-default': sf_plugins_core_1.Flags.boolean({
90
91
  char: 's',
91
- description: commonMessages.getMessage('setDefaultUsername'),
92
+ summary: commonMessages.getMessage('setDefaultUsername'),
92
93
  default: false,
94
+ deprecateAliases: true,
95
+ aliases: ['setdefaultusername'],
93
96
  }),
94
- setalias: command_1.flags.string({
97
+ alias: sf_plugins_core_1.Flags.string({
95
98
  char: 'a',
96
- description: commonMessages.getMessage('setAlias'),
99
+ summary: commonMessages.getMessage('setAlias'),
100
+ deprecateAliases: true,
101
+ aliases: ['setalias'],
97
102
  }),
98
- noprompt: command_1.flags.boolean({
103
+ 'no-prompt': sf_plugins_core_1.Flags.boolean({
99
104
  char: 'p',
100
- description: commonMessages.getMessage('noPrompt'),
105
+ summary: commonMessages.getMessage('noPrompt'),
101
106
  required: false,
102
107
  default: false,
108
+ deprecateAliases: true,
109
+ aliases: ['noprompt'],
103
110
  }),
111
+ loglevel: sf_plugins_core_1.loglevel,
104
112
  };
105
113
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/commands/auth/accesstoken/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../../src/commands/auth/accesstoken/store.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,21 @@
1
- import { FlagsConfig, SfdxCommand } from '@salesforce/command';
1
+ /// <reference types="node" />
2
2
  import { AuthFields } from '@salesforce/core';
3
- export default class Login extends SfdxCommand {
3
+ import { DeviceCodeResponse } from '@salesforce/core/lib/deviceOauthService';
4
+ import { AuthBaseCommand } from '../../../authBaseCommand';
5
+ export type DeviceLoginResult = (AuthFields & DeviceCodeResponse) | Record<string, never>;
6
+ export default class Login extends AuthBaseCommand<DeviceLoginResult> {
7
+ static readonly summary: string;
4
8
  static readonly description: string;
5
9
  static readonly examples: string[];
6
10
  static aliases: string[];
7
- static readonly flagsConfig: FlagsConfig;
8
- run(): Promise<AuthFields>;
11
+ static readonly flags: {
12
+ 'client-id': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ 'instance-url': import("@oclif/core/lib/interfaces").OptionFlag<import("url").URL | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ 'set-default-dev-hub': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ 'set-default': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
+ alias: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
17
+ 'disable-masking': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
18
+ loglevel: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
19
+ };
20
+ run(): Promise<DeviceLoginResult>;
9
21
  }
@@ -6,49 +6,50 @@
6
6
  * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- const os = require("os");
10
- const command_1 = require("@salesforce/command");
11
9
  const core_1 = require("@salesforce/core");
12
10
  const ts_types_1 = require("@salesforce/ts-types");
13
- const prompts_1 = require("../../../prompts");
11
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
12
+ const core_2 = require("@oclif/core");
13
+ const authBaseCommand_1 = require("../../../authBaseCommand");
14
14
  const common_1 = require("../../../common");
15
15
  core_1.Messages.importMessagesDirectory(__dirname);
16
16
  const messages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'device.login');
17
17
  const commonMessages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'messages');
18
- class Login extends command_1.SfdxCommand {
18
+ class Login extends authBaseCommand_1.AuthBaseCommand {
19
19
  async run() {
20
- if (await prompts_1.Prompts.shouldExitCommand(this.ux, false))
20
+ const { flags } = await this.parse(Login);
21
+ if (await this.shouldExitCommand(false))
21
22
  return {};
22
23
  const oauthConfig = {
23
- loginUrl: await common_1.Common.resolveLoginUrl((0, ts_types_1.get)(this.flags.instanceurl, 'href', null)),
24
- clientId: this.flags.clientid,
24
+ loginUrl: await common_1.Common.resolveLoginUrl((0, ts_types_1.get)(flags.instanceurl, 'href', null)),
25
+ clientId: flags.clientid,
25
26
  };
26
- if (this.flags.clientid) {
27
- oauthConfig.clientSecret = await prompts_1.Prompts.askForClientSecret(this.ux, this.flags.disablemasking);
27
+ if (flags.clientid) {
28
+ oauthConfig.clientSecret = await this.askForClientSecret(flags['disable-masking']);
28
29
  }
29
30
  const deviceOauthService = await core_1.DeviceOauthService.create(oauthConfig);
30
31
  const loginData = await deviceOauthService.requestDeviceLogin();
31
- if (this.flags.json) {
32
- this.ux.logJson(loginData);
32
+ if (this.jsonEnabled()) {
33
+ core_2.ux.log(JSON.stringify(loginData, null, 2));
33
34
  }
34
35
  else {
35
- this.ux.styledHeader(messages.getMessage('actionRequired'));
36
- this.ux.log(messages.getMessage('enterCode'), loginData.user_code, loginData.verification_uri);
37
- this.ux.log();
36
+ this.styledHeader(messages.getMessage('actionRequired'));
37
+ this.log(messages.getMessage('enterCode', [loginData.user_code, loginData.verification_uri]));
38
+ this.log();
38
39
  }
39
40
  const approval = await deviceOauthService.awaitDeviceApproval(loginData);
40
41
  if (approval) {
41
42
  const authInfo = await deviceOauthService.authorizeAndSave(approval);
42
43
  await authInfo.handleAliasAndDefaultSettings({
43
- alias: this.flags.setalias,
44
- setDefault: this.flags.setdefaultusername,
45
- setDefaultDevHub: this.flags.setdefaultdevhubusername,
44
+ alias: flags.alias,
45
+ setDefault: flags['set-default'],
46
+ setDefaultDevHub: flags['set-default-dev-hub'],
46
47
  });
47
48
  const fields = authInfo.getFields(true);
48
49
  await core_1.AuthInfo.identifyPossibleScratchOrgs(fields, authInfo);
49
50
  const successMsg = messages.getMessage('success', [fields.username]);
50
- this.ux.log(successMsg);
51
- return fields;
51
+ this.logSuccess(successMsg);
52
+ return { ...fields, ...loginData };
52
53
  }
53
54
  else {
54
55
  return {};
@@ -56,33 +57,47 @@ class Login extends command_1.SfdxCommand {
56
57
  }
57
58
  }
58
59
  exports.default = Login;
60
+ Login.summary = messages.getMessage('summary');
59
61
  Login.description = messages.getMessage('description');
60
- Login.examples = messages.getMessage('examples').split(os.EOL);
62
+ Login.examples = messages.getMessages('examples');
61
63
  Login.aliases = ['force:auth:device:login'];
62
- Login.flagsConfig = {
63
- clientid: command_1.flags.string({
64
+ Login.flags = {
65
+ 'client-id': sf_plugins_core_1.Flags.string({
64
66
  char: 'i',
65
- description: commonMessages.getMessage('clientId'),
67
+ summary: commonMessages.getMessage('clientId'),
68
+ deprecateAliases: true,
69
+ aliases: ['clientid'],
66
70
  }),
67
- instanceurl: command_1.flags.url({
71
+ 'instance-url': sf_plugins_core_1.Flags.url({
68
72
  char: 'r',
69
- description: commonMessages.getMessage('instanceUrl'),
73
+ summary: commonMessages.getMessage('instanceUrl'),
74
+ deprecateAliases: true,
75
+ aliases: ['instanceurl'],
70
76
  }),
71
- setdefaultdevhubusername: command_1.flags.boolean({
77
+ 'set-default-dev-hub': sf_plugins_core_1.Flags.boolean({
72
78
  char: 'd',
73
- description: commonMessages.getMessage('setDefaultDevHub'),
79
+ summary: commonMessages.getMessage('setDefaultDevHub'),
80
+ deprecateAliases: true,
81
+ aliases: ['setdefaultdevhub'],
74
82
  }),
75
- setdefaultusername: command_1.flags.boolean({
83
+ 'set-default': sf_plugins_core_1.Flags.boolean({
76
84
  char: 's',
77
- description: commonMessages.getMessage('setDefaultUsername'),
85
+ summary: commonMessages.getMessage('setDefaultUsername'),
86
+ deprecateAliases: true,
87
+ aliases: ['setdefaultusername'],
78
88
  }),
79
- setalias: command_1.flags.string({
89
+ alias: sf_plugins_core_1.Flags.string({
80
90
  char: 'a',
81
- description: commonMessages.getMessage('setAlias'),
91
+ summary: commonMessages.getMessage('setAlias'),
92
+ deprecateAliases: true,
93
+ aliases: ['setalias'],
82
94
  }),
83
- disablemasking: command_1.flags.boolean({
84
- description: commonMessages.getMessage('disableMasking'),
95
+ 'disable-masking': sf_plugins_core_1.Flags.boolean({
96
+ summary: commonMessages.getMessage('disableMasking'),
85
97
  hidden: true,
98
+ deprecateAliases: true,
99
+ aliases: ['disablemasking'],
86
100
  }),
101
+ loglevel: sf_plugins_core_1.loglevel,
87
102
  };
88
103
  //# sourceMappingURL=login.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/commands/auth/device/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/commands/auth/device/login.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,25 @@
1
- import { FlagsConfig, SfdxCommand } from '@salesforce/command';
1
+ /// <reference types="node" />
2
2
  import { AuthFields } from '@salesforce/core';
3
- export default class Grant extends SfdxCommand {
3
+ import { Interfaces } from '@oclif/core';
4
+ import { AuthBaseCommand } from '../../../authBaseCommand';
5
+ export default class Grant extends AuthBaseCommand<AuthFields> {
6
+ static readonly summary: string;
4
7
  static readonly description: string;
5
8
  static readonly examples: string[];
6
9
  static aliases: string[];
7
- static readonly flagsConfig: FlagsConfig;
10
+ static readonly flags: {
11
+ username: Interfaces.OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
12
+ 'jwt-key-file': Interfaces.OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ 'client-id': Interfaces.OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ 'instance-url': Interfaces.OptionFlag<import("url").URL | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
15
+ 'set-default-dev-hub': Interfaces.BooleanFlag<boolean>;
16
+ 'set-default': Interfaces.BooleanFlag<boolean>;
17
+ alias: Interfaces.OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
18
+ 'no-prompt': Interfaces.BooleanFlag<boolean>;
19
+ loglevel: Interfaces.OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
20
+ };
21
+ private flags;
22
+ private logger;
8
23
  run(): Promise<AuthFields>;
9
24
  private initAuthInfo;
10
25
  }
@@ -6,26 +6,31 @@
6
6
  * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- const os = require("os");
10
- const command_1 = require("@salesforce/command");
9
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
11
10
  const core_1 = require("@salesforce/core");
12
11
  const ts_types_1 = require("@salesforce/ts-types");
13
- const prompts_1 = require("../../../prompts");
12
+ const authBaseCommand_1 = require("../../../authBaseCommand");
14
13
  const common_1 = require("../../../common");
15
14
  core_1.Messages.importMessagesDirectory(__dirname);
16
15
  const messages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'jwt.grant');
17
16
  const commonMessages = core_1.Messages.loadMessages('@salesforce/plugin-auth', 'messages');
18
- class Grant extends command_1.SfdxCommand {
17
+ class Grant extends authBaseCommand_1.AuthBaseCommand {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.logger = core_1.Logger.childFromRoot(this.constructor.name);
21
+ }
19
22
  async run() {
23
+ const { flags } = await this.parse(Grant);
24
+ this.flags = flags;
20
25
  let result = {};
21
- if (await prompts_1.Prompts.shouldExitCommand(this.ux, Boolean(this.flags.noprompt)))
26
+ if (await this.shouldExitCommand(flags['no-prompt']))
22
27
  return {};
23
28
  try {
24
29
  const authInfo = await this.initAuthInfo();
25
30
  await authInfo.handleAliasAndDefaultSettings({
26
- alias: this.flags.setalias,
27
- setDefault: this.flags.setdefaultusername,
28
- setDefaultDevHub: this.flags.setdefaultdevhubusername,
31
+ alias: flags.alias,
32
+ setDefault: flags['set-default'],
33
+ setDefaultDevHub: flags['set-default-dev-hub'],
29
34
  });
30
35
  result = authInfo.getFields(true);
31
36
  await core_1.AuthInfo.identifyPossibleScratchOrgs(result, authInfo);
@@ -35,15 +40,15 @@ class Grant extends command_1.SfdxCommand {
35
40
  throw messages.createError('JwtGrantError', [msg]);
36
41
  }
37
42
  const successMsg = commonMessages.getMessage('authorizeCommandSuccess', [result.username, result.orgId]);
38
- this.ux.log(successMsg);
43
+ this.logSuccess(successMsg);
39
44
  return result;
40
45
  }
41
46
  async initAuthInfo() {
42
47
  const oauth2OptionsBase = {
43
- clientId: this.flags.clientid,
44
- privateKeyFile: this.flags.jwtkeyfile,
48
+ clientId: this.flags['client-id'],
49
+ privateKeyFile: this.flags['jwt-key-file'],
45
50
  };
46
- const loginUrl = await common_1.Common.resolveLoginUrl((0, ts_types_1.get)(this.flags.instanceurl, 'href', null));
51
+ const loginUrl = await common_1.Common.resolveLoginUrl(this.flags['instance-url']?.href);
47
52
  const oauth2Options = loginUrl ? Object.assign(oauth2OptionsBase, { loginUrl }) : oauth2OptionsBase;
48
53
  let authInfo;
49
54
  try {
@@ -72,46 +77,64 @@ class Grant extends command_1.SfdxCommand {
72
77
  }
73
78
  }
74
79
  exports.default = Grant;
80
+ Grant.summary = messages.getMessage('summary');
75
81
  Grant.description = messages.getMessage('description');
76
- Grant.examples = messages.getMessage('examples').split(os.EOL);
82
+ Grant.examples = messages.getMessages('examples');
77
83
  Grant.aliases = ['force:auth:jwt:grant'];
78
- Grant.flagsConfig = {
79
- username: command_1.flags.string({
80
- char: 'u',
81
- description: messages.getMessage('username'),
84
+ Grant.flags = {
85
+ username: sf_plugins_core_1.Flags.string({
86
+ char: 'o',
87
+ summary: messages.getMessage('username'),
82
88
  required: true,
89
+ deprecateAliases: true,
90
+ aliases: ['u'],
83
91
  }),
84
- jwtkeyfile: command_1.flags.filepath({
92
+ 'jwt-key-file': sf_plugins_core_1.Flags.file({
85
93
  char: 'f',
86
- description: messages.getMessage('key'),
94
+ summary: messages.getMessage('key'),
87
95
  required: true,
96
+ deprecateAliases: true,
97
+ aliases: ['jwtkeyfile'],
88
98
  }),
89
- clientid: command_1.flags.string({
99
+ 'client-id': sf_plugins_core_1.Flags.string({
90
100
  char: 'i',
91
- description: commonMessages.getMessage('clientId'),
101
+ summary: commonMessages.getMessage('clientId'),
92
102
  required: true,
103
+ deprecateAliases: true,
104
+ aliases: ['clientid'],
93
105
  }),
94
- instanceurl: command_1.flags.url({
106
+ 'instance-url': sf_plugins_core_1.Flags.url({
95
107
  char: 'r',
96
- description: commonMessages.getMessage('instanceUrl'),
108
+ summary: commonMessages.getMessage('instanceUrl'),
109
+ deprecateAliases: true,
110
+ aliases: ['instanceurl'],
97
111
  }),
98
- setdefaultdevhubusername: command_1.flags.boolean({
112
+ 'set-default-dev-hub': sf_plugins_core_1.Flags.boolean({
99
113
  char: 'd',
100
- description: commonMessages.getMessage('setDefaultDevHub'),
114
+ summary: commonMessages.getMessage('setDefaultDevHub'),
115
+ deprecateAliases: true,
116
+ aliases: ['setdefaultdevhub'],
101
117
  }),
102
- setdefaultusername: command_1.flags.boolean({
118
+ 'set-default': sf_plugins_core_1.Flags.boolean({
103
119
  char: 's',
104
- description: commonMessages.getMessage('setDefaultUsername'),
120
+ summary: commonMessages.getMessage('setDefaultUsername'),
121
+ deprecateAliases: true,
122
+ aliases: ['setdefaultusername'],
105
123
  }),
106
- setalias: command_1.flags.string({
124
+ alias: sf_plugins_core_1.Flags.string({
107
125
  char: 'a',
108
- description: commonMessages.getMessage('setAlias'),
126
+ summary: commonMessages.getMessage('setAlias'),
127
+ deprecateAliases: true,
128
+ aliases: ['setalias'],
109
129
  }),
110
- noprompt: command_1.flags.boolean({
130
+ 'no-prompt': sf_plugins_core_1.Flags.boolean({
111
131
  char: 'p',
112
- description: commonMessages.getMessage('noPromptAuth'),
132
+ summary: commonMessages.getMessage('noPromptAuth'),
113
133
  required: false,
114
134
  hidden: true,
135
+ deprecateAliases: true,
136
+ aliases: ['noprompt'],
115
137
  }),
138
+ loglevel: sf_plugins_core_1.loglevel,
116
139
  };
117
140
  //# sourceMappingURL=grant.js.map