@salesforce/plugin-org 2.4.6 → 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.
@@ -0,0 +1,17 @@
1
+ import { DescribeMetadataResult } from 'jsforce/api/metadata';
2
+ import { SfCommand } from '@salesforce/sf-plugins-core';
3
+ export declare class ListMetadataTypes extends SfCommand<DescribeMetadataResult> {
4
+ static readonly summary: string;
5
+ static readonly description: string;
6
+ static readonly examples: string[];
7
+ static readonly aliases: string[];
8
+ static readonly deprecateAliases = true;
9
+ static readonly flags: {
10
+ 'api-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
11
+ loglevel: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
12
+ 'target-org': import("@oclif/core/lib/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ 'output-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ 'filter-known': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ };
16
+ run(): Promise<DescribeMetadataResult>;
17
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ListMetadataTypes = 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 fs = require("fs");
11
+ const core_1 = require("@salesforce/core");
12
+ const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
13
+ const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
14
+ core_1.Messages.importMessagesDirectory(__dirname);
15
+ const messages = core_1.Messages.loadMessages('@salesforce/plugin-org', 'metadata-types');
16
+ class ListMetadataTypes extends sf_plugins_core_1.SfCommand {
17
+ async run() {
18
+ const { flags } = await this.parse(ListMetadataTypes);
19
+ const connection = flags['target-org'].getConnection(flags['api-version']);
20
+ const describeResult = await connection.metadata.describe(flags['api-version']);
21
+ if (flags['filter-known']) {
22
+ this.debug('Filtering for only metadata types unregistered in the CLI');
23
+ const registry = new source_deploy_retrieve_1.RegistryAccess();
24
+ describeResult.metadataObjects = describeResult.metadataObjects.filter((md) => {
25
+ try {
26
+ // An error is thrown when a type can't be found by name, and we want
27
+ // the ones that can't be found.
28
+ registry.getTypeByName(md.xmlName);
29
+ return false;
30
+ }
31
+ catch (e) {
32
+ return true;
33
+ }
34
+ });
35
+ }
36
+ if (flags['output-file']) {
37
+ await fs.promises.writeFile(flags['output-file'], JSON.stringify(describeResult, null, 2));
38
+ this.logSuccess(`Wrote result file to ${flags['output-file']}.`);
39
+ }
40
+ else {
41
+ this.styledJSON(describeResult);
42
+ }
43
+ return describeResult;
44
+ }
45
+ }
46
+ exports.ListMetadataTypes = ListMetadataTypes;
47
+ ListMetadataTypes.summary = messages.getMessage('summary');
48
+ ListMetadataTypes.description = messages.getMessage('description');
49
+ ListMetadataTypes.examples = messages.getMessages('examples');
50
+ ListMetadataTypes.aliases = ['force:mdapi:describemetadata'];
51
+ ListMetadataTypes.deprecateAliases = true;
52
+ ListMetadataTypes.flags = {
53
+ 'api-version': sf_plugins_core_1.Flags.orgApiVersion({
54
+ aliases: ['apiversion', 'a'],
55
+ deprecateAliases: true,
56
+ summary: messages.getMessage('flags.api-version.summary'),
57
+ }),
58
+ loglevel: sf_plugins_core_1.loglevel,
59
+ 'target-org': sf_plugins_core_1.requiredOrgFlagWithDeprecations,
60
+ 'output-file': sf_plugins_core_1.Flags.file({
61
+ aliases: ['resultfile'],
62
+ deprecateAliases: true,
63
+ char: 'f',
64
+ summary: messages.getMessage('flags.output-file.summary'),
65
+ description: messages.getMessage('flags.output-file.description'),
66
+ }),
67
+ 'filter-known': sf_plugins_core_1.Flags.boolean({
68
+ aliases: ['filterknown'],
69
+ deprecateAliases: true,
70
+ char: 'k',
71
+ summary: messages.getMessage('flags.filter-known.summary'),
72
+ hidden: true,
73
+ }),
74
+ };
75
+ //# sourceMappingURL=metadata-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-types.js","sourceRoot":"","sources":["../../../../src/commands/org/list/metadata-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { FileProperties } from 'jsforce/api/metadata';
2
+ import { SfCommand } from '@salesforce/sf-plugins-core';
3
+ export type ListMetadataCommandResult = FileProperties[];
4
+ export declare class ListMetadata extends SfCommand<ListMetadataCommandResult> {
5
+ static readonly summary: string;
6
+ static readonly description: string;
7
+ static readonly examples: string[];
8
+ static readonly aliases: string[];
9
+ static readonly deprecateAliases = true;
10
+ static readonly flags: {
11
+ 'api-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
12
+ loglevel: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
13
+ 'target-org': import("@oclif/core/lib/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
+ 'output-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
15
+ 'metadata-type': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
+ folder: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
17
+ };
18
+ run(): Promise<ListMetadataCommandResult>;
19
+ }
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2020, 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.ListMetadata = void 0;
10
+ const fs = require("fs");
11
+ const core_1 = require("@salesforce/core");
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-org', 'list.metadata');
15
+ class ListMetadata extends sf_plugins_core_1.SfCommand {
16
+ async run() {
17
+ const { flags } = await this.parse(ListMetadata);
18
+ const conn = flags['target-org'].getConnection(flags['api-version']);
19
+ const query = flags.folder
20
+ ? { type: flags['metadata-type'], folder: flags.folder }
21
+ : { type: flags['metadata-type'] };
22
+ const listResult = await conn.metadata.list(query, flags['api-version']);
23
+ if (flags['output-file']) {
24
+ fs.writeFileSync(flags['output-file'], JSON.stringify(listResult, null, 2));
25
+ this.logSuccess(`Wrote result file to ${flags['output-file']}.`);
26
+ }
27
+ else if (listResult?.length) {
28
+ this.styledJSON(listResult);
29
+ }
30
+ else {
31
+ this.warn(messages.getMessage('noMatchingMetadata', [flags['metadata-type'], conn.getUsername()]));
32
+ }
33
+ return listResult;
34
+ }
35
+ }
36
+ exports.ListMetadata = ListMetadata;
37
+ ListMetadata.summary = messages.getMessage('summary');
38
+ ListMetadata.description = messages.getMessage('description');
39
+ ListMetadata.examples = messages.getMessages('examples');
40
+ ListMetadata.aliases = ['force:mdapi:listmetadata'];
41
+ ListMetadata.deprecateAliases = true;
42
+ ListMetadata.flags = {
43
+ 'api-version': sf_plugins_core_1.Flags.orgApiVersion({
44
+ aliases: ['apiversion', 'a'],
45
+ deprecateAliases: true,
46
+ summary: messages.getMessage('flags.api-version.summary'),
47
+ }),
48
+ loglevel: sf_plugins_core_1.loglevel,
49
+ 'target-org': sf_plugins_core_1.requiredOrgFlagWithDeprecations,
50
+ 'output-file': sf_plugins_core_1.Flags.file({
51
+ aliases: ['resultfile'],
52
+ deprecateAliases: true,
53
+ char: 'f',
54
+ summary: messages.getMessage('flags.output-file.summary'),
55
+ }),
56
+ 'metadata-type': sf_plugins_core_1.Flags.string({
57
+ aliases: ['metadatatype'],
58
+ deprecateAliases: true,
59
+ char: 'm',
60
+ summary: messages.getMessage('flags.metadata-type.summary'),
61
+ required: true,
62
+ }),
63
+ folder: sf_plugins_core_1.Flags.string({
64
+ summary: messages.getMessage('flags.folder.summary'),
65
+ description: messages.getMessage('flags.folder.description'),
66
+ }),
67
+ };
68
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../../src/commands/org/list/metadata.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export declare class OrgOpenCommand extends SfCommand<OrgOpenOutput> {
5
5
  static readonly description: string;
6
6
  static readonly examples: string[];
7
7
  static readonly aliases: string[];
8
- static depreprecateAliases: boolean;
8
+ static deprecateAliases: boolean;
9
9
  static readonly flags: {
10
10
  'target-org': import("@oclif/core/lib/interfaces").OptionFlag<Org, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
11
11
  'api-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
@@ -13,10 +13,13 @@ export declare class OrgOpenCommand extends SfCommand<OrgOpenOutput> {
13
13
  path: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
14
14
  'url-only': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
15
  loglevel: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
+ 'source-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
16
17
  };
17
18
  private org;
19
+ private conn;
18
20
  run(): Promise<OrgOpenOutput>;
19
21
  private buildFrontdoorUrl;
22
+ private generateFileUrl;
20
23
  }
21
24
  export interface OrgOpenOutput {
22
25
  url: string;
@@ -7,10 +7,12 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.OrgOpenCommand = void 0;
10
+ const path = require("path");
10
11
  const sf_plugins_core_1 = require("@salesforce/sf-plugins-core");
11
12
  const core_1 = require("@salesforce/core");
12
13
  const kit_1 = require("@salesforce/kit");
13
14
  const open = require("open");
15
+ const source_deploy_retrieve_1 = require("@salesforce/source-deploy-retrieve");
14
16
  const utils_1 = require("../../shared/utils");
15
17
  core_1.Messages.importMessagesDirectory(__dirname);
16
18
  const messages = core_1.Messages.loadMessages('@salesforce/plugin-org', 'open');
@@ -19,14 +21,20 @@ class OrgOpenCommand extends sf_plugins_core_1.SfCommand {
19
21
  async run() {
20
22
  const { flags } = await this.parse(OrgOpenCommand);
21
23
  this.org = flags['target-org'];
22
- const frontDoorUrl = await this.buildFrontdoorUrl(flags['api-version']);
23
- const url = flags.path ? `${frontDoorUrl}&retURL=${flags.path}` : frontDoorUrl;
24
+ this.conn = this.org.getConnection(flags['api-version']);
25
+ let url = await this.buildFrontdoorUrl();
26
+ if (flags['source-file']) {
27
+ url += `&retURL=${await this.generateFileUrl(flags['source-file'])}`;
28
+ }
29
+ else if (flags.path) {
30
+ url += `&retURL=${flags.path}`;
31
+ }
24
32
  const orgId = this.org.getOrgId();
25
33
  // TODO: better typings in sfdx-core for orgs read from auth files
26
34
  const username = this.org.getUsername();
27
35
  const output = { orgId, url, username };
28
36
  const containerMode = new kit_1.Env().getBoolean('SFDX_CONTAINER_MODE');
29
- // security warning only for --json OR --urlonly OR containerMode
37
+ // security warning only for --json OR --url-only OR containerMode
30
38
  if (flags['url-only'] || flags.json || containerMode) {
31
39
  this.warn(sharedMessages.getMessage('SecurityWarning'));
32
40
  this.log('');
@@ -70,21 +78,40 @@ class OrgOpenCommand extends sf_plugins_core_1.SfCommand {
70
78
  await (0, utils_1.openUrl)(url, openOptions);
71
79
  return output;
72
80
  }
73
- async buildFrontdoorUrl(version) {
81
+ async buildFrontdoorUrl() {
74
82
  await this.org.refreshAuth(); // we need a live accessToken for the frontdoor url
75
- const conn = this.org.getConnection(version);
76
- const accessToken = conn.accessToken;
83
+ const accessToken = this.conn.accessToken;
77
84
  const instanceUrl = this.org.getField(core_1.Org.Fields.INSTANCE_URL);
78
85
  const instanceUrlClean = instanceUrl.replace(/\/$/, '');
79
86
  return `${instanceUrlClean}/secur/frontdoor.jsp?sid=${accessToken}`;
80
87
  }
88
+ async generateFileUrl(file) {
89
+ try {
90
+ const metadataResolver = new source_deploy_retrieve_1.MetadataResolver();
91
+ const components = metadataResolver.getComponentsFromPath(file);
92
+ const typeName = components[0]?.type?.name;
93
+ if (typeName === 'FlexiPage') {
94
+ const flexipage = await this.conn.singleRecordQuery(`SELECT id FROM flexipage WHERE DeveloperName='${path.basename(file, '.flexipage-meta.xml')}'`, { tooling: true });
95
+ return `/visualEditor/appBuilder.app?pageId=${flexipage.Id}`;
96
+ }
97
+ else if (typeName === 'ApexPage') {
98
+ return `/apex/${path.basename(file).replace('.page-meta.xml', '').replace('.page', '')}`;
99
+ }
100
+ else {
101
+ return 'lightning/setup/FlexiPageList/home';
102
+ }
103
+ }
104
+ catch (error) {
105
+ return 'lightning/setup/FlexiPageList/home';
106
+ }
107
+ }
81
108
  }
82
109
  exports.OrgOpenCommand = OrgOpenCommand;
83
110
  OrgOpenCommand.summary = messages.getMessage('summary');
84
111
  OrgOpenCommand.description = messages.getMessage('description');
85
112
  OrgOpenCommand.examples = messages.getMessages('examples');
86
- OrgOpenCommand.aliases = ['force:org:open'];
87
- OrgOpenCommand.depreprecateAliases = true;
113
+ OrgOpenCommand.aliases = ['force:org:open', 'force:source:open'];
114
+ OrgOpenCommand.deprecateAliases = true;
88
115
  OrgOpenCommand.flags = {
89
116
  'target-org': sf_plugins_core_1.requiredOrgFlagWithDeprecations,
90
117
  'api-version': sf_plugins_core_1.orgApiVersionFlagWithDeprecations,
@@ -98,6 +125,7 @@ OrgOpenCommand.flags = {
98
125
  char: 'p',
99
126
  summary: messages.getMessage('flags.path.summary'),
100
127
  env: 'FORCE_OPEN_URL',
128
+ exclusive: ['source-file'],
101
129
  parse: (input) => Promise.resolve(encodeURIComponent(decodeURIComponent(input))),
102
130
  }),
103
131
  'url-only': sf_plugins_core_1.Flags.boolean({
@@ -107,5 +135,12 @@ OrgOpenCommand.flags = {
107
135
  deprecateAliases: true,
108
136
  }),
109
137
  loglevel: sf_plugins_core_1.loglevel,
138
+ 'source-file': sf_plugins_core_1.Flags.file({
139
+ char: 'f',
140
+ aliases: ['sourcefile'],
141
+ exclusive: ['path'],
142
+ deprecateAliases: true,
143
+ summary: messages.getMessage('flags.source-file.summary'),
144
+ }),
110
145
  };
111
146
  //# sourceMappingURL=open.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/org/open.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,iEAMqC;AACrC,2CAA2E;AAC3E,yCAAgD;AAChD,6BAA8B;AAC9B,8CAA6C;AAE7C,eAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AAC5C,MAAM,QAAQ,GAAG,eAAQ,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;AACzE,MAAM,cAAc,GAAG,eAAQ,CAAC,YAAY,CAAC,wBAAwB,EAAE,UAAU,CAAC,CAAC;AAEnF,MAAa,cAAe,SAAQ,2BAAwB;IAgCnD,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACnD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QAC/B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACxE,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAClC,kEAAkE;QAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAY,CAAC;QAClD,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;QACxC,MAAM,aAAa,GAAG,IAAI,SAAG,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAElE,iEAAiE;QACjE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,aAAa,EAAE;YACpD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SACd;QAED,IAAI,aAAa,EAAE;YACjB,qEAAqE;YACrE,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,MAAM,CAAC;SACf;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACrB,wBAAwB;YACxB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YAC7E,OAAO,MAAM,CAAC;SACf;QAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC7E,mCAAmC;QACnC,IAAI;YACF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,IAAI,cAAO,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,OAAO,CAAC,oBAAoB,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACrB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,KAAK,EAAE;gBACxB,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;oBACnC,MAAM,MAAM,GAAG,WAAW,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;oBACpF,MAAM,OAAO,GAAG,IAAI,cAAQ,CAAC,IAAI,SAAG,EAAE,CAAC,SAAS,CAAC,mBAAmB,EAAE,GAAG,CAAC,EAAE,cAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACnG,MAAM,MAAM,GAAG,MAAM,aAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzD,MAAM,CAAC,KAAK,CAAC,uBAAuB,MAAM,UAAU,OAAO,CAAC,OAAO,UAAU,CAAC,CAAC;oBAC/E,MAAM,IAAI,cAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,CAAC;iBACpF;gBACD,MAAM,cAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACzB;YACD,MAAM,GAAG,CAAC;SACX;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO;YAC/B,CAAC,CAAC,oEAAoE;gBACpE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAwC,CAAC,EAAE,EAAE;YAC9E,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAAgB;QAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,mDAAmD;QACjF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAS,UAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACvE,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxD,OAAO,GAAG,gBAAgB,4BAA4B,WAAW,EAAE,CAAC;IACtE,CAAC;;AAnGH,wCAoGC;AAnGwB,sBAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACzC,0BAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACjD,uBAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AAC5C,sBAAO,GAAG,CAAC,gBAAgB,CAAC,CAAC;AACtC,kCAAmB,GAAG,IAAI,CAAC;AAElB,oBAAK,GAAG;IAC7B,YAAY,EAAE,iDAA+B;IAC7C,aAAa,EAAE,mDAAiC;IAChD,OAAO,EAAE,uBAAK,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,uBAAuB,CAAC;QACrD,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;QACtC,SAAS,EAAE,CAAC,UAAU,CAAC;KACxB,CAAC;IACF,IAAI,EAAE,uBAAK,CAAC,MAAM,CAAC;QACjB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;QAClD,GAAG,EAAE,gBAAgB;QACrB,KAAK,EAAE,CAAC,KAAa,EAAmB,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;KAC1G,CAAC;IACF,UAAU,EAAE,uBAAK,CAAC,OAAO,CAAC;QACxB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACtD,OAAO,EAAE,CAAC,SAAS,CAAC;QACpB,gBAAgB,EAAE,IAAI;KACvB,CAAC;IACF,QAAQ,EAAR,0BAAQ;CACT,CAAC"}
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/commands/org/open.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ # description
2
+
3
+ Use this command to identify individual components in your manifest file or if you want a high-level view of particular metadata types in your org. For example, you can use this command to return a list of names of all the CustomObject or Layout components in your org, then use this information in a retrieve command that returns a subset of these components.
4
+
5
+ The username that you use to connect to the org must have the Modify All Data or Modify Metadata Through Metadata API Functions permission.
6
+
7
+ # summary
8
+
9
+ List the metadata components and properties of a specified type.
10
+
11
+ # examples
12
+
13
+ - List the CustomObject components, and their properties, in the org with alias "my-dev-org":
14
+
15
+ $ <%= config.bin %> <%= command.id %> --metadata-type CustomObject --target-org my-dev-org
16
+
17
+ - List the CustomObject components in your default org, write the output to the specified file, and use API version 57.0:
18
+
19
+ $ <%= config.bin %> <%= command.id %> --metadata-type CustomObject --api-version 57.0 --output-file /path/to/outputfilename.txt
20
+
21
+ - List the Dashboard components in your default org that are contained in the "folderSales" folder, write the output to the specified file, and use API version 57.0:
22
+
23
+ $ <%= config.bin %> <%= command.id %> --metadata-type Dashboard --folder folderSales --api-version 57.0 --output-file /path/to/outputfilename.txt
24
+
25
+ # flags.api-version.summary
26
+
27
+ API version to use; default is the most recent API version.
28
+
29
+ # flags.output-file.summary
30
+
31
+ Pathname of the file in which to write the results.
32
+
33
+ # flags.metadata-type.summary
34
+
35
+ Metadata type to be retrieved, such as CustomObject; metadata type names are case-sensitive.
36
+
37
+ # flags.folder.summary
38
+
39
+ Folder associated with the component; required for components that use folders; folder names are case-sensitive.
40
+
41
+ # flags.folder.description
42
+
43
+ Examples of metadata types that use folders are Dashboard, Document, EmailTemplate, and Report.
44
+
45
+ # noMatchingMetadata
46
+
47
+ No metadata found for type: %s in org: %s.
@@ -0,0 +1,37 @@
1
+ # description
2
+
3
+ The information includes Apex classes and triggers, custom objects, custom fields on standard objects, tab sets that define an app, and many other metadata types. Use this information to identify the syntax needed for a <name> element in a manifest file (package.xml).
4
+
5
+ The username that you use to connect to the org must have the Modify All Data or Modify Metadata Through Metadata API Functions permission.
6
+
7
+ # summary
8
+
9
+ Display details about the metadata types that are enabled for your org.
10
+
11
+ # examples
12
+
13
+ - Display information about all known and enabled metadata types in the org with alias "my-dev-org" using API version 57.0:
14
+
15
+ $ <%= config.bin %> <%= command.id %> --api-version 57.0 --target-org my-dev-org
16
+
17
+ - Display only the metadata types that aren't yet supported by Salesforce CLI in your default org and write the results to the specified file:
18
+
19
+ $ <%= config.bin %> <%= command.id %> --output-file /path/to/outputfilename.txt --filter-known
20
+
21
+ # flags.api-version.summary
22
+
23
+ API version to use; default is the most recent API version.
24
+
25
+ # flags.output-file.summary
26
+
27
+ Pathname of the file in which to write the results.
28
+
29
+ # flags.filter-known.summary
30
+
31
+ Filter the known metadata types from the result to display only the types not yet fully supported by Salesforce CLI.
32
+
33
+ filter metadata known by the CLI
34
+
35
+ # flags.output-file.description
36
+
37
+ Directing the output to a file makes it easier to extract relevant information for your package.xml manifest file. The default output destination is the terminal or command window console.
package/messages/open.md CHANGED
@@ -6,6 +6,8 @@ Open your default scratch org, or another specified org, in a browser.
6
6
 
7
7
  To open a specific page, specify the portion of the URL after "https://MyDomainName.my.salesforce.com/" as the value for the --path flag. For example, specify "--path lightning" to open Lightning Experience, or specify "--path /apex/YourPage" to open a Visualforce page.
8
8
 
9
+ Use the --source-file to open a Lightning Page from your local project in Lightning App Builder. Lightning page files have the suffix .flexipage-meta.xml, and are stored in the "flexipages" directory.
10
+
9
11
  To generate a URL but not launch it in your browser, specify --url-only.
10
12
 
11
13
  To open in a specific browser, use the --browser flag. Supported browsers are "chrome", "edge", and "firefox". If you don't specify --browser, the org opens in your default browser.
@@ -24,10 +26,18 @@ To open in a specific browser, use the --browser flag. Supported browsers are "c
24
26
 
25
27
  $ <%= config.bin %> <%= command.id %> --url-only --path lightning
26
28
 
29
+ - Open a local Lightning page in your default org's Lightning App Builder:
30
+
31
+ $ <%= config.bin %> <%= command.id %> --source-path force-app/main/default/flexipages/Hello.flexipage-meta.xml
32
+
27
33
  # flags.browser.summary
28
34
 
29
35
  Browser where the org opens.
30
36
 
37
+ # flags.source-file.summary
38
+
39
+ Path to an ApexPage or FlexiPage to open in Lightning App Builder.
40
+
31
41
  # flags.path.summary
32
42
 
33
43
  Navigation URL path to open a specific page.
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.4.6",
2
+ "version": "2.5.0",
3
3
  "commands": {
4
4
  "org:display": {
5
5
  "id": "org:display",
@@ -156,26 +156,30 @@
156
156
  "org:open": {
157
157
  "id": "org:open",
158
158
  "summary": "Open your default scratch org, or another specified org, in a browser.",
159
- "description": "To open a specific page, specify the portion of the URL after \"https://MyDomainName.my.salesforce.com/\" as the value for the --path flag. For example, specify \"--path lightning\" to open Lightning Experience, or specify \"--path /apex/YourPage\" to open a Visualforce page.\n\nTo generate a URL but not launch it in your browser, specify --url-only.\n\nTo open in a specific browser, use the --browser flag. Supported browsers are \"chrome\", \"edge\", and \"firefox\". If you don't specify --browser, the org opens in your default browser.",
159
+ "description": "To open a specific page, specify the portion of the URL after \"https://MyDomainName.my.salesforce.com/\" as the value for the --path flag. For example, specify \"--path lightning\" to open Lightning Experience, or specify \"--path /apex/YourPage\" to open a Visualforce page.\n\nUse the --source-file to open a Lightning Page from your local project in Lightning App Builder. Lightning page files have the suffix .flexipage-meta.xml, and are stored in the \"flexipages\" directory.\n\nTo generate a URL but not launch it in your browser, specify --url-only.\n\nTo open in a specific browser, use the --browser flag. Supported browsers are \"chrome\", \"edge\", and \"firefox\". If you don't specify --browser, the org opens in your default browser.",
160
160
  "strict": true,
161
161
  "pluginName": "@salesforce/plugin-org",
162
162
  "pluginAlias": "@salesforce/plugin-org",
163
163
  "pluginType": "core",
164
164
  "aliases": [
165
- "force:org:open"
165
+ "force:org:open",
166
+ "force:source:open"
166
167
  ],
167
168
  "examples": [
168
169
  "Open your default org in your default browser:\n$ <%= config.bin %> <%= command.id %>",
169
170
  "Open the org with alias MyTestOrg1 in the Firefox browser:\n$ <%= config.bin %> <%= command.id %> --target-org MyTestOrg1 --browser firefox",
170
- "Display the navigation URL for the Lightning Experience page for your default org, but don't open the page in a browser:\n$ <%= config.bin %> <%= command.id %> --url-only --path lightning"
171
+ "Display the navigation URL for the Lightning Experience page for your default org, but don't open the page in a browser:\n$ <%= config.bin %> <%= command.id %> --url-only --path lightning",
172
+ "Open a local Lightning page in your default org's Lightning App Builder:\n$ <%= config.bin %> <%= command.id %> --source-path force-app/main/default/flexipages/Hello.flexipage-meta.xml"
171
173
  ],
174
+ "deprecateAliases": true,
172
175
  "flags": {
173
176
  "json": {
174
177
  "name": "json",
175
178
  "type": "boolean",
176
179
  "description": "Format output as json.",
177
180
  "helpGroup": "GLOBAL",
178
- "allowNo": false
181
+ "allowNo": false,
182
+ "deprecateAliases": true
179
183
  },
180
184
  "target-org": {
181
185
  "name": "target-org",
@@ -184,6 +188,7 @@
184
188
  "summary": "Username or alias of the target org.",
185
189
  "required": true,
186
190
  "multiple": false,
191
+ "deprecateAliases": true,
187
192
  "aliases": [
188
193
  "targetusername",
189
194
  "u"
@@ -194,6 +199,7 @@
194
199
  "type": "option",
195
200
  "description": "Override the api version used for api requests made by this command",
196
201
  "multiple": false,
202
+ "deprecateAliases": true,
197
203
  "aliases": [
198
204
  "apiversion"
199
205
  ]
@@ -211,14 +217,19 @@
211
217
  ],
212
218
  "exclusive": [
213
219
  "url-only"
214
- ]
220
+ ],
221
+ "deprecateAliases": true
215
222
  },
216
223
  "path": {
217
224
  "name": "path",
218
225
  "type": "option",
219
226
  "char": "p",
220
227
  "summary": "Navigation URL path to open a specific page.",
221
- "multiple": false
228
+ "multiple": false,
229
+ "exclusive": [
230
+ "source-file"
231
+ ],
232
+ "deprecateAliases": true
222
233
  },
223
234
  "url-only": {
224
235
  "name": "url-only",
@@ -226,6 +237,7 @@
226
237
  "char": "r",
227
238
  "summary": "Display navigation URL, but don’t launch browser.",
228
239
  "allowNo": false,
240
+ "deprecateAliases": true,
229
241
  "aliases": [
230
242
  "urlonly"
231
243
  ]
@@ -237,11 +249,25 @@
237
249
  "multiple": false,
238
250
  "deprecated": {
239
251
  "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
240
- }
252
+ },
253
+ "deprecateAliases": true
254
+ },
255
+ "source-file": {
256
+ "name": "source-file",
257
+ "type": "option",
258
+ "char": "f",
259
+ "summary": "Path to an ApexPage or FlexiPage to open in Lightning App Builder.",
260
+ "multiple": false,
261
+ "exclusive": [
262
+ "path"
263
+ ],
264
+ "deprecateAliases": true,
265
+ "aliases": [
266
+ "sourcefile"
267
+ ]
241
268
  }
242
269
  },
243
270
  "args": {},
244
- "depreprecateAliases": true,
245
271
  "hasDynamicHelp": true
246
272
  },
247
273
  "force:org:clone": {
@@ -1069,6 +1095,190 @@
1069
1095
  "args": {},
1070
1096
  "hasDynamicHelp": true
1071
1097
  },
1098
+ "org:list:metadata-types": {
1099
+ "id": "org:list:metadata-types",
1100
+ "summary": "Display details about the metadata types that are enabled for your org.",
1101
+ "description": "The information includes Apex classes and triggers, custom objects, custom fields on standard objects, tab sets that define an app, and many other metadata types. Use this information to identify the syntax needed for a <name> element in a manifest file (package.xml).\n\nThe username that you use to connect to the org must have the Modify All Data or Modify Metadata Through Metadata API Functions permission.",
1102
+ "strict": true,
1103
+ "pluginName": "@salesforce/plugin-org",
1104
+ "pluginAlias": "@salesforce/plugin-org",
1105
+ "pluginType": "core",
1106
+ "aliases": [
1107
+ "force:mdapi:describemetadata"
1108
+ ],
1109
+ "examples": [
1110
+ "Display information about all known and enabled metadata types in the org with alias \"my-dev-org\" using API version 57.0:\n$ <%= config.bin %> <%= command.id %> --api-version 57.0 --target-org my-dev-org",
1111
+ "Display only the metadata types that aren't yet supported by Salesforce CLI in your default org and write the results to the specified file:\n$ <%= config.bin %> <%= command.id %> --output-file /path/to/outputfilename.txt --filter-known"
1112
+ ],
1113
+ "deprecateAliases": true,
1114
+ "flags": {
1115
+ "json": {
1116
+ "name": "json",
1117
+ "type": "boolean",
1118
+ "description": "Format output as json.",
1119
+ "helpGroup": "GLOBAL",
1120
+ "allowNo": false,
1121
+ "deprecateAliases": true
1122
+ },
1123
+ "api-version": {
1124
+ "name": "api-version",
1125
+ "type": "option",
1126
+ "summary": "API version to use; default is the most recent API version.",
1127
+ "description": "Override the api version used for api requests made by this command",
1128
+ "multiple": false,
1129
+ "deprecateAliases": true,
1130
+ "aliases": [
1131
+ "apiversion",
1132
+ "a"
1133
+ ]
1134
+ },
1135
+ "loglevel": {
1136
+ "name": "loglevel",
1137
+ "type": "option",
1138
+ "hidden": true,
1139
+ "multiple": false,
1140
+ "deprecated": {
1141
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1142
+ },
1143
+ "deprecateAliases": true
1144
+ },
1145
+ "target-org": {
1146
+ "name": "target-org",
1147
+ "type": "option",
1148
+ "char": "o",
1149
+ "summary": "Username or alias of the target org.",
1150
+ "required": true,
1151
+ "multiple": false,
1152
+ "deprecateAliases": true,
1153
+ "aliases": [
1154
+ "targetusername",
1155
+ "u"
1156
+ ]
1157
+ },
1158
+ "output-file": {
1159
+ "name": "output-file",
1160
+ "type": "option",
1161
+ "char": "f",
1162
+ "summary": "Pathname of the file in which to write the results.",
1163
+ "description": "Directing the output to a file makes it easier to extract relevant information for your package.xml manifest file. The default output destination is the terminal or command window console.",
1164
+ "multiple": false,
1165
+ "deprecateAliases": true,
1166
+ "aliases": [
1167
+ "resultfile"
1168
+ ]
1169
+ },
1170
+ "filter-known": {
1171
+ "name": "filter-known",
1172
+ "type": "boolean",
1173
+ "char": "k",
1174
+ "summary": "Filter the known metadata types from the result to display only the types not yet fully supported by Salesforce CLI.\n\nfilter metadata known by the CLI",
1175
+ "hidden": true,
1176
+ "allowNo": false,
1177
+ "deprecateAliases": true,
1178
+ "aliases": [
1179
+ "filterknown"
1180
+ ]
1181
+ }
1182
+ },
1183
+ "args": {},
1184
+ "hasDynamicHelp": true
1185
+ },
1186
+ "org:list:metadata": {
1187
+ "id": "org:list:metadata",
1188
+ "summary": "List the metadata components and properties of a specified type.",
1189
+ "description": "Use this command to identify individual components in your manifest file or if you want a high-level view of particular metadata types in your org. For example, you can use this command to return a list of names of all the CustomObject or Layout components in your org, then use this information in a retrieve command that returns a subset of these components.\n\nThe username that you use to connect to the org must have the Modify All Data or Modify Metadata Through Metadata API Functions permission.",
1190
+ "strict": true,
1191
+ "pluginName": "@salesforce/plugin-org",
1192
+ "pluginAlias": "@salesforce/plugin-org",
1193
+ "pluginType": "core",
1194
+ "aliases": [
1195
+ "force:mdapi:listmetadata"
1196
+ ],
1197
+ "examples": [
1198
+ "List the CustomObject components, and their properties, in the org with alias \"my-dev-org\":\n$ <%= config.bin %> <%= command.id %> --metadata-type CustomObject --target-org my-dev-org",
1199
+ "List the CustomObject components in your default org, write the output to the specified file, and use API version 57.0:\n$ <%= config.bin %> <%= command.id %> --metadata-type CustomObject --api-version 57.0 --output-file /path/to/outputfilename.txt",
1200
+ "List the Dashboard components in your default org that are contained in the \"folderSales\" folder, write the output to the specified file, and use API version 57.0:\n$ <%= config.bin %> <%= command.id %> --metadata-type Dashboard --folder folderSales --api-version 57.0 --output-file /path/to/outputfilename.txt"
1201
+ ],
1202
+ "deprecateAliases": true,
1203
+ "flags": {
1204
+ "json": {
1205
+ "name": "json",
1206
+ "type": "boolean",
1207
+ "description": "Format output as json.",
1208
+ "helpGroup": "GLOBAL",
1209
+ "allowNo": false,
1210
+ "deprecateAliases": true
1211
+ },
1212
+ "api-version": {
1213
+ "name": "api-version",
1214
+ "type": "option",
1215
+ "summary": "API version to use; default is the most recent API version.",
1216
+ "description": "Override the api version used for api requests made by this command",
1217
+ "multiple": false,
1218
+ "deprecateAliases": true,
1219
+ "aliases": [
1220
+ "apiversion",
1221
+ "a"
1222
+ ]
1223
+ },
1224
+ "loglevel": {
1225
+ "name": "loglevel",
1226
+ "type": "option",
1227
+ "hidden": true,
1228
+ "multiple": false,
1229
+ "deprecated": {
1230
+ "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
1231
+ },
1232
+ "deprecateAliases": true
1233
+ },
1234
+ "target-org": {
1235
+ "name": "target-org",
1236
+ "type": "option",
1237
+ "char": "o",
1238
+ "summary": "Username or alias of the target org.",
1239
+ "required": true,
1240
+ "multiple": false,
1241
+ "deprecateAliases": true,
1242
+ "aliases": [
1243
+ "targetusername",
1244
+ "u"
1245
+ ]
1246
+ },
1247
+ "output-file": {
1248
+ "name": "output-file",
1249
+ "type": "option",
1250
+ "char": "f",
1251
+ "summary": "Pathname of the file in which to write the results.",
1252
+ "multiple": false,
1253
+ "deprecateAliases": true,
1254
+ "aliases": [
1255
+ "resultfile"
1256
+ ]
1257
+ },
1258
+ "metadata-type": {
1259
+ "name": "metadata-type",
1260
+ "type": "option",
1261
+ "char": "m",
1262
+ "summary": "Metadata type to be retrieved, such as CustomObject; metadata type names are case-sensitive.",
1263
+ "required": true,
1264
+ "multiple": false,
1265
+ "deprecateAliases": true,
1266
+ "aliases": [
1267
+ "metadatatype"
1268
+ ]
1269
+ },
1270
+ "folder": {
1271
+ "name": "folder",
1272
+ "type": "option",
1273
+ "summary": "Folder associated with the component; required for components that use folders; folder names are case-sensitive.",
1274
+ "description": "Examples of metadata types that use folders are Dashboard, Document, EmailTemplate, and Report.",
1275
+ "multiple": false,
1276
+ "deprecateAliases": true
1277
+ }
1278
+ },
1279
+ "args": {},
1280
+ "hasDynamicHelp": true
1281
+ },
1072
1282
  "org:resume:sandbox": {
1073
1283
  "id": "org:resume:sandbox",
1074
1284
  "summary": "Check the status of a sandbox creation, and log in to it if it's ready.",
package/package.json CHANGED
@@ -1,24 +1,26 @@
1
1
  {
2
2
  "name": "@salesforce/plugin-org",
3
3
  "description": "Commands to interact with Salesforce orgs",
4
- "version": "2.4.6",
4
+ "version": "2.5.0",
5
5
  "author": "Salesforce",
6
6
  "main": "lib/index.js",
7
7
  "bugs": "https://github.com/forcedotcom/cli/issues",
8
8
  "dependencies": {
9
- "@oclif/core": "^2.3.1",
9
+ "@oclif/core": "^2.6.3",
10
10
  "@salesforce/core": "^3.33.5",
11
11
  "@salesforce/kit": "^1.9.0",
12
12
  "@salesforce/sf-plugins-core": "^2.2.3",
13
- "open": "8.4.2",
13
+ "@salesforce/source-deploy-retrieve": "^7.11.0",
14
+ "open": "^8.4.2",
14
15
  "tslib": "^2"
15
16
  },
16
17
  "devDependencies": {
17
18
  "@oclif/plugin-command-snapshot": "^3.3.8",
18
- "@salesforce/cli-plugins-testkit": "^3.2.23",
19
+ "@salesforce/cli-plugins-testkit": "^3.2.25",
19
20
  "@salesforce/dev-config": "^3.1.0",
20
21
  "@salesforce/dev-scripts": "^4.1.2",
21
22
  "@salesforce/plugin-command-reference": "^2.2.9",
23
+ "@salesforce/plugin-source": "^2.7.0",
22
24
  "@salesforce/prettier-config": "^0.0.2",
23
25
  "@salesforce/ts-sinon": "1.4.6",
24
26
  "@swc/core": "^1.3.37",
@@ -28,15 +30,15 @@
28
30
  "@typescript-eslint/parser": "^5.54.0",
29
31
  "chai": "^4.3.7",
30
32
  "chai-as-promised": "^7.1.1",
31
- "eslint": "^8.35.0",
33
+ "eslint": "^8.36.0",
32
34
  "eslint-config-prettier": "^8.6.0",
33
35
  "eslint-config-salesforce": "^1.1.1",
34
36
  "eslint-config-salesforce-license": "^0.2.0",
35
37
  "eslint-config-salesforce-typescript": "^1.1.1",
36
38
  "eslint-plugin-header": "^3.0.0",
37
39
  "eslint-plugin-import": "2.27.5",
38
- "eslint-plugin-jsdoc": "^40.0.0",
39
- "eslint-plugin-sf-plugin": "^1.8.1",
40
+ "eslint-plugin-jsdoc": "^40.0.1",
41
+ "eslint-plugin-sf-plugin": "^1.13.0",
40
42
  "husky": "^7.0.4",
41
43
  "mocha": "^9.1.3",
42
44
  "moment": "^2.29.1",
@@ -74,7 +76,8 @@
74
76
  "devPlugins": [
75
77
  "@oclif/plugin-help",
76
78
  "@oclif/plugin-command-snapshot",
77
- "@salesforce/plugin-command-reference"
79
+ "@salesforce/plugin-command-reference",
80
+ "@salesforce/plugin-source"
78
81
  ],
79
82
  "topics": {
80
83
  "org": {
@@ -86,6 +89,9 @@
86
89
  "resume": {
87
90
  "description": "Resume an org creation that was started asynchronously, timed out, or was interrupted."
88
91
  },
92
+ "list": {
93
+ "description": "list metadata types that are relevant to the org"
94
+ },
89
95
  "delete": {
90
96
  "description": "Delete scratch orgs, sandboxes, org shapes, and org snapshots."
91
97
  }
@@ -115,7 +121,7 @@
115
121
  "prepack": "sf-prepack",
116
122
  "prepare": "sf-install",
117
123
  "test": "wireit",
118
- "test:nuts": "nyc mocha \"./test/nut/*.nut.ts\" --slow 4500 --timeout 1200000",
124
+ "test:nuts": "nyc mocha \"./test/nut/*.nut.ts\" --slow 4500 --timeout 1200000 --parallel --jobs 20",
119
125
  "test:nuts:legacy": "nyc mocha \"./test/nut/legacy/*.nut.ts\" --slow 4500 --timeout 1200000 --parallel --jobs 10",
120
126
  "test:nuts:sandbox": "nyc mocha \"./test/**/*.sandboxNut.ts\" --slow 450000 --timeout 7200000 --parallel --jobs 10",
121
127
  "test:only": "wireit",
@@ -232,7 +238,7 @@
232
238
  }
233
239
  },
234
240
  "sfdx": {
235
- "publicKeyUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-org/2.4.6.crt",
236
- "signatureUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-org/2.4.6.sig"
241
+ "publicKeyUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-org/2.5.0.crt",
242
+ "signatureUrl": "https://developer.salesforce.com/media/salesforce-cli/security/@salesforce/plugin-org/2.5.0.sig"
237
243
  }
238
244
  }