Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/im/v2/lib/desktop-api/dist/ |
Upload File : |
{"version":3,"file":"desktop-api.bundle.js","sources":["../src/functions/lifecycle.js","../src/features.js","../src/functions/version.js","../src/functions/event.js","../src/functions/settings.js","../src/functions/window.js","../src/functions/icon.js","../src/functions/common.js","../src/functions/legacy.js","../src/functions/notifications.js","../src/functions/logger.js","../src/functions/call/mask.js","../src/functions/call/background.js","../src/functions/account.js","../src/functions/disk.js","../src/functions/debug.js","../src/desktop-api.js"],"sourcesContent":["import { Type } from 'main.core';\nexport const lifecycleFunctions = {\n\tisDesktop(): boolean\n\t{\n\t\treturn Type.isObject(window.BXDesktopSystem);\n\t},\n\trestart()\n\t{\n\t\tif (this.getApiVersion() < 74)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tBXDesktopSystem?.Restart();\n\t},\n\tshutdown()\n\t{\n\t\tBXDesktopSystem?.Shutdown();\n\t},\n};\n","export const DesktopFeature = {\n\tmask: {\n\t\tid: 'mask',\n\t\tversion: 72,\n\t},\n\trestart: {\n\t\tid: 'restart',\n\t\tversion: 74,\n\t},\n\taccountManagement: {\n\t\tid: 'accountManagement',\n\t\tversion: 75,\n\t},\n\topenNewTab: {\n\t\tid: 'openNewTab',\n\t\tversion: 76,\n\t},\n\topenPage: {\n\t\tid: 'openPage',\n\t\tversion: 79,\n\t},\n\tportalTabActivation: {\n\t\tid: 'portalTabActivation',\n\t\tversion: 85,\n\t},\n};\n","import { Browser } from 'main.core';\nimport { DesktopFeature } from '../features';\n\ntype DesktopFeatureItem = $Keys<typeof DesktopFeature>;\n\nexport const versionFunctions = {\n\tgetMajorVersion(): number\n\t{\n\t\tif (!this.isDesktop())\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\n\t\tconst [majorVersion] = window.BXDesktopSystem.GetProperty('versionParts');\n\n\t\treturn majorVersion;\n\t},\n\tgetApiVersion(): number\n\t{\n\t\tif (!this.isDesktop())\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\n\t\t// eslint-disable-next-line no-unused-vars\n\t\tconst [majorVersion, minorVersion, buildVersion, apiVersion] = window.BXDesktopSystem.GetProperty('versionParts');\n\n\t\treturn apiVersion;\n\t},\n\tisFeatureEnabled(code: string): boolean\n\t{\n\t\treturn Boolean(window.BXDesktopSystem?.FeatureEnabled(code));\n\t},\n\tisFeatureSupported(code: DesktopFeatureItem): boolean\n\t{\n\t\treturn this.isFeatureSupportedInVersion(this.getApiVersion(), code);\n\t},\n\tisFeatureSupportedInVersion(version: number, code: DesktopFeatureItem): boolean\n\t{\n\t\tif (!DesktopFeature[code])\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn version >= DesktopFeature[code].version;\n\t},\n\t/**\n\t * Returns the Windows OS build number.\n\t * Returns 0 if the OS is not Windows or if the function does not exist.\n\t * For a list of Windows build numbers, see: https://en.wikipedia.org/wiki/List_of_Microsoft_Windows_versions\n\t */\n\tgetWindowsOSBuild(): number\n\t{\n\t\tif (!Browser.isWin())\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn window.BXDesktopSystem?.UserOsBuild() ?? 0;\n\t},\n};\n","import { Event, Type } from 'main.core';\n\nconst eventHandlers = {};\n\nexport const eventFunctions = {\n\tsubscribe(eventName: string, handler: Function)\n\t{\n\t\tif (!this.isDesktop())\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst preparedHandler = (event) => {\n\t\t\tconst params = event.detail ?? [];\n\t\t\thandler.apply(window, params);\n\t\t};\n\n\t\tif (!eventHandlers[eventName])\n\t\t{\n\t\t\teventHandlers[eventName] = [];\n\t\t}\n\t\teventHandlers[eventName].push(preparedHandler);\n\n\t\tEvent.bind(window, eventName, preparedHandler);\n\t},\n\tunsubscribe(eventName: string, handler: Function)\n\t{\n\t\tif (!Type.isFunction(handler))\n\t\t{\n\t\t\tif (!Type.isArrayFilled(eventHandlers[eventName]))\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\teventHandlers[eventName].forEach((eventHandler) => {\n\t\t\t\tEvent.unbind(window, eventName, eventHandler);\n\t\t\t});\n\n\t\t\treturn;\n\t\t}\n\n\t\tEvent.unbind(window, eventName, handler);\n\t},\n\temit(eventName: string, params: any[] = [])\n\t{\n\t\tconst mainWindow = opener || top;\n\t\tconst allWindows: Object[] = mainWindow.BXWindows;\n\t\tallWindows.forEach((window) => {\n\t\t\tif (!window || window.name === '')\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\twindow?.BXDesktopWindow?.DispatchCustomEvent(eventName, params);\n\t\t});\n\n\t\tthis.emitToMainWindow(eventName, params);\n\t},\n\temitToMainWindow(eventName: string, params: any[] = [])\n\t{\n\t\tconst mainWindow = opener || top;\n\t\tmainWindow.BXDesktopSystem?.GetMainWindow()?.DispatchCustomEvent(eventName, params);\n\t},\n};\n","import { Extension } from 'main.core';\n\nimport type { SettingsCollection } from 'main.core.collections';\n\nexport const DesktopSettingsKey = {\n\thideImTab: 'bxd_hide_im_tab',\n\tsmoothing: 'bxd_camera_smoothing',\n\tsmoothing_v2: 'bxd_camera_smoothing_v2',\n\ttelemetry: 'bxd_telemetry',\n\tsliderBindingsStatus: 'sliderBindingsStatus',\n};\n\nexport const settingsFunctions = {\n\tgetSliderBindingsStatus(): boolean\n\t{\n\t\tconst result = this.getCustomSetting(DesktopSettingsKey.sliderBindingsStatus, '1');\n\n\t\treturn result === '1';\n\t},\n\tisAirDesignEnabledInDesktop(): boolean\n\t{\n\t\t// duplicate setting from im.v2.lib.layout to minimize dependencies in external usages\n\t\tconst settings: SettingsCollection = Extension.getSettings('im.v2.lib.layout');\n\n\t\treturn this.isDesktop() && settings.get('isAirDesignEnabled', true);\n\t},\n\tgetCameraSmoothingStatus(): boolean\n\t{\n\t\treturn this.getCustomSetting(DesktopSettingsKey.smoothing, '0') === '1';\n\t},\n\tsetCameraSmoothingStatus(status: boolean)\n\t{\n\t\tconst preparedStatus = status === true ? '1' : '0';\n\n\t\tif (this.getApiVersion() > 76)\n\t\t{\n\t\t\tthis.setCustomSetting(DesktopSettingsKey.smoothing_v2, preparedStatus);\n\t\t\treturn;\n\t\t}\n\n\t\tthis.setCustomSetting(DesktopSettingsKey.smoothing, preparedStatus);\n\t},\n\tisTwoWindowMode(): boolean\n\t{\n\t\treturn Boolean(BXDesktopSystem?.IsTwoWindowsMode());\n\t},\n\tsetTwoWindowMode(flag: boolean)\n\t{\n\t\tif (flag === true)\n\t\t{\n\t\t\tBXDesktopSystem?.V10();\n\n\t\t\treturn;\n\t\t}\n\n\t\tBXDesktopSystem?.V8();\n\t},\n\tgetAutostartStatus(): boolean\n\t{\n\t\treturn BXDesktopSystem?.GetProperty('autostart');\n\t},\n\tsetAutostartStatus(flag: boolean)\n\t{\n\t\tBXDesktopSystem?.SetProperty('autostart', flag);\n\t},\n\tgetTelemetryStatus(): boolean\n\t{\n\t\treturn this.getCustomSetting(DesktopSettingsKey.telemetry, '1') === '1';\n\t},\n\tsetTelemetryStatus(flag: boolean)\n\t{\n\t\tthis.setCustomSetting(DesktopSettingsKey.telemetry, flag ? '1' : '0');\n\t},\n\tsetCustomSetting(name: string, value: string)\n\t{\n\t\tBXDesktopSystem?.StoreSettings(name, value);\n\t},\n\tgetCustomSetting(name: string, defaultValue: string): string\n\t{\n\t\treturn BXDesktopSystem?.QuerySettings(name, defaultValue);\n\t},\n};\n","import { Dom, Event, Extension, Type } from 'main.core';\n\nimport { Path } from 'im.v2.const';\nimport { DesktopApi, DesktopFeature } from 'im.v2.lib.desktop-api';\nimport { Utils } from 'im.v2.lib.utils';\n\nimport { settingsFunctions } from './settings';\n\ntype TabsList = {\n\turl: string,\n\theight: number,\n\twidth: number,\n\tid: string,\n\tinMainWindow: boolean,\n\tpopup: boolean,\n\twindowClass: string\n}\n\nexport const windowFunctions = {\n\tasync handlePortalTabActivation(): Promise\n\t{\n\t\tconst hasActiveTab = await this.hasActivePortalTab();\n\n\t\tif (hasActiveTab)\n\t\t{\n\t\t\treturn Promise.resolve();\n\t\t}\n\n\t\tthis.activatePortalFirstTab();\n\n\t\treturn Promise.resolve();\n\t},\n\tactivatePortalFirstTab()\n\t{\n\t\tBXDesktopSystem.ActivateFirstTab();\n\t},\n\thasActivePortalTab(): Promise\n\t{\n\t\treturn BXDesktopSystem.HasActiveTab();\n\t},\n\tsetTabWithChatPageActive()\n\t{\n\t\tthis.setActiveTabUrl(`${location.origin}${Path.online}`);\n\t},\n\tisTabWithChatPageActive(): boolean\n\t{\n\t\tconst tabsList = this.getTabsList();\n\n\t\treturn tabsList.some((tab) => tab.visible && tab.url.includes(Path.online));\n\t},\n\thasTabWithChatPage(): TabsList\n\t{\n\t\tconst tabsList = this.getTabsList();\n\n\t\treturn tabsList.some((tab) => tab.url.includes(Path.online));\n\t},\n\tgetTabsList(): TabsList[]\n\t{\n\t\treturn BXDesktopSystem.BrowserList();\n\t},\n\tisTwoWindowMode(): boolean\n\t{\n\t\treturn Boolean(BXDesktopSystem?.IsTwoWindowsMode());\n\t},\n\tisChatWindow(): boolean\n\t{\n\t\tconst settings = Extension.getSettings('im.v2.lib.desktop-api');\n\n\t\treturn (\n\t\t\tthis.isDesktop()\n\t\t\t&& settings.get('isChatWindow')\n\t\t);\n\t},\n\tisChatTab(): boolean\n\t{\n\t\treturn (\n\t\t\tthis.isChatWindow()\n\t\t\t|| (\n\t\t\t\tthis.isDesktop()\n\t\t\t\t&& location.href.includes('&IM_TAB=Y')\n\t\t\t)\n\t\t);\n\t},\n\tisActiveTab(): boolean\n\t{\n\t\treturn (\n\t\t\tthis.isDesktop()\n\t\t\t&& BXDesktopSystem.IsActiveTab()\n\t\t);\n\t},\n\tshowBrowserWindow()\n\t{\n\t\tBXDesktopWindow.ExecuteCommand('show.main');\n\t},\n\tsetActiveTab(target = window)\n\t{\n\t\tif (!Type.isObject(target))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\ttarget.BXDesktopSystem?.SetActiveTab();\n\t},\n\tsetActiveTabUrl(url: string)\n\t{\n\t\tBXDesktopSystem.SetActiveTabUrl(url);\n\t},\n\tshowWindow(target = window)\n\t{\n\t\tif (!Type.isObject(target))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\ttarget.BXDesktopWindow?.ExecuteCommand('show');\n\t},\n\tactivateWindow(target = window)\n\t{\n\t\t// all tabs with the same URL are activated when a call is received, since\n\t\t// the setActiveTab method does not work correctly yet\n\t\tif (!DesktopApi.isAirDesignEnabledInDesktop())\n\t\t{\n\t\t\tthis.setActiveTab(target);\n\t\t}\n\n\t\tthis.showWindow(target);\n\t},\n\thideWindow(target = window)\n\t{\n\t\tif (!Type.isObject(target))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\ttarget.BXDesktopWindow?.ExecuteCommand('hide');\n\t},\n\tcloseWindow(target = window)\n\t{\n\t\tif (!Type.isObject(target))\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\ttarget.BXDesktopWindow?.ExecuteCommand('close');\n\t},\n\thideLoader()\n\t{\n\t\tDom.remove(document.getElementById('bx-desktop-loader'));\n\t},\n\treloadWindow()\n\t{\n\t\tBXDesktopSystem.Login({});\n\t},\n\tfindWindow(name: string = ''): ?Window\n\t{\n\t\tconst mainWindow = opener || top;\n\n\t\treturn mainWindow.BXWindows.find((window) => window?.name === name);\n\t},\n\topenPage(url: string, options: { skipNativeBrowser?: boolean } = {}): Promise\n\t{\n\t\tconst targetUrl = new URL(url);\n\t\tif (targetUrl.host !== location.host)\n\t\t{\n\t\t\tsetTimeout(() => this.hideWindow(), 100);\n\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\tif (!settingsFunctions.isTwoWindowMode())\n\t\t{\n\t\t\tif (options.skipNativeBrowser === true)\n\t\t\t{\n\t\t\t\tsetTimeout(() => this.hideWindow(), 100);\n\n\t\t\t\treturn Promise.resolve(false);\n\t\t\t}\n\n\t\t\tUtils.browser.openLink(targetUrl.href);\n\n\t\t\t// workaround timeout, if application is activated on hit, it cant be hidden immediately\n\t\t\tsetTimeout(() => this.hideWindow(), 100);\n\n\t\t\treturn Promise.resolve(true);\n\t\t}\n\n\t\tthis.createTab(targetUrl.href);\n\n\t\treturn Promise.resolve(true);\n\t},\n\topenInBrowser(url: string)\n\t{\n\t\tBXDesktopSystem.OpenInBrowser(url);\n\t},\n\tcreateTab(path: string): void\n\t{\n\t\tconst preparedPath = Dom.create({ tag: 'a', attrs: { href: path } }).href;\n\n\t\tBXDesktopSystem.CreateTab(preparedPath);\n\t},\n\tcreateImTab(path: string): void\n\t{\n\t\tconst preparedPath = Dom.create({ tag: 'a', attrs: { href: path } }).href;\n\n\t\tBXDesktopSystem.CreateImTab(preparedPath);\n\t},\n\tcreateWindow(name: string, callback: Function)\n\t{\n\t\tBXDesktopSystem.GetWindow(name, callback);\n\t},\n\tcreateTopmostWindow(htmlContent: string): boolean\n\t{\n\t\treturn BXDesktopSystem.ExecuteCommand('topmost.show.html', htmlContent);\n\t},\n\tsetWindowPosition(rawParams: {x?: number, y?: number, width?: number, height?: number})\n\t{\n\t\tconst preparedParams = {};\n\t\tObject.entries(rawParams).forEach(([key, value]) => {\n\t\t\tconst preparedKey = key[0].toUpperCase() + key.slice(1);\n\t\t\tpreparedParams[preparedKey] = value;\n\t\t});\n\t\tBXDesktopWindow?.SetProperty('position', preparedParams);\n\t},\n\tprepareHtml(html: string | HTMLElement, js: string | HTMLElement): string\n\t{\n\t\tlet plainHtml = '';\n\t\tif (Type.isDomNode(html))\n\t\t{\n\t\t\tplainHtml = html.outerHTML;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tplainHtml = html;\n\t\t}\n\n\t\tlet plainJs = '';\n\t\tif (Type.isDomNode(js))\n\t\t{\n\t\t\tplainJs = js.outerHTML;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tplainJs = js;\n\t\t}\n\n\t\tEvent.ready();\n\n\t\tif (Type.isStringFilled(plainJs))\n\t\t{\n\t\t\tplainJs = `\n\t\t\t\t<script>\n\t\t\t\t\tBX.ready(() => {\n\t\t\t\t\t\t${plainJs}\n\t\t\t\t\t});\n\t\t\t\t</script>\n\t\t\t`;\n\t\t}\n\n\t\tconst head = document.head.outerHTML.replaceAll(/BX\\.PULL\\.start\\([^)]*\\);/g, '');\n\n\t\treturn `\n\t\t\t<!DOCTYPE html>\n\t\t\t<html lang=\"\">\n\t\t\t\t${head}\n\t\t\t\t<body class=\"im-desktop im-desktop-popup\">\n\t\t\t\t\t${plainHtml}${plainJs}\n\t\t\t\t</body>\n\t\t\t</html>\n\t\t`;\n\t},\n\tsetWindowSize(width: number, height: number)\n\t{\n\t\tBXDesktopWindow.SetProperty('clientSize', { Width: width, Height: height });\n\t},\n\tsetMinimumWindowSize(width: number, height: number)\n\t{\n\t\tBXDesktopWindow.SetProperty('minClientSize', { Width: width, Height: height });\n\t},\n};\n","import { Browser } from 'main.core';\n\nexport const iconFunctions = {\n\tsetCounter(counter: number, important: boolean = false)\n\t{\n\t\tconst preparedCounter = counter.toString();\n\t\tBXDesktopSystem?.SetIconBadge(preparedCounter, important);\n\t\tBXDesktopSystem?.SetTabBadge(0, preparedCounter);\n\t},\n\tsetBrowserIconBadge(counter: string | number)\n\t{\n\t\tBXDesktopSystem?.SetBrowserIconBadge(counter.toString());\n\t},\n\tsetIconStatus(status: string)\n\t{\n\t\tBXDesktopSystem?.SetIconStatus(status);\n\t},\n\tsetOfflineIcon()\n\t{\n\t\tBXDesktopSystem?.SetIconStatus('offline');\n\t},\n\tflashIcon()\n\t{\n\t\tif (!Browser.isWin())\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tBXDesktopSystem?.FlashIcon();\n\t},\n};\n","export const commonFunctions = {\n\tprepareResourcePath(source: string): string\n\t{\n\t\tlet result = '';\n\n\t\ttry\n\t\t{\n\t\t\tconst url = new URL(source, location.origin);\n\t\t\tresult = url.href;\n\t\t}\n\t\tcatch\n\t\t{\n\t\t\t// empty\n\t\t}\n\n\t\treturn result;\n\t},\n};\n","import {Extension} from 'main.core';\n\nexport const legacyFunctions = {\n\tchangeTab(tabId: string)\n\t{\n\t\tconst settings = Extension.getSettings('im.v2.lib.desktop-api');\n\t\tconst v2 = settings.get('v2');\n\t\tif (v2)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tBX.desktop.changeTab(tabId);\n\t}\n};","export const notificationFunctions = {\n\tremoveNativeNotifications()\n\t{\n\t\tif (this.getApiVersion() < 74)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tBXDesktopSystem?.NotificationRemoveAll();\n\t},\n};\n","import { Type, Browser, Loc } from 'main.core';\nimport { Logger } from 'im.v2.lib.logger';\n\nexport const loggerFunctions = {\n\twriteToLogFile(filename: string, text: any)\n\t{\n\t\tif (!Type.isStringFilled(filename))\n\t\t{\n\t\t\tconsole.error('Desktop logger: filename is not defined');\n\t\t\treturn;\n\t\t}\n\n\t\tlet textPrepared = '';\n\t\tif (Type.isString(text))\n\t\t{\n\t\t\ttextPrepared = text;\n\t\t}\n\t\telse if (Type.isNumber(text))\n\t\t{\n\t\t\ttextPrepared = text.toString();\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttextPrepared = JSON.stringify(text);\n\t\t}\n\n\t\tBXDesktopSystem?.Log(filename, textPrepared);\n\t},\n\tprintWelcomePrompt()\n\t{\n\t\tconst version = BXDesktopSystem.GetProperty('versionParts').join('.');\n\t\tlet osName = 'unknown';\n\t\tif (Browser.isMac())\n\t\t{\n\t\t\tosName = 'MacOS';\n\t\t}\n\t\telse if (Browser.isWin())\n\t\t{\n\t\t\tosName = 'Windows';\n\t\t}\n\t\telse if (Browser.isLinux())\n\t\t{\n\t\t\tosName = 'Linux';\n\t\t}\n\n\t\tconst promptMessage = Loc.getMessage('IM_LIB_DESKTOP_API_WELCOME_PROMPT', { '#VERSION#': version, '#OS#': osName });\n\t\tLogger.desktop(promptMessage);\n\t},\n\tsetLogInfo(logFunction: Function)\n\t{\n\t\tBXDesktopSystem.LogInfo = logFunction;\n\t},\n};\n","export const callMaskFunctions = {\n\tgetCallMask()\n\t{\n\t\tif (!this.isDesktop())\n\t\t{\n\t\t\treturn { id: '' };\n\t\t}\n\n\t\treturn {\n\t\t\tid: BXDesktopSystem.QuerySettings('bxd_camera_3dbackground_id') || '',\n\t\t};\n\t},\n\tsetCallMaskLoadHandlers(callback: function)\n\t{\n\t\tthis.subscribe('BX3dAvatarReady', callback);\n\t\tthis.subscribe('BX3dAvatarError', callback);\n\t},\n\tsetCallMask(id, maskUrl, backgroundUrl): boolean\n\t{\n\t\tif (this.getApiVersion() < 72)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tif (!id)\n\t\t{\n\t\t\tBXDesktopSystem.Set3dAvatar('', '');\n\t\t\tBXDesktopSystem.StoreSettings('bxd_camera_3dbackground_id', '');\n\t\t\treturn true;\n\t\t}\n\n\t\tmaskUrl = this.prepareResourcePath(maskUrl);\n\t\tbackgroundUrl = this.prepareResourcePath(backgroundUrl);\n\n\t\tBXDesktopSystem.Set3dAvatar(maskUrl, backgroundUrl);\n\t\tBXDesktopSystem.StoreSettings('bxd_camera_3dbackground_id', id);\n\n\t\treturn true;\n\t},\n};\n","\nexport const callBackgroundFunctions = {\n\tisBlur(source)\n\t{\n\t\treturn source.toString().toLowerCase().includes('blur')\n\t},\n\tgetLimitationBackground(source)\n\t{\n\t\tconst limitation = BX.message('call_features');\n\t\tconst defaultLimitation = {enable: true};\n\t\tlet limitationType = '';\n\n\t\tif (source && source !== 'none') {\n\t\t\tlimitationType = `${this.isBlur(source) ? 'blur_' : ''}background`\n\t\t}\n\t\tconst currentLimitation = limitationType ? limitation?.[`call_${limitationType}`] : null;\n\n\t\tif (!currentLimitation) {\n\t\t\treturn defaultLimitation;\n\t\t}\n\n\t\treturn {\n\t\t\tenable: currentLimitation.enable,\n\t\t\tarticleCode: currentLimitation.articleCode\n\t\t}\n\t},\n\topenArticle(articleCode)\n\t{\n\t\tconst infoHelper = BX.UI.InfoHelper;\n\n\t\tif (infoHelper.isOpen())\n\t\t{\n\t\t\tinfoHelper.close()\n\t\t}\n\n\t\tinfoHelper.show(articleCode);\n\t},\n\thandleLimitationBackground(limitationObj, handle)\n\t{\n\t\tconst {enable, articleCode} = limitationObj\n\n\t\tif (enable && typeof handle === \"function\")\n\t\t{\n\t\t\thandle()\n\t\t}\n\n\t\tif (!enable && articleCode)\n\t\t{\n\t\t\tthis.openArticle(articleCode)\n\t\t}\n\t},\n\tgetBackgroundImage(): Object\n\t{\n\t\tconst id = BXDesktopSystem.QuerySettings(\"bxd_camera_background_id\") || 'none';\n\n\t\tif (!this.isDesktop() || !this.getLimitationBackground(id)?.enable)\n\t\t{\n\t\t\treturn { id: 'none', source: '' };\n\t\t}\n\n\t\treturn { id };\n\t},\n\tsetCallBackground(id, source)\n\t{\n\t\tif (source === 'none' || source === '')\n\t\t{\n\t\t\tsource = '';\n\t\t}\n\t\telse if (source === 'blur')\n\t\t{\n\t\t\t// empty\n\t\t}\n\t\telse if (source === 'gaussianBlur')\n\t\t{\n\t\t\tsource = 'GaussianBlur';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsource = this.prepareResourcePath(source);\n\t\t}\n\n\t\tvar promise = new BX.Promise();\n\n\t\tconst limitation = this.getLimitationBackground(source);\n\n\t\tlet currentSource = '';\n\t\tlet currentId = '';\n\n\n\t\tthis.handleLimitationBackground(limitation, () => {\n\t\t\tcurrentSource = source;\n\t\t\tcurrentId = id;\n\t\t})\n\n\t\tsetTimeout(() => {\n\t\t\tthis.setCallMask(false);\n\t\t\tBXDesktopSystem.StoreSettings('bxd_camera_background_id', currentId);\n\t\t\tBXDesktopSystem.StoreSettings('bxd_camera_background', currentSource);\n\t\t\tpromise.resolve(currentId || \"none\");\n\t\t}, 100);\n\n\t\treturn promise;\n\t},\n};\n","/* eslint-disable no-undef */\nimport { ajax as Ajax } from 'main.core';\n\nimport { RestMethod } from 'im.v2.const';\n\nimport { lifecycleFunctions } from './lifecycle';\n\nimport type { DesktopAccount } from '../types/account';\n\nexport const accountFunctions = {\n\topenAddAccountTab()\n\t{\n\t\tBXDesktopSystem?.AccountAddForm();\n\t},\n\tdeleteAccount(host: string, login: string)\n\t{\n\t\tBXDesktopSystem?.AccountDelete(host, login);\n\t},\n\tconnectAccount(host: string, login: string, protocol: string, userLang: string)\n\t{\n\t\tBXDesktopSystem?.AccountConnect(host, login, protocol, userLang);\n\t},\n\tdisconnectAccount(host: string)\n\t{\n\t\tBXDesktopSystem?.AccountDisconnect(host);\n\t},\n\tgetAccountList(): DesktopAccount[]\n\t{\n\t\treturn BXDesktopSystem?.AccountList();\n\t},\n\tlogin(): Promise\n\t{\n\t\treturn new Promise((resolve) => {\n\t\t\tBXDesktopSystem?.Login({\n\t\t\t\t// there is no fail callback. If it fails, desktop will show login form\n\t\t\t\tsuccess: () => resolve(),\n\t\t\t});\n\t\t});\n\t},\n\tasync logout(): Promise\n\t{\n\t\ttry\n\t\t{\n\t\t\tawait Ajax.runAction(RestMethod.imV2DesktopLogout);\n\t\t\tBXDesktopSystem?.Logout(2);\n\t\t}\n\t\tcatch (error)\n\t\t{\n\t\t\tconsole.error('DesktopApi logout error', error);\n\t\t\tBXDesktopSystem?.Logout(3);\n\t\t}\n\t},\n\tasync terminate(): Promise\n\t{\n\t\ttry\n\t\t{\n\t\t\tawait Ajax.runAction(RestMethod.imV2DesktopLogout);\n\t\t}\n\t\tfinally\n\t\t{\n\t\t\tlifecycleFunctions.shutdown();\n\t\t}\n\t},\n};\n","import { EventType } from 'im.v2.const';\nimport { EventEmitter, BaseEvent } from 'main.core.events';\n\nexport const diskFunctions = {\n\tstartDiskSync(): void\n\t{\n\t\tBXFileStorage?.SyncPause(false);\n\t\tconst event = new BaseEvent({ compatData: [true] });\n\t\tEventEmitter.emit(window, EventType.desktop.onSyncPause, event);\n\t},\n\tstopDiskSync(): void\n\t{\n\t\tBXFileStorage?.SyncPause(true);\n\t\tconst event = new BaseEvent({ compatData: [false] });\n\t\tEventEmitter.emit(window, EventType.desktop.onSyncPause, event);\n\t},\n};\n","export const debugFunctions = {\n\topenDeveloperTools(): boolean\n\t{\n\t\tBXDesktopWindow?.OpenDeveloperTools();\n\t},\n\topenLogsFolder()\n\t{\n\t\tBXDesktopSystem?.OpenLogsFolder();\n\t},\n};\n","import { lifecycleFunctions } from './functions/lifecycle';\nimport { versionFunctions } from './functions/version';\nimport { eventFunctions } from './functions/event';\nimport { windowFunctions } from './functions/window';\nimport { iconFunctions } from './functions/icon';\nimport { settingsFunctions } from './functions/settings';\nimport { commonFunctions } from './functions/common';\nimport { legacyFunctions } from './functions/legacy';\nimport { notificationFunctions } from './functions/notifications';\nimport { loggerFunctions } from './functions/logger';\nimport { callMaskFunctions } from './functions/call/mask';\nimport { callBackgroundFunctions } from './functions/call/background';\nimport { accountFunctions } from './functions/account';\nimport { diskFunctions } from './functions/disk';\nimport { debugFunctions } from './functions/debug';\n\nexport { DesktopFeature } from './features';\nexport { DesktopSettingsKey } from './functions/settings';\n\nexport const DesktopApi = {\n\t...lifecycleFunctions,\n\t...commonFunctions,\n\t...versionFunctions,\n\t...eventFunctions,\n\t...windowFunctions,\n\t...iconFunctions,\n\t...notificationFunctions,\n\t...settingsFunctions,\n\t...legacyFunctions,\n\t...callBackgroundFunctions,\n\t...callMaskFunctions,\n\t...loggerFunctions,\n\t...accountFunctions,\n\t...diskFunctions,\n\t...debugFunctions,\n};\n\nexport type { DesktopAccount } from './types/account';\n"],"names":["lifecycleFunctions","isDesktop","Type","isObject","window","BXDesktopSystem","restart","getApiVersion","Restart","shutdown","Shutdown","DesktopFeature","mask","id","version","accountManagement","openNewTab","openPage","portalTabActivation","versionFunctions","getMajorVersion","majorVersion","GetProperty","minorVersion","buildVersion","apiVersion","isFeatureEnabled","code","Boolean","FeatureEnabled","isFeatureSupported","isFeatureSupportedInVersion","getWindowsOSBuild","Browser","isWin","UserOsBuild","eventHandlers","eventFunctions","subscribe","eventName","handler","preparedHandler","event","params","detail","apply","push","Event","bind","unsubscribe","isFunction","isArrayFilled","forEach","eventHandler","unbind","emit","mainWindow","opener","top","allWindows","BXWindows","name","BXDesktopWindow","DispatchCustomEvent","emitToMainWindow","GetMainWindow","DesktopSettingsKey","hideImTab","smoothing","smoothing_v2","telemetry","sliderBindingsStatus","settingsFunctions","getSliderBindingsStatus","result","getCustomSetting","isAirDesignEnabledInDesktop","settings","Extension","getSettings","get","getCameraSmoothingStatus","setCameraSmoothingStatus","status","preparedStatus","setCustomSetting","isTwoWindowMode","IsTwoWindowsMode","setTwoWindowMode","flag","V10","V8","getAutostartStatus","setAutostartStatus","SetProperty","getTelemetryStatus","setTelemetryStatus","value","StoreSettings","defaultValue","QuerySettings","windowFunctions","handlePortalTabActivation","hasActiveTab","hasActivePortalTab","Promise","resolve","activatePortalFirstTab","ActivateFirstTab","HasActiveTab","setTabWithChatPageActive","setActiveTabUrl","location","origin","Path","online","isTabWithChatPageActive","tabsList","getTabsList","some","tab","visible","url","includes","hasTabWithChatPage","BrowserList","isChatWindow","isChatTab","href","isActiveTab","IsActiveTab","showBrowserWindow","ExecuteCommand","setActiveTab","target","SetActiveTab","SetActiveTabUrl","showWindow","activateWindow","DesktopApi","hideWindow","closeWindow","hideLoader","Dom","remove","document","getElementById","reloadWindow","Login","findWindow","find","options","targetUrl","URL","host","setTimeout","skipNativeBrowser","Utils","browser","openLink","createTab","openInBrowser","OpenInBrowser","path","preparedPath","create","tag","attrs","CreateTab","createImTab","CreateImTab","createWindow","callback","GetWindow","createTopmostWindow","htmlContent","setWindowPosition","rawParams","preparedParams","Object","entries","key","preparedKey","toUpperCase","slice","prepareHtml","html","js","plainHtml","isDomNode","outerHTML","plainJs","ready","isStringFilled","head","replaceAll","setWindowSize","width","height","Width","Height","setMinimumWindowSize","iconFunctions","setCounter","counter","important","preparedCounter","toString","SetIconBadge","SetTabBadge","setBrowserIconBadge","SetBrowserIconBadge","setIconStatus","SetIconStatus","setOfflineIcon","flashIcon","FlashIcon","commonFunctions","prepareResourcePath","source","legacyFunctions","changeTab","tabId","v2","BX","desktop","notificationFunctions","removeNativeNotifications","NotificationRemoveAll","loggerFunctions","writeToLogFile","filename","text","console","error","textPrepared","isString","isNumber","JSON","stringify","Log","printWelcomePrompt","join","osName","isMac","isLinux","promptMessage","Loc","getMessage","Logger","setLogInfo","logFunction","LogInfo","callMaskFunctions","getCallMask","setCallMaskLoadHandlers","setCallMask","maskUrl","backgroundUrl","Set3dAvatar","callBackgroundFunctions","isBlur","toLowerCase","getLimitationBackground","limitation","message","defaultLimitation","enable","limitationType","currentLimitation","articleCode","openArticle","infoHelper","UI","InfoHelper","isOpen","close","show","handleLimitationBackground","limitationObj","handle","getBackgroundImage","setCallBackground","promise","currentSource","currentId","accountFunctions","openAddAccountTab","AccountAddForm","deleteAccount","login","AccountDelete","connectAccount","protocol","userLang","AccountConnect","disconnectAccount","AccountDisconnect","getAccountList","AccountList","success","logout","Ajax","runAction","RestMethod","imV2DesktopLogout","Logout","terminate","diskFunctions","startDiskSync","BXFileStorage","SyncPause","BaseEvent","compatData","EventEmitter","EventType","onSyncPause","stopDiskSync","debugFunctions","openDeveloperTools","OpenDeveloperTools","openLogsFolder","OpenLogsFolder"],"mappings":"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"}