[{"data":1,"prerenderedAt":2556},["ShallowReactive",2],{"navigation":3,"-docs-working-with-the-rest-api-frame-dialog":459,"-docs-working-with-the-rest-api-frame-dialog-description":2545},[4],{"title":5,"path":6,"stem":7,"children":8,"page":47},"Docs","\u002Fdocs","docs",[9,78,351],{"title":10,"path":11,"stem":12,"children":13,"restApiVersion":15,"category":15,"description":15,"badge":15},"Начало работы","\u002Fdocs\u002Fgetting-started","docs\u002F1.getting-started\u002F1.index",[14,17,48,63],{"title":10,"path":11,"stem":12,"restApiVersion":15,"category":15,"description":16,"badge":15},null,"Краткое руководство по работе с SDK для REST API Bitrix24",{"title":18,"path":19,"stem":20,"children":21,"page":47},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002F1.getting-started\u002F2.installation",[22,27,32,37,42],{"title":23,"path":24,"stem":25,"restApiVersion":15,"category":15,"description":26,"badge":15},"Vue","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fvue","docs\u002F1.getting-started\u002F2.installation\u002F1.vue","Руководство по установке Bitrix24 JS SDK в приложениях Vue.",{"title":28,"path":29,"stem":30,"restApiVersion":15,"category":15,"description":31,"badge":15},"Nuxt","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fnuxt","docs\u002F1.getting-started\u002F2.installation\u002F2.nuxt","Руководство по установке Bitrix24 JS SDK в приложениях Nuxt.",{"title":33,"path":34,"stem":35,"restApiVersion":15,"category":15,"description":36,"badge":15},"React","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Freact","docs\u002F1.getting-started\u002F2.installation\u002F3.react","Руководство по установке Bitrix24 JS SDK в приложениях React.",{"title":38,"path":39,"stem":40,"restApiVersion":15,"category":15,"description":41,"badge":15},"Node.js","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fnodejs","docs\u002F1.getting-started\u002F2.installation\u002F4.nodejs","Руководство по установке Bitrix24 JS SDK в приложениях Node.js.",{"title":43,"path":44,"stem":45,"restApiVersion":15,"category":15,"description":46,"badge":15},"UMD","\u002Fdocs\u002Fgetting-started\u002Finstallation\u002Fumd","docs\u002F1.getting-started\u002F2.installation\u002F5.umd","Руководство по использованию UMD-версии Bitrix24 JS SDK в ваших приложениях.",false,{"title":49,"restApiVersion":15,"category":15,"description":15,"badge":15,"shadow":47,"path":50,"stem":51,"children":52,"page":47},"Migration","\u002Fdocs\u002Fgetting-started\u002Fmigration","docs\u002F1.getting-started\u002F3.migration",[53,58],{"title":54,"path":55,"stem":56,"restApiVersion":15,"category":15,"description":57,"badge":15},"v0 → v1","\u002Fdocs\u002Fgetting-started\u002Fmigration\u002Fv1","docs\u002F1.getting-started\u002F3.migration\u002F1.v1","Подробное руководство по миграции приложения с Bitrix24 JS SDK v0 на Bitrix24 JS SDK v1.",{"title":59,"path":60,"stem":61,"restApiVersion":15,"category":15,"description":62,"badge":15},"v2 → v3","\u002Fdocs\u002Fgetting-started\u002Fmigration\u002Fv3","docs\u002F1.getting-started\u002F3.migration\u002F2.v3","Как уйти с устаревшей REST-поверхности, которая удаляется в Bitrix24 JS SDK 3.0.0.",{"title":64,"restApiVersion":15,"category":15,"description":15,"badge":15,"path":65,"stem":66,"children":67,"page":47},"AI-инструменты","\u002Fdocs\u002Fgetting-started\u002Fai","docs\u002F1.getting-started\u002F7.ai",[68,73],{"title":69,"path":70,"stem":71,"restApiVersion":15,"category":15,"description":72,"badge":15},"Навыки","\u002Fdocs\u002Fgetting-started\u002Fai\u002Fskills","docs\u002F1.getting-started\u002F7.ai\u002F1.skills","Узкоспециализированные skill-файлы для AI-агентов разработчика, работающих с @bitrix24\u002Fb24jssdk.",{"title":74,"path":75,"stem":76,"restApiVersion":15,"category":15,"description":77,"badge":15},"LLMs.txt","\u002Fdocs\u002Fgetting-started\u002Fai\u002Fllms-txt","docs\u002F1.getting-started\u002F7.ai\u002F2.llms-txt","Как сделать, чтобы AI-инструменты вроде Cursor, Windsurf, GitHub Copilot, ChatGPT и Claude понимали методы, инструменты и лучшие практики Bitrix24 JS SDK.",{"title":79,"path":80,"stem":81,"children":82,"restApiVersion":15,"category":15,"description":15,"badge":15},"Работа с REST API","\u002Fdocs\u002Fworking-with-the-rest-api","docs\u002F2.working-with-the-rest-api\u002F0.index",[83,86,93,98,103,107,112,116,121,126,130,135,140,145,150,155,160,165,170,175,179,184,189,194,200,205,210,215,220,225,230,235,240,245,251,256,261,267,272,277,282,287,293,299,305,310,315,320,326,331,336,341,346],{"title":84,"path":80,"stem":81,"restApiVersion":15,"category":15,"description":85,"badge":15},"Введение","Обзор возможностей SDK для работы с REST API Bitrix24",{"title":87,"path":88,"stem":89,"restApiVersion":90,"category":91,"description":92,"badge":15},"Call","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F1.call-rest-api-ver2","rest-api-ver2","actions","Метод для вызовов REST API Bitrix24 версии 2.",{"title":87,"path":94,"stem":95,"restApiVersion":96,"category":91,"description":97,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F1.call-rest-api-ver3","rest-api-ver3","Метод для вызовов REST API Bitrix24 версии 3.",{"title":99,"path":100,"stem":101,"restApiVersion":90,"category":91,"description":102,"badge":15},"CallList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-list-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F2.call-list-rest-api-ver2","Метод для быстрого получения всех данных из list-методов REST API Bitrix24 версии 2.",{"title":99,"path":104,"stem":105,"restApiVersion":96,"category":91,"description":106,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcall-list-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F2.call-list-rest-api-ver3","Метод для быстрого получения всех данных из list-методов REST API Bitrix24 версии 3.",{"title":108,"path":109,"stem":110,"restApiVersion":90,"category":91,"description":111,"badge":15},"FetchList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffetch-list-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F2.fetch-list-rest-api-ver2","Возвращает AsyncGenerator, позволяющий обрабатывать данные из list-методов REST API Bitrix24 версии 2 по мере поступления, не загружая весь массив в память сразу. Особенно полезно при работе с очень большими объёмами данных.",{"title":108,"path":113,"stem":114,"restApiVersion":96,"category":91,"description":115,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffetch-list-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F2.fetch-list-rest-api-ver3","Возвращает AsyncGenerator, позволяющий обрабатывать данные из list-методов REST API Bitrix24 версии 3 по мере поступления, не загружая весь массив в память сразу. Особенно полезно при работе с очень большими объёмами данных.",{"title":117,"path":118,"stem":119,"restApiVersion":15,"category":117,"description":120,"badge":15},"B24Hook","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhook","docs\u002F2.working-with-the-rest-api\u002F20.hook","Серверная точка входа для работы с REST API Bitrix24 через входящий вебхук (постоянный токен).",{"title":122,"path":123,"stem":124,"restApiVersion":90,"category":91,"description":125,"badge":15},"Batch","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F3.batch-rest-api-ver2","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 2. Позволяет выполнить до 50 команд в одном API-вызове.",{"title":122,"path":127,"stem":128,"restApiVersion":96,"category":91,"description":129,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F3.batch-rest-api-ver3","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 3. Позволяет выполнить до 50 команд в одном API-вызове.",{"title":84,"path":131,"stem":132,"restApiVersion":15,"category":133,"description":134,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe","docs\u002F2.working-with-the-rest-api\u002F30.frame","B24Frame","Предназначен для управления приложениями Bitrix24, работающими внутри placement-iframe. Наследуется от AbstractB24 и предоставляет менеджеры для аутентификации, обмена сообщениями с родительским окном, слайдеров, диалогов, placement и опций.",{"title":136,"path":137,"stem":138,"restApiVersion":15,"category":133,"description":139,"badge":15},"Инициализация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-initialize-b24-frame","docs\u002F2.working-with-the-rest-api\u002F30.frame-initialize-b24-frame","Функция предназначена для инициализации B24Frame",{"title":141,"path":142,"stem":143,"restApiVersion":15,"category":133,"description":144,"badge":15},"Авторизация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-auth","docs\u002F2.working-with-the-rest-api\u002F31.frame-auth","Предназначен для управления аутентификацией в приложениях Bitrix24. Обрабатывает данные аутентификации, полученные от родительского окна, и предоставляет методы для их обновления и получения.",{"title":146,"path":147,"stem":148,"restApiVersion":15,"category":133,"description":149,"badge":15},"Диалог","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-dialog","docs\u002F2.working-with-the-rest-api\u002F31.frame-dialog","Оборачивает системные диалоги BX24 (выбор пользователя, выбор прав доступа, выбор CRM-сущности), чтобы их можно было открывать изнутри iframe приложения Bitrix24.",{"title":151,"path":152,"stem":153,"restApiVersion":15,"category":133,"description":154,"badge":15},"Опции","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-options","docs\u002F2.working-with-the-rest-api\u002F31.frame-options","Используется для управления настройками приложения и пользователя в приложении Bitrix24. Позволяет инициализировать данные, получать и устанавливать опции через сообщения родительскому окну.",{"title":156,"path":157,"stem":158,"restApiVersion":15,"category":133,"description":159,"badge":15},"Родительское окно","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-parent","docs\u002F2.working-with-the-rest-api\u002F31.frame-parent","Предоставляет методы для управления родительским окном приложения в Bitrix24, включая изменение размера окна, управление прокруткой, инициацию звонков и открытие мессенджера.",{"title":161,"path":162,"stem":163,"restApiVersion":15,"category":133,"description":164,"badge":15},"Placement","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-placement","docs\u002F2.working-with-the-rest-api\u002F31.frame-placement","Используется для управления placement виджетов в приложении Bitrix24.",{"title":166,"path":167,"stem":168,"restApiVersion":15,"category":133,"description":169,"badge":15},"Слайдер","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe-slider","docs\u002F2.working-with-the-rest-api\u002F31.frame-slider","Предоставляет методы для работы со слайдерами в приложении Bitrix24. Позволяет открывать и закрывать слайдеры, а также управлять их содержимым.",{"title":171,"path":172,"stem":173,"restApiVersion":90,"category":91,"description":174,"badge":15},"BatchByChunk","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-by-chunk-rest-api-ver2","docs\u002F2.working-with-the-rest-api\u002F4.batch-by-chunk-rest-api-ver2","Метод для выполнения пакетных запросов с автоматическим разбиением на чанки для любого числа команд. Автоматически делит большие наборы команд на батчи по 50 и выполняет их последовательно. Используйте только массивы кортежей или массивы объектов.",{"title":171,"path":176,"stem":177,"restApiVersion":96,"category":91,"description":178,"badge":15},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fbatch-by-chunk-rest-api-ver3","docs\u002F2.working-with-the-rest-api\u002F4.batch-by-chunk-rest-api-ver3","Метод для выполнения пакетных запросов к REST API Bitrix24 версии 3 с автоматическим разбиением на чанки для любого числа команд. Автоматически делит большие наборы команд на батчи по 50 и выполняет их последовательно. Используйте только массивы кортежей или массивы объектов.",{"title":180,"path":181,"stem":182,"restApiVersion":15,"category":180,"description":183,"badge":15},"B24OAuth","\u002Fdocs\u002Fworking-with-the-rest-api\u002Foauth","docs\u002F2.working-with-the-rest-api\u002F40.oauth","Серверная точка входа для работы с REST API Bitrix24 по access token OAuth 2.0 (с автоматическим обновлением).",{"title":185,"path":186,"stem":187,"restApiVersion":15,"category":15,"description":188,"badge":15},"Выбор метода","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fchoosing-the-right-method","docs\u002F2.working-with-the-rest-api\u002F5.choosing-the-right-method","Руководство по выбору между Call, CallList, FetchList, Batch и BatchByChunk в REST API v2 и v3.",{"title":190,"path":191,"stem":192,"restApiVersion":15,"category":15,"description":193,"badge":15},"Фильтрация","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ffiltering","docs\u002F2.working-with-the-rest-api\u002F5.filtering","Справочник по построению параметров фильтра в Bitrix24 REST API v2 (префиксные операторы) и v3 (массив троек), включая формат дат и правило отбрасывания order.",{"title":195,"path":196,"stem":197,"restApiVersion":15,"category":198,"description":199,"badge":15},"B24HelperManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper","docs\u002F2.working-with-the-rest-api\u002F50.helper","Helper","Агрегирующий менеджер, который загружает данные профиля, приложения, оплаты, лицензии, валют и опций одним батч-запросом REST, а также подключает Pull-клиент.",{"title":201,"path":202,"stem":203,"restApiVersion":15,"category":198,"description":204,"badge":15},"useB24Helper","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-use-b24-helper","docs\u002F2.working-with-the-rest-api\u002F51.helper-use-b24-helper","Основанный на замыкании composable, который владеет единственным экземпляром B24HelperManager и предоставляет хелперы жизненного цикла (init \u002F destroy \u002F связка с Pull-клиентом).",{"title":206,"path":207,"stem":208,"restApiVersion":15,"category":198,"description":209,"badge":15},"ProfileManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-profile-manager","docs\u002F2.working-with-the-rest-api\u002F52.helper-profile-manager","Разобранный ответ REST-метода `profile`: id, имя, фамилия, пол, фото, часовой пояс, флаг администратора.",{"title":211,"path":212,"stem":213,"restApiVersion":15,"category":198,"description":214,"badge":15},"AppManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-app-manager","docs\u002F2.working-with-the-rest-api\u002F53.helper-app-manager","Разобранный ответ REST-метода `app.info`: id приложения, код, версия, статус, флаг установки.",{"title":216,"path":217,"stem":218,"restApiVersion":15,"category":198,"description":219,"badge":15},"PaymentManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-payment-manager","docs\u002F2.working-with-the-rest-api\u002F54.helper-payment-manager","Статус оплаты приложения Bitrix24 — извлекается из `app.info`.",{"title":221,"path":222,"stem":223,"restApiVersion":15,"category":198,"description":224,"badge":15},"LicenseManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-license-manager","docs\u002F2.working-with-the-rest-api\u002F55.helper-license-manager","Информация о лицензии Bitrix24 из `app.info` — и автоматическая перенастройка менеджера ограничений под соответствующий тарифный план.",{"title":226,"path":227,"stem":228,"restApiVersion":15,"category":198,"description":229,"badge":15},"CurrencyManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-currency-manager","docs\u002F2.working-with-the-rest-api\u002F56.helper-currency-manager","Каталог валют, кэшируемый в памяти — базовая валюта, форматтеры для каждой валюты и форматтер числа в строку.",{"title":231,"path":232,"stem":233,"restApiVersion":15,"category":198,"description":234,"badge":15},"OptionsManager","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fhelper-options-manager","docs\u002F2.working-with-the-rest-api\u002F57.helper-options-manager","Типизированный доступ к `app.option.get` \u002F `user.option.get`, плюс save(), который батчит `*.option.set` с необязательным Pull-уведомлением.",{"title":236,"path":237,"stem":238,"restApiVersion":15,"category":15,"description":239,"badge":15},"Ошибки","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ferrors","docs\u002F2.working-with-the-rest-api\u002F6.errors","Справочник кодов SdkError и AjaxError, выбрасываемых SDK, плюс коды ошибок REST Bitrix24, которые через них проявляются.",{"title":241,"path":242,"stem":243,"restApiVersion":15,"category":241,"description":244,"badge":15},"Pull","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fpull","docs\u002F2.working-with-the-rest-api\u002F60.pull","Поток сообщений в реальном времени от Bitrix24 к вашему приложению — WebSocket как основной канал, long-polling как запасной. Только для фрейма.",{"title":246,"path":247,"stem":248,"restApiVersion":15,"category":249,"description":250,"badge":15},"Logger","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogger","docs\u002F2.working-with-the-rest-api\u002F66.logger","logger","Логгер, вдохновлённый PHP Monolog, предоставляет структурированную систему логирования с поддержкой каналов, обработчиков, процессоров и форматтеров. Реализация следует принципам PSR-3 и паттерну цепочки ответственности.",{"title":252,"path":253,"stem":254,"restApiVersion":15,"category":249,"description":255,"badge":15},"Telegram","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogger-telegram","docs\u002F2.working-with-the-rest-api\u002F66.logger-telegram","Отправка логов в Telegram",{"title":257,"path":258,"stem":259,"restApiVersion":15,"category":15,"description":260,"badge":15},"Обнаружение v3-методов","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fdiscovering-v3-methods","docs\u002F2.working-with-the-rest-api\u002F7.discovering-v3-methods","Используйте rest.documentation.openapi, чтобы получить собственный машиночитаемый список всех доступных методов REST API v3 портала — источник истины, на который SDK опирается вместо захардкоженного allowlist. Особенно полезно для AI-агентов и кодогенерации.",{"title":262,"path":263,"stem":264,"restApiVersion":15,"category":265,"description":266,"badge":15},"AjaxResult","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-ajax-result","docs\u002F2.working-with-the-rest-api\u002F70.core-ajax-result","Core","Специализированный Result, возвращаемый каждым REST-хелпером. Предоставляет `isMore() \u002F getNext() \u002F getTotal() \u002F getStatus()` для постраничных ответов и неизменяемые данные.",{"title":268,"path":269,"stem":270,"restApiVersion":15,"category":265,"description":271,"badge":15},"Http","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-http","docs\u002F2.working-with-the-rest-api\u002F70.core-http","Низкоуровневый интерфейс транспорта, возвращаемый `b24.getHttpClient(version)`. Прямой доступ к axios-клиентам, параметрам ограничений, статистике и сбросу.",{"title":273,"path":274,"stem":275,"restApiVersion":15,"category":265,"description":276,"badge":15},"B24LangList","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-lang-list","docs\u002F2.working-with-the-rest-api\u002F70.core-lang-list","Enum языков интерфейса облачного Bitrix24 плюс карта локалей BCP-47.",{"title":278,"path":279,"stem":280,"restApiVersion":15,"category":265,"description":281,"badge":15},"RequestIdGenerator","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-request-id-generator","docs\u002F2.working-with-the-rest-api\u002F70.core-request-id-generator","Реализация `IRequestIdGenerator` по умолчанию. Генерирует request id в формате UUID v7 и предоставляет имена HTTP-заголовка \u002F query-параметра, используемые SDK.",{"title":283,"path":284,"stem":285,"restApiVersion":15,"category":265,"description":286,"badge":15},"Result","\u002Fdocs\u002Fworking-with-the-rest-api\u002Fcore-result","docs\u002F2.working-with-the-rest-api\u002F70.core-result","Обобщённый результат операции с флагом успеха, данными и картой ошибок. Аналог \\\\Bitrix\\\\Main\\\\Result из Bitrix Framework.",{"title":288,"path":289,"stem":290,"restApiVersion":15,"category":291,"description":292,"badge":15},"Лимитеры","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flimiters","docs\u002F2.working-with-the-rest-api\u002F77.limiters","limiters","Система ограничений предоставляет комплексный механизм управления частотой запросов, временем выполнения операций и адаптивными задержками.",{"title":294,"path":295,"stem":296,"restApiVersion":15,"category":297,"description":298,"badge":15},"Логирование и редактирование","\u002Fdocs\u002Fworking-with-the-rest-api\u002Flogging","docs\u002F2.working-with-the-rest-api\u002F78.logging","logging","Что SDK редактирует автоматически до того, как информация о запросе попадёт в логгер или AjaxError, что он не редактирует, и как подключить кастомный логгер через setLogger(...) без повторного появления утечек учётных данных.",{"title":300,"path":301,"stem":302,"restApiVersion":15,"category":303,"description":304,"badge":15},"Browser","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-browser","docs\u002F2.working-with-the-rest-api\u002F80.tools-browser","tools","Дешёвый детектор user-agent \u002F платформы \u002F возможностей. Полезен для runtime-ветвлений во фронтенд-коде.",{"title":306,"path":307,"stem":308,"restApiVersion":15,"category":303,"description":309,"badge":15},"Text","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-text","docs\u002F2.working-with-the-rest-api\u002F80.tools-text","Утилиты для текста и дат — UUID v4 \u002F v7, кодирование \u002F декодирование HTML-сущностей, преобразования типов, хелперы регистра, `toDateTime` \u002F `toB24Format` на Luxon, форматирование чисел и конструктор query-строки.",{"title":311,"path":312,"stem":313,"restApiVersion":15,"category":303,"description":314,"badge":15},"Type","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-type","docs\u002F2.working-with-the-rest-api\u002F80.tools-type","Runtime type guards — строки, числа, обычные объекты, массивы, DOM-узлы, Blob, FormData, формы JSON-RPC сообщений.",{"title":316,"path":317,"stem":318,"restApiVersion":15,"category":303,"description":319,"badge":15},"useFormatter","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-use-formatters","docs\u002F2.working-with-the-rest-api\u002F80.tools-use-formatters","Composable, возвращающий общие экземпляры `FormatterNumbers` и `FormatterIban`, преднастроенные спецификациями стран.",{"title":321,"path":322,"stem":323,"restApiVersion":15,"category":324,"description":325,"badge":15},"IResult","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftypes-iresult","docs\u002F2.working-with-the-rest-api\u002F90.types-iresult","Types","Обобщённый интерфейс результата операции. Реализуется `Result\u003CT>` и (транзитивно) `AjaxResult\u003CT>`.",{"title":327,"path":328,"stem":329,"restApiVersion":15,"category":324,"description":330,"badge":15},"TypeB24","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftypes-type-b24","docs\u002F2.working-with-the-rest-api\u002F90.types-type-b24","Публичный контракт, реализуемый каждым классом-точкой входа (B24Frame, B24Hook, B24OAuth). Единый источник истины для поверхности SDK.",{"title":332,"path":333,"stem":334,"restApiVersion":15,"category":265,"description":335,"badge":15},"Телеметрия","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftelemetry","docs\u002F2.working-with-the-rest-api\u002F95.telemetry","Query-параметры request id, версии SDK и типа SDK, добавляемые к каждому REST-вызову Bitrix24.",{"title":337,"path":338,"stem":339,"restApiVersion":15,"category":265,"description":340,"badge":15},"Коды ошибок","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ferror-codes","docs\u002F2.working-with-the-rest-api\u002F96.error-codes","Каталог кодов ошибок, которые распознаёт SDK — разделённых на «hard» (выбрасываются) и «soft» (возвращаются как AjaxError внутри AjaxResult).",{"title":342,"path":343,"stem":344,"restApiVersion":15,"category":303,"description":345,"badge":15},"HealthCheck","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-health-check","docs\u002F2.working-with-the-rest-api\u002Ftools-health-check","Метод для проверки доступности REST API Bitrix24. Выполняет простой запрос к REST API для проверки работоспособности сервиса.",{"title":347,"path":348,"stem":349,"restApiVersion":15,"category":303,"description":350,"badge":15},"Ping","\u002Fdocs\u002Fworking-with-the-rest-api\u002Ftools-ping","docs\u002F2.working-with-the-rest-api\u002Ftools-ping","Метод для измерения скорости ответа REST API Bitrix24. Выполняет тестовый запрос и возвращает время ответа в миллисекундах.",{"title":352,"path":353,"stem":354,"children":355,"restApiVersion":15,"category":15,"description":15,"badge":15},"Примеры","\u002Fdocs\u002Fexamples","docs\u002F99.examples\u002F0.index",[356,358,364,369,374,379,384,389,394,399,404,409,414,419,424,429,434,439,444,449,454],{"title":84,"path":353,"stem":354,"restApiVersion":15,"category":15,"description":357,"badge":15},"Рецепты, сочетающие SDK с реалистичными сценариями — аналитика CRM, массовые рассылки, AI-ассистенты, установка по OAuth и не только. Каждый рецепт — отдельный файл, удобный для копирования.",{"title":359,"path":360,"stem":361,"restApiVersion":15,"category":362,"description":363,"badge":15},"Аналитика CRM","\u002Fdocs\u002Fexamples\u002Fcrm-analytics","docs\u002F99.examples\u002F1.crm-analytics","examples","Стримит все сделки через actions.v2.fetchList.make, группирует по стадиям, печатает отчёт по воронке (количество, конверсия %, средний чек, win rate).",{"title":365,"path":366,"stem":367,"restApiVersion":15,"category":362,"description":368,"badge":15},"Сделки → CSV","\u002Fdocs\u002Fexamples\u002Fdashboard-deals-csv","docs\u002F99.examples\u002F1.dashboard-deals-csv","Стримит каждую сделку CRM, подходящую под фильтр по дате, в CSV-файл через вебхук и FetchListV2.",{"title":370,"path":371,"stem":372,"restApiVersion":15,"category":15,"description":373,"badge":15},"Список сущностей","\u002Fdocs\u002Fexamples\u002Fentity-list","docs\u002F99.examples\u002F10.entity-list","Рендерит постраничный список сущностей Bitrix24 с компонентами B24UI и SDK-действием callList.",{"title":375,"path":376,"stem":377,"restApiVersion":15,"category":362,"description":378,"badge":15},"Обработка ошибок","\u002Fdocs\u002Fexamples\u002Ferror-handling","docs\u002F99.examples\u002F10.error-handling","Демонстрирует четыре слоя ошибок (SdkError \u002F AjaxError \u002F сетевые \u002F soft) и настройки hardErrorCodes \u002F softErrorCodes \u002F retryOnNetworkError у менеджера ограничений.",{"title":380,"path":381,"stem":382,"restApiVersion":15,"category":362,"description":383,"badge":15},"Регистрация событий","\u002Fdocs\u002Fexamples\u002Fevent-registration","docs\u002F99.examples\u002F11.event-registration","CLI-инструмент — список, привязка и отвязка исходящих событий вебхуков Bitrix24 через event.get \u002F event.bind \u002F event.unbind. В паре с рецептом обработчика вебхуков.",{"title":385,"path":386,"stem":387,"restApiVersion":15,"category":362,"description":388,"badge":15},"Установка OAuth","\u002Fdocs\u002Fexamples\u002Foauth-install","docs\u002F99.examples\u002F12.oauth-install","Express-сервер, который обрабатывает события ONAPPINSTALL \u002F ONAPPUPDATE \u002F ONAPPUNINSTALL для маркетплейс-приложения Bitrix24, сохраняет токены по порталам и создаёт клиент B24OAuth по требованию с callback обновления, подключённым к хранилищу.",{"title":390,"path":391,"stem":392,"restApiVersion":15,"category":362,"description":393,"badge":15},"Скелет frame-приложения","\u002Fdocs\u002Fexamples\u002Fframe-app-skeleton","docs\u002F99.examples\u002F2.frame-app-skeleton","Минимально жизнеспособное iframe-приложение Bitrix24: рукопожатие init, установка заголовка, сохранение состояния приложения, открытие слайдера, чистое закрытие.",{"title":395,"path":396,"stem":397,"restApiVersion":15,"category":362,"description":398,"badge":15},"Массовые рассылки","\u002Fdocs\u002Fexamples\u002Fmass-messaging","docs\u002F99.examples\u002F2.mass-messaging","Фильтрует контакты в CRM, персонализирует шаблон, отправляет IM-уведомления ответственным менеджерам.",{"title":400,"path":401,"stem":402,"restApiVersion":15,"category":15,"description":403,"badge":15},"Мастер установки","\u002Fdocs\u002Fexamples\u002Fapp-installation-wizard","docs\u002F99.examples\u002F20.app-installation-wizard","Многошаговый процесс установки, который создаёт пользовательские поля, регистрирует placement-ы, финализирует установку и празднует конфетти.",{"title":405,"path":406,"stem":407,"restApiVersion":15,"category":362,"description":408,"badge":15},"Автоматизация задач","\u002Fdocs\u002Fexamples\u002Ftask-automation","docs\u002F99.examples\u002F3.task-automation","Опрашивает стадии сделок каждые 60 с. При отслеживаемом переходе создаёт задачу с описанием, дедлайном и приоритетом.",{"title":410,"path":411,"stem":412,"restApiVersion":15,"category":362,"description":413,"badge":15},"Вебхук CLI","\u002Fdocs\u002Fexamples\u002Fwebhook-cli-node","docs\u002F99.examples\u002F3.webhook-cli-node","Node-скрипт на 30 строк, который аутентифицируется на портале Bitrix24 через входящий вебхук и печатает вызывающего пользователя — полезно как первое, что вы запускаете после создания вебхука.",{"title":415,"path":416,"stem":417,"restApiVersion":15,"category":15,"description":418,"badge":15},"Экспорт Node + Hook","\u002Fdocs\u002Fexamples\u002Fnode-hook-company-export","docs\u002F99.examples\u002F30.node-hook-company-export","Экспорт компаний Bitrix24 в CSV-файл из чистого Node.js-скрипта через B24Hook.",{"title":420,"path":421,"stem":422,"restApiVersion":15,"category":362,"description":423,"badge":15},"Массовое обновление","\u002Fdocs\u002Fexamples\u002Fbulk-update-deals","docs\u002F99.examples\u002F4.bulk-update-deals","Переносит тысячи сделок CRM на новую стадию через BatchByChunkV2 — автоматическое разбиение на чанки, обработка частичных ошибок и одна строка прогресса.",{"title":425,"path":426,"stem":427,"restApiVersion":15,"category":362,"description":428,"badge":15},"Синхронизация ERP","\u002Fdocs\u002Fexamples\u002Ferp-sync","docs\u002F99.examples\u002F4.erp-sync","Двусторонняя синхронизация контактов между Bitrix24 и внешней ERP. Сопоставление по ИНН (основное) или email (запасное). Cron каждый час.",{"title":430,"path":431,"stem":432,"restApiVersion":15,"category":362,"description":433,"badge":15},"Файлы Диска","\u002Fdocs\u002Fexamples\u002Fdisk-files","docs\u002F99.examples\u002F5.disk-files","Список хранилищ и содержимого папок, создание подпапок, просмотр файлов. Загрузка файлов (multipart) намеренно вне области.",{"title":435,"path":436,"stem":437,"restApiVersion":15,"category":362,"description":438,"badge":15},"Подписка на Pull","\u002Fdocs\u002Fexamples\u002Fpull-subscribe-frame","docs\u002F99.examples\u002F5.pull-subscribe-frame","Открыть живой канал из frame-приложения Bitrix24 и реагировать на push-события через useB24Helper + Pull-клиент.",{"title":440,"path":441,"stem":442,"restApiVersion":15,"category":362,"description":443,"badge":15},"Telegram-бот","\u002Fdocs\u002Fexamples\u002Ftelegram-bot","docs\u002F99.examples\u002F6.telegram-bot","Опрашивает новые сделки CRM каждые две минуты; уведомляет Telegram-чат HTML-карточкой.",{"title":445,"path":446,"stem":447,"restApiVersion":15,"category":362,"description":448,"badge":15},"Обработчик вебхуков","\u002Fdocs\u002Fexamples\u002Fwebhook-handler","docs\u002F99.examples\u002F7.webhook-handler","Express-сервер, который принимает исходящие события Bitrix24, подгружает детали через REST, маршрутизирует по имени события. Всегда возвращает 200.",{"title":450,"path":451,"stem":452,"restApiVersion":15,"category":362,"description":453,"badge":15},"AI-ассистент","\u002Fdocs\u002Fexamples\u002Fai-assistant","docs\u002F99.examples\u002F8.ai-assistant","Загружает сделку и её дела, спрашивает у GPT-4o лучшее следующее действие, создаёт задачу, привязанную к сделке, с приоритетом и дедлайном.",{"title":455,"path":456,"stem":457,"restApiVersion":15,"category":362,"description":458,"badge":15},"Веб-поиск + LLM","\u002Fdocs\u002Fexamples\u002Fweb-search-llm","docs\u002F99.examples\u002F9.web-search-llm","Двухшаговый RAG: запрос к любому провайдеру веб-поиска, прогон результата через ваш LLM с цитатами [N], публикация ответа комментарием в таймлайн CRM на сделке.",{"id":460,"title":461,"audited":462,"badge":15,"body":463,"category":133,"description":149,"extension":2533,"links":2534,"meta":2541,"navigation":2542,"path":147,"restApiVersion":15,"seo":2543,"stem":148,"__hash__":2544},"docs\u002Fdocs\u002F2.working-with-the-rest-api\u002F31.frame-dialog.md","Класс DialogManager","2026-05-29",{"type":464,"value":465,"toc":2517},"minimark",[466,489,528,533,538,581,584,596,752,756,781,784,792,1034,1038,1075,1085,1125,1133,1278,1282,1315,1318,1407,1437,1464,1804,1819,1823,1826,1842,1959,1962,1967,2007,2013,2109,2113,2167,2180,2183,2190,2270,2273,2278,2386,2389,2406,2513],[467,468,469,473,474,481,482,484,485,488],"p",{},[470,471,472],"code",{},"DialogManager"," доступен через ",[475,476,478],"a",{"href":477},"\u002Fdocs\u002Fworking-with-the-rest-api\u002Fframe\u002F#dialog",[470,479,480],{},"$b24.dialog"," на экземпляре ",[470,483,133],{}," и доступен только когда ваше приложение отрисовано внутри iframe Bitrix24 (он использует ",[470,486,487],{},"postMessage"," для общения с родительским окном).",[467,490,491,492,500,501,500,508,515,516,523,524,527],{},"Он повторяет legacy-хелперы ",[475,493,497],{"href":494,"rel":495},"https:\u002F\u002Fapidocs.bitrix24.ru\u002Fsdk\u002Fbx24-js-sdk\u002Fsystem-dialogues\u002Fbx24-select-user.html",[496],"nofollow",[470,498,499],{},"BX24.selectUser",", ",[475,502,505],{"href":503,"rel":504},"https:\u002F\u002Fapidocs.bitrix24.ru\u002Fsdk\u002Fbx24-js-sdk\u002Fsystem-dialogues\u002Fbx24-select-users.html",[496],[470,506,507],{},"BX24.selectUsers",[475,509,512],{"href":510,"rel":511},"https:\u002F\u002Fapidocs.bitrix24.ru\u002Fsdk\u002Fbx24-js-sdk\u002Fsystem-dialogues\u002Fbx24-select-access.html",[496],[470,513,514],{},"BX24.selectAccess"," и ",[475,517,520],{"href":518,"rel":519},"https:\u002F\u002Fapidocs.bitrix24.ru\u002Fsdk\u002Fbx24-js-sdk\u002Fsystem-dialogues\u002Fbx24-select-crm.html",[496],[470,521,522],{},"BX24.selectCRM",", но возвращает строго типизированные ",[470,525,526],{},"Promise"," вместо приёма callback-ов.",[529,530,532],"h2",{"id":531},"methods","Методы",[534,535,537],"h3",{"id":536},"selectuser","selectUser",[539,540,545],"pre",{"className":541,"code":542,"language":543,"meta":544,"style":544},"language-ts-type shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","async selectUser(): Promise\u003Cnull|SelectedUser>\n","ts-type","",[470,546,547],{"__ignoreMap":544},[548,549,552,556,559,563,566,569,572,575,578],"span",{"class":550,"line":551},"line",1,[548,553,555],{"class":554},"sBMFI","async",[548,557,558],{"class":554}," selectUser",[548,560,562],{"class":561},"sMK4o","():",[548,564,565],{"class":554}," Promise",[548,567,568],{"class":561},"\u003C",[548,570,571],{"class":554},"null",[548,573,574],{"class":561},"|",[548,576,577],{"class":554},"SelectedUser",[548,579,580],{"class":561},">\n",[467,582,583],{},"Отображает стандартный диалог выбора одного сотрудника компании.",[467,585,586,587,592,593,595],{},"Promise разрешается объектом ",[475,588,590],{"href":589},"#selecteduser",[470,591,577],{}," или ",[470,594,571],{},", если пользователь закрыл диалог, не сделав выбор.",[539,597,601],{"className":598,"code":599,"language":600,"meta":544,"style":544},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\n$b24 = await initializeB24Frame()\n\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\nconst makeSelectUser = async() => {\n  const selectedUser = await $b24.dialog.selectUser()\n  if (!selectedUser) {\n    return\n  }\n  $logger.info(selectedUser)\n}\n","ts",[470,602,603,612,633,640,664,694,715,721,727,746],{"__ignoreMap":544},[548,604,605,609],{"class":550,"line":551},[548,606,608],{"class":607},"sHwdD","\u002F\u002F ...",[548,610,611],{"class":607}," \u002F\u002F\u002F\u002F\u002F\n",[548,613,615,619,622,626,630],{"class":550,"line":614},2,[548,616,618],{"class":617},"sTEyZ","$b24 ",[548,620,621],{"class":561},"=",[548,623,625],{"class":624},"s7zQu"," await",[548,627,629],{"class":628},"s2Zo4"," initializeB24Frame",[548,631,632],{"class":617},"()\n",[548,634,636,638],{"class":550,"line":635},3,[548,637,608],{"class":607},[548,639,611],{"class":607},[548,641,643,647,650,652,655,658,661],{"class":550,"line":642},4,[548,644,646],{"class":645},"spNyl","const",[548,648,649],{"class":617}," makeSelectUser ",[548,651,621],{"class":561},[548,653,654],{"class":645}," async",[548,656,657],{"class":561},"()",[548,659,660],{"class":645}," =>",[548,662,663],{"class":561}," {\n",[548,665,667,670,673,676,678,681,684,687,689,691],{"class":550,"line":666},5,[548,668,669],{"class":645},"  const",[548,671,672],{"class":617}," selectedUser",[548,674,675],{"class":561}," =",[548,677,625],{"class":624},[548,679,680],{"class":617}," $b24",[548,682,683],{"class":561},".",[548,685,686],{"class":617},"dialog",[548,688,683],{"class":561},[548,690,537],{"class":628},[548,692,632],{"class":693},"swJcz",[548,695,697,700,703,706,709,712],{"class":550,"line":696},6,[548,698,699],{"class":624},"  if",[548,701,702],{"class":693}," (",[548,704,705],{"class":561},"!",[548,707,708],{"class":617},"selectedUser",[548,710,711],{"class":693},") ",[548,713,714],{"class":561},"{\n",[548,716,718],{"class":550,"line":717},7,[548,719,720],{"class":624},"    return\n",[548,722,724],{"class":550,"line":723},8,[548,725,726],{"class":561},"  }\n",[548,728,730,733,735,738,741,743],{"class":550,"line":729},9,[548,731,732],{"class":617},"  $logger",[548,734,683],{"class":561},[548,736,737],{"class":628},"info",[548,739,740],{"class":693},"(",[548,742,708],{"class":617},[548,744,745],{"class":693},")\n",[548,747,749],{"class":550,"line":748},10,[548,750,751],{"class":561},"}\n",[534,753,755],{"id":754},"selectusers","selectUsers",[539,757,759],{"className":541,"code":758,"language":543,"meta":544,"style":544},"async selectUsers(): Promise\u003CSelectedUser[]>\n",[470,760,761],{"__ignoreMap":544},[548,762,763,765,768,770,772,774,776,779],{"class":550,"line":551},[548,764,555],{"class":554},[548,766,767],{"class":554}," selectUsers",[548,769,562],{"class":561},[548,771,565],{"class":554},[548,773,568],{"class":561},[548,775,577],{"class":554},[548,777,778],{"class":617},"[]",[548,780,580],{"class":561},[467,782,783],{},"Отображает стандартный диалог выбора нескольких сотрудников компании.",[467,785,786,787,791],{},"Promise разрешается массивом объектов ",[475,788,789],{"href":589},[470,790,577],{},". Массив пуст, если пользователь подтвердил диалог, никого не выбрав.",[539,793,795],{"className":598,"code":794,"language":600,"meta":544,"style":544},"import { SelectedUser } from '@bitrix24\u002Fb24jssdk'\n\n\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\n$b24 = await initializeB24Frame()\n\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\nconst makeSelectUsers = async() => {\n  const selectedUsers = await $b24.dialog.selectUsers()\n\n  const list = selectedUsers.map((row: SelectedUser): string => {\n    return [`[id: ${row.id}]`, row.name].join(' ')\n  })\n\n  $logger.info(selectedUsers, list)\n}\n",[470,796,797,824,830,836,848,854,871,894,898,937,996,1004,1009,1029],{"__ignoreMap":544},[548,798,799,802,805,808,811,814,817,821],{"class":550,"line":551},[548,800,801],{"class":624},"import",[548,803,804],{"class":561}," {",[548,806,807],{"class":617}," SelectedUser",[548,809,810],{"class":561}," }",[548,812,813],{"class":624}," from",[548,815,816],{"class":561}," '",[548,818,820],{"class":819},"sfazB","@bitrix24\u002Fb24jssdk",[548,822,823],{"class":561},"'\n",[548,825,826],{"class":550,"line":614},[548,827,829],{"emptyLinePlaceholder":828},true,"\n",[548,831,832,834],{"class":550,"line":635},[548,833,608],{"class":607},[548,835,611],{"class":607},[548,837,838,840,842,844,846],{"class":550,"line":642},[548,839,618],{"class":617},[548,841,621],{"class":561},[548,843,625],{"class":624},[548,845,629],{"class":628},[548,847,632],{"class":617},[548,849,850,852],{"class":550,"line":666},[548,851,608],{"class":607},[548,853,611],{"class":607},[548,855,856,858,861,863,865,867,869],{"class":550,"line":696},[548,857,646],{"class":645},[548,859,860],{"class":617}," makeSelectUsers ",[548,862,621],{"class":561},[548,864,654],{"class":645},[548,866,657],{"class":561},[548,868,660],{"class":645},[548,870,663],{"class":561},[548,872,873,875,878,880,882,884,886,888,890,892],{"class":550,"line":717},[548,874,669],{"class":645},[548,876,877],{"class":617}," selectedUsers",[548,879,675],{"class":561},[548,881,625],{"class":624},[548,883,680],{"class":617},[548,885,683],{"class":561},[548,887,686],{"class":617},[548,889,683],{"class":561},[548,891,755],{"class":628},[548,893,632],{"class":693},[548,895,896],{"class":550,"line":723},[548,897,829],{"emptyLinePlaceholder":828},[548,899,900,902,905,907,909,911,914,916,918,922,925,927,930,933,935],{"class":550,"line":729},[548,901,669],{"class":645},[548,903,904],{"class":617}," list",[548,906,675],{"class":561},[548,908,877],{"class":617},[548,910,683],{"class":561},[548,912,913],{"class":628},"map",[548,915,740],{"class":693},[548,917,740],{"class":561},[548,919,921],{"class":920},"sHdIc","row",[548,923,924],{"class":561},":",[548,926,807],{"class":554},[548,928,929],{"class":561},"):",[548,931,932],{"class":554}," string",[548,934,660],{"class":645},[548,936,663],{"class":561},[548,938,939,942,945,948,951,954,956,958,961,964,967,969,972,975,977,980,982,984,987,989,992,994],{"class":550,"line":748},[548,940,941],{"class":624},"    return",[548,943,944],{"class":693}," [",[548,946,947],{"class":561},"`",[548,949,950],{"class":819},"[id: ",[548,952,953],{"class":561},"${",[548,955,921],{"class":617},[548,957,683],{"class":561},[548,959,960],{"class":617},"id",[548,962,963],{"class":561},"}",[548,965,966],{"class":819},"]",[548,968,947],{"class":561},[548,970,971],{"class":561},",",[548,973,974],{"class":617}," row",[548,976,683],{"class":561},[548,978,979],{"class":617},"name",[548,981,966],{"class":693},[548,983,683],{"class":561},[548,985,986],{"class":628},"join",[548,988,740],{"class":693},[548,990,991],{"class":561},"'",[548,993,816],{"class":561},[548,995,745],{"class":693},[548,997,999,1002],{"class":550,"line":998},11,[548,1000,1001],{"class":561},"  }",[548,1003,745],{"class":693},[548,1005,1007],{"class":550,"line":1006},12,[548,1008,829],{"emptyLinePlaceholder":828},[548,1010,1012,1014,1016,1018,1020,1023,1025,1027],{"class":550,"line":1011},13,[548,1013,732],{"class":617},[548,1015,683],{"class":561},[548,1017,737],{"class":628},[548,1019,740],{"class":693},[548,1021,1022],{"class":617},"selectedUsers",[548,1024,971],{"class":561},[548,1026,904],{"class":617},[548,1028,745],{"class":693},[548,1030,1032],{"class":550,"line":1031},14,[548,1033,751],{"class":561},[534,1035,1037],{"id":1036},"selectaccess","selectAccess",[539,1039,1041],{"className":541,"code":1040,"language":543,"meta":544,"style":544},"async selectAccess(blockedAccessPermissions?: string[]): Promise\u003CSelectedAccess[]>\n",[470,1042,1043],{"__ignoreMap":544},[548,1044,1045,1047,1050,1052,1055,1058,1060,1062,1064,1066,1068,1071,1073],{"class":550,"line":551},[548,1046,555],{"class":554},[548,1048,1049],{"class":554}," selectAccess",[548,1051,740],{"class":561},[548,1053,1054],{"class":920},"blockedAccessPermissions",[548,1056,1057],{"class":561},"?:",[548,1059,932],{"class":554},[548,1061,778],{"class":617},[548,1063,929],{"class":561},[548,1065,565],{"class":554},[548,1067,568],{"class":561},[548,1069,1070],{"class":554},"SelectedAccess",[548,1072,778],{"class":617},[548,1074,580],{"class":561},[467,1076,1077,1078,592,1081,1084],{},"Отображает стандартный диалог выбора прав доступа (отделы, группы, отдельные пользователи и предопределённые коды прав, такие как ",[470,1079,1080],{},"AU",[470,1082,1083],{},"CR",").",[1086,1087,1088,1104],"table",{},[1089,1090,1091],"thead",{},[1092,1093,1094,1098,1101],"tr",{},[1095,1096,1097],"th",{},"Параметр",[1095,1099,1100],{},"Тип",[1095,1102,1103],{},"Описание",[1105,1106,1107],"tbody",{},[1092,1108,1109,1114,1119],{},[1110,1111,1112],"td",{},[470,1113,1054],{},[1110,1115,1116],{},[470,1117,1118],{},"string[]",[1110,1120,1121,1122,1124],{},"Необязательный список кодов прав, которые нужно отключить в диалоге. По умолчанию ",[470,1123,778],{},". Полезно, когда некоторые права уже выданы в другом месте.",[467,1126,1127,1128,683],{},"Promise разрешается массивом записей ",[475,1129,1131],{"href":1130},"#selectedaccess",[470,1132,1070],{},[539,1134,1136],{"className":598,"code":1135,"language":600,"meta":544,"style":544},"\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\n$b24 = await initializeB24Frame()\n\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\nconst makeSelectAccess = async() => {\n  const selected = await $b24.dialog.selectAccess(['AU'])\n\n  $logger.info(\n    selected.map(row => `${row.id} → ${row.name}`)\n  )\n}\n",[470,1137,1138,1144,1156,1162,1179,1212,1216,1227,1269,1274],{"__ignoreMap":544},[548,1139,1140,1142],{"class":550,"line":551},[548,1141,608],{"class":607},[548,1143,611],{"class":607},[548,1145,1146,1148,1150,1152,1154],{"class":550,"line":614},[548,1147,618],{"class":617},[548,1149,621],{"class":561},[548,1151,625],{"class":624},[548,1153,629],{"class":628},[548,1155,632],{"class":617},[548,1157,1158,1160],{"class":550,"line":635},[548,1159,608],{"class":607},[548,1161,611],{"class":607},[548,1163,1164,1166,1169,1171,1173,1175,1177],{"class":550,"line":642},[548,1165,646],{"class":645},[548,1167,1168],{"class":617}," makeSelectAccess ",[548,1170,621],{"class":561},[548,1172,654],{"class":645},[548,1174,657],{"class":561},[548,1176,660],{"class":645},[548,1178,663],{"class":561},[548,1180,1181,1183,1186,1188,1190,1192,1194,1196,1198,1200,1203,1205,1207,1209],{"class":550,"line":666},[548,1182,669],{"class":645},[548,1184,1185],{"class":617}," selected",[548,1187,675],{"class":561},[548,1189,625],{"class":624},[548,1191,680],{"class":617},[548,1193,683],{"class":561},[548,1195,686],{"class":617},[548,1197,683],{"class":561},[548,1199,1037],{"class":628},[548,1201,1202],{"class":693},"([",[548,1204,991],{"class":561},[548,1206,1080],{"class":819},[548,1208,991],{"class":561},[548,1210,1211],{"class":693},"])\n",[548,1213,1214],{"class":550,"line":696},[548,1215,829],{"emptyLinePlaceholder":828},[548,1217,1218,1220,1222,1224],{"class":550,"line":717},[548,1219,732],{"class":617},[548,1221,683],{"class":561},[548,1223,737],{"class":628},[548,1225,1226],{"class":693},"(\n",[548,1228,1229,1232,1234,1236,1238,1240,1242,1245,1247,1249,1251,1253,1256,1258,1260,1262,1264,1267],{"class":550,"line":723},[548,1230,1231],{"class":617},"    selected",[548,1233,683],{"class":561},[548,1235,913],{"class":628},[548,1237,740],{"class":693},[548,1239,921],{"class":920},[548,1241,660],{"class":645},[548,1243,1244],{"class":561}," `${",[548,1246,921],{"class":617},[548,1248,683],{"class":561},[548,1250,960],{"class":617},[548,1252,963],{"class":561},[548,1254,1255],{"class":819}," → ",[548,1257,953],{"class":561},[548,1259,921],{"class":617},[548,1261,683],{"class":561},[548,1263,979],{"class":617},[548,1265,1266],{"class":561},"}`",[548,1268,745],{"class":693},[548,1270,1271],{"class":550,"line":729},[548,1272,1273],{"class":693},"  )\n",[548,1275,1276],{"class":550,"line":748},[548,1277,751],{"class":561},[534,1279,1281],{"id":1280},"selectcrm","selectCRM",[539,1283,1285],{"className":541,"code":1284,"language":543,"meta":544,"style":544},"async selectCRM(params?: SelectCRMParams): Promise\u003CSelectedCRM>\n",[470,1286,1287],{"__ignoreMap":544},[548,1288,1289,1291,1294,1296,1299,1301,1304,1306,1308,1310,1313],{"class":550,"line":551},[548,1290,555],{"class":554},[548,1292,1293],{"class":554}," selectCRM",[548,1295,740],{"class":561},[548,1297,1298],{"class":920},"params",[548,1300,1057],{"class":561},[548,1302,1303],{"class":554}," SelectCRMParams",[548,1305,929],{"class":561},[548,1307,565],{"class":554},[548,1309,568],{"class":561},[548,1311,1312],{"class":554},"SelectedCRM",[548,1314,580],{"class":561},[467,1316,1317],{},"Отображает стандартный диалог выбора CRM-сущностей (лиды, контакты, компании, сделки, предложения).",[1086,1319,1320,1330],{},[1089,1321,1322],{},[1092,1323,1324,1326,1328],{},[1095,1325,1097],{},[1095,1327,1100],{},[1095,1329,1103],{},[1105,1331,1332,1362,1380],{},[1092,1333,1334,1339,1344],{},[1110,1335,1336],{},[470,1337,1338],{},"params.entityType",[1110,1340,1341],{},[470,1342,1343],{},"SelectCRMParamsEntityType[]",[1110,1345,1346,1347,500,1350,500,1353,500,1356,500,1359,683],{},"Какие типы сущностей показывать вкладками в окне выбора. Допустимые значения: ",[470,1348,1349],{},"lead",[470,1351,1352],{},"contact",[470,1354,1355],{},"company",[470,1357,1358],{},"deal",[470,1360,1361],{},"quote",[1092,1363,1364,1369,1374],{},[1110,1365,1366],{},[470,1367,1368],{},"params.multiple",[1110,1370,1371],{},[470,1372,1373],{},"boolean",[1110,1375,1376,1377,683],{},"Разрешить множественный выбор. По умолчанию ",[470,1378,1379],{},"false",[1092,1381,1382,1387,1392],{},[1110,1383,1384],{},[470,1385,1386],{},"params.value",[1110,1388,1389],{},[470,1390,1391],{},"SelectCRMParamsValue",[1110,1393,1394,1395,1406],{},"Необязательная карта идентификаторов сущностей, которые нужно отметить как изначально выбранные. Применяется ",[1396,1397,1398,1399,1402,1403],"strong",{},"только когда ",[470,1400,1401],{},"multiple"," равно ",[470,1404,1405],{},"true"," — режим одиночного выбора её игнорирует.",[467,1408,586,1409,1414,1415,500,1417,500,1419,500,1421,500,1423,1425,1426,1432,1433,1436],{},[475,1410,1412],{"href":1411},"#selectedcrm",[470,1413,1312],{},", свойства которого (",[470,1416,1349],{},[470,1418,1352],{},[470,1420,1355],{},[470,1422,1358],{},[470,1424,1361],{},") — настоящие JavaScript-массивы ",[475,1427,1429],{"href":1428},"#selectedcrmentity",[470,1430,1431],{},"SelectedCRMEntity",". Корзины для типов сущностей, которые пользователь не выбрал (или не запрашивал), остаются ",[470,1434,1435],{},"undefined",", а не пустым массивом.",[1438,1439,1440],"note",{},[467,1441,1442,1443,1445,1446,1449,1450,1453,1454,592,1457,1460,1461,1463],{},"Начиная с v1.0.7, ",[470,1444,1281],{}," всегда возвращает настоящие массивы. Более ранние версии передавали payload родительского окна как есть, поэтому каждая корзина фактически была ",[470,1447,1448],{},"Record\u003Cstring, SelectedCRMEntity>"," (например, ",[470,1451,1452],{},"{ 0: {...}, 1: {...} }",") — вызов ",[470,1455,1456],{},".length",[470,1458,1459],{},".map()"," на ней возвращал ",[470,1462,1435],{},". Код, написанный по документированным типам, продолжает работать; единственное поведенческое различие в том, что теперь runtime-форма совпадает с типами.",[539,1465,1467],{"className":598,"code":1466,"language":600,"meta":544,"style":544},"\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\n$b24 = await initializeB24Frame()\n\u002F\u002F ... \u002F\u002F\u002F\u002F\u002F\nconst makeSelectCRM = async() => {\n  const selected = await $b24.dialog.selectCRM({\n    entityType: ['contact', 'company'],\n    multiple: true,\n    value: {\n      contact: [42],\n      company: [7]\n    }\n  })\n\n  selected.contact?.forEach((row) => {\n    $logger.info(`[${row.id}] ${row.title} — ${row.url}`)\n  })\n\n  selected.company?.forEach((row) => {\n    $logger.info(`[${row.id}] ${row.title}`)\n  })\n}\n",[470,1468,1469,1475,1487,1493,1510,1534,1562,1575,1584,1601,1616,1621,1627,1631,1659,1716,1723,1728,1753,1792,1799],{"__ignoreMap":544},[548,1470,1471,1473],{"class":550,"line":551},[548,1472,608],{"class":607},[548,1474,611],{"class":607},[548,1476,1477,1479,1481,1483,1485],{"class":550,"line":614},[548,1478,618],{"class":617},[548,1480,621],{"class":561},[548,1482,625],{"class":624},[548,1484,629],{"class":628},[548,1486,632],{"class":617},[548,1488,1489,1491],{"class":550,"line":635},[548,1490,608],{"class":607},[548,1492,611],{"class":607},[548,1494,1495,1497,1500,1502,1504,1506,1508],{"class":550,"line":642},[548,1496,646],{"class":645},[548,1498,1499],{"class":617}," makeSelectCRM ",[548,1501,621],{"class":561},[548,1503,654],{"class":645},[548,1505,657],{"class":561},[548,1507,660],{"class":645},[548,1509,663],{"class":561},[548,1511,1512,1514,1516,1518,1520,1522,1524,1526,1528,1530,1532],{"class":550,"line":666},[548,1513,669],{"class":645},[548,1515,1185],{"class":617},[548,1517,675],{"class":561},[548,1519,625],{"class":624},[548,1521,680],{"class":617},[548,1523,683],{"class":561},[548,1525,686],{"class":617},[548,1527,683],{"class":561},[548,1529,1281],{"class":628},[548,1531,740],{"class":693},[548,1533,714],{"class":561},[548,1535,1536,1539,1541,1543,1545,1547,1549,1551,1553,1555,1557,1559],{"class":550,"line":696},[548,1537,1538],{"class":693},"    entityType",[548,1540,924],{"class":561},[548,1542,944],{"class":693},[548,1544,991],{"class":561},[548,1546,1352],{"class":819},[548,1548,991],{"class":561},[548,1550,971],{"class":561},[548,1552,816],{"class":561},[548,1554,1355],{"class":819},[548,1556,991],{"class":561},[548,1558,966],{"class":693},[548,1560,1561],{"class":561},",\n",[548,1563,1564,1567,1569,1573],{"class":550,"line":717},[548,1565,1566],{"class":693},"    multiple",[548,1568,924],{"class":561},[548,1570,1572],{"class":1571},"sfNiH"," true",[548,1574,1561],{"class":561},[548,1576,1577,1580,1582],{"class":550,"line":723},[548,1578,1579],{"class":693},"    value",[548,1581,924],{"class":561},[548,1583,663],{"class":561},[548,1585,1586,1589,1591,1593,1597,1599],{"class":550,"line":729},[548,1587,1588],{"class":693},"      contact",[548,1590,924],{"class":561},[548,1592,944],{"class":693},[548,1594,1596],{"class":1595},"sbssI","42",[548,1598,966],{"class":693},[548,1600,1561],{"class":561},[548,1602,1603,1606,1608,1610,1613],{"class":550,"line":748},[548,1604,1605],{"class":693},"      company",[548,1607,924],{"class":561},[548,1609,944],{"class":693},[548,1611,1612],{"class":1595},"7",[548,1614,1615],{"class":693},"]\n",[548,1617,1618],{"class":550,"line":998},[548,1619,1620],{"class":561},"    }\n",[548,1622,1623,1625],{"class":550,"line":1006},[548,1624,1001],{"class":561},[548,1626,745],{"class":693},[548,1628,1629],{"class":550,"line":1011},[548,1630,829],{"emptyLinePlaceholder":828},[548,1632,1633,1636,1638,1640,1643,1646,1648,1650,1652,1655,1657],{"class":550,"line":1031},[548,1634,1635],{"class":617},"  selected",[548,1637,683],{"class":561},[548,1639,1352],{"class":617},[548,1641,1642],{"class":561},"?.",[548,1644,1645],{"class":628},"forEach",[548,1647,740],{"class":693},[548,1649,740],{"class":561},[548,1651,921],{"class":920},[548,1653,1654],{"class":561},")",[548,1656,660],{"class":645},[548,1658,663],{"class":561},[548,1660,1662,1665,1667,1669,1671,1673,1676,1678,1680,1682,1684,1686,1689,1691,1693,1695,1698,1700,1703,1705,1707,1709,1712,1714],{"class":550,"line":1661},15,[548,1663,1664],{"class":617},"    $logger",[548,1666,683],{"class":561},[548,1668,737],{"class":628},[548,1670,740],{"class":693},[548,1672,947],{"class":561},[548,1674,1675],{"class":819},"[",[548,1677,953],{"class":561},[548,1679,921],{"class":617},[548,1681,683],{"class":561},[548,1683,960],{"class":617},[548,1685,963],{"class":561},[548,1687,1688],{"class":819},"] ",[548,1690,953],{"class":561},[548,1692,921],{"class":617},[548,1694,683],{"class":561},[548,1696,1697],{"class":617},"title",[548,1699,963],{"class":561},[548,1701,1702],{"class":819}," — ",[548,1704,953],{"class":561},[548,1706,921],{"class":617},[548,1708,683],{"class":561},[548,1710,1711],{"class":617},"url",[548,1713,1266],{"class":561},[548,1715,745],{"class":693},[548,1717,1719,1721],{"class":550,"line":1718},16,[548,1720,1001],{"class":561},[548,1722,745],{"class":693},[548,1724,1726],{"class":550,"line":1725},17,[548,1727,829],{"emptyLinePlaceholder":828},[548,1729,1731,1733,1735,1737,1739,1741,1743,1745,1747,1749,1751],{"class":550,"line":1730},18,[548,1732,1635],{"class":617},[548,1734,683],{"class":561},[548,1736,1355],{"class":617},[548,1738,1642],{"class":561},[548,1740,1645],{"class":628},[548,1742,740],{"class":693},[548,1744,740],{"class":561},[548,1746,921],{"class":920},[548,1748,1654],{"class":561},[548,1750,660],{"class":645},[548,1752,663],{"class":561},[548,1754,1756,1758,1760,1762,1764,1766,1768,1770,1772,1774,1776,1778,1780,1782,1784,1786,1788,1790],{"class":550,"line":1755},19,[548,1757,1664],{"class":617},[548,1759,683],{"class":561},[548,1761,737],{"class":628},[548,1763,740],{"class":693},[548,1765,947],{"class":561},[548,1767,1675],{"class":819},[548,1769,953],{"class":561},[548,1771,921],{"class":617},[548,1773,683],{"class":561},[548,1775,960],{"class":617},[548,1777,963],{"class":561},[548,1779,1688],{"class":819},[548,1781,953],{"class":561},[548,1783,921],{"class":617},[548,1785,683],{"class":561},[548,1787,1697],{"class":617},[548,1789,1266],{"class":561},[548,1791,745],{"class":693},[548,1793,1795,1797],{"class":550,"line":1794},20,[548,1796,1001],{"class":561},[548,1798,745],{"class":693},[548,1800,1802],{"class":550,"line":1801},21,[548,1803,751],{"class":561},[1438,1805,1806],{},[467,1807,1808,1809,1812,1813,1815,1816,683],{},"Режим одиночного выбора (",[470,1810,1811],{},"multiple: false",") всё равно разрешается той же формой ",[470,1814,1312],{}," — корзины просто содержат не более одного элемента. Чтобы получить этот элемент, используйте ",[470,1817,1818],{},"selected.contact?.[0]",[529,1820,1822],{"id":1821},"data-types","Типы данных",[534,1824,577],{"id":1825},"selecteduser",[467,1827,1828,1829,1831,1832,1834,1835,515,1838,1841],{},"Представляет одного сотрудника компании, выбранного через ",[470,1830,537],{}," \u002F ",[470,1833,755],{},". Флаги ",[470,1836,1837],{},"sub",[470,1839,1840],{},"sup"," описывают иерархические отношения с текущим пользователем.",[1086,1843,1844,1855],{},[1089,1845,1846],{},[1092,1847,1848,1851,1853],{},[1095,1849,1850],{},"Поле",[1095,1852,1100],{},[1095,1854,1103],{},[1105,1856,1857,1874,1888,1902,1916,1929,1944],{},[1092,1858,1859,1863,1868],{},[1110,1860,1861],{},[470,1862,960],{},[1110,1864,1865],{},[470,1866,1867],{},"NumberString",[1110,1869,1870,1871,1084],{},"Идентификатор пользователя — строка с числовым значением (например, ",[470,1872,1873],{},"\"42\"",[1092,1875,1876,1880,1885],{},[1110,1877,1878],{},[470,1879,979],{},[1110,1881,1882],{},[470,1883,1884],{},"string",[1110,1886,1887],{},"Отформатированное отображаемое имя.",[1092,1889,1890,1895,1899],{},[1110,1891,1892],{},[470,1893,1894],{},"photo",[1110,1896,1897],{},[470,1898,1884],{},[1110,1900,1901],{},"URL аватара пользователя.",[1092,1903,1904,1909,1913],{},[1110,1905,1906],{},[470,1907,1908],{},"position",[1110,1910,1911],{},[470,1912,1884],{},[1110,1914,1915],{},"Должность пользователя.",[1092,1917,1918,1922,1926],{},[1110,1919,1920],{},[470,1921,1711],{},[1110,1923,1924],{},[470,1925,1884],{},[1110,1927,1928],{},"URL профиля пользователя внутри портала.",[1092,1930,1931,1935,1939],{},[1110,1932,1933],{},[470,1934,1837],{},[1110,1936,1937],{},[470,1938,1373],{},[1110,1940,1941,1943],{},[470,1942,1405],{},", если выбранный пользователь — подчинённый текущего пользователя.",[1092,1945,1946,1950,1954],{},[1110,1947,1948],{},[470,1949,1840],{},[1110,1951,1952],{},[470,1953,1373],{},[1110,1955,1956,1958],{},[470,1957,1405],{},", если выбранный пользователь — руководитель текущего пользователя.",[534,1960,1070],{"id":1961},"selectedaccess",[467,1963,1964,1965,683],{},"Представляет одну запись, возвращаемую ",[470,1966,1037],{},[1086,1968,1969,1979],{},[1089,1970,1971],{},[1092,1972,1973,1975,1977],{},[1095,1974,1850],{},[1095,1976,1100],{},[1095,1978,1103],{},[1105,1980,1981,1994],{},[1092,1982,1983,1987,1991],{},[1110,1984,1985],{},[470,1986,960],{},[1110,1988,1989],{},[470,1990,1884],{},[1110,1992,1993],{},"Код права (см. таблицу ниже).",[1092,1995,1996,2000,2004],{},[1110,1997,1998],{},[470,1999,979],{},[1110,2001,2002],{},[470,2003,1884],{},[1110,2005,2006],{},"Человекочитаемое имя права, локализованное под язык портала.",[467,2008,2009,2010,2012],{},"Поле ",[470,2011,960],{}," использует грамматику кодов прав Bitrix24:",[1086,2014,2015,2025],{},[1089,2016,2017],{},[1092,2018,2019,2022],{},[1095,2020,2021],{},"Шаблон",[1095,2023,2024],{},"Значение",[1105,2026,2027,2036,2045,2055,2065,2075,2085,2099],{},[1092,2028,2029,2033],{},[1110,2030,2031],{},[470,2032,1080],{},[1110,2034,2035],{},"Все авторизованные пользователи портала.",[1092,2037,2038,2042],{},[1110,2039,2040],{},[470,2041,1083],{},[1110,2043,2044],{},"Текущий пользователь.",[1092,2046,2047,2052],{},[1110,2048,2049],{},[470,2050,2051],{},"U${number}",[1110,2053,2054],{},"Конкретный пользователь по ID.",[1092,2056,2057,2062],{},[1110,2058,2059],{},[470,2060,2061],{},"IU${number}",[1110,2063,2064],{},"Сотрудник по ID (с учётом экстранета).",[1092,2066,2067,2072],{},[1110,2068,2069],{},[470,2070,2071],{},"D${number}",[1110,2073,2074],{},"Все сотрудники отдела.",[1092,2076,2077,2082],{},[1110,2078,2079],{},[470,2080,2081],{},"DR${number}",[1110,2083,2084],{},"Все сотрудники отдела, включая подотделы.",[1092,2086,2087,2092],{},[1110,2088,2089],{},[470,2090,2091],{},"G${number}",[1110,2093,2094,2095,2098],{},"Группа пользователей (например, ",[470,2096,2097],{},"G2"," — все посетители).",[1092,2100,2101,2106],{},[1110,2102,2103],{},[470,2104,2105],{},"SG${number}",[1110,2107,2108],{},"Соцсеть \u002F рабочая группа.",[534,2110,2112],{"id":2111},"selectcrmparamsentitytype","SelectCRMParamsEntityType",[539,2114,2116],{"className":598,"code":2115,"language":600,"meta":544,"style":544},"type SelectCRMParamsEntityType = 'lead' | 'contact' | 'company' | 'deal' | 'quote'\n",[470,2117,2118],{"__ignoreMap":544},[548,2119,2120,2123,2126,2128,2130,2132,2134,2137,2139,2141,2143,2145,2147,2149,2151,2153,2155,2157,2159,2161,2163,2165],{"class":550,"line":551},[548,2121,2122],{"class":645},"type",[548,2124,2125],{"class":554}," SelectCRMParamsEntityType",[548,2127,675],{"class":561},[548,2129,816],{"class":561},[548,2131,1349],{"class":819},[548,2133,991],{"class":561},[548,2135,2136],{"class":561}," |",[548,2138,816],{"class":561},[548,2140,1352],{"class":819},[548,2142,991],{"class":561},[548,2144,2136],{"class":561},[548,2146,816],{"class":561},[548,2148,1355],{"class":819},[548,2150,991],{"class":561},[548,2152,2136],{"class":561},[548,2154,816],{"class":561},[548,2156,1358],{"class":819},[548,2158,991],{"class":561},[548,2160,2136],{"class":561},[548,2162,816],{"class":561},[548,2164,1361],{"class":819},[548,2166,823],{"class":561},[467,2168,2169,2170,2172,2173,2175,2176,515,2178,683],{},"Набор видов CRM-сущностей, которые понимает ",[470,2171,1281],{},". Передаётся как ",[470,2174,1338],{}," и используется в качестве ключей ",[470,2177,1391],{},[470,2179,1312],{},[534,2181,1391],{"id":2182},"selectcrmparamsvalue",[467,2184,2185,2186,2189],{},"Карта идентификаторов сущностей для предварительного выбора при ",[470,2187,2188],{},"multiple: true",". Читаются только запрошенные типы сущностей; лишние ключи игнорируются.",[1086,2191,2192,2202],{},[1089,2193,2194],{},[1092,2195,2196,2198,2200],{},[1095,2197,1850],{},[1095,2199,1100],{},[1095,2201,1103],{},[1105,2203,2204,2218,2231,2244,2257],{},[1092,2205,2206,2210,2215],{},[1110,2207,2208],{},[470,2209,1349],{},[1110,2211,2212],{},[470,2213,2214],{},"number[]",[1110,2216,2217],{},"ID лидов, которые нужно отметить как уже выбранные.",[1092,2219,2220,2224,2228],{},[1110,2221,2222],{},[470,2223,1352],{},[1110,2225,2226],{},[470,2227,2214],{},[1110,2229,2230],{},"ID контактов, которые нужно отметить как уже выбранные.",[1092,2232,2233,2237,2241],{},[1110,2234,2235],{},[470,2236,1355],{},[1110,2238,2239],{},[470,2240,2214],{},[1110,2242,2243],{},"ID компаний, которые нужно отметить как уже выбранные.",[1092,2245,2246,2250,2254],{},[1110,2247,2248],{},[470,2249,1358],{},[1110,2251,2252],{},[470,2253,2214],{},[1110,2255,2256],{},"ID сделок, которые нужно отметить как уже выбранные.",[1092,2258,2259,2263,2267],{},[1110,2260,2261],{},[470,2262,1361],{},[1110,2264,2265],{},[470,2266,2214],{},[1110,2268,2269],{},"ID предложений, которые нужно отметить как уже выбранные.",[534,2271,1431],{"id":2272},"selectedcrmentity",[467,2274,2275,2276,683],{},"Представляет одну строку внутри корзины ",[470,2277,1312],{},[1086,2279,2280,2290],{},[1089,2281,2282],{},[1092,2283,2284,2286,2288],{},[1095,2285,1850],{},[1095,2287,1100],{},[1095,2289,1103],{},[1105,2291,2292,2309,2332,2346,2359,2373],{},[1092,2293,2294,2298,2302],{},[1110,2295,2296],{},[470,2297,960],{},[1110,2299,2300],{},[470,2301,1884],{},[1110,2303,2304,2305,683],{},"Идентификатор сущности с префиксом — см. таблицу в ",[475,2306,2307],{"href":1411},[470,2308,1312],{},[1092,2310,2311,2315,2319],{},[1110,2312,2313],{},[470,2314,2122],{},[1110,2316,2317],{},[470,2318,2112],{},[1110,2320,2321,2322,1831,2324,1831,2326,1831,2328,1831,2330,1084],{},"Вид сущности (",[470,2323,1349],{},[470,2325,1352],{},[470,2327,1355],{},[470,2329,1358],{},[470,2331,1361],{},[1092,2333,2334,2339,2343],{},[1110,2335,2336],{},[470,2337,2338],{},"place",[1110,2340,2341],{},[470,2342,1884],{},[1110,2344,2345],{},"Метка placement в UI, используемая Bitrix24 (нужна редко; информационная).",[1092,2347,2348,2352,2356],{},[1110,2349,2350],{},[470,2351,1697],{},[1110,2353,2354],{},[470,2355,1884],{},[1110,2357,2358],{},"Отображаемый заголовок сущности (например, название компании, заголовок сделки, полное имя контакта).",[1092,2360,2361,2366,2370],{},[1110,2362,2363],{},[470,2364,2365],{},"desc",[1110,2367,2368],{},[470,2369,1884],{},[1110,2371,2372],{},"Краткое описание, показываемое рядом с заголовком в окне выбора.",[1092,2374,2375,2379,2383],{},[1110,2376,2377],{},[470,2378,1711],{},[1110,2380,2381],{},[470,2382,1884],{},[1110,2384,2385],{},"URL для открытия сущности внутри портала.",[534,2387,1312],{"id":2388},"selectedcrm",[467,2390,2391,2392,2394,2395,2399,2400,2402,2403,2405],{},"Результат ",[470,2393,1281],{},". Каждое свойство — это либо массив ",[475,2396,2397],{"href":1428},[470,2398,1431],{},", уточнённый литеральным шаблоном ",[470,2401,960],{},", либо ",[470,2404,1435],{},", если пользователь не выбрал ничего этого типа.",[1086,2407,2408,2418],{},[1089,2409,2410],{},[1092,2411,2412,2414,2416],{},[1095,2413,1850],{},[1095,2415,1100],{},[1095,2417,1103],{},[1105,2419,2420,2440,2458,2475,2494],{},[1092,2421,2422,2426,2431],{},[1110,2423,2424],{},[470,2425,1349],{},[1110,2427,2428],{},[470,2429,2430],{},"(SelectedCRMEntity & { id: ``L_${number}`` })[]",[1110,2432,2433,2434,2436,2437,683],{},"Выбранные лиды. Каждый ",[470,2435,960],{}," выглядит как ",[470,2438,2439],{},"L_42",[1092,2441,2442,2446,2451],{},[1110,2443,2444],{},[470,2445,1352],{},[1110,2447,2448],{},[470,2449,2450],{},"(SelectedCRMEntity & { id: ``C_${number}``, image: string })[]",[1110,2452,2453,2454,2457],{},"Выбранные контакты. Дополнительное поле ",[470,2455,2456],{},"image"," содержит URL аватара контакта.",[1092,2459,2460,2464,2469],{},[1110,2461,2462],{},[470,2463,1355],{},[1110,2465,2466],{},[470,2467,2468],{},"(SelectedCRMEntity & { id: ``CO_${number}``, image: string })[]",[1110,2470,2471,2472,2474],{},"Выбранные компании. Дополнительное поле ",[470,2473,2456],{}," содержит URL логотипа компании.",[1092,2476,2477,2481,2486],{},[1110,2478,2479],{},[470,2480,1358],{},[1110,2482,2483],{},[470,2484,2485],{},"(SelectedCRMEntity & { id: ``D_${number}`` })[]",[1110,2487,2488,2489,2436,2491,683],{},"Выбранные сделки. Каждый ",[470,2490,960],{},[470,2492,2493],{},"D_17",[1092,2495,2496,2500,2505],{},[1110,2497,2498],{},[470,2499,1361],{},[1110,2501,2502],{},[470,2503,2504],{},"(SelectedCRMEntity & { id: ``Q_${number}`` })[]",[1110,2506,2507,2508,2436,2510,683],{},"Выбранные предложения. Каждый ",[470,2509,960],{},[470,2511,2512],{},"Q_3",[2514,2515,2516],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":544,"searchDepth":614,"depth":614,"links":2518},[2519,2525],{"id":531,"depth":614,"text":532,"children":2520},[2521,2522,2523,2524],{"id":536,"depth":635,"text":537},{"id":754,"depth":635,"text":755},{"id":1036,"depth":635,"text":1037},{"id":1280,"depth":635,"text":1281},{"id":1821,"depth":614,"text":1822,"children":2526},[2527,2528,2529,2530,2531,2532],{"id":1825,"depth":635,"text":577},{"id":1961,"depth":635,"text":1070},{"id":2111,"depth":635,"text":2112},{"id":2182,"depth":635,"text":1391},{"id":2272,"depth":635,"text":1431},{"id":2388,"depth":635,"text":1312},"md",[2535,2538],{"label":472,"iconName":2536,"to":2537},"GitHubIcon","https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fpackages\u002Fjssdk\u002Fsrc\u002Fframe\u002Fdialog.ts",{"label":2539,"iconName":2536,"to":2540},"Skill — b24jssdk-frame-ui","https:\u002F\u002Fgithub.com\u002Fbitrix24\u002Fb24jssdk\u002Fblob\u002Fmain\u002Fskills\u002Fb24jssdk-frame-ui\u002FSKILL.md",{},{"title":146},{"title":461,"description":149},"AzBpoybFNUIVNTNvgdR8LhmEO5UDZTrT6bfvS1VehRA",{"data":2546,"body":2547},{},{"type":2548,"children":2549},"root",[2550],{"type":2551,"tag":467,"props":2552,"children":2553},"element",{},[2554],{"type":2555,"value":149},"text",1783080225038]