File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/js/ui/notification-manager/dist/notification-manager.bundle.js.map
Back
{"version":3,"file":"notification-manager.bundle.js","sources":["../src/helpers/uuid.js","../src/notification/notification.js","../src/notification/push-notification.js","../src/pull-handler.js","../src/helpers/desktop.js","../src/helpers/browser.js","../src/notification/notification-event.js","../src/notification/notification-action.js","../src/notification/notification-close-reason.js","../src/providers/base.js","../src/providers/desktop.js","../src/providers/mac.js","../src/providers/windows.js","../src/providers/browser.js","../src/views/browser-notification/browser-notification-action.js","../src/views/browser-notification/browser-notification.js","../src/providers/browser-page.js","../src/notifier.js"],"sourcesContent":["export default class Uuid\n{\n\tstatic getV4(): string\n\t{\n\t\treturn 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\n\t\t\tvar r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\n\t\t\treturn v.toString(16);\n\t\t});\n\t}\n}","import { Type, Loc } from 'main.core';\nimport Uuid from '../helpers/uuid';\n\nimport type { NotificationOptions } from './notification-options';\n\n/**\n * @memberof BX.UI.NotificationManager\n */\nexport default class Notification\n{\n\tstatic SEPARATOR: string = 'u1F9D1';\n\n\tconstructor(options: NotificationOptions)\n\t{\n\t\tthis.setUid(options.id);\n\t\tthis.setCategory(options.category);\n\t\tthis.setTitle(options.title);\n\t\tthis.setText(options.text);\n\t\tthis.setIcon(options.icon);\n\t\tthis.setInputPlaceholderText(options.inputPlaceholderText);\n\t\tthis.createButtons(options.button1Text, options.button2Text);\n\t}\n\n\tstatic encodeIdToUid(id: string): string\n\t{\n\t\treturn id + Notification.SEPARATOR + Uuid.getV4();\n\t}\n\n\tstatic decodeUidToId(uid: string): string\n\t{\n\t\tlet id = uid.split(Notification.SEPARATOR);\n\t\tid.pop();\n\n\t\treturn id.join();\n\t}\n\n\tsetUid(id: string): void\n\t{\n\t\tif (!Type.isStringFilled(id))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: Cannot create a notification without an ID`);\n\t\t}\n\n\t\tthis.uid = Notification.encodeIdToUid(id);\n\t}\n\n\tgetUid(): string\n\t{\n\t\treturn this.uid;\n\t}\n\n\tgetId(): string\n\t{\n\t\treturn Notification.decodeUidToId(this.uid);\n\t}\n\n\tsetCategory(category: string): void\n\t{\n\t\tthis.category = Type.isStringFilled(category) ? category : '';\n\t}\n\n\tgetCategory(): ?string\n\t{\n\t\treturn this.category;\n\t}\n\n\tsetTitle(title: string): void\n\t{\n\t\tthis.title = Type.isStringFilled(title) ? title : '';\n\t}\n\n\tgetTitle(): ?string\n\t{\n\t\treturn this.title;\n\t}\n\n\tsetText(text: string): void\n\t{\n\t\tthis.text = Type.isStringFilled(text) ? text : '';\n\t}\n\n\tgetText(): ?string\n\t{\n\t\treturn this.text;\n\t}\n\n\tsetIcon(icon: string): void\n\t{\n\t\tthis.icon = Type.isStringFilled(icon) ? icon : '';\n\t}\n\n\tgetIcon(): ?string\n\t{\n\t\treturn this.icon;\n\t}\n\n\tsetInputPlaceholderText(inputPlaceholderText: string): void\n\t{\n\t\tif (Type.isString(inputPlaceholderText))\n\t\t{\n\t\t\tthis.inputPlaceholderText = inputPlaceholderText;\n\t\t}\n\t}\n\n\tgetInputPlaceholderText(): ?string\n\t{\n\t\treturn this.inputPlaceholderText;\n\t}\n\n\tcreateButtons(button1Text, button2Text)\n\t{\n\t\tif (this.getInputPlaceholderText())\n\t\t{\n\t\t\tthis.setButton1Text(Loc.getMessage('UI_NOTIFICATION_MANAGER_REPLY'));\n\t\t\tthis.setButton2Text(Loc.getMessage('UI_NOTIFICATION_MANAGER_CLOSE'));\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.setButton1Text(button1Text);\n\t\t\tthis.setButton2Text(button2Text);\n\t\t}\n\t}\n\n\tsetButton1Text(button1Text: string): void\n\t{\n\t\tif (Type.isStringFilled(button1Text))\n\t\t{\n\t\t\tthis.button1Text = button1Text;\n\t\t}\n\t}\n\n\tgetButton1Text(): ?string\n\t{\n\t\treturn this.button1Text;\n\t}\n\n\tsetButton2Text(button2Text: string): void\n\t{\n\t\tif (Type.isStringFilled(button2Text))\n\t\t{\n\t\t\tthis.button2Text = button2Text;\n\t\t}\n\t}\n\n\tgetButton2Text(): ?string\n\t{\n\t\treturn this.button2Text;\n\t}\n}\n","import { Type } from 'main.core';\n\nimport Notification from './notification';\n\nexport default class PushNotification extends Notification\n{\n\tsetUid(id: string): void\n\t{\n\t\tif (!Type.isStringFilled(id))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: Cannot create a notification without an ID`);\n\t\t}\n\n\t\tthis.uid = id;\n\t}\n}","import { Notifier } from './notifier';\nimport PushNotification from './notification/push-notification';\n\nimport type { NotificationOptions } from './notification/notification-options';\n\nexport default class PullHandler\n{\n\tgetModuleId()\n\t{\n\t\treturn 'ui';\n\t}\n\n\thandleNotify(params, extra, command)\n\t{\n\t\tconst notification = params.notification;\n\t\tif (!notification)\n\t\t{\n\t\t\tthrow new Error('NotificationManager: Incorrect notification format');\n\t\t}\n\n\t\tconst notificationOptions: NotificationOptions = notification;\n\n\t\tconst pushNotification = new PushNotification(notificationOptions);\n\n\t\tNotifier.sendNotification(pushNotification);\n\t}\n}","export default class DesktopHelper\n{\n\tstatic isSupportedDesktopApp(): boolean\n\t{\n\t\treturn DesktopHelper.isBitrixDesktop() && DesktopHelper.geApiVersion() >= 67;\n\t}\n\n\tstatic isBitrixDesktop(): boolean\n\t{\n\t\treturn navigator.userAgent.toLowerCase().includes('bitrixdesktop');\n\t}\n\n\tstatic geApiVersion(): number\n\t{\n\t\tif (typeof BXDesktopSystem === 'undefined')\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn Number(BXDesktopSystem.GetProperty('versionParts')[3]);\n\t}\n\n\tstatic isMainTab(): boolean\n\t{\n\t\tif (typeof BXDesktopSystem === 'undefined')\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn typeof BX.desktop !== 'undefined' && BX.desktop.apiReady;\n\t}\n\n\tstatic isMac(): boolean\n\t{\n\t\treturn navigator.userAgent.toLowerCase().includes('macintosh');\n\t}\n\n\tstatic isLinux(): boolean\n\t{\n\t\treturn navigator.userAgent.toLowerCase().includes('linux');\n\t}\n\n\tstatic isWindows(): boolean\n\t{\n\t\treturn (\n\t\t\tnavigator.userAgent.toLowerCase().includes('windows')\n\t\t\t|| (\n\t\t\t\t!DesktopHelper.isMac()\n\t\t\t\t&& !DesktopHelper.isLinux()\n\t\t\t)\n\t\t);\n\t}\n\n\tstatic isRunningOnAnyDevice(): boolean\n\t{\n\t\treturn BXIM && BXIM.desktopStatus;\n\t}\n\n\tstatic checkRunningOnThisDevice(): Promise\n\t{\n\t\treturn new Promise(resolve => {\n\t\t\tconst turnedOnCallback: Function = () => {\n\t\t\t\tresolve(true);\n\t\t\t};\n\n\t\t\tconst turnedOffCallback: Function = () => {\n\t\t\t\tresolve(false);\n\t\t\t};\n\n\t\t\tBX.desktopUtils.runningCheck(turnedOnCallback, turnedOffCallback);\n\t\t});\n\t}\n}\n","export default class BrowserHelper\n{\n\tstatic isSupportedBrowser(): boolean\n\t{\n\t\treturn BrowserHelper.isChrome() || BrowserHelper.isFirefox() || BrowserHelper.isSafari();\n\t}\n\n\tstatic isNativeNotificationAllowed(): boolean\n\t{\n\t\treturn (\n\t\t\twindow.Notification\n\t\t\t&& window.Notification.permission\n\t\t\t&& window.Notification.permission.toLowerCase() === 'granted'\n\t\t);\n\t}\n\n\tstatic isSafari(): boolean\n\t{\n\t\tif (BrowserHelper.isChrome())\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tif (!navigator.userAgent.toLowerCase().includes('safari'))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn !BrowserHelper.isSafariBased();\n\t}\n\n\tstatic isSafariBased(): boolean\n\t{\n\t\tif (!navigator.userAgent.toLowerCase().includes('applewebkit'))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn (\n\t\t\tnavigator.userAgent.toLowerCase().includes('yabrowser')\n\t\t\t|| navigator.userAgent.toLowerCase().includes('yaapp_ios_browser')\n\t\t\t|| navigator.userAgent.toLowerCase().includes('crios')\n\t\t);\n\t}\n\n\tstatic isChrome(): boolean\n\t{\n\t\treturn navigator.userAgent.toLowerCase().includes('chrome');\n\t}\n\n\tstatic isFirefox(): boolean\n\t{\n\t\treturn navigator.userAgent.toLowerCase().includes('firefox');\n\t}\n}\n","import { BaseEvent } from 'main.core.events';\n\nexport default class NotificationEvent extends BaseEvent\n{\n\tstatic CLICK: string = 'click';\n\tstatic ACTION: string = 'action';\n\tstatic CLOSE: string = 'close';\n\n\tstatic getTypes(): Array<string>\n\t{\n\t\treturn [\n\t\t\tNotificationEvent.CLICK,\n\t\t\tNotificationEvent.ACTION,\n\t\t\tNotificationEvent.CLOSE,\n\t\t];\n\t}\n\n\tstatic isSupported(eventType: string): boolean\n\t{\n\t\treturn NotificationEvent.getTypes().includes(eventType);\n\t}\n}\n","export default class NotificationAction\n{\n\tstatic BUTTON_1: string = 'button_1';\n\tstatic BUTTON_2: string = 'button_2';\n\tstatic USER_INPUT: string = 'user_input';\n\n\tstatic getTypes(): Array<string>\n\t{\n\t\treturn [\n\t\t\tNotificationAction.BUTTON_1,\n\t\t\tNotificationAction.BUTTON_2,\n\t\t\tNotificationAction.USER_INPUT,\n\t\t];\n\t}\n\n\tstatic isSupported(action: string): boolean\n\t{\n\t\treturn NotificationAction.getTypes().includes(action);\n\t}\n}\n","export default class NotificationCloseReason\n{\n\tstatic CLOSED_BY_USER: string = 'closed_by_user';\n\tstatic EXPIRED: string = 'expired';\n\n\tstatic getTypes(): Array<string>\n\t{\n\t\treturn [\n\t\t\tNotificationCloseReason.CLOSED_BY_USER,\n\t\t\tNotificationCloseReason.EXPIRED,\n\t\t];\n\t}\n\n\tstatic isSupported(closeReason: string): boolean\n\t{\n\t\treturn NotificationCloseReason.getTypes().includes(closeReason);\n\t}\n}\n","import { Type } from 'main.core';\nimport { EventEmitter } from 'main.core.events';\nimport Notification from '../notification/notification';\nimport NotificationEvent from '../notification/notification-event';\nimport NotificationAction from '../notification/notification-action';\nimport NotificationCloseReason from '../notification/notification-close-reason';\n\nimport type { ProviderOptions } from './provider-options';\n\nexport default class BaseProvider extends EventEmitter\n{\n\tstatic NOTIFICATION_LIFETIME = 14400000; //The lifetime of the notification is 4 hours\n\n\tconstructor(options: ?ProviderOptions = {})\n\t{\n\t\tsuper();\n\n\t\tif (Type.isStringFilled(options.eventNamespace))\n\t\t{\n\t\t\tthis.setEventNamespace(options.eventNamespace);\n\t\t}\n\t}\n\n\tconvertNotificationToNative(notification: Notification): any\n\t{\n\t\tthrow new Error('convertNotificationToNative() method must be implemented.');\n\t}\n\n\tsendNotification(nativeNotification: any): void\n\t{\n\t\tthrow new Error('sendNotification() method must be implemented.');\n\t}\n\n\tcanSendNotification(notification: Notification): boolean\n\t{\n\t\treturn true;\n\t}\n\n\tnotify(notification: Notification): void\n\t{\n\t\tif (!this.canSendNotification(notification))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst nativeNotification = this.convertNotificationToNative(notification);\n\n\t\tthis.sendNotification(nativeNotification);\n\t}\n\n\tnotificationClick(uid: string = ''): void\n\t{\n\t\tconst eventOptions = {\n\t\t\tdata: {\n\t\t\t\tid: Notification.decodeUidToId(uid),\n\t\t\t},\n\t\t};\n\n\t\tthis.emit(NotificationEvent.CLICK, new NotificationEvent(eventOptions));\n\t}\n\n\tnotificationAction(uid: string = '', action: string = '', userInput: ?string = null): void\n\t{\n\t\tif (!NotificationAction.isSupported(action))\n\t\t{\n\t\t\tconsole.warn(`NotificationManager: Unknown notification action \"${action}\".`);\n\t\t}\n\n\t\tconst eventOptions = {\n\t\t\tdata: {\n\t\t\t\tid: Notification.decodeUidToId(uid),\n\t\t\t\taction,\n\t\t\t},\n\t\t};\n\n\t\tif (userInput)\n\t\t{\n\t\t\teventOptions.data.userInput = userInput;\n\t\t}\n\n\t\tthis.emit(NotificationEvent.ACTION, new NotificationEvent(eventOptions));\n\t}\n\n\tnotificationClose(uid: string = '', reason: string = ''): void\n\t{\n\t\tif (!NotificationCloseReason.isSupported(reason))\n\t\t{\n\t\t\tconsole.warn(`NotificationManager: Unknown notification close reason \"${reason}\".`);\n\t\t}\n\n\t\tconst eventOptions = {\n\t\t\tdata: {\n\t\t\t\tid: Notification.decodeUidToId(uid),\n\t\t\t\treason,\n\t\t\t},\n\t\t};\n\n\t\tthis.emit(NotificationEvent.CLOSE, new NotificationEvent(eventOptions));\n\t}\n}\n","import BaseProvider from './base';\nimport DesktopHelper from '../helpers/desktop';\nimport Notification from '../notification/notification';\nimport PushNotification from '../notification/push-notification';\n\nimport type { ProviderOptions } from './provider-options';\n\n\nexport default class DesktopProvider extends BaseProvider\n{\n\tconstructor(options: ?ProviderOptions = {})\n\t{\n\t\tsuper(options);\n\n\t\tif (this.getEventNamespace())\n\t\t{\n\t\t\tthis.registerEvents();\n\t\t}\n\t}\n\n\tconvertNotificationToNative(notification: Notification): string\n\t{\n\t\tthrow new Error('convertNotificationToNative() method must be implemented.');\n\t}\n\n\tcanSendNotification(notification: Notification): boolean\n\t{\n\t\t//Desktop push & pull notifications, unlike regular ones, can be sent from only one tab to avoid duplication.\n\t\treturn DesktopHelper.isMainTab() || !(notification instanceof PushNotification);\n\t}\n\n\tsendNotification(notificationUid: string): void\n\t{\n\t\tBXDesktopSystem.NotificationShow(notificationUid);\n\t}\n\n\tregisterEvents(): void\n\t{\n\t\twindow.addEventListener('BXNotificationClick', (event) => this.onNotificationClick(event));\n\t\twindow.addEventListener('BXNotificationAction', (event) => this.onNotificationAction(event));\n\t\twindow.addEventListener('BXNotificationDismissed', (event) => this.onNotificationClose(event));\n\t}\n\n\tonNotificationClick(event): void\n\t{\n\t\tconst [id] = event.detail;\n\n\t\tthis.notificationClick(id);\n\t}\n\n\tonNotificationAction(event): void\n\t{\n\t\tconst [id, action, userInput] = event.detail;\n\n\t\tthis.notificationAction(id, action, userInput);\n\t}\n\n\tonNotificationClose(event): void\n\t{\n\t\tconst [id, reason] = event.detail;\n\n\t\tthis.notificationClose(id, reason);\n\t}\n}\n","import { Type, Loc } from 'main.core';\nimport BaseProvider from './base';\nimport DesktopProvider from './desktop';\nimport Notification from '../notification/notification';\nimport NotificationAction from '../notification/notification-action';\n\nexport default class MacProvider extends DesktopProvider\n{\n\tconvertNotificationToNative(notification: Notification): string\n\t{\n\t\tif (!Type.isStringFilled(notification.getId()))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: You cannot send a notification without an ID.`);\n\t\t}\n\n\t\tconst notificationUid = notification.getUid();\n\n\t\tBXDesktopSystem.NotificationCreate(notificationUid);\n\n\t\tif (Type.isStringFilled(notification.getTitle()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, notification.getTitle());\n\t\t}\n\n\t\tif (Type.isStringFilled(notification.getText()))\n\t\t{\n\t\t\t//this.addTextToNotification(notificationUid, notification.getText());\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, notification.getText());\n\t\t}\n\n\t\tif (Type.isStringFilled(notification.getIcon()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddImage(notificationUid, notification.getIcon());\n\t\t}\n\n\t\tif (\n\t\t\tnotification.getInputPlaceholderText()\n\t\t\t&& Type.isString(notification.getInputPlaceholderText())\n\t\t)\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddInput(\n\t\t\t\tnotificationUid,\n\t\t\t\tnotification.getInputPlaceholderText(),\n\t\t\t\tNotificationAction.USER_INPUT\n\t\t\t);\n\t\t}\n\n\t\tif (notification.getButton1Text() && Type.isStringFilled(notification.getButton1Text()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddAction(\n\t\t\t\tnotificationUid,\n\t\t\t\tnotification.getButton1Text(),\n\t\t\t\tNotificationAction.BUTTON_1\n\t\t\t);\n\t\t}\n\n\t\tif (notification.getButton2Text() && Type.isStringFilled(notification.getButton2Text()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddAction(\n\t\t\t\tnotificationUid,\n\t\t\t\tLoc.getMessage('UI_NOTIFICATION_MANAGER_CLOSE'),\n\t\t\t\tNotificationAction.BUTTON_2\n\t\t\t);\n\t\t}\n\n\t\tBXDesktopSystem.NotificationSetExpiration(notificationUid, BaseProvider.NOTIFICATION_LIFETIME);\n\n\t\treturn notificationUid;\n\t}\n\n\taddTextToNotification(notificationUid: string, text: string): void\n\t{\n\t\tif (text.trim() === '')\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst languageSafeRowLength = 44;\n\n\t\tif (text.length <= languageSafeRowLength)\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, text);\n\t\t\treturn;\n\t\t}\n\n\t\tconst space = ' ';\n\n\t\tlet firstRow = '';\n\t\tlet words: Array<string> = text.split(space);\n\n\t\twhile (words.length > 0)\n\t\t{\n\t\t\tif (firstRow.length + words[0].length + 1 > languageSafeRowLength)\n\t\t\t{\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tfirstRow += words.shift() + space;\n\t\t}\n\n\t\tBXDesktopSystem.NotificationAddText(notificationUid, firstRow);\n\n\t\tlet secondRow = words.join(space);\n\t\tif (secondRow !== '')\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, secondRow);\n\t\t}\n\t}\n}\n","import { Type } from 'main.core';\nimport BaseProvider from './base';\nimport DesktopProvider from './desktop';\nimport Notification from '../notification/notification';\nimport NotificationAction from '../notification/notification-action';\n\nexport default class WindowsProvider extends DesktopProvider\n{\n\tconvertNotificationToNative(notification: Notification): string\n\t{\n\t\tif (!Type.isStringFilled(notification.getId()))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: You cannot send a notification without an ID.`);\n\t\t}\n\n\t\tconst notificationUid = notification.getUid();\n\n\t\tBXDesktopSystem.NotificationCreate(notificationUid);\n\n\t\tif (Type.isStringFilled(notification.getTitle()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, notification.getTitle());\n\t\t}\n\n\t\tif (Type.isStringFilled(notification.getText()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddText(notificationUid, notification.getText());\n\t\t}\n\n\t\tif (Type.isStringFilled(notification.getIcon()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddImage(notificationUid, notification.getIcon());\n\t\t}\n\n\t\tif (\n\t\t\tnotification.getInputPlaceholderText()\n\t\t\t&& Type.isString(notification.getInputPlaceholderText())\n\t\t)\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddInput(\n\t\t\t\tnotificationUid,\n\t\t\t\tnotification.getInputPlaceholderText(),\n\t\t\t\tNotificationAction.USER_INPUT\n\t\t\t);\n\t\t}\n\n\t\tif (notification.getButton1Text() && Type.isStringFilled(notification.getButton1Text()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddAction(\n\t\t\t\tnotificationUid,\n\t\t\t\tnotification.getButton1Text(),\n\t\t\t\tNotificationAction.BUTTON_1\n\t\t\t);\n\t\t}\n\n\t\tif (notification.getButton2Text() && Type.isStringFilled(notification.getButton2Text()))\n\t\t{\n\t\t\tBXDesktopSystem.NotificationAddAction(\n\t\t\t\tnotificationUid,\n\t\t\t\tnotification.getButton2Text(),\n\t\t\t\tNotificationAction.BUTTON_2\n\t\t\t);\n\t\t}\n\n\t\tBXDesktopSystem.NotificationSetExpiration(notificationUid, BaseProvider.NOTIFICATION_LIFETIME);\n\n\t\treturn notificationUid;\n\t}\n}\n","import { Type } from 'main.core';\nimport BaseProvider from './base';\nimport Notification from '../notification/notification';\nimport DesktopHelper from '../helpers/desktop';\n\ntype BrowserNotificationOptions = {\n\ttitle: string,\n\toptions?: {\n\t\tbody?: string,\n\t\ttag?: string,\n\t\ticon?: string,\n\t},\n\tonclick: Function,\n};\n\nexport default class BrowserProvider extends BaseProvider\n{\n\tconvertNotificationToNative(notification: Notification): BrowserNotificationOptions\n\t{\n\t\tconst notificationOptions: BrowserNotificationOptions = {\n\t\t\ttitle: notification.getTitle() ? notification.getTitle() : '',\n\t\t\toptions: {\n\t\t\t\tbody: '',\n\t\t\t\ttag: notification.getUid(),\n\t\t\t\trenotify: true,\n\t\t\t},\n\t\t\tonclick: (event: Event) => {\n\t\t\t\tevent.preventDefault();\n\t\t\t\twindow.focus();\n\n\t\t\t\tthis.notificationClick(notification.getUid());\n\t\t\t},\n\t\t};\n\n\t\tif (Type.isStringFilled(notification.getIcon()))\n\t\t{\n\t\t\tnotificationOptions.options.icon = notification.getIcon();\n\t\t}\n\n\t\tif (Type.isStringFilled(notification.getText()))\n\t\t{\n\t\t\tnotificationOptions.options.body = notification.getText();\n\t\t}\n\n\t\treturn notificationOptions;\n\t}\n\n\tsendNotification(notificationOptions: BrowserNotificationOptions): void\n\t{\n\t\tif (!DesktopHelper.isRunningOnAnyDevice())\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tDesktopHelper.checkRunningOnThisDevice()\n\t\t\t.then(isRunningOnThisDevice => {\n\t\t\t\tif (isRunningOnThisDevice)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst notification = new window.Notification(notificationOptions.title, notificationOptions.options);\n\n\t\t\t\tnotification.onclick = notificationOptions.onclick;\n\t\t\t});\n\t}\n}\n","import { Type } from 'main.core';\nimport { UI } from 'ui.notification';\nimport { Button, ButtonOptions } from 'ui.buttons';\n\nexport default class BrowserNotificationAction extends UI.Notification.Action\n{\n\tstatic BASE_BUTTON_CLASS = 'ui-notification-manager-browser-button';\n\tstatic TYPE_ACCEPT: string = 'accept';\n\n\tconstructor(balloon, options)\n\t{\n\t\tsuper(balloon, options);\n\n\t\tthis.setButtonClass(options.buttonType);\n\t}\n\n\tgetContainer(): HTMLElement\n\t{\n\t\tif (this.container !== null)\n\t\t{\n\t\t\treturn this.container;\n\t\t}\n\n\t\tlet buttonOptions: ButtonOptions = {\n\t\t\ttext: this.getTitle(),\n\t\t}\n\n\t\tif (Type.isFunction(this.events.click))\n\t\t{\n\t\t\tbuttonOptions.onclick = (button: Button, event: Event) => {\n\t\t\t\tevent.stopPropagation();\n\n\t\t\t\tthis.events.click(button, event);\n\t\t\t}\n\t\t}\n\n\t\tconst button = new Button(buttonOptions);\n\n\t\tbutton.removeClass('ui-btn');\n\t\tbutton.addClass(BrowserNotificationAction.BASE_BUTTON_CLASS);\n\t\tbutton.addClass(this.getButtonClass());\n\n\t\tthis.container = button.getContainer();\n\n\t\treturn this.container;\n\t}\n\n\tstatic getButtonTypes()\n\t{\n\t\treturn [\n\t\t\tBrowserNotificationAction.TYPE_ACCEPT,\n\t\t];\n\t}\n\n\tstatic isSupportedButtonType(buttonType: string)\n\t{\n\t\treturn BrowserNotificationAction.getButtonTypes().includes(buttonType);\n\t}\n\n\tsetButtonClass(buttonType: ?string)\n\t{\n\t\tthis.buttonClass =\n\t\t\tBrowserNotificationAction.isSupportedButtonType(buttonType)\n\t\t\t\t? BrowserNotificationAction.BASE_BUTTON_CLASS + '-' + buttonType\n\t\t\t\t: ''\n\t\t;\n\t}\n\n\tgetButtonClass()\n\t{\n\t\treturn this.buttonClass;\n\t}\n}\n","import {Type, Tag, Loc, Dom, Text} from 'main.core';\nimport {UI} from 'ui.notification';\nimport BrowserNotificationAction from './browser-notification-action';\n\nimport 'ui.design-tokens';\nimport './browser-notification.css';\n\nexport default class BrowserNotification extends UI.Notification.Balloon\n{\n\tstatic KEY_CODE = {\n\t\tENTER: 13,\n\t\tESC: 27,\n\t};\n\n\tconstructor(options: UI.Notification.BalloonOptions)\n\t{\n\t\tsuper(options);\n\n\t\tthis.userInputContainerNode = null;\n\t\tthis.userInputNode = null;\n\t}\n\n\tsetActions(actions)\n\t{\n\t\tthis.actions = [];\n\n\t\tif (Type.isArray(actions))\n\t\t{\n\t\t\tactions.forEach(action => this.actions.push(new BrowserNotificationAction(this, action)));\n\t\t}\n\t}\n\n\tgetContainer(): HTMLElement\n\t{\n\t\tif (this.container !== null)\n\t\t{\n\t\t\treturn this.container;\n\t\t}\n\n\t\tconst onMouseEnter = () => this.handleMouseEnter();\n\t\tconst onMouseLeave = () => this.handleMouseLeave();\n\n\t\tthis.container = Tag.render`\n\t\t\t<div\n\t\t\t\tclass=\"ui-notification-manager-browser-balloon\"\n\t\t\t\tonmouseenter=\"${onMouseEnter}\"\n\t\t\t\tonmouseleave=\"${onMouseLeave}\"\n\t\t\t>\n\t\t\t\t${this.render()}\n\t\t\t</div>\n\t\t`;\n\n\t\treturn this.container;\n\t}\n\n\trender(): HTMLElement\n\t{\n\t\tthis.animationClassName = \"ui-notification-manager-browser-balloon-animate\";\n\n\t\tconst contentWidth = Type.isNumber(this.getWidth()) ? this.getWidth() + 'px' : this.getWidth();\n\n\t\treturn Tag.render`\n\t\t\t<div\n\t\t\t\tclass=\"ui-notification-manager-browser-content\"\n\t\t\t\tstyle=\"width: ${contentWidth}\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclass=\"ui-notification-manager-browser-message\"\n\t\t\t\t\tonclick=\"${this.handleContentClick.bind(this)}\"\n\t\t\t\t>\n\t\t\t\t\t${this.getIconNode()}\n\t\t\t\t\t<div class=\"ui-notification-manager-browser-column\">\n\t\t\t\t\t\t${this.getTitleNode()}\n\t\t\t\t\t\t${this.getTextNode()}\n\t\t\t\t\t\t${this.getUserInputContainerNode()}\n\t\t\t\t\t\t${this.getActionsNode()}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t${this.getCloseButtonNode()}\n\t\t\t</div>\n\t\t`;\n\t}\n\n\tgetTitleNode(): HTMLElement | string\n\t{\n\t\tif (!Type.isStringFilled(this.getData().title))\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\tconst title = Dom.create({\n\t\t\ttag: 'span',\n\t\t\tattrs: {className: 'ui-notification-manager-browser-title'},\n\t\t\ttext: this.getData().title\n\t\t}).outerHTML;\n\n\t\treturn Tag.render`<div class=\"ui-notification-manager-browser-title\">${title}<div>`;\n\t}\n\n\tgetTextNode(): HTMLElement | string\n\t{\n\t\tif (!Type.isStringFilled(this.getData().text))\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\treturn Dom.create({\n\t\t\ttag: 'div',\n\t\t\tattrs: {className: 'ui-notification-manager-browser-text'},\n\t\t\ttext: this.getData().text,\n\t\t});\n\t}\n\n\tgetIconNode(): HTMLElement | string\n\t{\n\t\tif (!Type.isStringFilled(this.getData().icon))\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\treturn Dom.create({\n\t\t\ttag: 'div',\n\t\t\tclassName: 'ui-notification-manager-browser-column',\n\t\t\tchildren: [\n\t\t\t\tDom.create({\n\t\t\t\t\ttag: 'img',\n\t\t\t\t\tstyle: {height: '44px', width: '44px'},\n\t\t\t\t\tattrs: {\n\t\t\t\t\t\tclassName: 'ui-notification-manager-browser-icon',\n\t\t\t\t\t\tsrc: this.getData().icon,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\t}\n\n\tgetActionsNode(): HTMLElement | string\n\t{\n\t\tconst actions = this.getActions().map(action => action.getContainer());\n\t\tif (!Type.isArrayFilled(actions))\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\treturn Tag.render`\n\t\t\t<div class=\"ui-notification-manager-browser-actions\">\n\t\t\t\t${actions}\n\t\t\t</div>\n\t\t`;\n\t}\n\n\tgetUserInputContainerNode(): HTMLElement | string\n\t{\n\t\tif (!Type.isString(this.getData().inputPlaceholderText))\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\tconst onInputReplyClick = (event: Event) => event.stopPropagation();\n\n\t\tconst id = Text.encode(this.getId());\n\t\tconst placeholderText = Text.encode(this.getData().inputPlaceholderText);\n\n\t\treturn Tag.render`\n\t\t\t<div class=\"ui-notification-manager-browser-actions\">\n\t\t\t\t<div class=\"ui-notification-manager-browser-column ui-notification-manager-browser-column-wide\">\n\t\t\t\t\t<div class=\"ui-notification-manager-browser-row\">\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\tclass=\"ui-notification-manager-browser-button\"\n\t\t\t\t\t\t\tid=\"ui-notification-manager-browser-reply-toggle-${id}\"\n\t\t\t\t\t\t\tonclick=\"${this.toggleUserInputContainerNode.bind(this)}\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span class=\"ui-btn-text\">${Loc.getMessage('UI_NOTIFICATION_MANAGER_REPLY')}</span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass=\"ui-notification-manager-browser-row ui-notification-manager-browser-row-reply\"\n\t\t\t\t\t\tid=\"ui-notification-manager-browser-reply-container-${id}\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div class=\"ui-notification-manager-browser-reply-wrapper\">\n\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\tclass=\"ui-notification-manager-browser-input-reply\"\n\t\t\t\t\t\t\t\tplaceholder=\"${placeholderText}\"\n\t\t\t\t\t\t\t\tid=\"ui-notification-manager-browser-reply-${id}\"\n\t\t\t\t\t\t\t\tonkeyup=\"${this.handleUserInputEnter.bind(this)}\"\n\t\t\t\t\t\t\t\tonclick=\"${onInputReplyClick}\"\n\t\t\t\t\t\t\t\tdisabled\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"ui-notification-manager-browser-button-reply\"\n\t\t\t\t\t\t\tonclick=\"${this.handleUserInputClick.bind(this)}\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\t}\n\n\ttoggleUserInputContainerNode(event: Event): void\n\t{\n\t\tevent.stopPropagation();\n\n\t\tconst id = Text.encode(this.getId());\n\n\t\tif (!this.userInputContainerNode)\n\t\t{\n\t\t\tthis.userInputContainerNode =\n\t\t\t\tdocument.getElementById('ui-notification-manager-browser-reply-container-' + id)\n\t\t\t;\n\t\t}\n\n\t\tif (!this.userInputNode)\n\t\t{\n\t\t\tthis.userInputNode =\n\t\t\t\tdocument.getElementById('ui-notification-manager-browser-reply-' + id)\n\t\t\t;\n\t\t}\n\n\t\tif (!this.replyToggleButton)\n\t\t{\n\t\t\tthis.replyToggleButton =\n\t\t\t\tdocument.getElementById('ui-notification-manager-browser-reply-toggle-' + id)\n\t\t\t;\n\t\t}\n\n\t\tthis.showUserInput = !this.showUserInput;\n\t\tif (this.showUserInput)\n\t\t{\n\t\t\tthis.setAutoHide(false);\n\t\t\tthis.deactivateAutoHide();\n\n\t\t\tthis.replyToggleButton.style.display = 'none';\n\t\t\tthis.userInputContainerNode.classList.add('ui-notification-manager-browser-row-reply-animate');\n\t\t\tthis.userInputNode.disabled = false;\n\t\t\tthis.userInputNode.focus();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.setAutoHide(true);\n\t\t\tthis.activateAutoHide();\n\n\t\t\tthis.replyToggleButton.style.display = 'block';\n\t\t\tthis.userInputContainerNode.classList.remove('ui-notification-manager-browser-row-reply-animate');\n\t\t\tthis.userInputNode.disabled = true;\n\t\t}\n\t}\n\n\tgetCloseButtonNode(): HTMLElement | string\n\t{\n\t\tif (!this.isCloseButtonVisible())\n\t\t{\n\t\t\treturn '';\n\t\t}\n\n\t\treturn Tag.render`\n\t\t\t<div\n\t\t\t\tclass=\"ui-notification-manager-browser-button-close\"\n\t\t\t\tonclick=\"${this.handleCloseBtnClick.bind(this)}\"\n\t\t\t/>\n\t\t`;\n\t}\n\n\thandleCloseBtnClick(event: Event): void\n\t{\n\t\tevent.stopPropagation();\n\n\t\tif (Type.isFunction(this.getData().closedByUserHandler))\n\t\t{\n\t\t\tthis.getData().closedByUserHandler();\n\t\t}\n\n\t\tsuper.handleCloseBtnClick();\n\t}\n\n\thandleContentClick(): void\n\t{\n\t\tif (Type.isFunction(this.getData().clickHandler))\n\t\t{\n\t\t\tthis.getData().clickHandler();\n\t\t}\n\n\t\tthis.close();\n\t}\n\n\thandleUserInputEnter(event: Event): void\n\t{\n\t\tif (!Type.isFunction(this.getData().userInputHandler))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst userInput = event.target.value;\n\n\t\tif (event.keyCode === BrowserNotification.KEY_CODE.ENTER && userInput !== '')\n\t\t{\n\t\t\tthis.getData().userInputHandler(userInput);\n\t\t\tthis.close();\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (event.keyCode === BrowserNotification.KEY_CODE.ESC && userInput === '')\n\t\t{\n\t\t\tif (Type.isFunction(this.getData().closedByUserHandler))\n\t\t\t{\n\t\t\t\tthis.getData().closedByUserHandler();\n\t\t\t}\n\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\thandleUserInputClick(event: Event): void\n\t{\n\t\tevent.stopPropagation();\n\n\t\tif (!Type.isFunction(this.getData().userInputHandler))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst userInput = this.userInputNode.value;\n\n\t\tif (userInput !== '')\n\t\t{\n\t\t\tthis.getData().userInputHandler(userInput);\n\t\t\tthis.close();\n\t\t}\n\t}\n}\n","import { Type } from 'main.core';\nimport { UI } from 'ui.notification';\nimport BaseProvider from './base';\nimport Notification from '../notification/notification';\nimport NotificationAction from '../notification/notification-action';\nimport NotificationCloseReason from '../notification/notification-close-reason';\nimport BrowserNotification from '../views/browser-notification/browser-notification';\nimport BrowserNotificationAction from '../views/browser-notification/browser-notification-action';\n\nexport default class BrowserPageProvider extends BaseProvider\n{\n\tconvertNotificationToNative(notification: Notification): UI.Notification.BalloonOptions\n\t{\n\t\tif (!Type.isStringFilled(notification.getId()))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: You cannot send a notification without an ID.`);\n\t\t}\n\n\t\tconst closedByUserHandler: Function = () => {\n\t\t\tthis.notificationClose(notification.getUid(), NotificationCloseReason.CLOSED_BY_USER);\n\t\t};\n\n\t\tconst clickHandler: Function = () => {\n\t\t\tthis.notificationClick(notification.getUid());\n\t\t};\n\n\t\tconst userInputHandler: Function = (userInput) => {\n\t\t\tthis.notificationAction(notification.getUid(), NotificationAction.BUTTON_1, userInput);\n\t\t};\n\n\t\tconst balloonOptions: UI.Notification.BalloonOptions = {\n\t\t\tid: notification.getUid(),\n\t\t\tcategory: notification.getCategory(),\n\t\t\ttype: BrowserNotification,\n\t\t\tdata: {\n\t\t\t\ttitle: notification.getTitle(),\n\t\t\t\ttext: notification.getText(),\n\t\t\t\ticon: notification.getIcon(),\n\t\t\t\tclosedByUserHandler,\n\t\t\t\tclickHandler,\n\t\t\t\tuserInputHandler,\n\t\t\t},\n\t\t\tactions: [],\n\t\t\twidth: 380,\n\t\t\tposition: 'top-right',\n\t\t\tautoHideDelay: 6000,\n\t\t};\n\n\t\tif (notification.getInputPlaceholderText())\n\t\t{\n\t\t\tballoonOptions.data.inputPlaceholderText = notification.getInputPlaceholderText();\n\n\t\t\treturn balloonOptions;\n\t\t}\n\n\t\tconst showButton1 = notification.getButton1Text() && Type.isStringFilled(notification.getButton1Text());\n\t\tconst showButton2 = notification.getButton2Text() && Type.isStringFilled(notification.getButton2Text());\n\n\t\tif (showButton1)\n\t\t{\n\t\t\tconst action1Options = {\n\t\t\t\tid: NotificationAction.BUTTON_1,\n\t\t\t\ttitle: notification.getButton1Text(),\n\t\t\t\tevents: {\n\t\t\t\t\tclick: (event, balloon, action) => this.onNotificationAction(event, balloon, action),\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tif (showButton2)\n\t\t\t{\n\t\t\t\taction1Options.buttonType = BrowserNotificationAction.TYPE_ACCEPT;\n\t\t\t}\n\n\t\t\tballoonOptions.actions.push(action1Options);\n\t\t}\n\n\t\tif (showButton2)\n\t\t{\n\t\t\tconst action2Options = {\n\t\t\t\tid: NotificationAction.BUTTON_2,\n\t\t\t\ttitle: notification.getButton2Text(),\n\t\t\t\tevents: {\n\t\t\t\t\tclick: (event, balloon, action) => this.onNotificationAction(event, balloon, action),\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tballoonOptions.actions.push(action2Options);\n\t\t}\n\n\t\treturn balloonOptions;\n\t}\n\n\tsendNotification(notification: UI.Notification.BalloonOptions): void\n\t{\n\t\tUI.Notification.Center.notify(notification);\n\t}\n\n\tonNotificationAction(event, balloon, action): void\n\t{\n\t\tballoon.close();\n\t\tthis.notificationAction(balloon.id, action.id);\n\t}\n}\n","import { PULL as Pull } from 'pull.client';\n\nimport PullHandler from './pull-handler';\nimport DesktopHelper from './helpers/desktop';\nimport BrowserHelper from './helpers/browser';\nimport Notification from './notification/notification';\nimport NotificationEvent from './notification/notification-event';\n\nimport BaseProvider from './providers/base';\nimport MacProvider from './providers/mac';\nimport WindowsProvider from './providers/windows';\nimport BrowserProvider from './providers/browser';\nimport BrowserPageProvider from './providers/browser-page';\n\nimport type { NotificationOptions } from './notification/notification-options';\nimport type { ProviderOptions } from './providers/provider-options';\n\n/**\n * @memberof BX.UI.NotificationManager\n */\nclass Notifier\n{\n\tstatic EVENT_NAMESPACE: string = 'BX.UI.NotificationManager';\n\n\tconstructor()\n\t{\n\t\tthis.provider = this.createProvider();\n\n\t\tPull.subscribe(new PullHandler());\n\t}\n\n\tcreateProvider(): BaseProvider\n\t{\n\t\tconst providerOptions: ProviderOptions = {\n\t\t\teventNamespace: Notifier.EVENT_NAMESPACE,\n\t\t};\n\n\t\tif (DesktopHelper.isSupportedDesktopApp() && DesktopHelper.isMac())\n\t\t{\n\t\t\treturn new MacProvider(providerOptions);\n\t\t}\n\n\t\tif (DesktopHelper.isSupportedDesktopApp() && DesktopHelper.isWindows())\n\t\t{\n\t\t\treturn new WindowsProvider(providerOptions);\n\t\t}\n\n\t\tif (BrowserHelper.isSupportedBrowser() && BrowserHelper.isNativeNotificationAllowed())\n\t\t{\n\t\t\treturn new BrowserProvider(providerOptions);\n\t\t}\n\n\t\treturn new BrowserPageProvider(providerOptions);\n\t}\n\n\tnotify(notificationOptions: NotificationOptions): void\n\t{\n\t\tconst notification = new Notification(notificationOptions);\n\n\t\tthis.sendNotification(notification);\n\t}\n\n\tsendNotification(notification: Notification): void\n\t{\n\t\tthis.provider.notify(notification);\n\t}\n\n\tsubscribe(eventName: string, handler: function): void\n\t{\n\t\tif (!NotificationEvent.isSupported(eventName))\n\t\t{\n\t\t\tthrow new Error(`NotificationManager: event \"${eventName}\" is not supported.`);\n\t\t}\n\n\t\tthis.provider.subscribe(eventName, handler);\n\t}\n\n\tnotifyViaDesktopProvider(notification: NotificationOptions)\n\t{\n\t\tif (DesktopHelper.isSupportedDesktopApp() && DesktopHelper.isMac())\n\t\t{\n\t\t\tnew MacProvider().notify(notification);\n\t\t\treturn;\n\t\t}\n\n\t\tif (DesktopHelper.isSupportedDesktopApp() && DesktopHelper.isMac())\n\t\t{\n\t\t\tnew WindowsProvider().notify(notification);\n\t\t\treturn;\n\t\t}\n\n\t\tthrow new Error(`NotificationManager: unsupported environment for sending through a desktop provider.`);\n\t}\n}\n\nconst notifier = new Notifier();\n\nexport {notifier as Notifier};\n"],"names":["Uuid","getV4","replace","c","r","Math","random","v","toString","Notification","constructor","options","setUid","id","setCategory","category","setTitle","title","setText","text","setIcon","icon","setInputPlaceholderText","inputPlaceholderText","createButtons","button1Text","button2Text","encodeIdToUid","SEPARATOR","decodeUidToId","uid","split","pop","join","Type","isStringFilled","Error","getUid","getId","getCategory","getTitle","getText","getIcon","isString","getInputPlaceholderText","setButton1Text","Loc","getMessage","setButton2Text","getButton1Text","getButton2Text","PushNotification","PullHandler","getModuleId","handleNotify","params","extra","command","notification","notificationOptions","pushNotification","Notifier","sendNotification","DesktopHelper","isSupportedDesktopApp","isBitrixDesktop","geApiVersion","navigator","userAgent","toLowerCase","includes","BXDesktopSystem","Number","GetProperty","isMainTab","BX","desktop","apiReady","isMac","isLinux","isWindows","isRunningOnAnyDevice","BXIM","desktopStatus","checkRunningOnThisDevice","Promise","resolve","turnedOnCallback","turnedOffCallback","desktopUtils","runningCheck","BrowserHelper","isSupportedBrowser","isChrome","isFirefox","isSafari","isNativeNotificationAllowed","window","permission","isSafariBased","NotificationEvent","BaseEvent","getTypes","CLICK","ACTION","CLOSE","isSupported","eventType","NotificationAction","BUTTON_1","BUTTON_2","USER_INPUT","action","NotificationCloseReason","CLOSED_BY_USER","EXPIRED","closeReason","BaseProvider","EventEmitter","eventNamespace","setEventNamespace","convertNotificationToNative","nativeNotification","canSendNotification","notify","notificationClick","eventOptions","data","emit","notificationAction","userInput","console","warn","notificationClose","reason","NOTIFICATION_LIFETIME","DesktopProvider","getEventNamespace","registerEvents","notificationUid","NotificationShow","addEventListener","event","onNotificationClick","onNotificationAction","onNotificationClose","detail","MacProvider","NotificationCreate","NotificationAddText","NotificationAddImage","NotificationAddInput","NotificationAddAction","NotificationSetExpiration","addTextToNotification","trim","languageSafeRowLength","length","space","firstRow","words","shift","secondRow","WindowsProvider","BrowserProvider","body","tag","renotify","onclick","preventDefault","focus","then","isRunningOnThisDevice","BrowserNotificationAction","UI","Action","balloon","setButtonClass","buttonType","getContainer","container","buttonOptions","isFunction","events","click","button","stopPropagation","Button","removeClass","addClass","BASE_BUTTON_CLASS","getButtonClass","getButtonTypes","TYPE_ACCEPT","isSupportedButtonType","buttonClass","BrowserNotification","Balloon","userInputContainerNode","userInputNode","setActions","actions","isArray","forEach","push","onMouseEnter","handleMouseEnter","onMouseLeave","handleMouseLeave","Tag","render","animationClassName","contentWidth","isNumber","getWidth","handleContentClick","bind","getIconNode","getTitleNode","getTextNode","getUserInputContainerNode","getActionsNode","getCloseButtonNode","getData","Dom","create","attrs","className","outerHTML","children","style","height","width","src","getActions","map","isArrayFilled","onInputReplyClick","Text","encode","placeholderText","toggleUserInputContainerNode","handleUserInputEnter","handleUserInputClick","document","getElementById","replyToggleButton","showUserInput","setAutoHide","deactivateAutoHide","display","classList","add","disabled","activateAutoHide","remove","isCloseButtonVisible","handleCloseBtnClick","closedByUserHandler","clickHandler","close","userInputHandler","target","value","keyCode","KEY_CODE","ENTER","ESC","BrowserPageProvider","balloonOptions","type","position","autoHideDelay","showButton1","showButton2","action1Options","action2Options","Center","provider","createProvider","Pull","subscribe","providerOptions","EVENT_NAMESPACE","eventName","handler","notifyViaDesktopProvider","notifier"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.27 |
proxy
|
phpinfo
|
Settings