UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 4.53 kB
module.exports=function(t){function e(s){if(o[s])return o[s].exports;var i=o[s]={exports:{},id:s,loaded:!1};return t[s].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var o={};return e.m=t,e.c=o,e.p="",e(0)}({0:function(t,e,o){t.exports=o(1080)},3:function(t,e){t.exports=function(){throw Error("define cannot be used indirect")}},1080:function(t,e,o){var s,i,n;!function(r,define){i=[o(1081),o(1082),o(1083)],s=r,n="function"==typeof s?s.apply(e,i):s,!(void 0!==n&&(t.exports=n))}(function(){return function(t,e){var o=window.kendo,s=o.ui.Widget,i=t.extend,n=".",r={wrapper:"k-widget k-chat",canvas:"k-chat-canvas",viewWrapper:"k-message-list",messageBoxWrapper:"k-message-box",toolbarBoxWrapper:"k-toolbar-box"},a=s.extend({init:function(t,e,i){s.fn.init.call(this,t,e),i&&(this._events=i),this._user(),this._wrapper(),this._view(),this._messageBox(),e&&e.toolbar&&e.toolbar.buttons&&this._toolbar(),o.notify(this)},events:["typingStart","typingEnd","post","sendMessage","actionClick","toolClick"],options:{user:{name:"User",iconUrl:""},name:"Chat",messages:{placeholder:"Type a message...",toggleButton:"Toggle toolbar",sendButton:"Send message"},toolbar:!1},setOptions:function(e){this._setEvents(e),t.extend(!0,this.options,e),this.toolbar&&"toolbar"in e&&(this.toolbar.destroy(),this.toolbar=null),this.messageBox&&(this.messageBox.unbind(),this.messageBox.destroy(),this.messageBox=null),this._messageBox(),"toolbar"in e&&(this._resetToolbarButtons(e),this._toolbar())},_resetToolbarButtons:function(t){var e=this.wrapper.find(n+r.toolbarBoxWrapper);e.is(":visible")||e.show(),t.toolbar&&"object"==typeof t.toolbar&&"buttons"in t.toolbar&&(this.options.toolbar.buttons=t.toolbar.buttons)},destroy:function(){this.view&&(this.view.unbind(),this.view.destroy(),this.view=null),this.messageBox&&(this.messageBox.unbind(),this.messageBox.destroy(),this.messageBox=null),this.toolbar&&(this.toolbar.destroy(),this.toolbar=null),s.fn.destroy.call(this)},_user:function(){this.options.user.id=o.guid()},getUser:function(){return i(!0,{},this.options.user)},_wrapper:function(){var t=a.styles,e=this.options,o=e.height,s=e.width,i="<div class='"+t.viewWrapper+"'></div><div class='"+t.messageBoxWrapper+"'></div><div class='"+t.toolbarBoxWrapper+"' role='toolbar' style='display:none;'></div>";this.wrapper=this.element.addClass(t.wrapper).append(i),e.toolbar&&e.toolbar.buttons&&e.toolbar.buttons.length&&this.wrapper.find(n+t.toolbarBoxWrapper).show(),o&&this.wrapper.height(o),s&&this.wrapper.css("max-width",s)},_view:function(){var t=this,e=a.styles,s=i(!0,{},this.options),r=this.wrapper.find(n+e.viewWrapper+"");this.view=new o.chat.ChatView(r,s),this.view.bind("actionClick",function(e){t.trigger("actionClick",e),t.postMessage(e.text)})},_messageBox:function(){var t=this,e=a.styles,s=i(!0,{},this.options),r=this.wrapper.find(n+e.messageBoxWrapper+"");this.messageBox=new o.chat.ChatMessageBox(r,s),this.messageBox.bind("typingStart",function(e){t.trigger("typingStart",e)}).bind("typingEnd",function(e){t.trigger("typingEnd",e)}).bind("sendMessage",function(e){t.trigger("sendMessage",e),t.postMessage(e.text)}).bind("toggleToolbar",function(){t.toggleToolbar()})},_toolbar:function(){var t=this,s=a.styles,r=i(!0,{},t.options),l=t.wrapper.find(n+s.toolbarBoxWrapper+"");r.toolbar.scrollable===e&&(this.options.toolbar.scrollable=r.toolbar.scrollable=!0),r.toolbar.toggleable===e&&(this.options.toolbar.toggleable=r.toolbar.toggleable=!1),t.toolbar=new o.chat.ChatToolBar(l,r),t.toolbar.bind("click",function(e){t.trigger("toolClick",{sender:t,name:e.name,button:e.button,messageBox:t.messageBox.input[0],originalEvent:e.originalEvent})})},postMessage:function(t){var e=i(!0,{},{text:t,type:"message",timestamp:new Date,from:this.getUser()});this.trigger("post",e),this.renderMessage(e,e.from)},renderMessage:function(t,e){this.view.renderMessage(t,e)},renderSuggestedActions:function(t){this.view.renderSuggestedActions(t)},renderAttachments:function(t,e){this.view.renderAttachments(t,e)},toggleToolbar:function(t){this.toolbar.toggle(t)},renderUserTypingIndicator:function(t){this.view._renderTypingIndicator(t)},clearUserTypingIndicator:function(t){this.view._removeTypingParticipant(t)},removeTypingIndicator:function(){this.view._removeTypingIndicator()}});o.ui.plugin(a),i(!0,a,{styles:r})}(window.kendo.jQuery),window.kendo},o(3))},1081:function(t,e){t.exports=require("./chat/messageBox")},1082:function(t,e){t.exports=require("./chat/toolbar")},1083:function(t,e){t.exports=require("./chat/view")}});