mirror of
https://github.com/moodle/moodle.git
synced 2025-03-18 06:31:22 +01:00
3 lines
21 KiB
JavaScript
3 lines
21 KiB
JavaScript
function _typeof(e){"@babel/helpers - typeof";if("function"==typeof Symbol&&"symbol"==typeof Symbol.iterator){_typeof=function(e){return typeof e}}else{_typeof=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e}}return _typeof(e)}define ("core_message/message_drawer_view_conversation",["jquery","core/auto_rows","core/backoff_timer","core/custom_interaction_events","core/notification","core/pending","core/pubsub","core/str","core_message/message_repository","core_message/message_drawer_events","core_message/message_drawer_view_conversation_constants","core_message/message_drawer_view_conversation_patcher","core_message/message_drawer_view_conversation_renderer","core_message/message_drawer_view_conversation_state_manager","core_message/message_drawer_router","core_message/message_drawer_routes","core/emoji/auto_complete","core/emoji/picker"],function(s,e,t,n,a,d,r,i,o,g,l,m,c,_,E,u,C,I){var v={},h=null,f=!1,T=0,A=null,p=!1,O=[],M=!0,S=!1,N=!1,b=[],R=null,U=[],L=l.NEWEST_MESSAGES_FIRST,D=l.LOAD_MESSAGE_LIMIT,w=l.MILLISECONDS_IN_SEC,y=l.SELECTORS,P=l.CONVERSATION_TYPES,B=function(){if(!h||h.type==P.PUBLIC){return null}var e=h.loggedInUserId;if(h.type==P.SELF){return e}var s=Object.keys(h.members).filter(function(s){return e!=s});return s.length?s[0]:null},F=function(e){return Object.keys(v).reduce(function(s,t){if(!s){var n=v[t].state;if(n.type!=P.PUBLIC){if(e in n.members){s=n.id}}}return s},null)},k=function(e){return{id:parseInt(e.attr("data-user-id"),10),fullname:null,profileimageurl:null,profileimageurlsmall:null,isonline:null,showonlinestatus:null,isblocked:null,iscontact:null,isdeleted:null,canmessage:null,canmessageevenifblocked:null,requirescontact:null,contactrequests:[]}},V=function(){return T},x=function(e){T=e;v[h.id].messagesOffset=e},G=function(){return f},q=function(e){f=e;v[h.id].loadedAllMessages=e},j=function(e){return e.find(y.MESSAGES_CONTAINER)},K=function(e){return{id:e.id,name:e.name,subname:e.subname,imageUrl:e.imageUrl,isFavourite:e.isFavourite,isMuted:e.isMuted,type:e.type,totalMemberCount:e.totalMemberCount,loggedInUserId:e.loggedInUserId,messages:e.messages.map(function(e){return s.extend({},e)}),members:Object.keys(e.members).map(function(t){var n=s.extend({},e.members[t]);n.contactrequests=e.members[t].contactrequests.map(function(e){return s.extend({},e)});return n})}},Q=function(e,s){var t=e.id,n=t==s?P.SELF:P.PRIVATE,d=_.setLoadingMembers(h,!0);d=_.setLoadingMessages(d,!0);R(d);return o.getMemberInfo(t,[s],!0,!0).then(function(e){if(e.length){return e[0]}else{throw new Error("Unable to load other user profile")}}).then(function(s){var t=n==P.SELF?[s]:[s,e],a=_.addMembers(h,t);a=_.setLoadingMembers(a,!1);a=_.setLoadingMessages(a,!1);a=_.setName(a,s.fullname);a=_.setType(a,n);a=_.setImageUrl(a,s.profileimageurl);a=_.setTotalMemberCount(a,t.length);R(a);return s}).catch(function(e){var s=_.setLoadingMembers(h,!1);R(s);a.exception(e)})},W=function(e,s){var t=null;if(e.type==P.PRIVATE){var n=e.members.filter(function(e){return e.id!=s});t=n.length?n[0]:null}else if(e.type==P.SELF){t=e.members[0]}var a=e.name,d=e.imageurl;if(e.type!=P.PUBLIC){a=a||t?t.fullname:"";d=d||t?t.profileimageurl:""}var r=_.addMembers(h,e.members);r=_.setName(r,a);r=_.setSubname(r,e.subname);r=_.setType(r,e.type);r=_.setImageUrl(r,d);r=_.setTotalMemberCount(r,e.membercount);r=_.setIsFavourite(r,e.isfavourite);r=_.setIsMuted(r,e.ismuted);r=_.addMessages(r,e.messages);r=_.setCanDeleteMessagesForAllUsers(r,e.candeletemessagesforallusers);return r},J=function(e,s,t,n,d){var r=s.id,i=_.setLoadingMembers(h,!0);i=_.setLoadingMessages(i,!0);R(i);return o.getConversation(r,e,!0,!0,0,0,t+1,n,d).then(function(e){if(e.messages.length>t){e.messages=e.messages.slice(1)}else{q(!0)}x(n+t);return e}).then(function(e){var t=e.members.filter(function(e){return e.id==s.id});if(1>t.length){e.members=e.members.concat([s])}var n=W(e,s.id);n=_.setLoadingMembers(n,!1);n=_.setLoadingMessages(n,!1);return R(n).then(function(){return e})}).then(function(){return z(e)}).catch(function(e){var s=_.setLoadingMembers(h,!1);s=_.setLoadingMessages(s,!1);R(s);a.exception(e)})},X=function(e,s,t,n){var d=e.members.filter(function(e){return e.id==s.id});if(1>d.length){e.members=e.members.concat([s])}var r=e.messages.length,i=r>=t,o=W(e,s.id);o=_.setLoadingMembers(o,!1);o=_.setLoadingMessages(o,!i);var g=R(o);return g.then(function(){if(!i){return Y(e.id,t,r,n,[])}else{return{messages:e.messages}}}).then(function(){var e=h.messages;x(e.length);z(h.id);return e}).catch(a.exception)},Y=function(e,s,t,n,a,d){return o.getMessages(h.loggedInUserId,e,s?s+1:s,t,n,d).then(function(e){if(e.id!=h.id){e.messages=[];if(e.id in v){delete v[e.id]}}return e}).then(function(e){if(e.messages.length&&a.length){e.messages=e.messages.filter(function(e){return 0>a.indexOf(parseInt(e.id,10))})}return e}).then(function(e){if(!s){return e}else if(e.messages.length>s){e.messages=e.messages.slice(0,-1)}else{q(!0)}return e}).then(function(e){var s=e.members.filter(function(e){return!(e.id in h.members)}),t=_.addMembers(h,s);t=_.addMessages(t,e.messages);t=_.setLoadingMessages(t,!1);return R(t).then(function(){return e})}).catch(function(e){var s=_.setLoadingMessages(h,!1);R(s);throw e})},H=function(e,t){return function(){var n=h.messages,a=n.length?n[n.length-1]:null,d=a?a.timeCreated:null;if(d&&!M&&!S&&!N){for(var o=[],l=n.length-1,m;0<=l;l--){m=n[l];if(m.timeCreated===d){o.push(m.id)}else{break}}return Y(e,0,0,t,o,d).then(function(s){if(s.messages.length){A.restart();var t=K(h);r.publish(g.CONVERSATION_NEW_LAST_MESSAGE,t);return z(e)}else{return s}})}return s.Deferred().resolve().promise()}},z=function(e){var s=h.loggedInUserId,t=new d("core_message/message_drawer_view_conversation:markConversationAsRead");return o.markAllConversationMessagesAsRead(s,e).then(function(){var s=_.markMessagesAsRead(h,h.messages);r.publish(g.CONVERSATION_READ,e);return R(s)}).then(function(e){t.resolve();return e})},Z=function(e){Ee(e);var s=_.addPendingBlockUsersById(h,[e]);R(s)},$=function(e){var s=_.setLoadingConfirmAction(h,!0),t=new d("core_message/message_drawer_view_conversation:blockUser");R(s);return o.blockUser(h.loggedInUserId,e).then(function(s){var t=_.addMembers(h,[s]);t=_.removePendingBlockUsersById(t,[e]);t=_.setLoadingConfirmAction(t,!1);r.publish(g.CONTACT_BLOCKED,e);return R(t)}).then(function(e){t.resolve();return e})},ee=function(e){Ee(e);var s=_.addPendingUnblockUsersById(h,[e]);R(s)},se=function(e){var s=_.setLoadingConfirmAction(h,!0),t=new d("core_message/message_drawer_view_conversation:unblockUser");R(s);return o.unblockUser(h.loggedInUserId,e).then(function(s){var t=_.addMembers(h,[s]);t=_.removePendingUnblockUsersById(t,[e]);t=_.setLoadingConfirmAction(t,!1);r.publish(g.CONTACT_UNBLOCKED,e);return R(t)}).then(function(e){t.resolve();return e})},te=function(e){Ee(e);var s=_.addPendingRemoveContactsById(h,[e]);R(s)},ne=function(e){var s=_.setLoadingConfirmAction(h,!0),t=new d("core_message/message_drawer_view_conversation:removeContact");R(s);return o.deleteContacts(h.loggedInUserId,[e]).then(function(s){var t=_.addMembers(h,s);t=_.removePendingRemoveContactsById(t,[e]);t=_.setLoadingConfirmAction(t,!1);r.publish(g.CONTACT_REMOVED,e);return R(t)}).then(function(e){t.resolve();return e})},ae=function(e){Ee(e);var s=_.addPendingAddContactsById(h,[e]);R(s)},de=function(e){var s=_.setLoadingConfirmAction(h,!0),t=new d("core_message/message_drawer_view_conversation:addContactRequests");R(s);return o.createContactRequest(h.loggedInUserId,e).then(function(e){if(!e.request){throw new Error(e.warnings[0].message)}return e.request}).then(function(s){var t=_.removePendingAddContactsById(h,[e]);t=_.addContactRequests(t,[s]);t=_.setLoadingConfirmAction(t,!1);return R(t)}).then(function(e){t.resolve();return e})},re=function(){var e=h.loggedInUserId,s=h.id,t=new d("core_message/message_drawer_view_conversation:setFavourite");return o.setFavouriteConversations(e,[s]).then(function(){var e=_.setIsFavourite(h,!0);return R(e)}).then(function(){return r.publish(g.CONVERSATION_SET_FAVOURITE,K(h))}).then(function(e){t.resolve();return e})},ie=function(){var e=h.loggedInUserId,s=h.id,t=new d("core_message/message_drawer_view_conversation:unsetFavourite");return o.unsetFavouriteConversations(e,[s]).then(function(){var e=_.setIsFavourite(h,!1);return R(e)}).then(function(){return r.publish(g.CONVERSATION_UNSET_FAVOURITE,K(h))}).then(function(e){t.resolve();return e})},oe=function(){var e=h.loggedInUserId,s=h.id,t=new d("core_message/message_drawer_view_conversation:markConversationAsRead");return o.setMutedConversations(e,[s]).then(function(){var e=_.setIsMuted(h,!0);return R(e)}).then(function(){return r.publish(g.CONVERSATION_SET_MUTED,K(h))}).then(function(e){t.resolve();return e})},ge=function(){var e=h.loggedInUserId,s=h.id;return o.unsetMutedConversations(e,[s]).then(function(){var e=_.setIsMuted(h,!1);return R(e)}).then(function(){return r.publish(g.CONVERSATION_UNSET_MUTED,K(h))})},le=function(e){var s=h.selectedMessageIds;Ee(e);var t=_.addPendingDeleteMessagesById(h,s);R(t)},me=function(){var e=new d("core_message/message_drawer_view_conversation:deleteSelectedMessages"),t=h.pendingDeleteMessageIds,n=h.messages.filter(function(e){return 0<=t.indexOf(e.id)&&("sent"==e.sendState||null===e.sendState)}),i=_.setLoadingConfirmAction(h,!0);R(i);var l=s.Deferred().resolve().promise();if(n.length){var m=n.map(function(e){return e.id});if(i.deleteMessagesForAllUsers){l=o.deleteMessagesForAllUsers(h.loggedInUserId,m)}else{l=o.deleteMessages(h.loggedInUserId,m)}}N=!0;if(A){A.stop()}return l.then(function(){var e=_.removeMessagesById(h,t);e=_.removePendingDeleteMessagesById(e,t);e=_.removeSelectedMessagesById(e,t);e=_.setLoadingConfirmAction(e,!1);e=_.setDeleteMessagesForAllUsers(e,!1);var s=h.messages[h.messages.length-1],n=e.messages.length?e.messages[e.messages.length-1]:null;if(n&&n.id!=s.id){var a=K(e);r.publish(g.CONVERSATION_NEW_LAST_MESSAGE,a)}else if(!e.messages.length){r.publish(g.CONVERSATION_DELETED,e.id)}N=!1;return R(e)}).then(function(s){e.resolve();return s}).catch(a.exception)},ce=function(e){Ee(e);var s=_.setPendingDeleteConversation(h,!0);R(s)},_e=function(){var e=new d("core_message/message_drawer_view_conversation:markConversationAsRead"),s=_.setLoadingConfirmAction(h,!0);R(s);N=!0;if(A){A.stop()}return o.deleteConversation(h.loggedInUserId,h.id).then(function(){var e=_.removeMessages(h,h.messages);e=_.removeSelectedMessagesById(e,h.selectedMessageIds);e=_.setPendingDeleteConversation(e,!1);e=_.setLoadingConfirmAction(e,!1);r.publish(g.CONVERSATION_DELETED,e.id);N=!1;return R(e)}).then(function(s){e.resolve();return s})},Ee=function(e){var s=h.pendingDeleteMessageIds,t=_.removePendingAddContactsById(h,[e]);t=_.removePendingRemoveContactsById(t,[e]);t=_.removePendingUnblockUsersById(t,[e]);t=_.removePendingBlockUsersById(t,[e]);t=_.removePendingDeleteMessagesById(t,s);t=_.setPendingDeleteConversation(t,!1);t=_.setDeleteMessagesForAllUsers(t,!1);R(t)},ue=function(e){var s=new d("core_message/message_drawer_view_conversation:acceptContactRequest"),t=h.loggedInUserId,n=h.members[e].contactrequests.filter(function(e){return e.requesteduserid==t}),a=n[0],i=_.setLoadingConfirmAction(h,!0);R(i);return o.acceptContactRequest(e,t).then(function(e){var s=_.removeContactRequests(h,[a]);s=_.addMembers(h,[e]);s=_.setLoadingConfirmAction(s,!1);return R(s)}).then(function(){r.publish(g.CONTACT_ADDED,h.members[e]);r.publish(g.CONTACT_REQUEST_ACCEPTED,a)}).then(function(e){s.resolve();return e})},Ce=function(e){var s=new d("core_message/message_drawer_view_conversation:declineContactRequest"),t=h.loggedInUserId,n=h.members[e].contactrequests.filter(function(e){return e.requesteduserid==t}),a=n[0],i=_.setLoadingConfirmAction(h,!0);R(i);return o.declineContactRequest(e,t).then(function(e){var s=_.removeContactRequests(h,[a]);s=_.addMembers(h,[e]);s=_.setLoadingConfirmAction(s,!1);return R(s)}).then(function(){r.publish(g.CONTACT_REQUEST_DECLINED,a)}).then(function(e){s.resolve();return e})},Ie=function(){if(S){return}if(!b.length){return}var e=new d("core_message/message_drawer_view_conversation:processSendMessageBuffer");S=!0;var t=b.slice();b=[];var n=h.id,a=null,l=t.map(function(e){return e.text}),m=t.map(function(e){return e.id}),c=null,E=null;if(!n&&h.type!=P.PUBLIC){var u=B();c=o.sendMessagesToUser(u,l).then(function(e){if(e.length){a=parseInt(e[0].conversationid,10);E=e[0].candeletemessagesforallusers}return e})}else{c=o.sendMessagesToConversation(n,l)}c.then(function(e){var s=e.map(function(e){return e.id}),n=[],d=[],i=[];t.forEach(function(s,t){var a=e[t];n.push([s,a]);if(0<=h.selectedMessageIds.indexOf(s.id)){d.push(s.id);i.push(a.id)}});var o=_.updateMessages(h,n);o=_.setMessagesSendSuccessById(o,s);if(d.length){o=_.removeSelectedMessagesById(o,d)}if(i.length){o=_.addSelectedMessagesById(o,i)}var l=K(o);if(!o.id){o=_.setId(o,a);l.id=a;xe(a);r.publish(g.CONVERSATION_CREATED,l);o=_.setCanDeleteMessagesForAllUsers(o,E)}R(o);S=!1;Ie();r.publish(g.CONVERSATION_NEW_LAST_MESSAGE,l)}).then(function(s){e.resolve();return s}).catch(function(t){var n;if(t.message){n=s.Deferred().resolve(t.message).promise()}else{n=i.get_string("unknownerror","core")}var a=function(e){var s=_.setMessagesSendFailById(h,m,e);R(s);S=!1;Ie()};n.then(a).then(function(s){e.resolve();return s}).catch(function(s){var e=s.message||"Something went wrong!";a(e)})})},ve=function(e){var s=e.replace(/<style([\s\S]*?)<\/style>/gi,"");s=s.replace(/<script([\s\S]*?)<\/script>/gi,"");s=s.replace(/<\/div>/ig,"\n");s=s.replace(/<\/li>/ig,"\n");s=s.replace(/<li>/ig," * ");s=s.replace(/<\/ul>/ig,"\n");s=s.replace(/<\/p>/ig,"\n");s=s.replace(/<br[^>]*>/gi,"\n");s=s.replace(/<[^>]+>/ig,"");s=s.replace(/\n+/ig,"\n");return s.replace(/\n/ig,"<br>")},he=function(e){var s="temp"+Date.now(),t={id:s,useridfrom:h.loggedInUserId,text:ve(e),timecreated:null},n=_.addMessages(h,[t]);R(n);var a={id:s,useridfrom:h.loggedInUserId,text:e,timecreated:null};b.push(a);Ie()},fe=function(e){var s=_.setMessagesSendPendingById(h,[e.id]);R(s);b.push(e);Ie()},Te=function(e){var s=h;if(-1<h.selectedMessageIds.indexOf(e)){s=_.removeSelectedMessagesById(h,[e])}else{s=_.addSelectedMessagesById(h,[e])}R(s)},Ae=function(){Ee(B());var e=_.removeSelectedMessagesById(h,h.selectedMessageIds);R(e)},pe=function(e,t,n){if(p){return}if(!O.length){return}p=!0;var d=O.shift(),r=U.map(function(e){return e(d.patch)});s.when.apply(null,r).then(function(){p=!1;d.deferred.resolve(!0);pe(e,t,n)}).catch(function(e){p=!1;d.deferred.reject(e);a.exception(e)})},Oe=function(e,t,n,a){var d=function(s){return c.render(e,t,n,s)};if(!a){var r=_.buildInitialState(h.midnight,h.loggedInUserId,h.id),i=m.buildPatch(r,h);d(i)}U.push(d);return function(a){var d=m.buildPatch(h,a),r=s.Deferred();if(Object.keys(d).length){O.push({patch:d,deferred:r})}else{r.resolve(!0)}h=a;if(a.id){v[a.id]={state:a,messagesOffset:V(),loadedAllMessages:G()}}pe(e,t,n);return r.promise()}},Me=function(e){return function(s,t){if(!h.loadingConfirmAction){e(B());var n=_.setLoadingConfirmAction(h,!1);R(n)}t.originalEvent.preventDefault()}},Se=function(t,e){var n=s(t.target),a=n.closest(y.FOOTER_CONTAINER),d=a.find(y.MESSAGE_TEXT_AREA),r=d.val().trim();if(""!==r){he(r);d.val("");d.focus()}e.originalEvent.preventDefault()},Ne=function(t,e){var n=window.getSelection(),a=s(t.target);if(""!=n.toString()){return}if(a.is("a")){return}var d=a.closest(y.MESSAGE),r=d.attr("data-message-id");Te(r);e.originalEvent.preventDefault()},be=function(t,e){var n=s(t.target),a=n.closest(y.MESSAGE),d=a.attr("data-message-id"),r=h.messages.filter(function(e){return e.id==d}),i=r.length?r[0]:null;if(i){fe(i)}e.originalEvent.preventDefault();e.originalEvent.stopPropagation();t.stopPropagation()},Re=function(s,e){Ae();e.originalEvent.preventDefault()},Ue=function(s){return function(t,e){var n=B(),a=h.members[n];E.go(s,u.VIEW_CONTACT,a);e.originalEvent.preventDefault()}},Le=function(s,e){re().catch(a.exception);e.originalEvent.preventDefault()},De=function(s,e){ie().catch(a.exception);e.originalEvent.preventDefault()},we=function(s,e){oe().catch(a.exception);e.originalEvent.preventDefault()},ye=function(s,e){ge().catch(a.exception);e.originalEvent.preventDefault()},Pe=function(t){var e=s(t.target).prop("checked"),n=_.setDeleteMessagesForAllUsers(h,e);R(n)},Be=function(s){return function(t,e){E.go(s,u.VIEW_GROUP_INFO,{id:h.id,name:h.name,subname:h.subname,imageUrl:h.imageUrl,totalMemberCount:h.totalMemberCount},h.loggedInUserId);e.originalEvent.preventDefault()}},Fe=function(s,e){var t=_.setShowEmojiPicker(h,!h.showEmojiPicker);R(t);e.originalEvent.preventDefault()},ke=function(t){var e=s(t.target);if(h.showEmojiPicker&&!e.closest(y.EMOJI_PICKER_CONTAINER).length&&!e.closest(y.TOGGLE_EMOJI_PICKER_BUTTON).length){var n=_.setShowEmojiPicker(h,!1);R(n)}},Ve=function(t,d,i,o){var l=!1,m=j(i),c=o.find(y.EMOJI_PICKER),E=o.find(y.EMOJI_AUTO_COMPLETE_CONTAINER),v=o.find(y.MESSAGE_TEXT_AREA),f=[[y.ACTION_REQUEST_BLOCK,Me(Z)],[y.ACTION_REQUEST_UNBLOCK,Me(ee)],[y.ACTION_REQUEST_ADD_CONTACT,Me(ae)],[y.ACTION_REQUEST_REMOVE_CONTACT,Me(te)],[y.ACTION_REQUEST_DELETE_CONVERSATION,Me(ce)],[y.ACTION_CANCEL_EDIT_MODE,Re],[y.ACTION_VIEW_CONTACT,Ue(t)],[y.ACTION_VIEW_GROUP_INFO,Be(t)],[y.ACTION_CONFIRM_FAVOURITE,Le],[y.ACTION_CONFIRM_MUTE,we],[y.ACTION_CONFIRM_UNFAVOURITE,De],[y.ACTION_CONFIRM_UNMUTE,ye]],T=[[y.ACTION_CANCEL_CONFIRM,Me(Ee)],[y.ACTION_CONFIRM_BLOCK,Me($)],[y.ACTION_CONFIRM_UNBLOCK,Me(se)],[y.ACTION_CONFIRM_ADD_CONTACT,Me(de)],[y.ACTION_CONFIRM_REMOVE_CONTACT,Me(ne)],[y.ACTION_CONFIRM_DELETE_SELECTED_MESSAGES,Me(me)],[y.ACTION_CONFIRM_DELETE_CONVERSATION,Me(_e)],[y.ACTION_OKAY_CONFIRM,Me(Ee)],[y.ACTION_REQUEST_ADD_CONTACT,Me(ae)],[y.ACTION_ACCEPT_CONTACT_REQUEST,Me(ue)],[y.ACTION_DECLINE_CONTACT_REQUEST,Me(Ce)],[y.MESSAGE,Ne],[y.DELETE_MESSAGES_FOR_ALL_USERS_TOGGLE,Pe],[y.RETRY_SEND,be]],p=[[y.SEND_MESSAGE_BUTTON,Se],[y.TOGGLE_EMOJI_PICKER_BUTTON,Fe],[y.ACTION_REQUEST_DELETE_SELECTED_MESSAGES,Me(le)],[y.ACTION_REQUEST_ADD_CONTACT,Me(ae)],[y.ACTION_REQUEST_UNBLOCK,Me(ee)]];e.init(o);if(E.length){C(E[0],v[0],function(e){var s=_.setShowEmojiAutoComplete(h,e);R(s)},function(e){var s=_.setShowEmojiAutoComplete(h,!1);R(s);v.focus();var t=v.prop("selectionStart"),n=v.val(),a=n.substring(0,t).replace(/\S*$/,""),d=n.substring(t).replace(/^\S*/,"");v.val(a+e+d);v.prop("selectionStart",a.length+e.length);v.prop("selectionEnd",a.length+e.length)})}if(c.length){I(c[0],function(e){var s=_.setShowEmojiPicker(h,!h.showEmojiPicker);R(s);v.focus();var t=v.prop("selectionStart"),n=v.val(),a=n.substring(0,t),d=n.substring(t,n.length);v.val(a+e+d);v.prop("selectionStart",t+e.length);v.prop("selectionEnd",t+e.length)})}n.define(d,[n.events.activate]);n.define(i,[n.events.activate]);n.define(o,[n.events.activate,n.events.enter,n.events.escape]);n.define(m,[n.events.scrollTop,n.events.scrollLock]);m.on(n.events.scrollTop,function(s,e){var t=1<Object.keys(h.members).length;if(!M&&!l&&!G()&&t){l=!0;var n=_.setLoadingMessages(h,!0);R(n);Y(h.id,D,V(),L,[]).then(function(){l=!1;x(V()+D)}).catch(function(e){l=!1;a.exception(e)})}e.originalEvent.preventDefault()});f.forEach(function(e){var s=e[0],t=e[1];d.on(n.events.activate,s,t)});T.forEach(function(e){var s=e[0],t=e[1];i.on(n.events.activate,s,t)});p.forEach(function(e){var s=e[0],t=e[1];o.on(n.events.activate,s,t)});o.on(n.events.enter,y.MESSAGE_TEXT_AREA,function(s,e){var t=o.attr("data-enter-to-send");if(t&&"false"!=t&&"0"!=t){Se(s,e)}});o.on(n.events.escape,y.EMOJI_PICKER_CONTAINER,Fe);s(document.body).on("click",ke);r.subscribe(g.ROUTE_CHANGED,function(e){if(A){if(e.route!=u.VIEW_CONVERSATION){A.stop()}}})},xe=function(e){if(A){A.stop()}A=new t(H(e,L),t.getIncrementalCallback(h.messagePollMin*w,w,h.messagePollMax*w,h.messagePollAfterMax*w));A.start()},Ge=function(e,s,t){if(A){A.stop()}f=!1;T=0;A=null;p=!1;O=[];M=!0;S=!1;N=!1;b=[];var n=t.id,a=parseInt(e.attr("data-midnight"),10),d=parseInt(e.attr("data-message-poll-min"),10),r=parseInt(e.attr("data-message-poll-max"),10),i=parseInt(e.attr("data-message-poll-after-max"),10),o=_.buildInitialState(a,n,s,d,r,i);if(!h){h=o}R(o)},qe=function(e,s,t){Ge(e,null,s);var n=null;if(s.id!=t){n=o.getConversationBetweenUsers(s.id,t,!0,!0,0,0,D,0,L)}else{n=o.getSelfConversation(s.id,D,0,L)}return n.then(function(t){return Ke(e,t,s)}).catch(function(){return Q(s,t)})},je=function(e,t,n){var a=null;if(t in v){a=v[t]}Ge(e,t,n);var d=s.Deferred().resolve({}).promise();if(a){var r=a.state;r=_.setLoadingMessages(r,!1);r=_.setLoadingMembers(r,!1);x(a.messagesOffset);q(a.loadedAllMessages);R(r)}else{d=J(t,n,D,0,L)}return d.then(function(){return xe(t)})},Ke=function(e,t,n){var a=null;if(t.id in v){a=v[t.id]}Ge(e,t.id,n);var d=s.Deferred().resolve({}).promise();if(a){var r=a.state;r=_.setLoadingMessages(r,!1);r=_.setLoadingMembers(r,!1);x(a.messagesOffset);q(a.loadedAllMessages);R(r)}else{d=X(t,n,D,L)}return d.then(function(){return xe(t.id)})},Qe=function(e,t,n,d,r,i,o){var g=null,m=null;if(r&&null!==r&&"object"==_typeof(r)){g=r;m=parseInt(g.id,10)}else{g=null;m=parseInt(r,10);m=isNaN(m)?null:m}if(!m&&i&&o){m=F(o)}var c=!h||h.id!=m||o&&o!=B();if(!n.attr("data-init")){R=Oe(t,n,d,c);Ve(e,t,n,d);n.attr("data-init",!0)}if(c){var _=null,E=k(n);if(g){_=Ke(n,g,E,o)}else if(m){_=je(n,m,E,o)}else{_=qe(n,E,o)}return _.then(function(){M=!1;t.find(l.SELECTORS.CAN_RECEIVE_FOCUS).first().focus()}).catch(function(e){M=!1;a.exception(e)})}xe(m);if(h.type==P.PRIVATE&&i){var u=B();switch(i){case"block":return Z(u);case"unblock":return ee(u);case"add-contact":return ae(u);case"remove-contact":return te(u);}}return s.Deferred().resolve().promise()},We=function(){return i.get_string("messagedrawerviewconversation","core_message",h.name)};return{show:Qe,description:We}});
|
|
//# sourceMappingURL=message_drawer_view_conversation.min.js.map
|