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/mixin/dist/ |
Upload File : |
{"version":3,"file":"registry.bundle.js","sources":["../src/dialog/dialogCore.js","../src/dialog/readMessages.js","../src/dialog/quoteMessage.js","../src/dialog/clickOnCommand.js","../src/dialog/clickOnMention.js","../src/dialog/clickOnUserName.js","../src/dialog/clickOnMessageMenu.js","../src/dialog/clickOnMessageRetry.js","../src/dialog/clickOnUploadCancel.js","../src/dialog/clickOnReadedList.js","../src/dialog/setMessageReaction.js","../src/dialog/openMessageReactionList.js","../src/dialog/clickOnKeyboardButton.js","../src/dialog/clickOnChatTeaser.js","../src/dialog/clickOnDialog.js","../src/textarea/textareaCore.js","../src/textarea/uploadFile.js"],"sourcesContent":["import { Vuex } from \"ui.vue.vuex\";\nimport { BitrixVue } from \"ui.vue\";\nimport { Timer } from \"im.lib.timer\";\nimport {DialogState} from 'im.const';\n\n/**\n * @notice you need to provide this.userId and this.dialogId\n */\nexport const DialogCore = {\n\tdata()\n\t{\n\t\treturn {\n\t\t\tdialogState: DialogState.loading\n\t\t}\n\t},\n\tcreated()\n\t{\n\t\tthis.timer = new Timer();\n\t},\n\tmethods: {\n\t\tgetController()\n\t\t{\n\t\t\treturn this.$Bitrix.Data.get('controller');\n\t\t},\n\t\tgetApplicationController()\n\t\t{\n\t\t\treturn this.getController().application;\n\t\t},\n\t\tgetApplication()\n\t\t{\n\t\t\treturn this.$Bitrix.Application.get();\n\t\t},\n\t\tgetRestClient()\n\t\t{\n\t\t\treturn this.$Bitrix.RestClient.get();\n\t\t},\n\t\tgetCurrentUser()\n\t\t{\n\t\t\treturn this.$store.getters['users/get'](this.application.common.userId, true);\n\t\t},\n\t\texecuteRestAnswer(method, queryResult, extra)\n\t\t{\n\t\t\tthis.getController().executeRestAnswer(method, queryResult, extra);\n\t\t},\n\t\tisUnreadMessagesLoaded()\n\t\t{\n\t\t\tif (!this.dialog)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (this.dialog.lastMessageId <= 0)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (!this.messageCollection || this.messageCollection.length <= 0)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tlet lastElementId = 0;\n\t\t\tfor (let index = this.messageCollection.length-1; index >= 0; index--)\n\t\t\t{\n\t\t\t\tconst lastElement = this.messageCollection[index];\n\t\t\t\tif (typeof lastElement.id === \"number\")\n\t\t\t\t{\n\t\t\t\t\tlastElementId = lastElement.id;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn lastElementId >= this.dialog.lastMessageId;\n\t\t},\n\t\t//methods used in several mixins\n\t\topenDialog()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t},\n\tcomputed: {\n\t\tdialog()\n\t\t{\n\t\t\tconst dialog = this.$store.getters['dialogues/get'](this.application.dialog.dialogId);\n\n\t\t\treturn dialog? dialog: this.$store.getters['dialogues/getBlank']();\n\t\t},\n\t\tchatId()\n\t\t{\n\t\t\t// if (this.dialog)\n\t\t\t// {\n\t\t\t// \treturn this.dialog.chatId;\n\t\t\t// }\n\n\t\t\tif (this.application)\n\t\t\t{\n\t\t\t\treturn this.application.dialog.chatId;\n\t\t\t}\n\t\t},\n\t\t// userId()\n\t\t// {\n\t\t// \treturn this.application.common.userId;\n\t\t// },\n\t\tdiskFolderId()\n\t\t{\n\t\t\treturn this.application.dialog.diskFolderId;\n\t\t},\n\t\tmessageCollection()\n\t\t{\n\t\t\treturn this.$store.getters['messages/get'](this.application.dialog.chatId);\n\t\t},\n\t\tisDialogShowingMessages()\n\t\t{\n\t\t\tconst messagesNotEmpty = this.messageCollection && this.messageCollection.length > 0;\n\t\t\tif (messagesNotEmpty)\n\t\t\t{\n\t\t\t\tthis.dialogState = DialogState.show;\n\t\t\t}\n\t\t\telse if (this.dialog && this.dialog.init)\n\t\t\t{\n\t\t\t\tthis.dialogState = DialogState.empty;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.dialogState = DialogState.loading;\n\t\t\t}\n\n\t\t\treturn messagesNotEmpty;\n\t\t},\n\t\tisDarkBackground()\n\t\t{\n\t\t\treturn this.application.options.darkBackground;\n\t\t},\n\t\t...Vuex.mapState({\n\t\t\tapplication: state => state.application,\n\t\t}),\n\t\tlocalize()\n\t\t{\n\t\t\treturn BitrixVue.getFilteredPhrases(['IM_DIALOG_', 'IM_UTILS_', 'IM_MESSENGER_DIALOG_', 'IM_QUOTE_'], this);\n\t\t},\n\t}\n};","import { Logger } from \"im.lib.logger\";\nimport { RestMethod } from \"im.const\";\n\nimport { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogReadMessages = {\n\tdata()\n\t{\n\t\treturn {\n\t\t\tlastMessageToRead: null,\n\t\t\tmessagesToRead: []\n\t\t}\n\t},\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.readMessage, this.onReadMessage);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.readMessage, this.onReadMessage);\n\t},\n\tmethods: {\n\t\tonReadMessage({data: event})\n\t\t{\n\t\t\tthis.readMessage(event.id)\n\t\t\t\t.then(() => Logger.log('Read message complete'))\n\t\t\t\t.catch(() => Logger.error('Read message failed'));\n\t\t},\n\t\treadMessage(messageId = null, force = false, skipAjax = false)\n\t\t{\n\t\t\tif (messageId)\n\t\t\t{\n\t\t\t\tthis.messagesToRead.push(parseInt(messageId));\n\t\t\t}\n\n\t\t\tthis.timer.stop('readMessage', this.chatId, true);\n\t\t\tthis.timer.stop('readMessageServer', this.chatId, true);\n\n\t\t\tif (force)\n\t\t\t{\n\t\t\t\treturn this.readMessageRequest(skipAjax);\n\t\t\t}\n\n\t\t\treturn new Promise((resolve, reject) => {\n\t\t\t\tthis.timer.start('readMessage', this.chatId, .1, () => {\n\t\t\t\t\tthis.readMessageRequest(skipAjax).then(result => resolve(result)).catch(reject)\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\treadMessageRequest(skipAjax = false)\n\t\t{\n\t\t\treturn new Promise((resolve, reject) =>\n\t\t\t{\n\t\t\t\t//get max message id from queue\n\t\t\t\tfor (const messageId of this.messagesToRead)\n\t\t\t\t{\n\t\t\t\t\tif (!this.lastMessageToRead)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.lastMessageToRead = messageId;\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.lastMessageToRead < messageId)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.lastMessageToRead = messageId;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.messagesToRead = [];\n\n\t\t\t\tconst lastId = this.lastMessageToRead || 0;\n\t\t\t\tif (lastId <= 0)\n\t\t\t\t{\n\t\t\t\t\treturn resolve({lastId: 0});\n\t\t\t\t}\n\n\t\t\t\t//read messages on front\n\t\t\t\tthis.$store.dispatch('messages/readMessages', {\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\treadId: lastId\n\t\t\t\t}).then(result =>\n\t\t\t\t{\n\t\t\t\t\t//decrease counter\n\t\t\t\t\treturn this.$store.dispatch('dialogues/decreaseCounter', {\n\t\t\t\t\t\tdialogId: this.dialogId,\n\t\t\t\t\t\tcount: result.count\n\t\t\t\t\t});\n\t\t\t\t}).then(() => {\n\t\t\t\t\tif (skipAjax)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn resolve({lastId});\n\t\t\t\t\t}\n\n\t\t\t\t\t//read messages on server in .5s\n\t\t\t\t\tthis.timer.start('readMessageServer', this.chatId, .5, () => {\n\t\t\t\t\t\tthis.getRestClient().callMethod(RestMethod.imDialogRead, {\n\t\t\t\t\t\t\t'DIALOG_ID': this.dialogId,\n\t\t\t\t\t\t\t'MESSAGE_ID': lastId\n\t\t\t\t\t\t}).then(() => resolve({lastId})).catch(reject);\n\t\t\t\t\t});\n\t\t\t\t})\n\t\t\t\t.catch(reject);\n\t\t\t});\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogQuoteMessage = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.quoteMessage, this.onQuoteMessage);\n\t\tEventEmitter.subscribe(EventType.dialog.quotePanelClose, this.onQuotePanelClose);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.quoteMessage, this.onQuoteMessage);\n\t\tEventEmitter.unsubscribe(EventType.dialog.quotePanelClose, this.onQuotePanelClose);\n\t},\n\tmethods: {\n\t\tonQuoteMessage({data: event})\n\t\t{\n\t\t\tthis.quoteMessage({id: event.message.id});\n\t\t},\n\t\tonQuotePanelClose()\n\t\t{\n\t\t\tthis.quoteMessageClear();\n\t\t},\n\t\tquoteMessage({id})\n\t\t{\n\t\t\tthis.$store.dispatch('dialogues/update', {\n\t\t\t\tdialogId: this.dialogId,\n\t\t\t\tfields: {\n\t\t\t\t\tquoteId: id\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tquoteMessageClear()\n\t\t{\n\t\t\tthis.$store.dispatch('dialogues/update', {\n\t\t\t\tdialogId: this.dialogId,\n\t\t\t\tfields: {\n\t\t\t\t\tquoteId: 0\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n};","import { Logger } from \"im.lib.logger\";\nimport { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\n/**\n * @notice needs TextareaCore mixin\n */\nexport const DialogClickOnCommand = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnCommand, this.onClickOnCommand);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnCommand, this.onClickOnCommand);\n\t},\n\tmethods: {\n\t\tonClickOnCommand({data: event})\n\t\t{\n\t\t\tif (event.type === 'put')\n\t\t\t{\n\t\t\t\tthis.insertText({ text: event.value + ' ' });\n\t\t\t}\n\t\t\telse if (event.type === 'send')\n\t\t\t{\n\t\t\t\tthis.addMessageOnClient(event.value);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tLogger.warn('Unprocessed command', event);\n\t\t\t}\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\n//openDialog is in dialogCore\nexport const DialogClickOnMention = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnMention, this.onClickOnMention);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnMention, this.onClickOnMention);\n\t},\n\tmethods: {\n\t\tonClickOnMention({data: event})\n\t\t{\n\t\t\tif (event.type === 'USER')\n\t\t\t{\n\t\t\t\tthis.openProfile(event.value);\n\t\t\t}\n\t\t\telse if (event.type === 'CHAT')\n\t\t\t{\n\t\t\t\tthis.openDialog(event.value);\n\t\t\t}\n\t\t\telse if (event.type === 'CALL')\n\t\t\t{\n\t\t\t\tthis.openPhoneMenu(event.value);\n\t\t\t}\n\t\t},\n\t\topenProfile()\n\t\t{\n\t\t\t//TODO\n\t\t},\n\t\topenPhoneMenu()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnUserName = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnUserName, this.onClickOnUserName);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnUserName, this.onClickOnUserName);\n\t},\n\tmethods: {\n\t\tonClickOnUserName({data: event})\n\t\t{\n\t\t\tthis.replyToUser(event.user.id, event.user);\n\t\t},\n\t\treplyToUser()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnMessageMenu = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnMessageMenu, this.onClickOnMessageMenu);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnMessageMenu, this.onClickOnMessageMenu);\n\t},\n\tmethods: {\n\t\tonClickOnMessageMenu({data: event})\n\t\t{\n\t\t\tthis.openMessageMenu(event.message);\n\t\t},\n\t\topenMessageMenu()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnMessageRetry = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnMessageRetry, this.onClickOnMessageRetry);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnMessageRetry, this.onClickOnMessageRetry);\n\t},\n\tmethods: {\n\t\tonClickOnMessageRetry({data: event})\n\t\t{\n\t\t\tthis.retrySendMessage(event.message);\n\t\t},\n\t\tretrySendMessage()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnUploadCancel = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnUploadCancel, this.onClickOnUploadCancel);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnUploadCancel, this.onClickOnUploadCancel);\n\t},\n\tmethods: {\n\t\tonClickOnUploadCancel({data: event})\n\t\t{\n\t\t\tthis.cancelUploadFile(event.file.id);\n\t\t},\n\t\tcancelUploadFile()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnReadList = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnReadList, this.onClickOnReadList);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnReadList, this.onClickOnReadList);\n\t},\n\tmethods: {\n\t\tonClickOnReadList({data: event})\n\t\t{\n\t\t\tthis.openReadList(event.list);\n\t\t},\n\t\topenReadList()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType, RestMethod } from \"im.const\";\n\nexport const DialogSetMessageReaction = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.setMessageReaction, this.onSetMessageReaction);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.setMessageReaction, this.onSetMessageReaction);\n\t},\n\tmethods: {\n\t\tonSetMessageReaction({data: event})\n\t\t{\n\t\t\tthis.reactMessage(event.message.id, event.reaction);\n\t\t},\n\t\treactMessage(messageId, type = 'like', action = 'auto')\n\t\t{\n\t\t\tthis.getRestClient().callMethod(RestMethod.imMessageLike, {\n\t\t\t\t'MESSAGE_ID': messageId,\n\t\t\t\t'ACTION': action === 'auto'? 'auto': (action === 'set'? 'plus': 'minus')\n\t\t\t});\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogOpenMessageReactionList = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.openMessageReactionList, this.onOpenMessageReactionList);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.openMessageReactionList, this.onOpenMessageReactionList);\n\t},\n\tmethods: {\n\t\tonOpenMessageReactionList({data: event})\n\t\t{\n\t\t\tthis.openMessageReactionList(event.message.id, event.values);\n\t\t},\n\t\topenMessageReactionList()\n\t\t{\n\t\t\t//TODO\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType, RestMethod } from \"im.const\";\nimport { Clipboard } from \"im.lib.clipboard\";\n\n/**\n * @notice needs TextareaCore mixin\n */\nexport const DialogClickOnKeyboardButton = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnKeyboardButton, this.onClickOnKeyboardButton);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnKeyboardButton, this.onClickOnKeyboardButton);\n\t},\n\tmethods: {\n\t\tonClickOnKeyboardButton({data: event})\n\t\t{\n\t\t\tif (event.action === 'ACTION')\n\t\t\t{\n\t\t\t\tconst {dialogId, messageId, botId, action, value} = event.params;\n\n\t\t\t\tif (action === 'SEND')\n\t\t\t\t{\n\t\t\t\t\tthis.addMessageOnClient(value);\n\t\t\t\t\tsetTimeout(\n\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\tEventEmitter.emit(EventType.dialog.scrollToBottom, {chatId: this.chatId, duration: 300, cancelIfScrollChange: false});\n\t\t\t\t\t\t},\n\t\t\t\t\t300);\n\t\t\t\t}\n\t\t\t\telse if (action === 'PUT')\n\t\t\t\t{\n\t\t\t\t\tthis.insertText({ text: value + ' ' });\n\t\t\t\t}\n\t\t\t\telse if (action === 'CALL')\n\t\t\t\t{\n\t\t\t\t\t//this.openPhoneMenu(value);\n\t\t\t\t}\n\t\t\t\telse if (action === 'COPY')\n\t\t\t\t{\n\t\t\t\t\tClipboard.copy(value);\n\n\t\t\t\t\tBX.UI.Notification.Center.notify({\n\t\t\t\t\t\tcontent: this.localize['IM_DIALOG_CLIPBOARD_COPY_SUCCESS'],\n\t\t\t\t\t\tautoHideDelay: 4000\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\telse if (action === 'DIALOG')\n\t\t\t\t{\n\t\t\t\t\t//this.openDialog(value);\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif (event.action === 'COMMAND')\n\t\t\t{\n\t\t\t\tconst {dialogId, messageId, botId, command, params} = event.params;\n\n\t\t\t\tthis.getRestClient().callMethod(RestMethod.imMessageCommand, {\n\t\t\t\t\t'MESSAGE_ID': messageId,\n\t\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t\t'BOT_ID': botId,\n\t\t\t\t\t'COMMAND': command,\n\t\t\t\t\t'COMMAND_PARAMS': params,\n\t\t\t\t});\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType, RestMethod } from \"im.const\";\n\n//openDialog is in dialogCore\nexport const DialogClickOnChatTeaser = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnChatTeaser, this.onClickOnChatTeaser);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnChatTeaser, this.onClickOnChatTeaser);\n\t},\n\tmethods: {\n\t\tonClickOnChatTeaser({data: event})\n\t\t{\n\t\t\tthis.joinParentChat(event.message.id, 'chat'+event.message.params.CHAT_ID).then((dialogId) => {\n\t\t\t\tthis.openDialog(dialogId);\n\t\t\t}).catch(() => {});\n\n\t\t\treturn true;\n\t\t},\n\t\tjoinParentChat(messageId, dialogId)\n\t\t{\n\t\t\treturn new Promise((resolve, reject) =>\n\t\t\t{\n\t\t\t\tif (!messageId || !dialogId)\n\t\t\t\t{\n\t\t\t\t\treturn reject();\n\t\t\t\t}\n\n\t\t\t\tif (typeof this.tempJoinChat === 'undefined')\n\t\t\t\t{\n\t\t\t\t\tthis.tempJoinChat = {};\n\t\t\t\t}\n\t\t\t\telse if (this.tempJoinChat['wait'])\n\t\t\t\t{\n\t\t\t\t\treturn reject();\n\t\t\t\t}\n\n\t\t\t\tthis.tempJoinChat['wait'] = true;\n\n\t\t\t\tthis.getRestClient().callMethod(RestMethod.imChatParentJoin, {\n\t\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t\t'MESSAGE_ID': messageId\n\t\t\t\t}).then(() => {\n\t\t\t\t\tthis.tempJoinChat['wait'] = false;\n\t\t\t\t\tthis.tempJoinChat[dialogId] = true;\n\n\t\t\t\t\treturn resolve(dialogId);\n\t\t\t\t}).catch(() => {\n\t\t\t\t\tthis.tempJoinChat['wait'] = false;\n\n\t\t\t\t\treturn reject();\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType } from \"im.const\";\n\nexport const DialogClickOnDialog = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.dialog.clickOnDialog, this.onClickOnDialog);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.dialog.clickOnDialog, this.onClickOnDialog);\n\t},\n\tmethods: {\n\t\tonClickOnDialog({data: event})\n\t\t{\n\t\t\treturn true;\n\t\t},\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport {\n\tEventType,\n\tRestMethod,\n\tRestMethod as ImRestMethod,\n\tRestMethodHandler as ImRestMethodHandler\n} from \"im.const\";\nimport { Logger } from \"im.lib.logger\";\nimport { Utils } from \"im.lib.utils\";\n\n/**\n * @notice needs DialogCore mixin\n */\nexport const TextareaCore = {\n\tdata()\n\t{\n\t\treturn {\n\t\t\tmessagesToSend: []\n\t\t}\n\t},\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.textarea.sendMessage, this.onSendMessage);\n\t\tEventEmitter.subscribe(EventType.textarea.startWriting, this.onTextareaStartWriting);\n\t\tEventEmitter.subscribe(EventType.textarea.appButtonClick, this.onTextareaAppButtonClick);\n\t\tEventEmitter.subscribe(EventType.textarea.focus, this.onTextareaFocus);\n\t\tEventEmitter.subscribe(EventType.textarea.blur, this.onTextareaBlur);\n\t\tEventEmitter.subscribe(EventType.textarea.keyUp, this.onTextareaKeyUp);\n\t\tEventEmitter.subscribe(EventType.textarea.edit, this.onTextareaEdit);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tEventEmitter.unsubscribe(EventType.textarea.sendMessage, this.onSendMessage);\n\t\tEventEmitter.unsubscribe(EventType.textarea.startWriting, this.onTextareaStartWriting);\n\t\tEventEmitter.unsubscribe(EventType.textarea.appButtonClick, this.onTextareaAppButtonClick);\n\t\tEventEmitter.unsubscribe(EventType.textarea.focus, this.onTextareaFocus);\n\t\tEventEmitter.unsubscribe(EventType.textarea.blur, this.onTextareaBlur);\n\t\tEventEmitter.unsubscribe(EventType.textarea.keyUp, this.onTextareaKeyUp);\n\t\tEventEmitter.unsubscribe(EventType.textarea.edit, this.onTextareaEdit);\n\t},\n\tmethods: {\n\t\t//handlers\n\t\tonSendMessage({data: event})\n\t\t{\n\t\t\tif (!event.text)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tthis.addMessageOnClient(event.text);\n\t\t},\n\t\tonTextareaStartWriting({data: event})\n\t\t{\n\t\t\tthis.startWriting();\n\t\t},\n\t\tonTextareaAppButtonClick({data: event})\n\t\t{\n\t\t\t//TODO\n\t\t},\n\t\tonTextareaFocus({data: event})\n\t\t{\n\t\t\t//TODO\n\t\t},\n\t\tonTextareaBlur({data: event})\n\t\t{\n\t\t\t//TODO\n\t\t},\n\t\tonTextareaKeyUp({ data: event })\n\t\t{\n\t\t\t//TODO\n\t\t},\n\t\tonTextareaEdit({ data: event })\n\t\t{\n\t\t\t//TODO\n\t\t},\n\n\t\t//actions\n\t\taddMessageOnClient(text = '', file = null)\n\t\t{\n\t\t\tif (!text && !file)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst quoteId = this.$store.getters['dialogues/getQuoteId'](this.dialogId);\n\t\t\tif (quoteId)\n\t\t\t{\n\t\t\t\tconst quoteMessage = this.$store.getters['messages/getMessage'](this.chatId, quoteId);\n\t\t\t\tif (quoteMessage)\n\t\t\t\t{\n\t\t\t\t\tlet user = null;\n\t\t\t\t\tif (quoteMessage.authorId)\n\t\t\t\t\t{\n\t\t\t\t\t\tuser = this.$store.getters['users/get'](quoteMessage.authorId);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst files = this.$store.getters['files/getList'](this.chatId);\n\n\t\t\t\t\tconst message = [];\n\t\t\t\t\tmessage.push('-'.repeat(54));\n\t\t\t\t\tmessage.push((user && user.name? user.name: this.localize['IM_QUOTE_PANEL_DEFAULT_TITLE'])+' ['+Utils.date.format(quoteMessage.date, null, this.localize)+']');\n\t\t\t\t\tmessage.push(Utils.text.quote(quoteMessage.text, quoteMessage.params, files, this.localize));\n\t\t\t\t\tmessage.push('-'.repeat(54));\n\t\t\t\t\tmessage.push(text);\n\t\t\t\t\ttext = message.join(\"\\n\");\n\n\t\t\t\t\tthis.quoteMessageClear();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!this.isUnreadMessagesLoaded())\n\t\t\t{\n\t\t\t\tthis.addMessageOnServer({ id: 0, chatId: this.chatId, dialogId: this.dialogId, text, file });\n\t\t\t\tthis.processMessagesToSendQueue();\n\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tconst params = {};\n\t\t\tif (file)\n\t\t\t{\n\t\t\t\tparams.FILE_ID = [file.id];\n\t\t\t}\n\n\t\t\tthis.$store.dispatch('messages/add', {\n\t\t\t\tchatId: this.chatId,\n\t\t\t\tauthorId: this.userId,\n\t\t\t\ttext,\n\t\t\t\tparams,\n\t\t\t\tsending: !file,\n\t\t\t}).then(messageId => {\n\t\t\t\tEventEmitter.emit(EventType.dialog.scrollToBottom, {chatId: this.chatId, cancelIfScrollChange: true});\n\n\t\t\t\tthis.messagesToSend.push({\n\t\t\t\t\tid: messageId,\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tdialogId: this.dialogId,\n\t\t\t\t\ttext,\n\t\t\t\t\tfile,\n\t\t\t\t\tsending: false\n\t\t\t\t});\n\n\t\t\t\tthis.processMessagesToSendQueue();\n\t\t\t});\n\n\t\t\treturn true;\n\t\t},\n\t\tprocessMessagesToSendQueue()\n\t\t{\n\t\t\tif (!this.diskFolderId)\n\t\t\t{\n\t\t\t\tthis.requestDiskFolderId().then(() => {\n\t\t\t\t\tthis.processMessagesToSendQueue();\n\t\t\t\t}).catch((error) => {\n\t\t\t\t\tLogger.warn('processMessagesToSendQueue error', error);\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tthis.messagesToSend.filter(element => !element.sending).forEach(element => {\n\t\t\t\telement.sending = true;\n\t\t\t\tif (element.file)\n\t\t\t\t{\n\t\t\t\t\tthis.addMessageWithFile(element);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.addMessageOnServer(element);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\treturn true;\n\t\t},\n\t\taddMessageOnServer(element)\n\t\t{\n\t\t\tthis.stopWriting();\n\n\t\t\tconst quoteId = this.$store.getters['dialogues/getQuoteId'](this.dialogId);\n\t\t\tif (quoteId)\n\t\t\t{\n\t\t\t\tconst quoteMessage = this.$store.getters['messages/getMessage'](this.chatId, quoteId);\n\t\t\t\tif (quoteMessage)\n\t\t\t\t{\n\t\t\t\t\tconst user = this.$store.getters['users/get'](quoteMessage.authorId);\n\n\t\t\t\t\tconst newMessage = [];\n\t\t\t\t\tnewMessage.push(\"------------------------------------------------------\");\n\t\t\t\t\tnewMessage.push((user.name? user.name: this.localize['IM_QUOTE_PANEL_DEFAULT_TITLE']));\n\t\t\t\t\tnewMessage.push(quoteMessage.text);\n\t\t\t\t\tnewMessage.push('------------------------------------------------------');\n\t\t\t\t\tnewMessage.push(element.text);\n\t\t\t\t\telement.text = newMessage.join(\"\\n\");\n\n\t\t\t\t\tthis.quoteMessageClear();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.getRestClient().callMethod(ImRestMethod.imMessageAdd, {\n\t\t\t\t'TEMPLATE_ID': element.id,\n\t\t\t\t'DIALOG_ID': element.dialogId,\n\t\t\t\t'MESSAGE': element.text\n\t\t\t}, null, null)\n\t\t\t.then(response => {\n\t\t\t\tthis.$store.dispatch('messages/update', {\n\t\t\t\t\tid: element.id,\n\t\t\t\t\tchatId: element.chatId,\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tid: response.data(),\n\t\t\t\t\t\tsending: false,\n\t\t\t\t\t\terror: false,\n\t\t\t\t\t}\n\t\t\t\t}).then(() => {\n\t\t\t\t\tthis.$store.dispatch('messages/actionFinish', {\n\t\t\t\t\t\tid: response.data(),\n\t\t\t\t\t\tchatId: element.chatId\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}).catch(error => {\n\t\t\t\tLogger.warn('Error during adding message');\n\t\t\t});\n\n\t\t\treturn true;\n\t\t},\n\n\t\t//writing\n\t\tstopWriting(dialogId = this.dialogId)\n\t\t{\n\t\t\tthis.timer.stop('writes', dialogId, true);\n\t\t\tthis.timer.stop('writesSend', dialogId, true);\n\t\t},\n\t\tstartWriting(dialogId = this.dialogId)\n\t\t{\n\t\t\tif (Utils.dialog.isEmptyDialogId(dialogId) || this.timer.has('writes', dialogId))\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tthis.timer.start('writes', dialogId, 28);\n\t\t\tthis.timer.start('writesSend', dialogId, 5, () => {\n\t\t\t\tthis.getRestClient().callMethod(RestMethod.imDialogWriting, {\n\t\t\t\t\t'DIALOG_ID': dialogId\n\t\t\t\t}).catch(() => {\n\t\t\t\t\tthis.timer.stop('writes', dialogId);\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\n\t\tinsertText(event)\n\t\t{\n\t\t\tEventEmitter.emit(EventType.textarea.insertText, event);\n\t\t},\n\n\t\trequestDiskFolderId()\n\t\t{\n\t\t\tif (this.requestDiskFolderPromise)\n\t\t\t{\n\t\t\t\treturn this.requestDiskFolderPromise;\n\t\t\t}\n\n\t\t\tthis.requestDiskFolderPromise = new Promise((resolve, reject) =>\n\t\t\t{\n\t\t\t\tif (\n\t\t\t\t\tthis.flagRequestDiskFolderIdSended\n\t\t\t\t\t|| this.diskFolderId\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.flagRequestDiskFolderIdSended = false;\n\t\t\t\t\tresolve();\n\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tthis.flagRequestDiskFolderIdSended = true;\n\n\t\t\t\tthis.getRestClient().callMethod(ImRestMethod.imDiskFolderGet, {chat_id: this.chatId})\n\t\t\t\t\t.then(response => {\n\t\t\t\t\t\tthis.flagRequestDiskFolderIdSended = false;\n\t\t\t\t\t\tthis.executeRestAnswer(ImRestMethodHandler.imDiskFolderGet, response);\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t}).catch(error => {\n\t\t\t\t\tthis.flagRequestDiskFolderIdSended = false;\n\t\t\t\t\tthis.executeRestAnswer(ImRestMethodHandler.imDiskFolderGet, error);\n\t\t\t\t\treject();\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn this.requestDiskFolderPromise;\n\t\t}\n\t}\n};","import { EventEmitter } from 'main.core.events';\nimport { EventType, FileStatus, RestMethod as ImRestMethod, RestMethodHandler as ImRestMethodHandler } from \"im.const\";\nimport { Uploader } from \"im.lib.uploader\";\nimport { Logger } from \"im.lib.logger\";\n\n\n/**\n * @notice creates uploader instance when dialog is inited (dialog.init in model)\n * @notice define actionUploadChunk and actionCommitFile fields for custom upload methods (e.g. videoconference)\n * @notice redefine addMessageWithFile for custom headers (e.g. videoconference)\n */\nexport const TextareaUploadFile = {\n\tcreated()\n\t{\n\t\tEventEmitter.subscribe(EventType.textarea.fileSelected, this.onTextareaFileSelected);\n\t},\n\tbeforeDestroy()\n\t{\n\t\tif (this.uploader)\n\t\t{\n\t\t\tthis.uploader.unsubscribeAll();\n\t\t}\n\t\tEventEmitter.unsubscribe(EventType.textarea.fileSelected, this.onTextareaFileSelected);\n\t},\n\tcomputed:\n\t{\n\t\tdialogInited()\n\t\t{\n\t\t\tif (!this.dialog)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn this.dialog.init;\n\t\t}\n\t},\n\twatch:\n\t{\n\t\tdialogInited(newValue)\n\t\t{\n\t\t\tif (newValue === true)\n\t\t\t{\n\t\t\t\tthis.initUploader();\n\t\t\t}\n\t\t}\n\t},\n\tmethods: {\n\t\tonTextareaFileSelected({data: event})\n\t\t{\n\t\t\tlet fileInput = event && event.fileChangeEvent && event.fileChangeEvent.target.files.length > 0 ? event.fileChangeEvent : '';\n\t\t\tif (!fileInput)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tthis.uploadFile(fileInput);\n\t\t},\n\t\taddMessageWithFile(message)\n\t\t{\n\t\t\tthis.stopWriting();\n\n\t\t\tthis.uploader.addTask({\n\t\t\t\ttaskId: message.file.id,\n\t\t\t\tfileData: message.file.source.file,\n\t\t\t\tfileName: message.file.source.file.name,\n\t\t\t\tgenerateUniqueName: true,\n\t\t\t\tdiskFolderId: this.diskFolderId,\n\t\t\t\tpreviewBlob: message.file.previewBlob,\n\t\t\t});\n\t\t},\n\n\t\t//uploader\n\t\tuploadFile(event)\n\t\t{\n\t\t\tif (!event)\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tthis.uploader.addFilesFromEvent(event);\n\t\t},\n\t\tinitUploader()\n\t\t{\n\t\t\tthis.uploader = new Uploader({\n\t\t\t\tgeneratePreview: true,\n\t\t\t\tsender: {\n\t\t\t\t\tactionUploadChunk: this.actionUploadChunk,\n\t\t\t\t\tactionCommitFile: this.actionCommitFile,\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onStartUpload', event => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tLogger.log('Uploader: onStartUpload', eventData);\n\n\t\t\t\tthis.$store.dispatch('files/update', {\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tid: eventData.id,\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tstatus: FileStatus.upload,\n\t\t\t\t\t\tprogress: 0\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onProgress', (event) => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tLogger.log('Uploader: onProgress', eventData);\n\n\t\t\t\tthis.$store.dispatch('files/update', {\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tid: eventData.id,\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tstatus: FileStatus.upload,\n\t\t\t\t\t\tprogress: (eventData.progress === 100 ? 99 : eventData.progress),\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onSelectFile', (event) => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tconst file = eventData.file;\n\t\t\t\tLogger.log('Uploader: onSelectFile', eventData);\n\n\t\t\t\tlet fileType = 'file';\n\t\t\t\tif (file.type.toString().startsWith('image'))\n\t\t\t\t{\n\t\t\t\t\tfileType = 'image';\n\t\t\t\t}\n\t\t\t\telse if (file.type.toString().startsWith('video'))\n\t\t\t\t{\n\t\t\t\t\tfileType = 'video';\n\t\t\t\t}\n\n\t\t\t\tthis.$store.dispatch('files/add', {\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tauthorId: this.userId,\n\t\t\t\t\tname: file.name,\n\t\t\t\t\ttype: fileType,\n\t\t\t\t\textension: file.name.split('.').splice(-1)[0],\n\t\t\t\t\tsize: file.size,\n\t\t\t\t\timage: !eventData.previewData? false: {\n\t\t\t\t\t\twidth: eventData.previewDataWidth,\n\t\t\t\t\t\theight: eventData.previewDataHeight,\n\t\t\t\t\t},\n\t\t\t\t\tstatus: FileStatus.wait,\n\t\t\t\t\tprogress: 0,\n\t\t\t\t\tauthorName: this.getCurrentUser().name,\n\t\t\t\t\turlPreview: eventData.previewData? URL.createObjectURL(eventData.previewData) : \"\",\n\t\t\t\t}).then(fileId => {\n\t\t\t\t\tthis.addMessageOnClient('', {id: fileId, source: eventData, previewBlob: eventData.previewData})\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onComplete', (event) => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tLogger.log('Uploader: onComplete', eventData);\n\n\t\t\t\tthis.$store.dispatch('files/update', {\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tid: eventData.id,\n\t\t\t\t\tfields: {\n\t\t\t\t\t\tstatus: FileStatus.wait,\n\t\t\t\t\t\tprogress: 100\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tconst message = this.messagesToSend.find(message => {\n\t\t\t\t\tif (message.file)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn message.file.id === eventData.id;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\t\t\t\tconst fileType = this.$store.getters['files/get'](this.chatId, message.file.id, true).type;\n\n\t\t\t\tthis.fileCommit({\n\t\t\t\t\tchatId: this.chatId,\n\t\t\t\t\tuploadId: eventData.result.data.file.id,\n\t\t\t\t\tmessageText: message.text,\n\t\t\t\t\tmessageId: message.id,\n\t\t\t\t\tfileId: message.file.id,\n\t\t\t\t\tfileType\n\t\t\t\t}, message);\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onUploadFileError', (event) => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tLogger.log('Uploader: onUploadFileError', eventData);\n\n\t\t\t\tconst message = this.messagesToSend.find(message => {\n\t\t\t\t\tif (message.file)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn message.file.id === eventData.id;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t\t\tthis.fileError(this.chatId, message.file.id, message.id);\n\t\t\t});\n\n\t\t\tthis.uploader.subscribe('onCreateFileError', (event) => {\n\t\t\t\tconst eventData = event.getData();\n\t\t\t\tLogger.log('Uploader: onCreateFileError', eventData);\n\n\t\t\t\tconst message = this.messagesToSend.find(message => {\n\t\t\t\t\tif (message.file)\n\t\t\t\t\t{\n\t\t\t\t\t\treturn message.file.id === eventData.id;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t\t\tthis.fileError(this.chatId, message.file.id, message.id);\n\t\t\t});\n\n\t\t\treturn new Promise((resolve, reject) => resolve());\n\t\t},\n\t\tfileCommit(params, message)\n\t\t{\n\t\t\tthis.getRestClient().callMethod(ImRestMethod.imDiskFileCommit, {\n\t\t\t\tchat_id: params.chatId,\n\t\t\t\tupload_id: params.uploadId,\n\t\t\t\tmessage: params.messageText,\n\t\t\t\ttemplate_id: params.messageId,\n\t\t\t\tfile_template_id: params.fileId,\n\t\t\t}, null, null, ).then(response => {\n\t\t\t\tthis.executeRestAnswer(ImRestMethodHandler.imDiskFileCommit, response, message);\n\t\t\t}).catch(error => {\n\t\t\t\tthis.executeRestAnswer(ImRestMethodHandler.imDiskFileCommit, error, message);\n\t\t\t});\n\n\t\t\treturn true;\n\t\t},\n\t\tfileError(chatId, fileId, messageId = 0)\n\t\t{\n\t\t\tthis.$store.dispatch('files/update', {\n\t\t\t\tchatId: chatId,\n\t\t\t\tid: fileId,\n\t\t\t\tfields: {\n\t\t\t\t\tstatus: FileStatus.error,\n\t\t\t\t\tprogress: 0\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (messageId)\n\t\t\t{\n\t\t\t\tthis.$store.dispatch('messages/actionError', {\n\t\t\t\t\tchatId: chatId,\n\t\t\t\t\tid: messageId,\n\t\t\t\t\tretry: false,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n};"],"names":["DialogCore","data","dialogState","DialogState","loading","created","timer","Timer","methods","getController","$Bitrix","Data","get","getApplicationController","application","getApplication","Application","getRestClient","RestClient","getCurrentUser","$store","getters","common","userId","executeRestAnswer","method","queryResult","extra","isUnreadMessagesLoaded","dialog","lastMessageId","messageCollection","length","lastElementId","index","lastElement","id","openDialog","computed","dialogId","chatId","diskFolderId","isDialogShowingMessages","messagesNotEmpty","show","init","empty","isDarkBackground","options","darkBackground","Vuex","mapState","state","localize","BitrixVue","getFilteredPhrases","DialogReadMessages","lastMessageToRead","messagesToRead","EventEmitter","subscribe","EventType","readMessage","onReadMessage","beforeDestroy","unsubscribe","event","then","Logger","log","error","messageId","force","skipAjax","push","parseInt","stop","readMessageRequest","Promise","resolve","reject","start","result","lastId","dispatch","readId","count","callMethod","RestMethod","imDialogRead","DialogQuoteMessage","quoteMessage","onQuoteMessage","quotePanelClose","onQuotePanelClose","message","quoteMessageClear","fields","quoteId","DialogClickOnCommand","clickOnCommand","onClickOnCommand","type","insertText","text","value","addMessageOnClient","warn","DialogClickOnMention","clickOnMention","onClickOnMention","openProfile","openPhoneMenu","DialogClickOnUserName","clickOnUserName","onClickOnUserName","replyToUser","user","DialogClickOnMessageMenu","clickOnMessageMenu","onClickOnMessageMenu","openMessageMenu","DialogClickOnMessageRetry","clickOnMessageRetry","onClickOnMessageRetry","retrySendMessage","DialogClickOnUploadCancel","clickOnUploadCancel","onClickOnUploadCancel","cancelUploadFile","file","DialogClickOnReadList","clickOnReadList","onClickOnReadList","openReadList","list","DialogSetMessageReaction","setMessageReaction","onSetMessageReaction","reactMessage","reaction","action","imMessageLike","DialogOpenMessageReactionList","openMessageReactionList","onOpenMessageReactionList","values","DialogClickOnKeyboardButton","clickOnKeyboardButton","onClickOnKeyboardButton","params","botId","setTimeout","emit","scrollToBottom","duration","cancelIfScrollChange","Clipboard","copy","BX","UI","Notification","Center","notify","content","autoHideDelay","command","imMessageCommand","DialogClickOnChatTeaser","clickOnChatTeaser","onClickOnChatTeaser","joinParentChat","CHAT_ID","tempJoinChat","imChatParentJoin","DialogClickOnDialog","clickOnDialog","onClickOnDialog","TextareaCore","messagesToSend","textarea","sendMessage","onSendMessage","startWriting","onTextareaStartWriting","appButtonClick","onTextareaAppButtonClick","focus","onTextareaFocus","blur","onTextareaBlur","keyUp","onTextareaKeyUp","edit","onTextareaEdit","authorId","files","repeat","name","Utils","date","format","quote","join","addMessageOnServer","processMessagesToSendQueue","FILE_ID","sending","requestDiskFolderId","filter","element","forEach","addMessageWithFile","stopWriting","newMessage","ImRestMethod","imMessageAdd","response","isEmptyDialogId","has","imDialogWriting","requestDiskFolderPromise","flagRequestDiskFolderIdSended","imDiskFolderGet","chat_id","ImRestMethodHandler","TextareaUploadFile","fileSelected","onTextareaFileSelected","uploader","unsubscribeAll","dialogInited","watch","newValue","initUploader","fileInput","fileChangeEvent","target","uploadFile","addTask","taskId","fileData","source","fileName","generateUniqueName","previewBlob","addFilesFromEvent","Uploader","generatePreview","sender","actionUploadChunk","actionCommitFile","eventData","getData","status","FileStatus","upload","progress","fileType","toString","startsWith","extension","split","splice","size","image","previewData","width","previewDataWidth","height","previewDataHeight","wait","authorName","urlPreview","URL","createObjectURL","fileId","find","fileCommit","uploadId","messageText","fileError","imDiskFileCommit","upload_id","template_id","file_template_id","retry"],"mappings":"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"}