@salesforce/plugin-user
Version:
Commands to interact with Users and Permission Sets
55 lines • 2.4 kB
JavaScript
/*
* Copyright (c) 2020, salesforce.com, inc.
* All rights reserved.
* Licensed under the BSD 3-Clause license.
* For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
*/
import { Messages, Org } from '@salesforce/core';
import { Flags, arrayWithDeprecation, loglevel, orgApiVersionFlagWithDeprecations } from '@salesforce/sf-plugins-core';
import { ensureArray } from '@salesforce/kit';
import { UserPermSetAssignBaseCommand } from '../../../../baseCommands/user/permset/assign.js';
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
const messages = Messages.loadMessages('@salesforce/plugin-user', 'permset.assign');
export class ForceUserPermSetAssignCommand extends UserPermSetAssignBaseCommand {
static hidden = true;
static summary = messages.getMessage('summary');
static description = messages.getMessage('description.force');
static examples = messages.getMessages('examples.force');
static state = 'deprecated';
static deprecationOptions = {
to: 'org assign permset',
};
static flags = {
'perm-set-name': arrayWithDeprecation({
aliases: ['permsetname'],
deprecateAliases: true,
char: 'n',
summary: messages.getMessage('flags.permsetName.summary'),
required: true,
}),
'on-behalf-of': arrayWithDeprecation({
char: 'o',
summary: messages.getMessage('flags.onBehalfOf.summary'),
aliases: ['onbehalfof'],
deprecateAliases: true,
}),
'target-org': Flags.requiredOrg({
char: 'u',
summary: messages.getMessage('flags.target-org.summary'),
aliases: ['targetusername'],
deprecateAliases: true,
required: true,
}),
'api-version': orgApiVersionFlagWithDeprecations,
loglevel,
};
async run() {
const { flags } = await this.parse(ForceUserPermSetAssignCommand);
this.aliasOrUsernames = ensureArray(flags['on-behalf-of'] ?? flags['target-org'].getUsername());
this.permSetNames = flags['perm-set-name'];
this.connection = flags['target-org'].getConnection(flags['api-version']);
this.org = await Org.create({ connection: this.connection });
return this.assign();
}
}
//# sourceMappingURL=assign.js.map