403Webshell
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/cvetdv.ru/bitrix/js/im/component/dialog/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/im/component/dialog/dist/dialog.bundle.min.js
this.BX=this.BX||{};(function(t,e,s,i,a,o,r,n,l,d,c,u,h){"use strict";var g=Object.freeze({read:"read",none:"none"});var m=Object.freeze({history:"history",unread:"unread"});var f=Object.freeze({groupTitle:"groupTitle",readedTitle:"readedTitle"});var p={props:["element"],created:function t(){var e=["self","opponent"];var s=Math.floor(Math.random()*e.length);this.mode=e[s]},computed:{itemClasses:function t(){var t=["im-skeleton-item","im-skeleton-item--sm","".concat(d.DialogReferenceClassName.listItem,"-").concat(this.element.id)];if(this.mode==="self"){t.push("im-skeleton-item-self")}else{t.push("im-skeleton-item-opponent")}return t}},template:'\n\t\t<div :class="itemClasses" :key="element.templateId">\n\t\t\t<div v-if="mode === \'opponent\'" class="im-skeleton-logo"></div>\n\t\t\t<div class="im-skeleton-content">\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 70%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 100%" class="im-skeleton-line"></div>\n\t\t\t\t\t<div style="max-width: 26px; margin-left: auto;" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-like"></div>\n\t\t\t</div>\n\t\t</div>\n\t'};var v={props:["element"],created:function t(){var e=["self","opponent"];var s=Math.floor(Math.random()*e.length);this.mode=e[s]},computed:{itemClasses:function t(){var t=["im-skeleton-item","im-skeleton-item--md","".concat(d.DialogReferenceClassName.listItem,"-").concat(this.element.id)];if(this.mode==="self"){t.push("im-skeleton-item-self")}else{t.push("im-skeleton-item-opponent")}return t}},template:'\n\t\t<div :class="itemClasses" :key="element.templateId">\n\t\t\t<div v-if="mode === \'opponent\'" class="im-skeleton-logo"></div>\n\t\t\t<div class="im-skeleton-content">\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 35%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 100%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 55%" class="im-skeleton-line"></div>\n\t\t\t\t\t<div style="max-width: 26px; margin-left: auto;" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-like"></div>\n\t\t\t</div>\n\t\t</div>\n\t'};var b={props:["element"],created:function t(){var e=["self","opponent"];var s=Math.floor(Math.random()*e.length);this.mode=e[s]},computed:{itemClasses:function t(){var t=["im-skeleton-item","im-skeleton-item--md","".concat(d.DialogReferenceClassName.listItem,"-").concat(this.element.id)];if(this.mode==="self"){t.push("im-skeleton-item-self")}else{t.push("im-skeleton-item-opponent")}return t}},template:'\n\t\t<div :class="itemClasses" :key="element.templateId">\n\t\t\t<div v-if="mode === \'opponent\'" class="im-skeleton-logo"></div>\n\t\t\t<div class="im-skeleton-content">\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 35%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 100%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 55%" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t<div style="max-width: 26px; margin-left: auto;" class="im-skeleton-line"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="im-skeleton-like"></div>\n\t\t\t</div>\n\t\t</div>\n\t'};function y(t,e){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),s.push.apply(s,i)}return s}function M(t){for(var e=1;e<arguments.length;e++){var s=null!=arguments[e]?arguments[e]:{};e%2?y(Object(s),!0).forEach((function(e){babelHelpers.defineProperty(t,e,s[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(s)):y(Object(s)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(s,e))}))}return t}var w={props:{userId:{type:Number,default:0},dialogId:{type:String,default:"0"},messageLimit:{type:Number,default:50},enableReadMessages:{type:Boolean,default:true},enableReactions:{type:Boolean,default:true},enableDateActions:{type:Boolean,default:true},enableCreateContent:{type:Boolean,default:true},enableGestureQuote:{type:Boolean,default:true},enableGestureQuoteFromRight:{type:Boolean,default:true},enableGestureMenu:{type:Boolean,default:false},showMessageUserName:{type:Boolean,default:true},showMessageAvatar:{type:Boolean,default:true},showMessageMenu:{type:Boolean,default:true}},components:{Placeholder1:p,Placeholder2:v,Placeholder3:b},data:function t(){return{messagesSet:false,scrollAnimating:false,showScrollButton:false,captureMove:false,capturedMoveEvent:null,lastMessageId:null,isRequestingHistory:false,historyPagesRequested:0,stopHistoryLoading:false,isRequestingUnread:false,unreadPagesRequested:0,placeholderCount:0,pagesLoaded:0}},created:function t(){r.Logger.warn("MessageList component is created");this.initParams();this.initEvents()},beforeDestroy:function t(){this.observers={};clearTimeout(this.scrollButtonShowTimeout);this.clearEvents()},mounted:function t(){this.windowFocused=a.Utils.platform.isBitrixMobile()?true:document.hasFocus();this.getMessageIdsForPagination();this.scrollOnStart()},watch:{dialogId:function t(e,s){var i=this;r.Logger.warn("new dialogId in message-list",e);this.messagesSet=false;this.$nextTick((function(){i.scrollOnStart()}))}},computed:M({TemplateType:function t(){return d.DialogTemplateType},ObserverType:function t(){return g},DialogReferenceClassName:function t(){return d.DialogReferenceClassName},localize:function t(){return l.BitrixVue.getFilteredPhrases("IM_MESSENGER_DIALOG_",this)},dialog:function t(){var t=this.$store.getters["dialogues/get"](this.dialogId);return t?t:this.$store.getters["dialogues/getBlank"]()},chatId:function t(){if(this.application){return this.application.dialog.chatId}},collection:function t(){return this.$store.getters["messages/get"](this.chatId)},formattedCollection:function t(){var e=this;this.lastMessageId=0;this.lastMessageAuthorId=0;this.firstUnreadMessageId=0;var s=0;var i={};var a=[];this.collection.forEach((function(t){if(e.messagesSet&&(e.lastHistoryMessageId===null||e.lastHistoryMessageId>t.id)){r.Logger.warn("setting new lastHistoryMessageId",t.id);e.lastHistoryMessageId=t.id}e.lastMessageId=t.id;var o=e.getDateGroup(t.date);if(!i[o.title]){i[o.title]=o.id;a.push(e.getDateGroupBlock(o.id,o.title))}else if(s!==t.authorId){a.push(e.getDelimiterBlock(t.id))}if(t.unread&&!e.firstUnreadMessageId){e.firstUnreadMessageId=t.id}a.push(t);s=t.authorId}));this.lastMessageAuthorId=s;return a},writingStatusText:function t(){var e=this;clearTimeout(this.scrollToTimeout);if(this.dialog.writingList.length===0){return""}if(!this.scrollChangedByUser&&!this.showScrollButton){this.scrollToTimeout=setTimeout((function(){return e.animatedScrollToPosition({duration:500})}),300)}var s=this.dialog.writingList.map((function(t){return t.userName})).join(", ");return this.localize["IM_MESSENGER_DIALOG_WRITES_MESSAGE"].replace("#USER#",s)},statusReaded:function t(){var e=this;clearTimeout(this.scrollToTimeout);if(this.dialog.readedList.length===0){return""}var s="";if(this.dialog.type===d.DialogType["private"]){var i=this.dialog.readedList[0];if(i.messageId===this.lastMessageId&&i.userId!==this.lastMessageAuthorId){var a=this.getDateFormat(f.readedTitle);var o=this.getDateObject().format(a,i.date);s=this.localize["IM_MESSENGER_DIALOG_MESSAGES_READED_USER"].replace("#DATE#",o)}}else{var r=this.dialog.readedList.filter((function(t){return t.messageId===e.lastMessageId&&t.userId!==e.lastMessageAuthorId}));if(r.length===1){s=this.localize["IM_MESSENGER_DIALOG_MESSAGES_READED_CHAT"].replace("#USERS#",r[0].userName)}else if(r.length>1){s=this.localize["IM_MESSENGER_DIALOG_MESSAGES_READED_CHAT"].replace("#USERS#",this.localize["IM_MESSENGER_DIALOG_MESSAGES_READED_CHAT_PLURAL"].replace("#USER#",r[0].userName).replace("#COUNT#",r.length-1).replace("[LINK]","").replace("[/LINK]",""))}}if(!s){return""}if(!this.scrollChangedByUser&&!this.showScrollButton){this.scrollToTimeout=setTimeout((function(){return e.animatedScrollToPosition({duration:500})}),300)}return s},unreadCounter:function t(){return this.dialog.counter>99?999:this.dialog.counter},formattedUnreadCounter:function t(){return this.unreadCounter>99?"99+":this.unreadCounter},scrollBlocked:function t(){if(this.application.device.type!==d.DeviceType.mobile){return false}return this.scrollAnimating||this.captureMove},isDarkBackground:function t(){return this.application.options.darkBackground},isMobile:function t(){return this.application.device.type===d.DeviceType.mobile},isRequestingData:function t(){return this.isRequestingHistory||this.isRequestingUnread},remainingHistoryPages:function t(){return Math.ceil((this.dialog.messageCount-this.collection.length)/this.historyMessageLimit)},remainingUnreadPages:function t(){if(this.isLastIdInCollection){return 0}return Math.ceil((this.dialog.messageCount-this.collection.length)/this.unreadMessageLimit)},unreadInCollection:function t(){return this.collection.filter((function(t){return t.unread===true}))},isLastIdInCollection:function t(){return this.collection.map((function(t){return t.id})).includes(this.dialog.lastMessageId)},showStatusPlaceholder:function t(){return!this.writingStatusText&&!this.statusReaded},bodyClasses:function t(){return[d.DialogReferenceClassName.listBody,{"bx-im-dialog-list-scroll-blocked":this.scrollBlocked,"bx-im-dialog-dark-background":this.isDarkBackground,"bx-im-dialog-mobile":this.isMobile}]}},h.Vuex.mapState({application:function t(e){return e.application}})),methods:{initParams:function t(){this.placeholdersComposition=this.getPlaceholdersComposition();this.historyMessageLimit=50;this.unreadMessageLimit=50;this.showScrollButton=this.unreadCounter>0;this.scrollingDownThreshold=1e3;this.scrollingUpThreshold=1e3;this.messageScrollOffset=20;this.lastScroll=0;this.scrollChangedByUser=false;this.scrollButtonDiff=100;this.scrollButtonShowTimeout=null;this.scrollPositionChangeTime=(new Date).getTime();this.lastRequestTime=(new Date).getTime();this.observers={};this.lastAuthorId=0;this.lastHistoryMessageId=null;this.firstUnreadMessageId=null;this.lastUnreadMessageId=null;this.dateFormatFunction=null;this.cachedDateGroups={};this.readMessageQueue=[];this.readMessageTarget={};this.readVisibleMessagesDelayed=a.Utils.debounce(this.readVisibleMessages,50,this);this.requestHistoryDelayed=a.Utils.debounce(this.requestHistory,50,this)},initEvents:function t(){u.EventEmitter.subscribe(d.EventType.dialog.scrollOnStart,this.onScrollOnStart);u.EventEmitter.subscribe(d.EventType.dialog.scrollToBottom,this.onScrollToBottom);u.EventEmitter.subscribe(d.EventType.dialog.readVisibleMessages,this.onReadVisibleMessages);u.EventEmitter.subscribe(d.EventType.dialog.newMessage,this.onNewMessage);u.EventEmitter.subscribe(d.EventType.dialog.requestUnread,this.onExternalUnreadRequest);u.EventEmitter.subscribe(d.EventType.dialog.messagesSet,this.onMessagesSet);u.EventEmitter.subscribe(d.EventType.dialog.beforeMobileKeyboard,this.onBeforeMobileKeyboard);window.addEventListener("orientationchange",this.onOrientationChange);window.addEventListener("focus",this.onWindowFocus);window.addEventListener("blur",this.onWindowBlur);l.BitrixVue.event.$on("bitrixmobile:controller:focus",this.onWindowFocus);l.BitrixVue.event.$on("bitrixmobile:controller:blur",this.onWindowBlur)},clearEvents:function t(){u.EventEmitter.unsubscribe(d.EventType.dialog.scrollOnStart,this.onScrollOnStart);u.EventEmitter.unsubscribe(d.EventType.dialog.scrollToBottom,this.onScrollToBottom);u.EventEmitter.unsubscribe(d.EventType.dialog.readVisibleMessages,this.onReadVisibleMessages);u.EventEmitter.unsubscribe(d.EventType.dialog.newMessage,this.onNewMessage);u.EventEmitter.unsubscribe(d.EventType.dialog.requestUnread,this.onExternalUnreadRequest);u.EventEmitter.unsubscribe(d.EventType.dialog.messagesSet,this.onMessagesSet);u.EventEmitter.unsubscribe(d.EventType.dialog.beforeMobileKeyboard,this.onBeforeMobileKeyboard);window.removeEventListener("orientationchange",this.onOrientationChange);window.removeEventListener("focus",this.onWindowFocus);window.removeEventListener("blur",this.onWindowBlur);l.BitrixVue.event.$off("bitrixmobile:controller:focus",this.onWindowFocus);l.BitrixVue.event.$off("bitrixmobile:controller:blur",this.onWindowBlur)},onDialogClick:function t(e){if(l.BitrixVue.testNode(e.target,{className:"bx-im-message-command"})){this.onCommandClick(e)}else if(l.BitrixVue.testNode(e.target,{className:"bx-im-mention"})){this.onMentionClick(e)}this.windowFocused=true;u.EventEmitter.emit(d.EventType.dialog.clickOnDialog,{event:e})},onDialogMove:function t(e){if(!this.captureMove){return}this.capturedMoveEvent=e},onCommandClick:function t(e){var s="";if(e.target.dataset.entity==="send"||e.target.dataset.entity==="put"){s=e.target.nextSibling.innerHTML}else if(e.target.dataset.entity==="call"){s=e.target.dataset.command}u.EventEmitter.emit(d.EventType.dialog.clickOnCommand,{type:e.target.dataset.entity,value:s,event:e})},onMentionClick:function t(e){u.EventEmitter.emit(d.EventType.dialog.clickOnMention,{type:e.target.dataset.type,value:e.target.dataset.value,event:e})},onOrientationChange:function t(){var e=this;clearTimeout(this.scrollToTimeout);if(this.application.device.type!==d.DeviceType.mobile){return false}r.Logger.log("Orientation changed");if(!this.scrollChangedByUser){this.scrollToTimeout=setTimeout((function(){return e.scrollToBottom({force:true})}),300)}},onWindowFocus:function t(){this.windowFocused=true;this.readVisibleMessages();return true},onWindowBlur:function t(){this.windowFocused=false},onScrollToBottom:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},s=e.data,i=s===void 0?{chatId:0,force:false,cancelIfScrollChange:false,duration:null}:s;if(i.chatId!==this.chatId){return false}r.Logger.warn("onScrollToBottom",i);i.force=i.force===true;i.cancelIfScrollChange=i.cancelIfScrollChange===true;if(this.firstUnreadMessageId){r.Logger.warn("Dialog.onScrollToBottom: canceled - unread messages");return false}if(i.cancelIfScrollChange&&this.scrollChangedByUser&&this.scrollBeforeMobileKeyboard){var a=this.$refs.body;this.scrollAfterMobileKeyboard=a.scrollHeight-a.scrollTop-a.clientHeight;var o=this.scrollAfterMobileKeyboard-this.scrollBeforeMobileKeyboard;this.animatedScrollToPosition({start:a.scrollTop,end:a.scrollTop+o});return true}this.scrollToBottom(i);return true},onReadVisibleMessages:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},s=e.data,i=s===void 0?{chatId:0}:s;if(i.chatId!==this.chatId){return false}r.Logger.warn("onReadVisibleMessages");this.readVisibleMessagesDelayed();return true},onClickOnReadList:function t(e){var s=this;var i=this.dialog.readedList.filter((function(t){return t.messageId===s.lastMessageId&&t.userId!==s.lastMessageAuthorId}));u.EventEmitter.emit(d.EventType.dialog.clickOnReadList,{list:i,event:e})},onDragMessage:function t(e){if(!this.windowFocused){return false}this.captureMove=e.result;if(!e.result){this.capturedMoveEvent=null}},onScroll:function t(e){if(this.isScrolling){return false}clearTimeout(this.scrollToTimeout);this.currentScroll=e.target.scrollTop;var s=this.lastScroll<this.currentScroll;var i=!s;if(i&&this.scrollButtonClicked){r.Logger.warn("scrollUp - reset scroll button clicks");this.scrollButtonClicked=false}var a=e.target.scrollHeight-e.target.scrollTop-e.target.clientHeight;if(this.currentScroll>0&&s&&a<this.scrollingDownThreshold){this.onScrollDown()}else if(i&&this.currentScroll<=this.scrollingUpThreshold){this.onScrollUp()}this.lastScroll=this.currentScroll;this.scrollPositionChangeTime=(new Date).getTime();this.manageScrollButton(e)},onScrollDown:function t(){var e=this;if(!this.messagesSet||this.isLastIdInCollection){return false}if(this.isRequestingData&&this.remainingUnreadPages>0){this.drawPlaceholders(m.unread).then((function(){e.unreadPagesRequested+=1;r.Logger.warn("Already loading! Draw placeholders and add request, total - ",e.unreadPagesRequested)}))}else if(!this.isRequestingData&&this.remainingUnreadPages>0){r.Logger.warn("Starting new unread request");this.isRequestingUnread=true;this.drawPlaceholders(m.unread).then((function(){e.requestUnread()}))}},onScrollUp:function t(){var e=this;if(!this.messagesSet||this.stopHistoryLoading){return false}this.projectedPagesToLoad=1;if(!this.isMobile&&this.$refs.body.scrollTop<this.$refs.body.scrollHeight/4){this.projectedPagesToLoad=3}if(this.isRequestingData&&this.remainingHistoryPages>0){var s=this.$refs.body.scrollHeight;this.drawPlaceholders(m.history,this.projectedPagesToLoad).then((function(){if(!e.isOverflowAnchorSupported()){e.enableUserScroll()}e.historyPagesRequested+=e.projectedPagesToLoad;r.Logger.warn("Already loading! Draw placeholders and add request, total - ",e.historyPagesRequested)}));if(!this.isOverflowAnchorSupported()){r.Logger.warn("Disabling user scroll");this.$nextTick((function(){var t=e.$refs.body.scrollHeight-s;e.disableUserScroll();e.forceScrollToPosition(e.$refs.body.scrollTop+t)}))}}else if(!this.isRequestingData&&this.remainingHistoryPages>0){r.Logger.warn("Starting new history request");this.isRequestingHistory=true;var i=this.$refs.body.scrollHeight;this.drawPlaceholders(m.history,this.projectedPagesToLoad).then((function(){e.historyPagesRequested=e.projectedPagesToLoad-1;if(!e.isOverflowAnchorSupported()){e.enableUserScroll()}e.requestHistory()}));if(!this.isOverflowAnchorSupported()){r.Logger.warn("Disabling user scroll");this.$nextTick((function(){var t=e.$refs.body.scrollHeight-i;e.disableUserScroll();e.forceScrollToPosition(e.$refs.body.scrollTop+t)}))}}},isOverflowAnchorSupported:function t(){return!a.Utils.platform.isBitrixMobile()&&!a.Utils.browser.isIe()&&!a.Utils.browser.isSafari()&&!a.Utils.browser.isSafariBased()},disableUserScroll:function t(){this.$refs.body.classList.add("bx-im-dialog-list-scroll-blocked")},enableUserScroll:function t(){this.$refs.body.classList.remove("bx-im-dialog-list-scroll-blocked")},onScrollButtonClick:function t(){r.Logger.warn("Scroll button click",this.scrollButtonClicked);if(this.isRequestingData){return false}if(this.unreadCounter===0){this.scrollToBottom();return true}if(this.scrollButtonClicked&&this.remainingUnreadPages>0){r.Logger.warn("Second click on scroll button");this.scrollToLastPage();return true}this.scrollButtonClicked=true;this.scrollToBottom()},onNewMessage:function t(e){var s=this;var i=e.data,a=i.chatId,o=i.messageId;if(a!==this.chatId){return false}r.Logger.warn("Received new message from pull",o);if(this.showScrollButton){return false}this.$nextTick((function(){if(!s.windowFocused){var t=s.$refs["body"].scrollHeight-s.$refs["body"].clientHeight;if(s.currentScroll<t){s.showScrollButton=true}s.scrollToFirstUnreadMessage();return true}var e=s.getElementById(o);if(!e){return false}var i=s.$refs.body;if(e.clientHeight>i.clientHeight){s.scrollToMessage({messageId:o});return true}s.animatedScrollToPosition()}))},onMessagesSet:function t(e){var s=e.data;if(s.chatId!==this.chatId){return false}if(this.messagesSet===true){r.Logger.warn("messages are already set");return false}r.Logger.warn("onMessagesSet",s.chatId);this.messagesSet=true;var i=false;if(this.$refs.body.scrollTop<this.$refs.body.scrollHeight/2){i=true}this.scrollToBottom({force:i,cancelIfScrollChange:false})},onBeforeMobileKeyboard:function t(e){var s=e.data;var i=this.$refs.body;this.scrollBeforeMobileKeyboard=i.scrollHeight-i.scrollTop-i.clientHeight},onExternalUnreadRequest:function t(){var e=this;var s=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=s.data,a=i===void 0?{chatId:0}:i;if(a.chatId!==this.chatId){return false}r.Logger.warn("onExternalUnreadRequest");this.isRequestingUnread=true;this.drawPlaceholders(m.unread).then((function(){return e.requestUnread()}));this.externalUnreadRequestResolve=null;return new Promise((function(t,s){e.externalUnreadRequestResolve=t}))},onScrollOnStart:function t(e){var s=e.data;if(s.chatId!==this.chatId){return false}this.scrollOnStart({force:false})},scrollOnStart:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},s=e.force,i=s===void 0?true:s;r.Logger.warn("scrolling on start of dialog");var a=this.getFirstUnreadMessage();if(a){this.scrollToFirstUnreadMessage(a,i)}else{var o=this.$refs.body;this.forceScrollToPosition(o.scrollHeight-o.clientHeight)}},scrollToBottom:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},s=e.force,i=s===void 0?false:s,a=e.cancelIfScrollChange,o=a===void 0?false:a,n=e.duration,l=n===void 0?null:n;r.Logger.warn("scroll to bottom",i,o,l);if(o&&this.scrollChangedByUser){return false}var d=this.$refs.body;if(this.dialog.counter>0){var c=this.dialog.counter>1&&this.firstUnreadMessageId?this.firstUnreadMessageId:this.lastMessageId;this.scrollToFirstUnreadMessage(c,i);return true}this.showScrollButton=false;if(i){this.forceScrollToPosition(d.scrollHeight-d.clientHeight)}else{var u={};if(l){u.duration=l}this.animatedScrollToPosition(M({},u))}},scrollToFirstUnreadMessage:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:null;var s=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;r.Logger.warn("scroll to first unread");var i=false;if(e!==null){i=this.getElementById(e)}if(!i){e=this.getFirstUnreadMessage()}this.scrollToMessage({messageId:e,force:s})},scrollToMessage:function t(e){var s=e.messageId,i=s===void 0?0:s,a=e.force,o=a===void 0?false:a,n=e.stickToTop,l=n===void 0?true:n;r.Logger.warn("scroll to message");var d=this.$refs.body;var c=this.getElementById(i);var u=0;if(!c){if(l){u=10}else{u=d.scrollHeight-d.clientHeight}}else if(l){u=c.offsetTop-this.messageScrollOffset/2}else{u=c.offsetTop+c.offsetHeight-d.clientHeight+this.messageScrollOffset/2}if(o){this.forceScrollToPosition(u)}else{this.animatedScrollToPosition({end:u})}return true},forceScrollToPosition:function t(e){r.Logger.warn("Force scroll to position - ",e);var s=this.$refs.body;if(!s){return false}if(this.animateScrollId){o.Animation.cancel(this.animateScrollId);this.scrollAnimating=false;this.animateScrollId=null}s.scrollTop=e},animatedScrollToPosition:function t(){var e=this;var s=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};r.Logger.warn("Animated scroll to - ",s);if(this.animateScrollId){o.Animation.cancel(this.animateScrollId);this.scrollAnimating=false}if(typeof s==="function"){s={callback:s}}var i=this.$refs.body;if(!i){if(s.callback&&typeof s.callback==="function"){s.callback()}this.animateScrollId=null;this.scrollAnimating=false;return true}if(a.Utils.platform.isIos()&&a.Utils.platform.getIosVersion()>12&&a.Utils.platform.getIosVersion()<13.2){i.scrollTop=i.scrollHeight-i.clientHeight;return true}var n=s,l=n.start,d=l===void 0?i.scrollTop:l,c=n.end,u=c===void 0?i.scrollHeight-i.clientHeight:c,h=n.increment,g=h===void 0?20:h,m=n.callback,f=n.duration,p=f===void 0?500:f;var v=this.$refs.container;if(v&&u-d>v.offsetHeight*3){d=u-v.offsetHeight*3;r.Logger.warn("Dialog.animatedScroll: Scroll trajectory has been reduced")}this.scrollAnimating=true;r.Logger.warn("Dialog.animatedScroll: User scroll blocked while scrolling");this.animateScrollId=o.Animation.start({start:d,end:u,increment:g,duration:p,element:i,elementProperty:"scrollTop",callback:function t(){e.animateScrollId=null;e.scrollAnimating=false;if(m&&typeof m==="function"){m()}}})},drawPlaceholders:function t(e){var s=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1;var i=e===m.history?this.historyMessageLimit:this.unreadMessageLimit;var a=this.generatePlaceholders(i,s);return this.$store.dispatch("messages/addPlaceholders",{placeholders:a,requestMode:e})},generatePlaceholders:function t(e,s){var i=[];for(var a=0;a<s;a++){for(var o=0;o<this.placeholdersComposition.length;o++){i.push({id:"placeholder".concat(this.placeholderCount),chatId:this.chatId,templateType:d.DialogTemplateType.placeholder,placeholderType:this.placeholdersComposition[o],unread:false});this.placeholderCount++}}return i},getPlaceholdersComposition:function t(){return[1,1,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,3,3].sort((function(){return.5-Math.random()}))},requestHistory:function t(){var e=this;return this.$Bitrix.RestClient.get().callMethod(d.RestMethod.imDialogMessagesGet,{chat_id:this.chatId,last_id:this.lastHistoryMessageId,limit:this.historyMessageLimit,convert_text:"Y"}).then((function(t){var s=t.data().messages;if(s.length>0){e.lastHistoryMessageId=s[s.length-1].id}if(s.length<e.historyMessageLimit){e.stopHistoryLoading=true}e.$Bitrix.Data.get("controller").executeRestAnswer(d.RestMethodHandler.imDialogMessagesGet,t);return new Promise((function(t,i){var a=e.$refs.body.scrollHeight;e.$store.dispatch("messages/updatePlaceholders",{chatId:e.chatId,data:s,firstMessage:e.pagesLoaded*e.placeholdersComposition.length,amount:e.placeholdersComposition.length}).then((function(){if(!e.isOverflowAnchorSupported()){e.enableUserScroll()}t()}));if(!e.isOverflowAnchorSupported()){r.Logger.warn("Disabling user scroll in updating placeholders");e.$nextTick((function(){var t=e.$refs.body.scrollHeight-a;e.disableUserScroll();e.forceScrollToPosition(e.$refs.body.scrollTop+t)}))}}))})).then((function(){e.pagesLoaded+=1;r.Logger.warn("History page loaded. Total loaded - ",e.pagesLoaded);return e.onAfterHistoryRequest()}))["catch"]((function(t){r.Logger.warn("Request history error",t)}))},onAfterHistoryRequest:function t(){var e=this;r.Logger.warn("onAfterHistoryRequest");if(this.stopHistoryLoading){r.Logger.warn("stopHistoryLoading, deleting all delayed requests");this.historyPagesRequested=0}if(this.historyPagesRequested>0){r.Logger.warn("We have delayed requests -",this.historyPagesRequested);this.historyPagesRequested--;return this.requestHistory()}else if(this.$refs.body.scrollTop<=this.scrollingUpThreshold&&this.remainingHistoryPages>0){r.Logger.warn("currentScroll <= scrollingUpThreshold, requesting next page and scrolling");return this.drawPlaceholders(m.history).then((function(t){e.scrollToMessage({messageId:t,force:true,stickToTop:false});return e.requestHistory()}))}else{r.Logger.warn("No more delayed requests, clearing placeholders");this.$store.dispatch("messages/clearPlaceholders",{chatId:this.chatId});this.isRequestingHistory=false;return true}},prepareUnreadRequestParams:function t(){var e;return e={},babelHelpers.defineProperty(e,d.RestMethodHandler.imDialogRead,[d.RestMethod.imDialogRead,{dialog_id:this.dialogId,message_id:this.lastUnreadMessageId}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imChatGet,[d.RestMethod.imChatGet,{dialog_id:this.dialogId}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imDialogMessagesGetUnread,[d.RestMethod.imDialogMessagesGet,{chat_id:this.chatId,first_id:this.lastUnreadMessageId,limit:this.unreadMessageLimit,convert_text:"Y"}]),e},requestUnread:function t(){var e=this;if(!this.lastUnreadMessageId){this.lastUnreadMessageId=this.$store.getters["messages/getLastId"](this.chatId)}if(!this.lastUnreadMessageId){return false}u.EventEmitter.emitAsync(d.EventType.dialog.readMessage,{id:this.lastUnreadMessageId,skipTimer:true,skipAjax:true}).then((function(){e.$Bitrix.RestClient.get().callBatch(e.prepareUnreadRequestParams(),(function(t){return e.onUnreadRequest(t)}))}))},onUnreadRequest:function t(e){var s=this;if(!e){r.Logger.warn("Unread request: callBatch error");return false}var i=e[d.RestMethodHandler.imChatGet];if(i.error()){r.Logger.warn("Unread request: imChatGet error",i.error());return false}this.$Bitrix.Data.get("controller").executeRestAnswer(d.RestMethodHandler.imChatGet,i);var a=e[d.RestMethodHandler.imDialogMessagesGetUnread];if(a.error()){r.Logger.warn("Unread request: imDialogMessagesGetUnread error",a.error());return false}var o=a.data().messages;if(o.length>0){this.lastUnreadMessageId=o[o.length-1].id}this.$Bitrix.Data.get("controller").executeRestAnswer(d.RestMethodHandler.imDialogMessagesGetUnread,a);this.$store.dispatch("messages/updatePlaceholders",{chatId:this.chatId,data:o,firstMessage:this.pagesLoaded*this.placeholdersComposition.length,amount:this.placeholdersComposition.length}).then((function(){s.pagesLoaded+=1;r.Logger.warn("Unread page loaded. Total loaded - ",s.pagesLoaded);return s.onAfterUnreadRequest()}))["catch"]((function(t){r.Logger.warn("Unread history error",t)}))},onAfterUnreadRequest:function t(){if(this.unreadPagesRequested>0){r.Logger.warn("We have delayed requests -",this.unreadPagesRequested);this.unreadPagesRequested--;return this.requestUnread()}else{r.Logger.warn("No more delayed requests, clearing placeholders");this.$store.dispatch("messages/clearPlaceholders",{chatId:this.chatId});this.isRequestingUnread=false;if(this.externalUnreadRequestResolve){this.externalUnreadRequestResolve()}return true}},scrollToLastPage:function t(){var e=this;r.Logger.warn("Load last page");this.drawPlaceholders(m.unread).then((function(){e.isScrolling=true;e.animatedScrollToPosition({callback:function t(){return e.onScrollToLastPage()}})}))},onScrollToLastPage:function t(){var e=this;this.showScrollButton=false;this.$store.dispatch("dialogues/update",{dialogId:this.dialogId,fields:{counter:0}});this.$store.dispatch("messages/clear",{chatId:this.chatId,keepPlaceholders:true});this.$Bitrix.RestClient.get().callBatch(this.prepareLastPageRequestParams(),(function(t){return e.onLastPageRequest(t)}))},prepareLastPageRequestParams:function t(){var e;return e={},babelHelpers.defineProperty(e,d.RestMethodHandler.imDialogRead,[d.RestMethod.imDialogRead,{dialog_id:this.dialogId}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imChatGet,[d.RestMethod.imChatGet,{dialog_id:this.dialogId}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imDialogMessagesGet,[d.RestMethod.imDialogMessagesGet,{chat_id:this.chatId,limit:this.unreadMessageLimit,convert_text:"Y"}]),e},onLastPageRequest:function t(e){var s=this;if(!e){r.Logger.warn("Last page request: callBatch error");return false}var i=e[d.RestMethodHandler.imChatGet];if(i.error()){r.Logger.warn("Last page request: imChatGet error",i.error());return false}this.$Bitrix.Data.get("controller").executeRestAnswer(d.RestMethodHandler.imChatGet,i);var a=e[d.RestMethodHandler.imDialogMessagesGet];if(a.error()){r.Logger.warn("Last page request: imDialogMessagesGet error",a.error());return false}var o=a.data().messages.reverse();this.$Bitrix.Data.get("controller").executeRestAnswer(d.RestMethodHandler.imDialogMessagesGet,a);this.$store.dispatch("messages/updatePlaceholders",{chatId:this.chatId,data:o,firstMessage:this.pagesLoaded*this.placeholdersComposition.length,amount:this.placeholdersComposition.length}).then((function(){s.lastHistoryMessageId=s.collection[0].id;s.pagesLoaded+=1;return s.$store.dispatch("messages/clearPlaceholders",{chatId:s.chatId})})).then((function(){s.scrollToBottom({force:true});s.stopHistoryLoading=false;s.isScrolling=false}))["catch"]((function(t){r.Logger.warn("Unread history error",t)}))},readVisibleMessages:function t(){var e=this;if(!this.windowFocused||!this.messagesSet){r.Logger.warn("reading is disabled!");return false}this.readMessageQueue=this.readMessageQueue.filter((function(t){if(e.readMessageTarget[t]){if(e.observers[g.read]){e.observers[g.read].unobserve(e.readMessageTarget[t])}delete e.readMessageTarget[t]}e.requestReadVisibleMessages(t);return false}))},requestReadVisibleMessages:function t(e){u.EventEmitter.emit(d.EventType.dialog.readMessage,{id:e})},getMessageIdsForPagination:function t(){if(this.unreadInCollection.length>0){this.lastUnreadMessageId=this.unreadInCollection[this.unreadInCollection.length-1].id}},getFirstUnreadMessage:function t(){var e=null;for(var s=this.collection.length-1;s>=0;s--){if(!this.collection[s].unread){break}e=this.collection[s].id}return e},manageScrollButton:function t(e){var s=this;var i=e.target.scrollHeight-e.target.clientHeight;this.scrollChangedByUser=this.currentScroll+this.scrollButtonDiff<i;clearTimeout(this.scrollButtonShowTimeout);this.scrollButtonShowTimeout=setTimeout((function(){if(s.scrollChangedByUser){if(!s.showScrollButton){s.showScrollButton=true}}else{if(s.showScrollButton&&s.remainingUnreadPages===0){s.showScrollButton=false}}}),200);if(e.target.scrollTop===e.target.scrollHeight-e.target.offsetHeight){clearTimeout(this.scrollButtonShowTimeout);if(this.showScrollButton&&this.remainingUnreadPages===0){this.showScrollButton=false}}},getDateObject:function t(){var e=this;if(this.dateFormatFunction){return this.dateFormatFunction}this.dateFormatFunction=Object.create(BX.Main.Date);this.dateFormatFunction._getMessage=function(t){return e.$Bitrix.Loc.getMessage(t)};return this.dateFormatFunction},getDateGroup:function t(e){var s=e.toJSON().slice(0,10);if(this.cachedDateGroups[s]){return this.cachedDateGroups[s]}var i=this.getDateFormat(f.groupTitle);this.cachedDateGroups[s]={id:s,title:this.getDateObject().format(i,e)};return this.cachedDateGroups[s]},getDateFormat:function t(e){return a.Utils.date.getFormatType(BX.Messenger.Const.DateFormat[e],this.$Bitrix.Loc.getMessages())},getDateGroupBlock:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;var s=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";return{templateId:"group"+e,templateType:d.DialogTemplateType.group,text:s}},getDelimiterBlock:function t(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;return{templateId:"delimiter"+e,templateType:d.DialogTemplateType.delimiter}},getObserver:function t(e){var s=this;if(typeof window.IntersectionObserver==="undefined"||e.type===g.none){return{observe:function t(){},unobserve:function t(){}}}var i,a;i=function t(e){e.forEach((function(t){var e=false;if(t.isIntersecting){if(t.intersectionRatio>=.99){e=true}else if(t.intersectionRatio>0&&t.rootBounds.height<t.boundingClientRect.height+20&&t.intersectionRect.height>t.rootBounds.height/2){e=true}}if(e){s.readMessageQueue.push(t.target.dataset.messageId);s.readMessageTarget[t.target.dataset.messageId]=t.target}else{s.readMessageQueue=s.readMessageQueue.filter((function(e){return e!==t.target.dataset.messageId}));delete s.readMessageTarget[t.target.dataset.messageId]}if(s.enableReadMessages){s.readVisibleMessagesDelayed()}}))};a={root:this.$refs.body,threshold:new Array(101).fill(0).map((function(t,e){return e*.01}))};return new IntersectionObserver(i,a)},getElementClass:function t(e){var s=d.DialogReferenceClassName.listItem+"-"+e;return["bx-im-dialog-list-item",d.DialogReferenceClassName.listItem,s]},getElementById:function t(e){var s=this.$refs.body;var i=d.DialogReferenceClassName.listItem+"-"+e;return s.getElementsByClassName(i)[0]},getPlaceholderClass:function t(e){var s=d.DialogReferenceClassName.listItem+"-"+e;return["im-skeleton-item","im-skeleton-item-1","im-skeleton-item--sm",s]}},directives:{"bx-im-directive-dialog-observer":{inserted:function t(e,s,i){if(s.value===g.none){return false}if(!i.context.observers[s.value]){i.context.observers[s.value]=i.context.getObserver({type:s.value})}i.context.observers[s.value].observe(e);return true},unbind:function t(e,s,i){if(s.value===g.none){return true}if(i.context.observers[s.value]){i.context.observers[s.value].unobserve(e)}return true}}},template:'\n\t<div class="bx-im-dialog" @click="onDialogClick" @touchmove="onDialogMove" ref="container">\n\t\t<div :class="bodyClasses" @scroll.passive="onScroll" ref="body">\n\t\t\t\x3c!-- Main elements loop --\x3e\n\t\t\t<template v-for="(element, index) in formattedCollection">\n\t\t\t\t\x3c!-- Message --\x3e\n\t\t\t\t<template v-if="element.templateType === TemplateType.message">\n\t\t\t\t\t<div\n\t\t\t\t\t\t:class="getElementClass(element.id)"\n\t\t\t\t\t\t:data-message-id="element.id"\n\t\t\t\t\t\t:data-template-id="element.templateId"\n\t\t\t\t\t\t:data-type="element.templateType" \n\t\t\t\t\t\t:key="element.templateId"\n\t\t\t\t\t\tv-bx-im-directive-dialog-observer="element.unread? ObserverType.read: ObserverType.none"\n\t\t\t\t\t>\n\t\t\t\t\t\t<component :is="element.params.COMPONENT_ID"\n\t\t\t\t\t\t\t:userId="userId" \n\t\t\t\t\t\t\t:dialogId="dialogId"\n\t\t\t\t\t\t\t:chatId="chatId"\n\t\t\t\t\t\t\t:message="element"\n\t\t\t\t\t\t\t:enableReactions="enableReactions"\n\t\t\t\t\t\t\t:enableDateActions="enableDateActions"\n\t\t\t\t\t\t\t:enableCreateContent="showMessageMenu"\n\t\t\t\t\t\t\t:enableGestureQuote="enableGestureQuote"\n\t\t\t\t\t\t\t:enableGestureQuoteFromRight="enableGestureQuoteFromRight"\n\t\t\t\t\t\t\t:enableGestureMenu="enableGestureMenu"\n\t\t\t\t\t\t\t:showName="showMessageUserName"\n\t\t\t\t\t\t\t:showAvatar="showMessageAvatar"\n\t\t\t\t\t\t\t:showMenu="showMessageMenu"\n\t\t\t\t\t\t\t:capturedMoveEvent="capturedMoveEvent"\n\t\t\t\t\t\t\t:referenceContentClassName="DialogReferenceClassName.listItem"\n\t\t\t\t\t\t\t:referenceContentBodyClassName="DialogReferenceClassName.listItemBody"\n\t\t\t\t\t\t\t:referenceContentNameClassName="DialogReferenceClassName.listItemName"\n\t\t\t\t\t\t\t@dragMessage="onDragMessage"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t\t\x3c!-- Date groups --\x3e\n\t\t\t\t<template v-else-if="element.templateType === TemplateType.group">\n\t\t\t\t\t<div class="bx-im-dialog-group" :data-template-id="element.templateId" :data-type="element.templateType" :key="element.templateId">\n\t\t\t\t\t\t<div class="bx-im-dialog-group-date">{{ element.text }}</div>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t\t\x3c!-- Delimiters --\x3e\n\t\t\t\t<template v-else-if="element.templateType === TemplateType.delimiter">\n\t\t\t\t\t<div class="bx-im-dialog-delimiter" :data-template-id="element.templateId" :data-type="element.templateType" :key="element.templateId"></div>\n\t\t\t\t</template>\n\t\t\t\t\x3c!-- Placeholders --\x3e\n\t\t\t\t<template v-else-if="element.templateType === TemplateType.placeholder">\n\t\t\t\t\t<component :is="\'Placeholder\'+element.placeholderType" :element="element"/>\n\t\t\t\t</template>\n\t\t\t</template>\n\t\t\t\x3c!-- Writing and readed statuses --\x3e\n\t\t\t<transition name="bx-im-dialog-status">\n\t\t\t\t<template v-if="writingStatusText">\n\t\t\t\t\t<div class="bx-im-dialog-status">\n\t\t\t\t\t\t<span class="bx-im-dialog-status-writing"></span>\n\t\t\t\t\t\t{{ writingStatusText }}\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t\t<template v-else-if="statusReaded">\n\t\t\t\t\t<div class="bx-im-dialog-status" @click="onClickOnReadList">\n\t\t\t\t\t\t{{ statusReaded }}\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t</transition>\n\t\t\t<div v-if="showStatusPlaceholder" class="bx-im-dialog-status-placeholder"></div>\n\t\t</div>\n\t\t\x3c!-- Scroll button --\x3e\n\t\t<transition name="bx-im-dialog-scroll-button">\n\t\t\t<div v-show="showScrollButton || (unreadCounter > 0 && !isLastIdInCollection)" class="bx-im-dialog-scroll-button-box" @click="onScrollButtonClick">\n\t\t\t\t<div class="bx-im-dialog-scroll-button">\n\t\t\t\t\t<div v-show="unreadCounter" class="bx-im-dialog-scroll-button-counter">\n\t\t\t\t\t\t<div class="bx-im-dialog-scroll-button-counter-digit">{{ formattedUnreadCounter }}</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="bx-im-dialog-scroll-button-arrow"></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</transition>\n\t</div>\n'};function I(t,e){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),s.push.apply(s,i)}return s}function S(t){for(var e=1;e<arguments.length;e++){var s=null!=arguments[e]?arguments[e]:{};e%2?I(Object(s),!0).forEach((function(e){babelHelpers.defineProperty(t,e,s[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(s)):I(Object(s)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(s,e))}))}return t}var T={computed:S({},h.Vuex.mapState({application:function t(e){return e.application}})),template:'\n\t\t<div class="bx-mobilechat-body">\n\t\t\t<div class="bx-mobilechat-warning-window">\n\t\t\t\t<div class="bx-mobilechat-warning-icon"></div>\n\t\t\t\t<template v-if="application.error.description">\n\t\t\t\t\t<div class="bx-mobilechat-help-title bx-mobilechat-help-title-sm bx-mobilechat-warning-msg" v-html="application.error.description"></div>\n\t\t\t\t</template>\n\t\t\t\t<template v-else>\n\t\t\t\t\t<div class="bx-mobilechat-help-title bx-mobilechat-help-title-md bx-mobilechat-warning-msg">{{$Bitrix.Loc.getMessage(\'IM_DIALOG_ERROR_TITLE\')}}</div>\n\t\t\t\t\t<div class="bx-mobilechat-help-title bx-mobilechat-help-title-sm bx-mobilechat-warning-msg">{{$Bitrix.Loc.getMessage(\'IM_DIALOG_ERROR_DESC\')}}</div>\n\t\t\t\t</template>\n\t\t\t</div>\n\t\t</div>\n\t'};var x={data:function t(){return{placeholdersComposition:[],placeholderTypes:[0,1],placeholderModes:["self","opponent"],placeholdersCount:20}},created:function t(){for(var e=0;e<this.placeholdersCount;e++){var s=Math.floor(Math.random()*this.placeholderTypes.length);var i=Math.floor(Math.random()*this.placeholderModes.length);this.placeholdersComposition.push({index:e,type:s,mode:this.placeholderModes[i],classes:this.getItemClasses(s,i)})}},methods:{getItemClasses:function t(e,s){var i=["im-skeleton-item"];if(this.placeholderModes[s]==="self"){i.push("im-skeleton-item-self")}else{i.push("im-skeleton-item-opponent")}if(e===0){i.push("im-skeleton-item--sm")}else{i.push("im-skeleton-item--md")}return i}},template:'\n\t\t<div class="bx-mobilechat-placeholder-wrap">\n\t\t\t<div class="bx-mobilechat-placeholder-wrap-visible">\n\t\t\t\t<template v-for="item in placeholdersComposition">\n\t\t\t\t\t<div :class="item.classes" :key="item.index">\n\t\t\t\t\t\t<div v-if="item.mode === \'opponent\'" class="im-skeleton-logo"></div>\n\t\t\t\t\t\t<div class="im-skeleton-content">\n\t\t\t\t\t\t\t<template v-if="item.type === 0">\n\t\t\t\t\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t\t\t\t\t<div style="max-width: 70%" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t\t\t\t\t<div style="max-width: 100%" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t\t<div style="max-width: 26px; margin-left: auto;" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t\t\t\t\t<div style="max-width: 35%" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t\t\t\t\t<div style="max-width: 100%" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="im-skeleton-line-row">\n\t\t\t\t\t\t\t\t\t<div style="max-width: 55%" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t\t<div style="max-width: 26px; margin-left: auto;" class="im-skeleton-line"></div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t<div class="im-skeleton-like"></div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t</div>\n\t\t</div>\n\t'};var R={template:'\n\t\t<div class="bx-mobilechat-loading-window">\n\t\t\t<h3 class="bx-mobilechat-help-title bx-mobilechat-help-title-md bx-mobilechat-loading-msg">\n\t\t  \t\t{{ $Bitrix.Loc.getMessage(\'IM_DIALOG_EMPTY\') }}\n\t\t\t</h3>\n\t\t</div>\n\t'};var D={props:{quotePanelData:{type:Object,default:function t(){return{id:0,title:"",description:"",color:""}}},canClose:{default:true}},methods:{close:function t(e){u.EventEmitter.emit(d.EventType.dialog.quotePanelClose,e)}},computed:{formattedTittle:function t(){return this.quotePanelData.title?this.quotePanelData.title.substr(0,255):this.$Bitrix.Loc.getMessage("IM_QUOTE_PANEL_DEFAULT_TITLE")},formattedDescription:function t(){return this.quotePanelData.description?this.quotePanelData.description.substr(0,255):""}},template:'\n\t<transition enter-active-class="bx-im-quote-panel-animation-show" leave-active-class="bx-im-quote-panel-animation-close">\t\t\t\t\n\t\t<div v-if="quotePanelData.id > 0" class="bx-im-quote-panel">\n\t\t\t<div class="bx-im-quote-panel-wrap">\n\t\t\t\t<div class="bx-im-quote-panel-box" :style="{borderLeftColor: quotePanelData.color}">\n\t\t\t\t\t<div class="bx-im-quote-panel-box-title" :style="{color: quotePanelData.color}">{{formattedTittle}}</div>\n\t\t\t\t\t<div class="bx-im-quote-panel-box-desc">{{formattedDescription}}</div>\n\t\t\t\t</div>\n\t\t\t\t<div v-if="canClose" class="bx-im-quote-panel-close" @click="close"></div>\n\t\t\t</div>\n\t\t</div>\n\t</transition>\n'};function E(t,e){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),s.push.apply(s,i)}return s}function C(t){for(var e=1;e<arguments.length;e++){var s=null!=arguments[e]?arguments[e]:{};e%2?E(Object(s),!0).forEach((function(e){babelHelpers.defineProperty(t,e,s[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(s)):E(Object(s)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(s,e))}))}return t}l.BitrixVue.component("bx-im-component-dialog",{components:{MessageList:w,ErrorState:T,LoadingState:x,EmptyState:R,QuotePanel:D},props:{userId:{default:0},dialogId:{default:0},skipDataRequest:{default:false},showLoadingState:{default:true},showEmptyState:{default:true},enableGestureQuote:{default:true},enableGestureQuoteFromRight:{default:true},enableGestureMenu:{default:false},showMessageUserName:{default:true},showMessageAvatar:{default:true}},data:function t(){return{messagesSet:false,dialogState:d.DialogState.loading}},created:function t(){u.EventEmitter.subscribe(d.EventType.dialog.messagesSet,this.onMessagesSet);this.onDialogOpen()},beforeDestroy:function t(){u.EventEmitter.unsubscribe(d.EventType.dialog.messagesSet,this.onMessagesSet)},watch:{dialogId:function t(e,s){r.Logger.warn("Switching dialogId from ",s," to ",e);this.messagesSet=false;this.onDialogOpen()}},computed:C(C({EventType:function t(){return d.EventType},DialogState:function t(){return d.DialogState},dialogWrapClasses:function t(){return["bx-mobilechat-wrapper",{"bx-mobilechat-chat-start":this.isDialogShowingMessages}]},dialogBoxClasses:function t(){return["bx-mobilechat-box",{"bx-mobilechat-box-dark-background":this.isDarkBackground}]},dialogBodyClasses:function t(){return["bx-mobilechat-body",{"bx-mobilechat-body-with-message":this.dialogState===d.DialogState.show}]},quotePanelData:function t(){var e={id:0,title:"",description:"",color:""};if(!this.isDialogShowingMessages||!this.dialog.quoteId){return e}var s=this.$store.getters["messages/getMessage"](this.dialog.chatId,this.dialog.quoteId);if(!s){return e}var i=this.$store.getters["users/get"](s.authorId);var o=this.$store.getters["files/getList"](this.dialog.chatId);return{id:this.dialog.quoteId,title:s.params.NAME?c.Text.decode(s.params.NAME):i?i.name:"",color:i?i.color:"",description:a.Utils.text.purify(s.text,s.params,o,this.localize)}},isLoading:function t(){if(!this.showLoadingState){return false}return!this.isChatIdInModel||this.isChatIdInModel&&!this.isMessagesModelInited&&!this.messagesSet},isEmpty:function t(){return this.showEmptyState&&this.messagesSet&&this.messageCollection.length===0},isChatIdInModel:function t(){var e=this.$store.state.dialogues.collection;return e[this.dialogId]&&e[this.dialogId].chatId>0},isMessagesModelInited:function t(){var e=this.$store.state.messages.collection;return e[this.chatId]},isDialogShowingMessages:function t(){var e=this.messageCollection&&this.messageCollection.length>0;if(e){this.dialogState=d.DialogState.show}else if(this.dialog&&this.dialog.init){this.dialogState=d.DialogState.empty}else{this.dialogState=d.DialogState.loading}return e},dialog:function t(){var t=this.$store.getters["dialogues/get"](this.application.dialog.dialogId);return t?t:this.$store.getters["dialogues/getBlank"]()},chatId:function t(){if(!this.application){return 0}return this.application.dialog.chatId},messageCollection:function t(){return this.$store.getters["messages/get"](this.application.dialog.chatId)},isDarkBackground:function t(){return this.application.options.darkBackground}},h.Vuex.mapState({application:function t(e){return e.application}})),{},{localize:function t(){return l.BitrixVue.getFilteredPhrases(["IM_DIALOG_","IM_UTILS_","IM_MESSENGER_DIALOG_","IM_QUOTE_"],this)}}),methods:{prepareRequestDataQuery:function t(){var e;var s=(e={},babelHelpers.defineProperty(e,d.RestMethodHandler.mobileBrowserConstGet,[d.RestMethod.mobileBrowserConstGet,{}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imChatGet,[d.RestMethod.imChatGet,{dialog_id:this.dialogId}]),babelHelpers.defineProperty(e,d.RestMethodHandler.imDialogMessagesGetInit,[d.RestMethod.imDialogMessagesGet,{dialog_id:this.dialogId,limit:this.getController().application.getRequestMessageLimit(),convert_text:"Y"}]),e);if(a.Utils.dialog.isChatId(this.dialogId)){s[d.RestMethodHandler.imUserGet]=[d.RestMethod.imUserGet,{}]}else{s[d.RestMethodHandler.imUserListGet]=[d.RestMethod.imUserListGet,{id:[this.userId,this.dialogId]}]}return s},requestData:function t(){var e=this;r.Logger.log("requesting dialog data");var s=this.prepareRequestDataQuery();this.$Bitrix.RestClient.get().callBatch(s,(function(t){if(!t){return false}var s=t[d.RestMethodHandler.mobileBrowserConstGet];if(!s.error()){e.executeRestAnswer(d.RestMethodHandler.mobileBrowserConstGet,s)}var i=t[d.RestMethodHandler.imUserGet];if(i&&!i.error()){e.executeRestAnswer(d.RestMethodHandler.imUserGet,i)}var a=t[d.RestMethodHandler.imUserListGet];if(a&&!a.error()){e.executeRestAnswer(d.RestMethodHandler.imUserListGet,a)}var o=t[d.RestMethodHandler.imChatGet];if(!o.error()){e.executeRestAnswer(d.RestMethodHandler.imChatGet,o)}var r=t[d.RestMethodHandler.imDialogMessagesGetInit];if(!r.error()){e.$store.dispatch("application/set",{dialog:{enableReadMessages:true}}).then((function(){e.executeRestAnswer(d.RestMethodHandler.imDialogMessagesGetInit,r)}))}}),false,false,a.Utils.getLogTrackingParams({name:"im.dialog",dialog:this.getController().application.getDialogData()}));return new Promise((function(t,e){return t()}))},onDialogOpen:function t(){if(this.isChatIdInModel){var e=this.$store.state.dialogues.collection;this.$store.commit("application/set",{dialog:{chatId:e[this.dialogId].chatId,dialogId:this.dialogId}})}if(!this.skipDataRequest){this.requestData()}},onMessagesSet:function t(e){var s=e.data;if(s.chatId!==this.chatId){return false}if(this.messagesSet===true){return false}this.messagesSet=true},getController:function t(){return this.$Bitrix.Data.get("controller")},executeRestAnswer:function t(e,s,i){this.getController().executeRestAnswer(e,s,i)}},template:'\n\t\t<div :class="dialogWrapClasses">\n\t\t\t<div :class="dialogBoxClasses" ref="chatBox">\n\t\t\t\t\x3c!-- Error state --\x3e\n\t\t\t\t<ErrorState v-if="application.error.active" />\n\t\t\t\t<template v-else>\n\t\t\t\t\t<div :class="dialogBodyClasses" key="with-message">\n\t\t\t\t\t\t\x3c!-- Loading state --\x3e\n\t\t\t\t\t  \t<LoadingState v-if="isLoading" />\n\t\t\t\t\t\t\x3c!-- Empty state --\x3e\n\t\t\t\t\t  \t<EmptyState v-else-if="isEmpty" />\n\t\t\t\t\t\t\x3c!-- Message list state --\x3e\n\t\t\t\t\t\t<template v-else>\n\t\t\t\t\t\t\t<div class="bx-mobilechat-dialog">\n\t\t\t\t\t\t\t\t<MessageList\n\t\t\t\t\t\t\t\t\t:userId="userId" \n\t\t\t\t\t\t\t\t\t:dialogId="dialogId"\n\t\t\t\t\t\t\t\t\t:messageLimit="application.dialog.messageLimit"\n\t\t\t\t\t\t\t\t\t:enableReadMessages="application.dialog.enableReadMessages"\n\t\t\t\t\t\t\t\t\t:enableReactions="true"\n\t\t\t\t\t\t\t\t\t:enableDateActions="false"\n\t\t\t\t\t\t\t\t\t:enableCreateContent="false"\n\t\t\t\t\t\t\t\t\t:enableGestureQuote="enableGestureQuote"\n\t\t\t\t\t\t\t\t\t:enableGestureQuoteFromRight="enableGestureQuoteFromRight"\n\t\t\t\t\t\t\t\t\t:enableGestureMenu="enableGestureMenu"\n\t\t\t\t\t\t\t\t\t:showMessageUserName="showMessageUserName"\n\t\t\t\t\t\t\t\t\t:showMessageAvatar="showMessageAvatar"\n\t\t\t\t\t\t\t\t\t:showMessageMenu="false"\n\t\t\t\t\t\t\t\t />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\x3c!-- Quote panel --\x3e\n\t\t\t\t\t\t\t<QuotePanel :quotePanelData="quotePanelData" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\t\t\t</div>\n\t\t</div>\n\t'})})(this.BX.Messenger=this.BX.Messenger||{},BX,BX,window,BX.Messenger.Lib,BX.Messenger.Lib,BX.Messenger.Lib,BX,BX,BX.Messenger.Const,BX,BX.Event,BX);
//# sourceMappingURL=dialog.bundle.map.js

Youez - 2016 - github.com/yon3zu
LinuXploit