@bitrix24/b24jssdk
Version:
Bitrix24 REST API JavaScript SDK
79 lines (76 loc) • 2.28 kB
JavaScript
/**
* @package @bitrix24/b24jssdk
* @version 1.0.1
* @copyright (c) 2026 Bitrix24
* @license MIT
* @see https://github.com/bitrix24/b24jssdk
* @see https://bitrix24.github.io/b24jssdk/
*/
import { MessageCommands } from './message/commands.mjs';
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
class DialogManager {
static {
__name(this, "DialogManager");
}
#messageManager;
constructor(messageManager) {
this.#messageManager = messageManager;
}
/**
* Method displays the standard single user selection dialog
* It only shows company employees
*
* @return {Promise<null|SelectedUser>}
*
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-user.html
*/
async selectUser() {
return this.#messageManager.send(MessageCommands.selectUser, {
mult: false
});
}
/**
* Method displays the standard multiple user selection dialog
* It only shows company employees
*
* @return {Promise<SelectedUser[]>}
*
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-users.html
*/
async selectUsers() {
return this.#messageManager.send(MessageCommands.selectUser, {
mult: true
});
}
/**
* Method displays a standard access permission selection dialog
*
* @param {string[]} blockedAccessPermissions
* @return {Promise<SelectedAccess[]>}
*
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-access.html
*/
async selectAccess(blockedAccessPermissions = []) {
return this.#messageManager.send(MessageCommands.selectAccess, {
value: blockedAccessPermissions
});
}
/**
* Method invokes the system dialog for selecting a CRM entity
*
* @param {SelectCRMParams} params
* @return {Promise<SelectedCRM>}
*
* @link https://apidocs.bitrix24.com/sdk/bx24-js-sdk/system-dialogues/bx24-select-crm.html
*/
async selectCRM(params) {
return this.#messageManager.send(MessageCommands.selectCRM, {
entityType: params?.entityType,
multiple: params?.multiple,
value: params?.value
});
}
}
export { DialogManager };
//# sourceMappingURL=dialog.mjs.map