From f3d645f1d6cfe65b7c1ad25c7f777df2a711bb1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lorenz=20H=C3=BCbschle-Schneider?= Date: Mon, 2 Mar 2015 23:02:27 +0100 Subject: [PATCH] Bump version to 0.4.8 and minify This brings the GitHub and Play Store versions back into sync --- bower.json | 2 +- manifest.json | 2 +- manifest.webapp | 2 +- min.js | 4 ++-- min.map | 2 +- package.json | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/bower.json b/bower.json index cb3a694..0110b3c 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { "name": "glowing-bear", "description": "A webclient for WeeChat", - "version": "0.4.0", + "version": "0.4.8", "homepage": "https://github.com/glowing-bear/glowing-bear", "license": "GPLv3", "private": true, diff --git a/manifest.json b/manifest.json index 583dd44..13e0edb 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "name": "Glowing Bear", "description": "WeeChat Web frontend", - "version": "0.4.5", + "version": "0.4.8", "manifest_version": 2, "icons": { "32": "assets/img/favicon.png", diff --git a/manifest.webapp b/manifest.webapp index 2b4a2ba..c367612 100644 --- a/manifest.webapp +++ b/manifest.webapp @@ -25,5 +25,5 @@ "desktop-notification":{} }, "default_locale": "en", - "version": "0.4.5" + "version": "0.4.8" } diff --git a/min.js b/min.js index c001c16..01ed3fe 100644 --- a/min.js +++ b/min.js @@ -1,3 +1,3 @@ -!function(){"use strict";var e=angular.module("localStorage",[]);e.factory("$store",["$parse",function(e){var t="undefined"==typeof window.localStorage?void 0:window.localStorage,n=!("undefined"==typeof t||"undefined"==typeof window.JSON);n||console.log("Warning: localStorage is not supported");var i={parseValue:function(e){var t;try{t=JSON.parse(e),void 0===t&&(t=e),"true"===t&&(t=!0),"false"===t&&(t=!1),parseFloat(t)!=t||angular.isObject(t)||(t=parseFloat(t))}catch(n){t=e}return t}},r={set:function(e,r){n||console.log("Local Storage not supported");var o=JSON.stringify(r);return t.setItem(e,o),i.parseValue(o)},get:function(e){if(!n)return null;var r=t.getItem(e);return i.parseValue(r)},remove:function(e){return n?(t.removeItem(e),!0):!1},enumerateKeys:function(){for(var e=[],n=0,i=t.length;i>n;++n)e.push(t.key(n));return e},bind:function(t,n,i){return void 0===i&&(i=""),(void 0===r.get(n)||null===r.get(n))&&r.set(n,i),e(n).assign(t,r.get(n)),t.$watch(n,function(e){r.set(n,e)},!0),r.get(n)}};return r}])}(),function(e){"use strict";!function(){var t=function(){this._types={chr:this._getChar,int:this._getInt,str:this._getString,inf:this._getInfo,hda:this._getHdata,ptr:this._getPointer,lon:this._getStrNumber,tim:this._getTime,buf:this._getString,arr:this._getArray,htb:this._getHashTable,inl:function(){this._warnUnimplemented("infolist")}},this._typesStr={chr:this._strDirect,str:this._strDirect,int:this._strToString,tim:this._strToString,ptr:this._strDirect}};t._weeChatColorsNames=["default","black","darkgray","red","lightred","green","lightgreen","brown","yellow","blue","lightblue","magenta","lightmagenta","cyan","lightcyan","gray","white"],t._colorsOptionsNames=["separator","chat","chat_time","chat_time_delimiters","chat_prefix_error","chat_prefix_network","chat_prefix_action","chat_prefix_join","chat_prefix_quit","chat_prefix_more","chat_prefix_suffix","chat_buffer","chat_server","chat_channel","chat_nick","chat_nick_self","chat_nick_other","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","chat_host","chat_delimiters","chat_highlight","chat_read_marker","chat_text_found","chat_value","chat_prefix_buffer","chat_tags","chat_inactive_window","chat_inactive_buffer","chat_prefix_buffer_inactive_buffer","chat_nick_offline","chat_nick_offline_highlight","chat_nick_prefix","chat_nick_suffix","emphasis","chat_day_change"],t._getDefaultColor=function(){return{type:"weechat",name:"default"}},t._getDefaultAttributes=function(){return{name:null,override:{bold:!1,reverse:!1,italic:!1,underline:!1}}},t._getDefaultStyle=function(){return{fgColor:t._getDefaultColor(),bgColor:t._getDefaultColor(),attrs:t._getDefaultAttributes()}},t._cloneColor=function(e){var t={};for(var n in e)t[n]=e[n];return t},t._cloneAttrs=function(e){var t={};t.name=e.name,t.override={};for(var n in e.override)t.override[n]=e.override[n];return t},t._attrNameFromChar=function(e){var t={"*":"b","!":"r","/":"i",_:"u","":"b","":"r","":"i","":"u"};return e in t?t[e]:null},t._attrsFromStr=function(e){for(var n=t._getDefaultAttributes(),i=0;i16?t._getDefaultColor():{type:"weechat",name:t._weeChatColorsNames[n]}}var i=e.substring(1);return{type:"ext",name:parseInt(i).toString()}},t._getStyle=function(e){var n=[{regex:/^(\d{2})/,fn:function(e){var n={},i=parseInt(e[1]);if(i>43)return{fgColor:null,bgColor:null,attrs:null};var r=t._colorsOptionsNames[i];return n.fgColor={type:"option",name:r},n.bgColor=t._cloneColor(n.fgColor),n.attrs={name:r,override:{}},n}},{regex:/^@(\d{5})/,fn:function(){return{fgColor:null,bgColor:null,attrs:null}}},{regex:/^F(?:([*!\/_|]*)(\d{2})|@([\x01\x02\x03\x04*!\/_|]*)(\d{5}))/,fn:function(e){var n={bgColor:null};return e[2]?(n.attrs=t._attrsFromStr(e[1]),n.fgColor=t._getColorObj(e[2])):(n.attrs=t._attrsFromStr(e[3]),n.fgColor=t._getColorObj(e[4])),n}},{regex:/^B(\d{2}|@\d{5})/,fn:function(e){return{fgColor:null,bgColor:t._getColorObj(e[1]),attrs:null}}},{regex:/^\*(?:([\x01\x02\x03\x04*!\/_|]*)(\d{2})|@([\x01\x02\x03\x04*!\/_|]*)(\d{5})),(\d{2}|@\d{5})/,fn:function(e){var n={};return e[2]?(n.attrs=t._attrsFromStr(e[1]),n.fgColor=t._getColorObj(e[2])):(n.attrs=t._attrsFromStr(e[3]),n.fgColor=t._getColorObj(e[4])),n.bgColor=t._getColorObj(e[5]),n}},{regex:/^\*([\x01\x02\x03\x04*!\/_|]*)(\d{2}|@\d{5})/,fn:function(e){return{fgColor:t._getColorObj(e[2]),bgColor:null,attrs:t._attrsFromStr(e[1])}}},{regex:/^E/,fn:function(){var e={};return e.fgColor={type:"option",name:"emphasis"},e.bgColor=t._cloneColor(e.fgColor),e.attrs={name:"emphasis",override:{}},e}}],i={fgColor:null,bgColor:null,attrs:null,text:e};return n.some(function(t){var n=e.match(t.regex);return n?(i=t.fn(n),i.text=e.substring(n[0].length),!0):!1}),i},t.rawText2Rich=function(e){var n=e.split(/(\x19|\x1a|\x1b|\x1c)/);if(1===n.length)return[{attrs:t._getDefaultAttributes(),fgColor:t._getDefaultColor(),bgColor:t._getDefaultColor(),text:n[0]}];var i=t._getDefaultColor(),r=t._getDefaultColor(),o=t._getDefaultAttributes(),a=null,c=!0;return n.map(function(e){if(0===e.length)return null;var n=e.charCodeAt(0),s=e.charAt(0);if(n>=25&&28>=n)return 28===n&&(i=t._getDefaultColor(),r=t._getDefaultColor(),25!==a&&(o=t._getDefaultAttributes())),a=n,null;var u=e;if(25===a){var l=t._getStyle(e);null!==l.fgColor&&(i=l.fgColor),null!==l.bgColor&&(r=l.bgColor),null!==l.attrs&&(o=l.attrs),u=l.text}else if(26===a||27===a){var f=26===a;if("|"!==s){var d=t._attrNameFromChar(s);d&&(o.override[d]=f,u=e.substring(1))}}if(a=null,0===u.length)return null;if(c&&null===o.name){var m=!0;for(var h in o.override)if(o.override[h]){m=!1;break}m?o.override={}:c=!1}return{fgColor:t._cloneColor(i),bgColor:t._cloneColor(r),attrs:t._cloneAttrs(o),text:u}}).filter(function(e){return null!==e})},t._uia2s=function(e){if(!e.length||0===e[0])return"";try{var t=String.fromCharCode.apply(null,e),n=decodeURIComponent(escape(t));return n}catch(t){for(var i="",r=0,o=e.length;o>r;r++)i+=e[r]<128?String.fromCharCode(e[r]):"?";return i}},t._mergeParams=function(e,t){for(var n in t)e[n]=t[n];return e},t._formatCmd=function(e,t,n){var i,r;return i=null!==e?"("+e+") ":"",i+=t,n.unshift(i),r=n.join(" "),r+="\n",r.replace(/[\r\n]+$/g,"").split("\n"),r},t.formatInit=function(e){var n={password:null,compression:"zlib"},i=[],r=[];return e=t._mergeParams(n,e),i.push("compression="+e.compression),null!==e.password&&i.push("password="+e.password),r.push(i.join(",")),t._formatCmd(null,"init",r)},t.formatHdata=function(e){var n={id:null,keys:null},i=[];return e=t._mergeParams(n,e),i.push(e.path),null!==e.keys&&i.push(e.keys.join(",")),t._formatCmd(e.id,"hdata",i)},t.formatInfo=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),i.push(e.name),t._formatCmd(e.id,"info",i)},t.formatNicklist=function(e){var n={id:null,buffer:null},i=[];return e=t._mergeParams(n,e),null!==e.buffer&&i.push(e.buffer),t._formatCmd(e.id,"nicklist",i)},t.formatInput=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),i.push(e.buffer),i.push(e.data),t._formatCmd(e.id,"input",i)},t._formatSyncDesync=function(e,n){var i={id:null,buffers:null,options:null},r=[];return n=t._mergeParams(i,n),null!==n.buffers&&(r.push(n.buffers.join(",")),null!==n.options&&r.push(n.options.join(","))),t._formatCmd(n.id,e,r)},t.formatSync=function(e){return t._formatSyncDesync("sync",e)},t.formatDesync=function(e){return t._formatSyncDesync("desync",e)},t.formatTest=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),t._formatCmd(e.id,"test",i)},t.formatQuit=function(){return t._formatCmd(null,"quit",[])},t.formatPing=function(e){var n={id:null,args:null},i=[];return e=t._mergeParams(n,e),null!==e.args&&i.push(e.args.join(" ")),t._formatCmd(e.id,"ping",i)},t.prototype={_warnUnimplemented:function(e){console.log("Warning: "+e+" message parsing is not implemented")},_getType:function(){var e=this._getSlice(3);return e?t._uia2s(new Uint8Array(e)):null},_runType:function(e){var t=this._types[e],n=t.bind(this);return n()},_getStrNumber:function(){var e=this._getByte(),n=this._getSlice(e);return t._uia2s(new Uint8Array(n))},_strDirect:function(e){return e},_strToString:function(e){return e.toString()},_objToString:function(e,t){var n=this._typesStr[t],i=n.bind(this);return i(e)},_getInfo:function(){var e={};return e.key=this._getString(),e.value=this._getString(),e},_getHdata:function(){function e(){var e={};e.pointers=t.map(function(){return i._getPointer()}),a.forEach(function(t){e[t[0]]=i._runType(t[1])}),r.push(e)}var t,n,i=this,r=[],o=this._getString(),a=this._getString().split(",");t=o.split("/"),n=this._getInt(),a=a.map(function(e){return e.split(":")});for(var c=0;n>c;c++)e();return r},_getPointer:function(){return this._getStrNumber()},_getTime:function(){var e=this._getStrNumber();return new Date(1e3*parseInt(e,10))},_getInt:function(){var e=new Uint8Array(this._getSlice(4));return(255&e[0])<<24|(255&e[1])<<16|(255&e[2])<<8|255&e[3]},_getByte:function(){var e=new Uint8Array(this._getSlice(1));return e[0]},_getChar:function(){return this._getByte()},_getString:function(){var e=this._getInt();if(e>0){var n=this._getSlice(e),i=new Uint8Array(n);return t._uia2s(i)}return""},_getHeader:function(){var e=this._getInt(),t=this._getByte();return{length:e,compression:t}},_getId:function(){return this._getString()},_getObject:function(){var e=this,t=this._getType();return t?{type:t,content:e._runType(t)}:void 0},_getHashTable:function(){var e,t,n,i=this,r={};e=this._getType(),t=this._getType(),n=this._getInt();for(var o=0;n>o;++o){var a=i._runType(e),c=i._objToString(a,e),s=i._runType(t);r[c]=s}return r},_getArray:function(){var e,t,n,i=this;e=this._getType(),t=this._getInt(),n=[];for(var r=0;t>r;r++)n.push(i._runType(e));return n},_getSlice:function(e){if(this.dataAt+e>this._data.byteLength)return null;var t=this._data.slice(this._dataAt,this._dataAt+e);return this._dataAt+=e,t},_setData:function(e){this._data=e},setId:function(e,t){return"("+e+") "+t},parse:function(e){var t=this;this._setData(e),this._dataAt=0;var n=this._getHeader();if(n.compression){var i=new Uint8Array(e,5),r=new Zlib.Inflate(i),o=r.decompress();this._setData(o.buffer),this._dataAt=0}for(var a=this._getId(),c=[],s=this._getObject();s;)c.push(s),s=t._getObject();var u={header:n,id:a,objects:c};return u}},e.Protocol=t}()}("undefined"==typeof exports?this.weeChat={}:exports),function(){"use strict";var e=angular.module("IrcUtils",[]);e.service("IrcUtils",[function(){var e=function(e){var t=_(e).sortBy(function(e){return-e.spokeAt});return t=_(t).pluck("name")},t=function(e,t){var n=null;return t.some(function(t){return 0===t.toLowerCase().search(e.toLowerCase())?(n=t,!0):!1}),n},n=function(e,t,n){for(var i=[],r=null,o=e.toLowerCase(),a=t.toLowerCase(),c=0;c0;)e=n.pop(),e.$$watchers&&(i+=e.$$watchers.length),e.$$childHead&&n.push(e.$$childHead),e.$$nextSibling&&n.push(e.$$nextSibling);o.debug(i)},n.isinstalled=function(){return void 0===navigator.mozApps?!1:void(navigator.mozApps.getSelf().onsuccess=function(e){var t=e.target.result;return t?!0:!1})}(),function(){"undefined"!=typeof document.hidden?(n.documentHidden="hidden",n.documentVisibilityChange="visibilitychange"):"undefined"!=typeof document.webkitHidden?(n.documentHidden="webkitHidden",n.documentVisibilityChange="webkitvisibilitychange"):"undefined"!=typeof document.mozHidden?(n.documentHidden="mozHidden",n.documentVisibilityChange="mozvisibilitychange"):"undefined"!=typeof document.msHidden&&(n.documentHidden="msHidden",n.documentVisibilityChange="msvisibilitychange")}(),function(){window.location.search.substring(1).split("&").forEach(function(e){var n=e.split("=");"debug"===n[0]&&-1!=["true","1"].indexOf(n[1])&&(t.debugMode=!0)}),t.debugMode&&!e.compileProvider.debugInfoEnabled()&&angular.reloadWithDebugInfo()}(),t.isWindowFocused=function(){if("undefined"==typeof n.documentHidden)return!0;var e=document[n.documentHidden];return!e},"undefined"!=typeof n.documentVisibilityChange&&document.addEventListener(n.documentVisibilityChange,function(){if(!document[n.documentHidden]){var e=a.getActiveBuffer();null!==e&&(e.unread=0,e.notification=0,t.$emit("notificationChanged")),t.$apply()}},!1),t.$on("activeBufferChanged",function(e,i){var o=a.getActiveBuffer(),f=o.lines.length-i+5,d=o.lines.length-(2*n.lines_per_screen+10),m=Math.min(f,d);if(m>0&&(o.lines.splice(0,m),o.requestedLines-=m,o.lastSeen-=m,o.allLinesFetched=!1),n.bufferlines=o.lines,n.nicklist=o.nicklist,o.nicklistRequested()?n.showNicklist=n.updateShowNicklist():c.requestNicklist(o.fullName,function(){n.showNicklist=n.updateShowNicklist(),t.scrollWithBuffer(!0)}),o.requestedLinesh&&(h=Math.min(4*h,i)),n.fetchMoreLines(h).then(function(){r(function(){var e=document.getElementById("bufferlines"),n=e.scrollHeight,i=function(){if(e){var r=e.scrollHeight;r!==n&&(t.updateBufferBottom(t.bufferBottom),n=r),setTimeout(i,500)}};t.updateBufferBottom(!0),t.scrollWithBuffer(!0),e.onscroll=_.debounce(function(){t.updateBufferBottom()},80),setTimeout(i,500)})})}s.updateTitle(o),r(function(){t.scrollWithBuffer(!0)}),l.hotlistsync&&o.fullName&&c.sendCoreCommand("/buffer "+o.fullName),n.search="",u.isMobileUi()||setTimeout(function(){document.getElementById("sendMessage").focus()},0)}),t.favico=new Favico({animation:"none"}),t.$on("notificationChanged",function(){s.updateTitle(),l.useFavico&&t.favico&&s.updateFavico()}),t.$on("relayDisconnect",function(){t.pageTitle="",t.notificationStatus="",s.cancelAll(),a.reinitialize(),t.$emit("notificationChanged"),n.connectbutton="Connect"}),n.connectbutton="Connect",n.getBuffers=a.getBuffers.bind(a),n.bufferlines={},n.nicklist={},n.activeBuffer=a.getActiveBuffer,t.connected=!1,t.waseverconnected=!1,t.models=a,t.iterCandidate=null,l.savepassword?(n.$watch("password",function(){l.password=n.password}),l.addCallback("password",function(e){n.password=e}),n.password=l.password):l.password="",t.wasMobileUi=!1,u.isMobileUi()&&(t.wasMobileUi=!0),l.fontfamily||(l.fontfamily=u.isMobileUi()?"sans-serif":"Inconsolata, Consolas, Monaco, Ubuntu Mono, monospace"),n.isSidebarVisible=function(){return"visible"===document.getElementById("content").getAttribute("sidebar-state")},n.showSidebar=function(){document.getElementById("sidebar").setAttribute("data-state","visible"),document.getElementById("content").setAttribute("sidebar-state","visible"),u.isMobileUi()&&_.each(document.getElementsByTagName("textarea"),function(e){r(function(){e.blur()})})},t.hideSidebar=function(){u.isMobileUi()&&(document.getElementById("sidebar").setAttribute("data-state","hidden"),document.getElementById("content").setAttribute("sidebar-state","hidden"))},l.addCallback("autoconnect",function(e){!e||t.connected||t.sslError||t.securityError||t.errorMessage||n.connect()}),n.toggleSidebar=function(){u.isMobileUi()&&(n.isSidebarVisible()?n.hideSidebar():n.showSidebar())},n.openNick=function(){u.isMobileUi()&&l.nonicklist&&(l.nonicklist=!1)},n.closeNick=function(){u.isMobileUi()&&(l.nonicklist||(l.nonicklist=!0))},l.addCallback("orderbyserver",function(e){t.predicate=e?"serverSortKey":"number"}),l.addCallback("useFavico",function(e){t.connected&&(e?s.updateFavico():t.favico.reset())}),l.addCallback("fontfamily",function(e){u.changeClassStyle("favorite-font","fontFamily",e)}),l.addCallback("fontsize",function(e){u.changeClassStyle("favorite-font","fontSize",e)}),n.setActiveBuffer=function(e,t){return u.isMobileUi()&&n.hideSidebar(),a.setActiveBuffer(e,t)},n.openBuffer=function(e){var t=a.getActiveBuffer().fullName;if(t=t.substring(0,t.lastIndexOf(".")+1)+e,!n.setActiveBuffer(t,"fullName")){var i="join";["#","&","+","!"].indexOf(e.charAt(0))<0&&(i="query"),c.sendMessage("/"+i+" "+e)}},n.calculateNumLines=function(){for(var e=document.querySelectorAll(".bufferline"),t=0,i=0;0===t&&ir||Math.abs(r-o)<3){var a=document.querySelector(".readmarker");if(e&&a)i.scrollTop=a.offsetTop-a.parentElement.scrollHeight+a.scrollHeight;else if(n)i.scrollTop=i.scrollHeight-i.clientHeight-o;else{var c=document.getElementById("end-of-buffer");c.scrollIntoView()}t.updateBufferBottom()}};r(a),window.requestAnimationFrame(a)},n.connect=function(){s.requestNotificationPermission(),t.sslError=!1,t.securityError=!1,t.errorMessage=!1,t.bufferBottom=!0,n.connectbutton="Connecting ...",c.connect(l.host,l.port,n.password,l.ssl)},n.disconnect=function(){n.connectbutton="Connect",c.disconnect()},n.install=function(){if(void 0!==navigator.mozApps){var e=location.protocol+"//"+location.host+location.pathname.replace(/\/(index\.html)?$/,""),t=navigator.mozApps.install(e+"/manifest.webapp");t.onsuccess=function(){n.isinstalled=!0;var e=this.result;e.launch(),alert("Installation successful!")},t.onerror=function(){alert("Install failed, error: "+this.error.name)}}else alert("Sorry. Only supported in Firefox v26+")},n.showModal=function(e){document.getElementById(e).setAttribute("data-state","visible")},n.closeModal=function(e){function t(e,t){for(var n=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector;e;){if(n.call(e,t))return e;e=e.parentElement}}t(e.target,".gb-modal").setAttribute("data-state","hidden")},n.toggleAccordion=function(e){e.stopPropagation(),e.preventDefault();var t=e.target.parentNode.parentNode.parentNode;t.setAttribute("data-state","active"===t.getAttribute("data-state")?"collapsed":"active");var n=t.parentNode.children;for(var i in n){var r=n[i];1===r.nodeType&&r!==t&&r.setAttribute("data-state","collapsed")}},n.hasUnread=function(e){return n.search&&""!==n.search?!0:l.onlyUnread?a.getActiveBuffer()===e?!0:"core.weechat"===e.fullName?!0:e.unread>0||e.notification>0:!0},l.addCallback("nonicklist",function(){n.showNicklist=n.updateShowNicklist(),t.connected&&t.bufferBottom&&r(function(){t.updateBufferBottom(!0)},500)}),n.showNicklist=!1,n.updateShowNicklist=function(){var e=a.getActiveBuffer();return e?l.nonicklist?!1:e.isNicklistEmpty()?!1:!0:!1},t.switchToActivityBuffer=function(){var e,t,i=_.sortBy(n.getBuffers(),"number");for(e in i)if(t=i[e],t.notification>0)return void n.setActiveBuffer(t.id);for(e in i)if(t=i[e],t.unread>0)return void n.setActiveBuffer(t.id)},t.toggleNicklist=function(){l.nonicklist=!l.nonicklist},n.handleSearchBoxKey=function(e){var t=e.keyCode?e.keyCode:e.charCode;27===t?(e.preventDefault(),n.search=""):13===t&&(e.preventDefault(),n.filteredBuffers.length>0&&n.setActiveBuffer(n.filteredBuffers[0].id),n.search="")},window.onbeforeunload=function(e){null!==n.command&&""!==n.command?(e.preventDefault(),e.returnValue="Any unsent input will be lost. Are you sure that you want to quit?"):(t.connected&&n.disconnect(),n.favico.reset())}}]),e.config(["$routeProvider",function(e){e.when("/",{templateUrl:"index.html",controller:"WeechatCtrl"})}])}(),function(){"use strict";var e=angular.module("weechat");e.factory("settings",["$store","$rootScope",function(e,t){var n=this;this.callbacks={};var i=function(i){Object.defineProperty(n,i,{enumerable:!0,key:i,get:function(){return e.get(i)},set:function(r){e.set(i,r);for(var o=n.callbacks[i],a=0;void 0!==o&&a0?"("+t+") ":"";var i=n.getActiveBuffer();i&&(e.pageTitle=i.shortName+" | "+i.rtitle)},s=function(){var t=a("notification");if(t>0)e.favico.badge(t,{bgColor:"#d00",textColor:"#fff"});else{var n=a("unread");0===n?e.favico.reset():e.favico.badge(n,{bgColor:"#5CB85C",textColor:"#ff0"})}},u=function(e,t){var o="",a="",c=e.notification;if(["#","&","+","!"].indexOf(e.shortName.charAt(0))<0)o=c>1?c.toString()+" private messages from ":"Private message from ",a=t.text;else{o=c>1?c.toString()+" highlights in ":"Highlight in ";for(var s="",u=0;u "+t.text}o+=e.shortName,o+=e.fullName.replace(/irc.([^\.]+)\..+/," ($1)");var l=new Notification(o,{body:a,icon:"assets/img/favicon.png"});l.id=r.length,r.push(l);var f=15e3;if(l.onshow=function(){setTimeout(function(){l.close()},f)},l.onclick=function(){n.setActiveBuffer(e.id),window.focus(),l.close()},l.onclose=function(){delete r[this.id]},i.soundnotification){var d="assets/audio/sonar",m='';document.getElementById("soundNotification").innerHTML=m}},l=function(){for(;r.length>0;){var e=r.pop();void 0!==e&&e.close()}};return{requestNotificationPermission:o,updateTitle:c,updateFavico:s,createHighlight:u,cancelAll:l}}]),function(){"use strict";var e=angular.module("weechat");e.filter("toArray",function(){return function(e,t){return e instanceof Object?Object.keys(e).map(t?function(t,n){return Object.defineProperties(e[t],{$key:{value:t},$idx:{value:n,configurable:!0}})}:function(t){return Object.defineProperty(e[t],"$key",{value:t})}):e}}),e.filter("irclinky",["$filter",function(){return function(e){if(!e)return e;var t={"<":"<",">":">",'"':""","'":"'","&":"&","/":"/"};e=e.replace(/[<>"'&\/]/g,function(e){return t[e]});var n=/(^|[\s,.:;?!"'()+@-\~%])(#+[^\x00\x07\r\n\s,:]*[a-z][^\x00\x07\r\n\s,:]*)/gim,i='$1$2';return e.replace(n,i)}}]),e.filter("inlinecolour",function(){return function(e){if(!e)return e;var t=/(^|[^&])(\#[0-9a-f]{6};?)(?!\w)/gim,n=/(.?)(rgba?\((?:\s*\d+\s*,){2}\s*\d+\s*(?:,\s*[\d.]+\s*)?\);?)/gim,i='$1$2
';return e=e.replace(t,i),e=e.replace(n,i)}}),e.filter("DOMfilter",["$filter","$sce",function(e,t){return function(n,i){if(!n||!i)return n;var r=arguments.length>2?arguments[2]:null,o=e(i),a=document.createElement("div");a.innerHTML=n;var c=function(e){if(3===e.nodeType){var t=o(e.nodeValue,r);if(t!==e.nodeValue){var n=document.createElement("span");n.innerHTML=t;var i=e.parentNode,a=e.nextSibling;return i.removeChild(e),a?i.insertBefore(n,a):i.appendChild(n),n}}if(void 0!==e&&null!==e)for(e=e.firstChild;e;){var s=c(e);e=(s?s:e).nextSibling}};return c(a),t.trustAsHtml(a.innerHTML)}}]),e.filter("getBufferQuickKeys",function(){return function(e,t){return t?(void 0!==t.search&&t.search.length||t.onlyUnread?e.forEach(function(e,t){e.$quickKey=10>t?(t+1)%10:""}):_.map(e,function(e,t){return[e.number,e.$idx,t]}).sort(function(e,t){return e[0]-t[0]||e[1]-t[1]}).forEach(function(t,n){e[t[2]].$quickKey=10>n?(n+1)%10:""}),e):e}}),e.filter("emojify",function(){return function(e,t){return t===!0?twemoji.parse(e):e}})}(),function(){"use strict";var e=angular.module("weechat");e.factory("handlers",["$rootScope","$log","models","plugins","notifications",function(e,t,n,i,r){var o=function(e){var t=e.objects[0].content[0],i=t.pointers[0];n.closeBuffer(i)},a=function(t,o){var a=new n.BufferLine(t),c=n.getBuffer(a.buffer);c.requestedLines++,a.displayed&&(a=i.PluginManager.contentForMessage(a),c.addLine(a),o&&c.lastSeen++,c.active&&!o&&e.scrollWithBuffer(),o||c.active&&e.isWindowFocused()||(c.notify>1&&_.contains(a.tags,"notify_message")&&!_.contains(a.tags,"notify_none")&&(c.unread++,e.$emit("notificationChanged")),(0!==c.notify&&a.highlight||_.contains(a.tags,"notify_private"))&&(c.notification++,r.createHighlight(c,a),e.$emit("notificationChanged"))))},c=function(e){e.objects[0].content.forEach(function(e){a(e,!1)})},s=function(e){var t=e.objects[0].content[0],i=new n.Buffer(t);n.addBuffer(i)},u=function(e){var t=e.objects[0].content[0],i=t.pointers[0],r=n.getBuffer(i);r.fullName=t.full_name,r.title=n.parseRichText(t.title),r.number=t.number,r.rtitle="";for(var o=0;o=0?t.short_name.charAt(0):""},f=function(e){var t=e.objects[0].content[0],i=t.pointers[0],r=n.getBuffer(i),o=t.local_variables;void 0!==r&&void 0!==o&&(r.type=o.type,r.indent=["channel","private"].indexOf(o.type)>=0)},d=function(e,t){var n=e.objects[0].content.reverse();void 0===t&&(t=!0),n.forEach(function(e){a(e,t)})},m=function(e){if(0!==e.objects.length){var t=e.objects[0].content;t.forEach(function(e){var t=n.getBuffer(e.buffer);t.unread+=e.count[1],t.notification+=e.count[2],t.notification+=e.count[3];var i=_.reduce(e.count,function(e,t){return e+t},0);t.lastSeen=t.lines.length-1-i})}},h=function(e){var t=e.objects[0].content,i="root";t.forEach(function(e){var t=n.getBuffer(e.pointers[0]);if(1===e.group){var r=new n.NickGroup(e);i=r.name,t.nicklist[i]=r}else{var o=new n.Nick(e);t.addNick(i,o)}})},g=function(e){var t,i=e.objects[0].content;i.forEach(function(e){var i=n.getBuffer(e.pointers[0]),r=e._diff;if(1===e.group){if(t=e.name,void 0===t){var o=new n.NickGroup(e);i.nicklist[t]=o,t=o.name}}else{var a=new n.Nick(e);43===r?i.addNick(t,a):45===r?i.delNick(t,a):42===r&&i.updateNick(t,a)}})},p={_buffer_closing:o,_buffer_line_added:c,_buffer_localvar_added:f,_buffer_localvar_removed:f,_buffer_opened:s,_buffer_title_changed:u,_buffer_renamed:l,_nicklist:h,_nicklist_diff:g};e.$on("onMessage",function(e,n){_.has(p,n.id)?p[n.id](n):t.debug("Unhandled event received: "+n.id)});var v=function(e){_.has(p,e.id)&&p[e.id](e)};return{handleEvent:v,handleLineInfo:d,handleHotlistInfo:m,handleNicklist:h}}])}(),function(){"use strict";var e=angular.module("weechat");e.factory("connection",["$rootScope","$log","handlers","models","ngWebsockets",function(e,t,n,i,r){var o=new weeChat.Protocol,a=function(a,c,s,u,l){var f=u?"wss":"ws";-1!==a.indexOf(":")&&(a="["+a+"]");var d=f+"://"+a+":"+c+"/weechat";t.debug("Connecting to URL: ",d);var m=function(){var o=function(e){return r.send(weeChat.Protocol.formatInit({password:e,compression:l?"off":"zlib"})),r.send(weeChat.Protocol.formatInfo({name:"version"}))},a=function(){return r.send(weeChat.Protocol.formatHdata({path:"hotlist:gui_hotlist(*)",keys:[]}))},c=function(){return r.send(weeChat.Protocol.formatHdata({path:"buffer:gui_buffers(*)",keys:["local_variables,notify,number,full_name,short_name,title"]}))},u=function(){return r.send(weeChat.Protocol.formatSync({}))};o(s).then(function(){c().then(function(e){for(var t=e.objects[0].content,n=0;n=0;a.lines.length=0,a.requestedLines=0;var c=t.objects[0].content.length;n.handleLineInfo(t,!0),a.lastSeen-=i,o>c&&(a.allLinesFetched=!0),e.loadingLines=!1;var s=!r&&a.lastSeen>=0;e.scrollWithBuffer(s,!0)})};return{connect:a,disconnect:c,sendMessage:s,sendCoreCommand:u,fetchMoreLines:f,requestNicklist:l}}])}(),function(){"use strict";var e=angular.module("weechat");e.directive("inputBar",function(){return{templateUrl:"directives/input.html",scope:{inputId:"@inputId",command:"=command"},controller:["$rootScope","$scope","$element","$log","connection","models","IrcUtils","settings",function(e,t,n,i,r,o,a,c){t.getInputNode=function(){return document.querySelector("textarea#"+t.inputId)},t.hideSidebar=function(){e.hideSidebar()},t.completeNick=function(){var e=t.getInputNode(),n=e.selectionStart,i=o.getActiveBuffer(),r=t.command||"",c=a.completeNick(r,n,t.iterCandidate,i.getNicklistByTime(),":");t.iterCandidate=c.iterCandidate,t.command=c.text,setTimeout(function(){e.focus(),e.setSelectionRange(c.caretPos,c.caretPos)},0)},t.sendMessage=function(){var e=o.getActiveBuffer();void 0!==t.command&&""!==t.command&&(e.addToHistory(t.command),_.each(t.command.split(/\r?\n/),function(e){("/quit"!==e&&0!==e.indexOf("/quit ")||window.confirm("Are you sure you want to quit WeeChat? This will prevent you from connecting with Glowing Bear until you restart WeeChat on the command line!"))&&r.sendMessage(e)}),("/buffer clear"===t.command||"/c"===t.command)&&(i.debug("Clearing lines"),e.clear()),t.command=""),t.getInputNode().focus()},e.addMention=function(e){var n=e[e.length-1].text,i=t.command||"",r=0===i.length;if(i.length>0){var a=i.trim();if(":"===a.charAt(a.length-1)){var c=a.lastIndexOf(" ")+1,s=a.slice(c,a.length-1),u=o.getActiveBuffer().getNicklistByTime();for(var l in u)if(u[l].name===s){i=i.slice(0,i.lastIndexOf(":"))+" ",r=!0;break}}" "!==i.charAt(i.length-1)&&(i+=" ")}i+=n,r&&(i+=": "),t.command=i,t.getInputNode().focus()},e.handleKeyPress=function(n){if(!e.connected)return!0;var i=t.getInputNode(),a=n.keyCode?n.keyCode:n.charCode;e.showQuickKeys=!1;var s=t.iterCandidate;if(t.iterCandidate=null,n.altKey&&!n.ctrlKey&&a>47&&58>a){48===a&&(a=58);var u,l=a-48-1;if((t.$parent.search.length||t.$parent.onlyUnread)&&t.$parent.filteredBuffers.length){var f=t.$parent.filteredBuffers[l];void 0!==f&&(u=[f.number,f.id])}else{var d=_.map(o.getBuffers(),function(e){return[e.number,e.id]}).sort(function(e,t){return e[0]-t[0]});u=d[l]}u&&(t.$parent.setActiveBuffer(u[1]),n.preventDefault())}if(9===a&&!n.altKey&&!n.ctrlKey)return n.preventDefault(),t.iterCandidate=s,t.completeNick(),!0;if(n.altKey&&!n.ctrlKey&&78===a)return n.preventDefault(),e.toggleNicklist(),!0;if(n.altKey&&(97===a||65===a))return n.preventDefault(),e.switchToActivityBuffer(),!0;if(n.altKey&&(76===a||108===a))return n.preventDefault(),i.focus(),i.setSelectionRange(t.command.length,t.command.length),!0;if(n.altKey&&(60===a||226===a)){var m=o.getPreviousBuffer();if(m)return o.setActiveBuffer(m.id),n.preventDefault(),!0}if(27===a){n.preventDefault();for(var h=document.querySelectorAll(".gb-modal"),g=0;g=0;b--)if(v[b].offsetTop-y.scrollTopy.clientHeight/2){v[b].scrollIntoView(!0);break}return!0}if(c.readlineBindings&&n.ctrlKey&&!n.altKey&&!n.shiftKey&&document.activeElement===i){if(p=i.selectionStart,65==a)i.setSelectionRange(0,0);else if(69==a)i.setSelectionRange(t.command.length,t.command.length);else if(85==a)t.command=t.command.slice(p),setTimeout(function(){i.setSelectionRange(0,0)});else if(75==a)t.command=t.command.slice(0,p),setTimeout(function(){i.setSelectionRange(t.command.length,t.command.length)});else{if(87!=a)return!1;var w=t.command.slice(0,p),k=w.lastIndexOf(" ")+1;t.command=t.command.slice(0,k)+t.command.slice(p,t.command.length),setTimeout(function(){i.setSelectionRange(k,k)})}return n.preventDefault(),!0}"keydown"!==n.type||18!==a||n.ctrlKey||n.shiftKey||(e.showQuickKeys=!0)},e.handleKeyRelease=function(t){return 18===t.keyCode?(void 0!==e.quickKeysTimer&&clearTimeout(e.quickKeysTimer),e.quickKeysTimer=setTimeout(function(){e.showQuickKeys&&(e.showQuickKeys=!1,e.$apply()),delete e.quickKeysTimer},1e3),!0):void 0}}]}})}(),function(){"use strict";var e=angular.module("weechat");e.directive("plugin",["$rootScope","settings",function(e,t){return{templateUrl:"directives/plugin.html",scope:{plugin:"=data"},controller:["$scope",function(n){n.displayedContent="",n.plugin.visible=!t.noembed&&!n.plugin.nsfw,n.plugin.className="embed_"+n.plugin.$$hashKey.replace(":","_"),n.plugin.getElement=function(){return document.querySelector("."+n.plugin.className)},n.hideContent=function(){n.plugin.visible=!1},n.showContent=function(t){var i=n.plugin.getElement();n.plugin.content instanceof Function?i&&""!==i.innerHTML||setTimeout(function(){n.plugin.content()}):n.displayedContent=n.plugin.content,n.plugin.visible=!0;var r;if(t){var o=e.bufferBottom;r=function(){e.updateBufferBottom(o)}}else r=function(){i&&void 0!==i.scrollIntoViewIfNeeded&&(i.scrollIntoViewIfNeeded(),e.updateBufferBottom())};setTimeout(r,500)},n.plugin.visible&&n.showContent(!0)}]}}])}(),function(){"use strict";var e=angular.module("ngWebsockets",[]);e.factory("ngWebsockets",["$rootScope","$q",function(e,t){var n=null,i=null,r={},o=0,a=function(e){for(var t in r)r[t].cb.reject(e)},c=function(){return o+=1,o>1e3&&(o=0),o},s=function(e){var t=u(e);return e=n.setId(t.id,e),i.send(e),t.promise},u=function(){var e=t.defer(),n=c();return r[n]={time:new Date,cb:e},e.id=n,e},l=function(e){var n=[];for(var i in e){var r=s(e[i]);n.push(r)}return t.all(n)},f=function(t){var i=n.parse(t.data);if(_.has(r,i.id)){var o=r[i.id];o.cb.resolve(i),delete r[i.id]}else e.$emit("onMessage",i);e.$apply()},d=function(e,t,r){i=new WebSocket(e),n=t;for(var o in r)i[o]=r[o];i.onmessage="onmessage"in r?function(e){r.onmessage(e),f(e)}:f},m=function(){i.close()};return{send:s,sendAll:l,connect:d,disconnect:m,failCallbacks:a}}])}(),function(){"use strict";var e=angular.module("weechatModels",[]);e.service("models",["$rootScope","$filter",function(e,t){function n(e,t){if(t in e&&e[t]&&e[t].length>0){var n=e[t];if(n.match(/^weechat/)){var i=n.match(/[a-zA-Z0-9_]+$/)[0];return["cof-"+i,"cob-"+i,"coa-"+i]}if(n.match(/^[a-zA-Z]+$/))return["cwf-"+n];if(n.match(/^[0-9]+$/))return["cef-"+n]}return["cwf-default"]}function i(e){return{name:n(e,"color"),prefix:n(e,"prefix_color")}}var r=function(e){var t=weeChat.Protocol.rawText2Rich(e),n={option:"cof-",weechat:"cwf-",ext:"cef-"},i={option:"cob-",weechat:"cwb-",ext:"ceb-"};return t.forEach(function(e){e.classes=[];var t=n[e.fgColor.type];e.classes.push(t+e.fgColor.name),t=i[e.bgColor.type],e.classes.push(t+e.bgColor.name),null!==e.attrs.name&&e.classes.push("coa-"+e.attrs.name);var r,o;for(r in e.attrs.override)o=e.attrs.override[r],e.classes.push(o?"a-"+r:"a-no-"+r)}),t};this.parseRichText=r,this.Buffer=function(e){var t=e.full_name,n=e.short_name,i=n.replace(/^[#&+]/,"")||(n?" ":null),o=["#","&","+"].indexOf(n.charAt(0))>=0?n.charAt(0):"",a=r(e.title),c=e.number,s=e.pointers[0],u=3,l=[],f=0,d={},m=[],h=0,g=0,p=0,v=-1,b=t.replace(/^irc\.server\.(\w+)/,"irc.$1"),y=e.local_variables.type,w=["channel","private"].indexOf(y)>=0;void 0!==e.notify&&(u=e.notify);for(var k="",C=0;C=m.length&&m.push(e),0>=h||h>=m.length)return e;h--;var t=m[h];return t},M=function(e){return h===m.length?(void 0!==e&&""!==e&&(m.push(e),h++),""):0>h||h>m.length?e:(h++,m.length>0&&h==m.length-1?m.pop():m[h])},E=function(){for(var e in d)if("root"!==e)return!1;return!0},D=function(){return d.hasOwnProperty("root")},H=function(){for(;l.length>0;)l.pop();f=0};return{id:s,fullName:t,shortName:n,trimmedName:i,prefix:o,number:c,title:a,rtitle:k,lines:l,clear:H,requestedLines:f,addLine:x,lastSeen:v,unread:p,notification:g,notify:u,nicklist:d,addNick:S,delNick:B,updateNick:A,getNicklistByTime:$,serverSortKey:b,indent:w,type:y,history:m,addToHistory:T,getHistoryUp:I,getHistoryDown:M,isNicklistEmpty:E,nicklistRequested:D}},this.BufferLine=function(e){var n=e.buffer,i=e.date,o=t("date")(i,"HH:mm"),a=r(e.prefix),c=e.tags_array,s=e.displayed,u=e.highlight,l=r(e.message);u&&a.forEach(function(e){e.classes.push("highlight")});for(var f="",d=0;d]/g,i=function(e,t){return{contentForMessage:function(e){for(var i=e.match(n),r=[],o=0;i&&o=0;s--){var u=1==c.length?void 0:s+1;r(c[s],e[o].name,u)}else r(c,e[o].name);if(e[o].exclusive)break}}return n};return{registerPlugins:n,contentForMessage:r}};this.PluginManager=new n,this.PluginManager.registerPlugins(e.plugins)}]),e.factory("userPlugins",function(){var e=function(e,t){var n="jsonp_callback_"+Math.round(1e5*Math.random());window[n]=function(e){delete window[n],document.body.removeChild(i),t(e)};var i=document.createElement("script");i.src=e+(e.indexOf("?")>=0?"&":"?")+"callback="+n,document.body.appendChild(i)},n=new t("Spotify track",function(e){var t=[],n=function(e){for(var n=0;e&&n')}};return n(e.match(/spotify:track:([a-zA-Z-0-9]{22})/g)),n(e.match(/open.spotify.com\/track\/([a-zA-Z-0-9]{22})/g)),t}),r=new i("YouTube video",function(e){var t=/(?:youtube.com|youtu.be)\/(?:v\/|embed\/|watch(?:\?v=|\/))?([a-zA-Z0-9-]+)/i,n=e.match(t);if(n){var i=n[1],r="https://www.youtube.com/embed/"+i+"?html5=1&iv_load_policy=3&modestbranding=1&rel=0&showinfo=0";return''}}),o=new t("Dailymotion video",function(e){var t=/dailymotion.com\/.*video\/([^_?# ]+)/,n=/dailymotion.com\/.*#video=([^_& ]+)/,i=/dai.ly\/([^_?# ]+)/,r=e.match(t)||e.match(n)||e.match(i);if(r){var o=r[1],a="https://www.dailymotion.com/embed/video/"+o+"?html&controls=html&startscreen=html&info=0&logo=0&related=0";return''}return null}),a=new t("AlloCine video",function(e){var t=/allocine.fr\/videokast\/video-(\d+)/,n=/allocine.fr\/.*cmedia=(\d+)/,i=e.match(t)||e.match(n);if(i){var r=i[1],o="http://www.allocine.fr/_video/iblogvision.aspx?cmedia="+r;return''}return null}),c=new i("image",function(e){return e.match(/\.(png|gif|jpg|jpeg)(:(small|medium|large))?\b/i)?(-1!=e.indexOf("^https?://fukung.net/v/")?e=e.replace(/.*\//,"http://media.fukung.net/imgs/"):e.match(/^http:\/\/(i\.)?imgur\.com\//i)?e=e.replace(/http:/,""):e.match(/^https:\/\/www\.dropbox\.com\/s\/[a-z0-9]+\/[^?]+$/i)&&(e+="?dl=1"),''):void 0}),s=new i("video",function(e){return e.match(/\.(mp4|webm|ogv)\b/i)?'':void 0}),u=new i("cloud music",function(e){return e.match(/^https?:\/\/soundcloud.com\//)?'':e.match(/^https?:\/\/([a-z]+\.)?mixcloud.com\//)?'':void 0}),l=new i("Google Map",function(e){return e.match(/^https?:\/\/maps\.google\./i)||e.match(/^https?:\/\/(?:[\w]+\.)?google\.[\w]+\/maps/i)?'':void 0}),f=new i("ascii cast",function(e){var t=/^https?:\/\/(?:www\.)?asciinema.org\/a\/(\d+)/i,n=e.match(t);if(n){var i=n[1];return function(){var e=this.getElement(),t=document.createElement("script");t.src="https://asciinema.org/a/"+i+".js",t.id="asciicast-"+i,t.async=!0,e.appendChild(t)}}}),d=new i("meteogram",function(e){var t=/^https?:\/\/(?:www\.)?yr\.no\/(place|stad|sted|sadji|paikka)\/(([^\s.;,(){}<>\/]+\/){3,})/,n=e.match(t);if(n){var i=n[1],r=n[2],o=n[n.length-1].slice(0,-1);return e="http://www.yr.no/"+i+"/"+r+"avansert_meteogram.png","Meteogram for "+o+""}}),m=new i("Gist",function(t){var n=/^https:\/\/gist\.github.com\/[^.?]+/i,i=t.match(n);return i?(t=i[0]+".json",function(){var n=this.getElement();e(t,function(e){if(document.querySelectorAll('link[rel=stylesheet][href="'+e.stylesheet+'"]').length<1){var t='';document.getElementsByTagName("head")[0].innerHTML+=t}n.innerHTML='
'+e.div+"
"})}):void 0}),h=new i("Tweet",function(t){var n=/^https?:\/\/twitter\.com\/(?:#!\/)?(\w+)\/status(?:es)?\/(\d+)/i,i=t.match(n);return i?(t="https://api.twitter.com/1/statuses/oembed.json?id="+i[2],function(){var n=this.getElement();e(t,function(e){var t=e.html.indexOf("'}});return{plugins:[r,o,a,c,s,n,u,l,f,d,m,h,g]}})}(); +!function(){"use strict";var e=angular.module("localStorage",[]);e.factory("$store",["$parse",function(e){var t="undefined"==typeof window.localStorage?void 0:window.localStorage,n=!("undefined"==typeof t||"undefined"==typeof window.JSON);n||console.log("Warning: localStorage is not supported");var i={parseValue:function(e){var t;try{t=JSON.parse(e),void 0===t&&(t=e),"true"===t&&(t=!0),"false"===t&&(t=!1),parseFloat(t)!=t||angular.isObject(t)||(t=parseFloat(t))}catch(n){t=e}return t}},r={set:function(e,r){n||console.log("Local Storage not supported");var o=JSON.stringify(r);return t.setItem(e,o),i.parseValue(o)},get:function(e){if(!n)return null;var r=t.getItem(e);return i.parseValue(r)},remove:function(e){return n?(t.removeItem(e),!0):!1},enumerateKeys:function(){for(var e=[],n=0,i=t.length;i>n;++n)e.push(t.key(n));return e},bind:function(t,n,i){return void 0===i&&(i=""),(void 0===r.get(n)||null===r.get(n))&&r.set(n,i),e(n).assign(t,r.get(n)),t.$watch(n,function(e){r.set(n,e)},!0),r.get(n)}};return r}])}(),function(e){"use strict";!function(){var t=function(){this._types={chr:this._getChar,int:this._getInt,str:this._getString,inf:this._getInfo,hda:this._getHdata,ptr:this._getPointer,lon:this._getStrNumber,tim:this._getTime,buf:this._getString,arr:this._getArray,htb:this._getHashTable,inl:function(){this._warnUnimplemented("infolist")}},this._typesStr={chr:this._strDirect,str:this._strDirect,int:this._strToString,tim:this._strToString,ptr:this._strDirect}};t._weeChatColorsNames=["default","black","darkgray","red","lightred","green","lightgreen","brown","yellow","blue","lightblue","magenta","lightmagenta","cyan","lightcyan","gray","white"],t._colorsOptionsNames=["separator","chat","chat_time","chat_time_delimiters","chat_prefix_error","chat_prefix_network","chat_prefix_action","chat_prefix_join","chat_prefix_quit","chat_prefix_more","chat_prefix_suffix","chat_buffer","chat_server","chat_channel","chat_nick","chat_nick_self","chat_nick_other","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","invalid","chat_host","chat_delimiters","chat_highlight","chat_read_marker","chat_text_found","chat_value","chat_prefix_buffer","chat_tags","chat_inactive_window","chat_inactive_buffer","chat_prefix_buffer_inactive_buffer","chat_nick_offline","chat_nick_offline_highlight","chat_nick_prefix","chat_nick_suffix","emphasis","chat_day_change"],t._getDefaultColor=function(){return{type:"weechat",name:"default"}},t._getDefaultAttributes=function(){return{name:null,override:{bold:!1,reverse:!1,italic:!1,underline:!1}}},t._getDefaultStyle=function(){return{fgColor:t._getDefaultColor(),bgColor:t._getDefaultColor(),attrs:t._getDefaultAttributes()}},t._cloneColor=function(e){var t={};for(var n in e)t[n]=e[n];return t},t._cloneAttrs=function(e){var t={};t.name=e.name,t.override={};for(var n in e.override)t.override[n]=e.override[n];return t},t._attrNameFromChar=function(e){var t={"*":"b","!":"r","/":"i",_:"u","":"b","":"r","":"i","":"u"};return e in t?t[e]:null},t._attrsFromStr=function(e){for(var n=t._getDefaultAttributes(),i=0;i16?t._getDefaultColor():{type:"weechat",name:t._weeChatColorsNames[n]}}var i=e.substring(1);return{type:"ext",name:parseInt(i).toString()}},t._getStyle=function(e){var n=[{regex:/^(\d{2})/,fn:function(e){var n={},i=parseInt(e[1]);if(i>43)return{fgColor:null,bgColor:null,attrs:null};var r=t._colorsOptionsNames[i];return n.fgColor={type:"option",name:r},n.bgColor=t._cloneColor(n.fgColor),n.attrs={name:r,override:{}},n}},{regex:/^@(\d{5})/,fn:function(){return{fgColor:null,bgColor:null,attrs:null}}},{regex:/^F(?:([*!\/_|]*)(\d{2})|@([\x01\x02\x03\x04*!\/_|]*)(\d{5}))/,fn:function(e){var n={bgColor:null};return e[2]?(n.attrs=t._attrsFromStr(e[1]),n.fgColor=t._getColorObj(e[2])):(n.attrs=t._attrsFromStr(e[3]),n.fgColor=t._getColorObj(e[4])),n}},{regex:/^B(\d{2}|@\d{5})/,fn:function(e){return{fgColor:null,bgColor:t._getColorObj(e[1]),attrs:null}}},{regex:/^\*(?:([\x01\x02\x03\x04*!\/_|]*)(\d{2})|@([\x01\x02\x03\x04*!\/_|]*)(\d{5})),(\d{2}|@\d{5})/,fn:function(e){var n={};return e[2]?(n.attrs=t._attrsFromStr(e[1]),n.fgColor=t._getColorObj(e[2])):(n.attrs=t._attrsFromStr(e[3]),n.fgColor=t._getColorObj(e[4])),n.bgColor=t._getColorObj(e[5]),n}},{regex:/^\*([\x01\x02\x03\x04*!\/_|]*)(\d{2}|@\d{5})/,fn:function(e){return{fgColor:t._getColorObj(e[2]),bgColor:null,attrs:t._attrsFromStr(e[1])}}},{regex:/^E/,fn:function(){var e={};return e.fgColor={type:"option",name:"emphasis"},e.bgColor=t._cloneColor(e.fgColor),e.attrs={name:"emphasis",override:{}},e}}],i={fgColor:null,bgColor:null,attrs:null,text:e};return n.some(function(t){var n=e.match(t.regex);return n?(i=t.fn(n),i.text=e.substring(n[0].length),!0):!1}),i},t.rawText2Rich=function(e){var n=e.split(/(\x19|\x1a|\x1b|\x1c)/);if(1===n.length)return[{attrs:t._getDefaultAttributes(),fgColor:t._getDefaultColor(),bgColor:t._getDefaultColor(),text:n[0]}];var i=t._getDefaultColor(),r=t._getDefaultColor(),o=t._getDefaultAttributes(),a=null,c=!0;return n.map(function(e){if(0===e.length)return null;var n=e.charCodeAt(0),s=e.charAt(0);if(n>=25&&28>=n)return 28===n&&(i=t._getDefaultColor(),r=t._getDefaultColor(),25!==a&&(o=t._getDefaultAttributes())),a=n,null;var u=e;if(25===a){var l=t._getStyle(e);null!==l.fgColor&&(i=l.fgColor),null!==l.bgColor&&(r=l.bgColor),null!==l.attrs&&(o=l.attrs),u=l.text}else if(26===a||27===a){var f=26===a;if("|"!==s){var d=t._attrNameFromChar(s);d&&(o.override[d]=f,u=e.substring(1))}}if(a=null,0===u.length)return null;if(c&&null===o.name){var m=!0;for(var h in o.override)if(o.override[h]){m=!1;break}m?o.override={}:c=!1}return{fgColor:t._cloneColor(i),bgColor:t._cloneColor(r),attrs:t._cloneAttrs(o),text:u}}).filter(function(e){return null!==e})},t._uia2s=function(e){if(!e.length||0===e[0])return"";try{var t=String.fromCharCode.apply(null,e),n=decodeURIComponent(escape(t));return n}catch(t){for(var i="",r=0,o=e.length;o>r;r++)i+=e[r]<128?String.fromCharCode(e[r]):"?";return i}},t._mergeParams=function(e,t){for(var n in t)e[n]=t[n];return e},t._formatCmd=function(e,t,n){var i,r;return i=null!==e?"("+e+") ":"",i+=t,n.unshift(i),r=n.join(" "),r+="\n",r.replace(/[\r\n]+$/g,"").split("\n"),r},t.formatInit=function(e){var n={password:null,compression:"zlib"},i=[],r=[];return e=t._mergeParams(n,e),i.push("compression="+e.compression),null!==e.password&&i.push("password="+e.password),r.push(i.join(",")),t._formatCmd(null,"init",r)},t.formatHdata=function(e){var n={id:null,keys:null},i=[];return e=t._mergeParams(n,e),i.push(e.path),null!==e.keys&&i.push(e.keys.join(",")),t._formatCmd(e.id,"hdata",i)},t.formatInfo=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),i.push(e.name),t._formatCmd(e.id,"info",i)},t.formatNicklist=function(e){var n={id:null,buffer:null},i=[];return e=t._mergeParams(n,e),null!==e.buffer&&i.push(e.buffer),t._formatCmd(e.id,"nicklist",i)},t.formatInput=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),i.push(e.buffer),i.push(e.data),t._formatCmd(e.id,"input",i)},t._formatSyncDesync=function(e,n){var i={id:null,buffers:null,options:null},r=[];return n=t._mergeParams(i,n),null!==n.buffers&&(r.push(n.buffers.join(",")),null!==n.options&&r.push(n.options.join(","))),t._formatCmd(n.id,e,r)},t.formatSync=function(e){return t._formatSyncDesync("sync",e)},t.formatDesync=function(e){return t._formatSyncDesync("desync",e)},t.formatTest=function(e){var n={id:null},i=[];return e=t._mergeParams(n,e),t._formatCmd(e.id,"test",i)},t.formatQuit=function(){return t._formatCmd(null,"quit",[])},t.formatPing=function(e){var n={id:null,args:null},i=[];return e=t._mergeParams(n,e),null!==e.args&&i.push(e.args.join(" ")),t._formatCmd(e.id,"ping",i)},t.prototype={_warnUnimplemented:function(e){console.log("Warning: "+e+" message parsing is not implemented")},_getType:function(){var e=this._getSlice(3);return e?t._uia2s(new Uint8Array(e)):null},_runType:function(e){var t=this._types[e],n=t.bind(this);return n()},_getStrNumber:function(){var e=this._getByte(),n=this._getSlice(e);return t._uia2s(new Uint8Array(n))},_strDirect:function(e){return e},_strToString:function(e){return e.toString()},_objToString:function(e,t){var n=this._typesStr[t],i=n.bind(this);return i(e)},_getInfo:function(){var e={};return e.key=this._getString(),e.value=this._getString(),e},_getHdata:function(){function e(){var e={};e.pointers=t.map(function(){return i._getPointer()}),a.forEach(function(t){e[t[0]]=i._runType(t[1])}),r.push(e)}var t,n,i=this,r=[],o=this._getString(),a=this._getString().split(",");t=o.split("/"),n=this._getInt(),a=a.map(function(e){return e.split(":")});for(var c=0;n>c;c++)e();return r},_getPointer:function(){return this._getStrNumber()},_getTime:function(){var e=this._getStrNumber();return new Date(1e3*parseInt(e,10))},_getInt:function(){var e=new Uint8Array(this._getSlice(4));return(255&e[0])<<24|(255&e[1])<<16|(255&e[2])<<8|255&e[3]},_getByte:function(){var e=new Uint8Array(this._getSlice(1));return e[0]},_getChar:function(){return this._getByte()},_getString:function(){var e=this._getInt();if(e>0){var n=this._getSlice(e),i=new Uint8Array(n);return t._uia2s(i)}return""},_getHeader:function(){var e=this._getInt(),t=this._getByte();return{length:e,compression:t}},_getId:function(){return this._getString()},_getObject:function(){var e=this,t=this._getType();return t?{type:t,content:e._runType(t)}:void 0},_getHashTable:function(){var e,t,n,i=this,r={};e=this._getType(),t=this._getType(),n=this._getInt();for(var o=0;n>o;++o){var a=i._runType(e),c=i._objToString(a,e),s=i._runType(t);r[c]=s}return r},_getArray:function(){var e,t,n,i=this;e=this._getType(),t=this._getInt(),n=[];for(var r=0;t>r;r++)n.push(i._runType(e));return n},_getSlice:function(e){if(this.dataAt+e>this._data.byteLength)return null;var t=this._data.slice(this._dataAt,this._dataAt+e);return this._dataAt+=e,t},_setData:function(e){this._data=e},setId:function(e,t){return"("+e+") "+t},parse:function(e){var t=this;this._setData(e),this._dataAt=0;var n=this._getHeader();if(n.compression){var i=new Uint8Array(e,5),r=new Zlib.Inflate(i),o=r.decompress();this._setData(o.buffer),this._dataAt=0}for(var a=this._getId(),c=[],s=this._getObject();s;)c.push(s),s=t._getObject();var u={header:n,id:a,objects:c};return u}},e.Protocol=t}()}("undefined"==typeof exports?this.weeChat={}:exports),function(){"use strict";var e=angular.module("IrcUtils",[]);e.service("IrcUtils",[function(){var e=function(e){var t=_(e).sortBy(function(e){return-e.spokeAt});return t=_(t).pluck("name")},t=function(e,t){var n=null;return t.some(function(t){return 0===t.toLowerCase().search(e.toLowerCase())?(n=t,!0):!1}),n},n=function(e,t,n){for(var i=[],r=null,o=e.toLowerCase(),a=t.toLowerCase(),c=0;c0;)e=n.pop(),e.$$watchers&&(i+=e.$$watchers.length),e.$$childHead&&n.push(e.$$childHead),e.$$nextSibling&&n.push(e.$$nextSibling);o.debug(i)},n.isinstalled=function(){return void 0===navigator.mozApps?!1:void(navigator.mozApps.getSelf().onsuccess=function(e){var t=e.target.result;return t?!0:!1})}(),function(){"undefined"!=typeof document.hidden?(n.documentHidden="hidden",n.documentVisibilityChange="visibilitychange"):"undefined"!=typeof document.webkitHidden?(n.documentHidden="webkitHidden",n.documentVisibilityChange="webkitvisibilitychange"):"undefined"!=typeof document.mozHidden?(n.documentHidden="mozHidden",n.documentVisibilityChange="mozvisibilitychange"):"undefined"!=typeof document.msHidden&&(n.documentHidden="msHidden",n.documentVisibilityChange="msvisibilitychange")}(),function(){window.location.search.substring(1).split("&").forEach(function(e){var n=e.split("=");"debug"===n[0]&&-1!=["true","1"].indexOf(n[1])&&(t.debugMode=!0)}),t.debugMode&&!e.compileProvider.debugInfoEnabled()&&angular.reloadWithDebugInfo()}(),t.isWindowFocused=function(){if("undefined"==typeof n.documentHidden)return!0;var e=document[n.documentHidden];return!e},"undefined"!=typeof n.documentVisibilityChange&&document.addEventListener(n.documentVisibilityChange,function(){if(!document[n.documentHidden]){var e=a.getActiveBuffer();null!==e&&(e.unread=0,e.notification=0,t.$emit("notificationChanged")),t.$apply()}},!1),t.$on("activeBufferChanged",function(e,i){var o=a.getActiveBuffer(),f=o.lines.length-i+5,d=o.lines.length-(2*n.lines_per_screen+10),m=Math.min(f,d);if(m>0&&(o.lines.splice(0,m),o.requestedLines-=m,o.lastSeen-=m,o.allLinesFetched=!1),n.bufferlines=o.lines,n.nicklist=o.nicklist,o.nicklistRequested()?n.showNicklist=n.updateShowNicklist():c.requestNicklist(o.fullName,function(){n.showNicklist=n.updateShowNicklist(),t.scrollWithBuffer(!0)}),o.requestedLinesh&&(h=Math.min(4*h,i)),n.fetchMoreLines(h).then(function(){r(function(){var e=document.getElementById("bufferlines"),n=e.scrollHeight,i=function(){if(e){var r=e.scrollHeight;r!==n&&(t.updateBufferBottom(t.bufferBottom),n=r),setTimeout(i,500)}};t.updateBufferBottom(!0),t.scrollWithBuffer(!0),e.onscroll=_.debounce(function(){t.updateBufferBottom()},80),setTimeout(i,500)})})}s.updateTitle(o),r(function(){t.scrollWithBuffer(!0)}),l.hotlistsync&&o.fullName&&c.sendCoreCommand("/buffer "+o.fullName),n.search="",u.isMobileUi()||setTimeout(function(){document.getElementById("sendMessage").focus()},0)}),t.favico=new Favico({animation:"none"}),t.$on("notificationChanged",function(){s.updateTitle(),l.useFavico&&t.favico&&s.updateFavico()}),t.$on("relayDisconnect",function(){t.pageTitle="",t.notificationStatus="",s.cancelAll(),a.reinitialize(),t.$emit("notificationChanged"),n.connectbutton="Connect"}),n.connectbutton="Connect",n.getBuffers=a.getBuffers.bind(a),n.bufferlines={},n.nicklist={},n.activeBuffer=a.getActiveBuffer,t.connected=!1,t.waseverconnected=!1,t.models=a,t.iterCandidate=null,l.savepassword?(n.$watch("password",function(){l.password=n.password}),l.addCallback("password",function(e){n.password=e}),n.password=l.password):l.password="",l.addCallback("savepassword",function(){l.savepassword&&(l.setDefaults({password:n.password}),l.password=n.password)}),t.wasMobileUi=!1,u.isMobileUi()&&(t.wasMobileUi=!0),l.fontfamily||(l.fontfamily=u.isMobileUi()?"sans-serif":"Inconsolata, Consolas, Monaco, Ubuntu Mono, monospace"),n.isSidebarVisible=function(){return"visible"===document.getElementById("content").getAttribute("sidebar-state")},n.showSidebar=function(){document.getElementById("sidebar").setAttribute("data-state","visible"),document.getElementById("content").setAttribute("sidebar-state","visible"),u.isMobileUi()&&_.each(document.getElementsByTagName("textarea"),function(e){r(function(){e.blur()})})},t.hideSidebar=function(){u.isMobileUi()&&(document.getElementById("sidebar").setAttribute("data-state","hidden"),document.getElementById("content").setAttribute("sidebar-state","hidden"))},l.addCallback("autoconnect",function(e){!e||t.connected||t.sslError||t.securityError||t.errorMessage||n.connect()}),n.toggleSidebar=function(){u.isMobileUi()&&(n.isSidebarVisible()?n.hideSidebar():n.showSidebar())},n.openNick=function(){u.isMobileUi()&&l.nonicklist&&(l.nonicklist=!1)},n.closeNick=function(){u.isMobileUi()&&(l.nonicklist||(l.nonicklist=!0))},l.addCallback("orderbyserver",function(e){t.predicate=e?"serverSortKey":"number"}),l.addCallback("useFavico",function(e){t.connected&&(e?s.updateFavico():t.favico.reset())}),l.addCallback("fontfamily",function(e){u.changeClassStyle("favorite-font","fontFamily",e)}),l.addCallback("fontsize",function(e){u.changeClassStyle("favorite-font","fontSize",e)}),n.setActiveBuffer=function(e,t){return u.isMobileUi()&&n.hideSidebar(),a.setActiveBuffer(e,t)},n.openBuffer=function(e){var t=a.getActiveBuffer().fullName;if(t=t.substring(0,t.lastIndexOf(".")+1)+e,!n.setActiveBuffer(t,"fullName")){var i="join";["#","&","+","!"].indexOf(e.charAt(0))<0&&(i="query"),c.sendMessage("/"+i+" "+e)}},n.calculateNumLines=function(){for(var e=document.querySelectorAll(".bufferline"),t=0,i=0;0===t&&ir||Math.abs(r-o)<3){var a=document.querySelector(".readmarker");if(e&&a)i.scrollTop=a.offsetTop-a.parentElement.scrollHeight+a.scrollHeight;else if(n)i.scrollTop=i.scrollHeight-i.clientHeight-o;else{var c=document.getElementById("end-of-buffer");c.scrollIntoView()}t.updateBufferBottom()}};r(a),window.requestAnimationFrame(a)},n.connect=function(){s.requestNotificationPermission(),t.sslError=!1,t.securityError=!1,t.errorMessage=!1,t.bufferBottom=!0,n.connectbutton="Connecting ...",c.connect(l.host,l.port,n.password,l.ssl)},n.disconnect=function(){n.connectbutton="Connect",c.disconnect()},n.install=function(){if(void 0!==navigator.mozApps){var e=location.protocol+"//"+location.host+location.pathname.replace(/\/(index\.html)?$/,""),t=navigator.mozApps.install(e+"/manifest.webapp");t.onsuccess=function(){n.isinstalled=!0;var e=this.result;e.launch(),alert("Installation successful!")},t.onerror=function(){alert("Install failed, error: "+this.error.name)}}else alert("Sorry. Only supported in Firefox v26+")},n.showModal=function(e){document.getElementById(e).setAttribute("data-state","visible")},n.closeModal=function(e){function t(e,t){for(var n=e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector;e;){if(n.call(e,t))return e;e=e.parentElement}}t(e.target,".gb-modal").setAttribute("data-state","hidden")},n.toggleAccordion=function(e){e.stopPropagation(),e.preventDefault();var t=e.target.parentNode.parentNode.parentNode;t.setAttribute("data-state","active"===t.getAttribute("data-state")?"collapsed":"active");var n=t.parentNode.children;for(var i in n){var r=n[i];1===r.nodeType&&r!==t&&r.setAttribute("data-state","collapsed")}},n.hasUnread=function(e){return n.search&&""!==n.search?!0:l.onlyUnread?a.getActiveBuffer()===e?!0:"core.weechat"===e.fullName?!0:e.unread>0||e.notification>0:!0},l.addCallback("nonicklist",function(){n.showNicklist=n.updateShowNicklist(),t.connected&&t.bufferBottom&&r(function(){t.updateBufferBottom(!0)},500)}),n.showNicklist=!1,n.updateShowNicklist=function(){var e=a.getActiveBuffer();return e?l.nonicklist?!1:e.isNicklistEmpty()?!1:!0:!1},t.switchToActivityBuffer=function(){var e,t,i=_.sortBy(n.getBuffers(),"number");for(e in i)if(t=i[e],t.notification>0)return void n.setActiveBuffer(t.id);for(e in i)if(t=i[e],t.unread>0)return void n.setActiveBuffer(t.id)},t.toggleNicklist=function(){l.nonicklist=!l.nonicklist},n.handleSearchBoxKey=function(e){var t=e.keyCode?e.keyCode:e.charCode;27===t?(e.preventDefault(),n.search=""):13===t&&(e.preventDefault(),n.filteredBuffers.length>0&&n.setActiveBuffer(n.filteredBuffers[0].id),n.search="")},window.onbeforeunload=function(e){null!==n.command&&""!==n.command?(e.preventDefault(),e.returnValue="Any unsent input will be lost. Are you sure that you want to quit?"):(t.connected&&n.disconnect(),n.favico.reset())}}]),e.config(["$routeProvider",function(e){e.when("/",{templateUrl:"index.html",controller:"WeechatCtrl"})}])}(),function(){"use strict";var e=angular.module("weechat");e.factory("settings",["$store","$rootScope",function(e,t){var n=this;this.callbacks={};var i=function(i){Object.defineProperty(n,i,{enumerable:!0,key:i,get:function(){return e.get(i)},set:function(r){e.set(i,r);for(var o=n.callbacks[i],a=0;void 0!==o&&a0?"("+t+") ":"";var i=n.getActiveBuffer();i&&(e.pageTitle=i.shortName+" | "+i.rtitle)},s=function(){var t=a("notification");if(t>0)e.favico.badge(t,{bgColor:"#d00",textColor:"#fff"});else{var n=a("unread");0===n?e.favico.reset():e.favico.badge(n,{bgColor:"#5CB85C",textColor:"#ff0"})}},u=function(e,t){var o="",a="",c=e.notification;if(["#","&","+","!"].indexOf(e.shortName.charAt(0))<0)o=c>1?c.toString()+" private messages from ":"Private message from ",a=t.text;else{o=c>1?c.toString()+" highlights in ":"Highlight in ";for(var s="",u=0;u "+t.text}o+=e.shortName,o+=e.fullName.replace(/irc.([^\.]+)\..+/," ($1)");var l=new Notification(o,{body:a,icon:"assets/img/favicon.png"});l.id=r.length,r.push(l);var f=15e3;if(l.onshow=function(){setTimeout(function(){l.close()},f)},l.onclick=function(){n.setActiveBuffer(e.id),window.focus(),l.close()},l.onclose=function(){delete r[this.id]},i.soundnotification){var d="assets/audio/sonar",m='';document.getElementById("soundNotification").innerHTML=m}},l=function(){for(;r.length>0;){var e=r.pop();void 0!==e&&e.close()}};return{requestNotificationPermission:o,updateTitle:c,updateFavico:s,createHighlight:u,cancelAll:l}}]),function(){"use strict";var e=angular.module("weechat");e.filter("toArray",function(){return function(e,t){return e instanceof Object?Object.keys(e).map(t?function(t,n){return Object.defineProperties(e[t],{$key:{value:t},$idx:{value:n,configurable:!0}})}:function(t){return Object.defineProperty(e[t],"$key",{value:t})}):e}}),e.filter("irclinky",["$filter",function(){return function(e){if(!e)return e;var t={"<":"<",">":">",'"':""","'":"'","&":"&","/":"/"};e=e.replace(/[<>"'&\/]/g,function(e){return t[e]});var n=/(^|[\s,.:;?!"'()+@-\~%])(#+[^\x00\x07\r\n\s,:]*[a-z][^\x00\x07\r\n\s,:]*)/gim,i='$1$2';return e.replace(n,i)}}]),e.filter("inlinecolour",function(){return function(e){if(!e)return e;var t=/(^|[^&])(\#[0-9a-f]{6};?)(?!\w)/gim,n=/(.?)(rgba?\((?:\s*\d+\s*,){2}\s*\d+\s*(?:,\s*[\d.]+\s*)?\);?)/gim,i='$1$2
';return e=e.replace(t,i),e=e.replace(n,i)}}),e.filter("DOMfilter",["$filter","$sce",function(e,t){return function(n,i){if(!n||!i)return n;var r=arguments.length>2?arguments[2]:null,o=e(i),a=document.createElement("div");a.innerHTML=n;var c=function(e){if(3===e.nodeType){var t=o(e.nodeValue,r);if(t!==e.nodeValue){var n=document.createElement("span");n.innerHTML=t;var i=e.parentNode,a=e.nextSibling;return i.removeChild(e),a?i.insertBefore(n,a):i.appendChild(n),n}}if(void 0!==e&&null!==e)for(e=e.firstChild;e;){var s=c(e);e=(s?s:e).nextSibling}};return c(a),t.trustAsHtml(a.innerHTML)}}]),e.filter("getBufferQuickKeys",function(){return function(e,t){return t?(void 0!==t.search&&t.search.length||t.onlyUnread?e.forEach(function(e,t){e.$quickKey=10>t?(t+1)%10:""}):_.map(e,function(e,t){return[e.number,e.$idx,t]}).sort(function(e,t){return e[0]-t[0]||e[1]-t[1]}).forEach(function(t,n){e[t[2]].$quickKey=10>n?(n+1)%10:""}),e):e}}),e.filter("emojify",function(){return function(e,t){return t===!0?twemoji.parse(e):e}})}(),function(){"use strict";var e=angular.module("weechat");e.factory("handlers",["$rootScope","$log","models","plugins","notifications",function(e,t,n,i,r){var o=function(e){var t=e.objects[0].content[0],i=t.pointers[0];n.closeBuffer(i)},a=function(t,o){var a=new n.BufferLine(t),c=n.getBuffer(a.buffer);c.requestedLines++,a.displayed&&(a=i.PluginManager.contentForMessage(a),c.addLine(a),o&&c.lastSeen++,c.active&&!o&&e.scrollWithBuffer(),o||c.active&&e.isWindowFocused()||(c.notify>1&&_.contains(a.tags,"notify_message")&&!_.contains(a.tags,"notify_none")&&(c.unread++,e.$emit("notificationChanged")),(0!==c.notify&&a.highlight||_.contains(a.tags,"notify_private"))&&(c.notification++,r.createHighlight(c,a),e.$emit("notificationChanged"))))},c=function(e){e.objects[0].content.forEach(function(e){a(e,!1)})},s=function(e){var t=e.objects[0].content[0],i=new n.Buffer(t);n.addBuffer(i)},u=function(e){var t=e.objects[0].content[0],i=t.pointers[0],r=n.getBuffer(i);r.fullName=t.full_name,r.title=n.parseRichText(t.title),r.number=t.number,r.rtitle="";for(var o=0;o=0?t.short_name.charAt(0):""},f=function(e){var t=e.objects[0].content[0],i=t.pointers[0],r=n.getBuffer(i),o=t.local_variables;void 0!==r&&void 0!==o&&(r.type=o.type,r.indent=["channel","private"].indexOf(o.type)>=0)},d=function(e,t){var n=e.objects[0].content.reverse();void 0===t&&(t=!0),n.forEach(function(e){a(e,t)})},m=function(e){if(0!==e.objects.length){var t=e.objects[0].content;t.forEach(function(e){var t=n.getBuffer(e.buffer);t.unread+=e.count[1],t.notification+=e.count[2],t.notification+=e.count[3];var i=_.reduce(e.count,function(e,t){return e+t},0);t.lastSeen=t.lines.length-1-i})}},h=function(e){var t=e.objects[0].content,i="root";t.forEach(function(e){var t=n.getBuffer(e.pointers[0]);if(1===e.group){var r=new n.NickGroup(e);i=r.name,t.nicklist[i]=r}else{var o=new n.Nick(e);t.addNick(i,o)}})},g=function(e){var t,i=e.objects[0].content;i.forEach(function(e){var i=n.getBuffer(e.pointers[0]),r=e._diff;if(1===e.group){if(t=e.name,void 0===t){var o=new n.NickGroup(e);i.nicklist[t]=o,t=o.name}}else{var a=new n.Nick(e);43===r?i.addNick(t,a):45===r?i.delNick(t,a):42===r&&i.updateNick(t,a)}})},p={_buffer_closing:o,_buffer_line_added:c,_buffer_localvar_added:f,_buffer_localvar_removed:f,_buffer_opened:s,_buffer_title_changed:u,_buffer_renamed:l,_nicklist:h,_nicklist_diff:g};e.$on("onMessage",function(e,n){_.has(p,n.id)?p[n.id](n):t.debug("Unhandled event received: "+n.id)});var v=function(e){_.has(p,e.id)&&p[e.id](e)};return{handleEvent:v,handleLineInfo:d,handleHotlistInfo:m,handleNicklist:h}}])}(),function(){"use strict";var e=angular.module("weechat");e.factory("connection",["$rootScope","$log","handlers","models","ngWebsockets",function(e,t,n,i,r){var o=new weeChat.Protocol,a=function(a,c,s,u,l){var f=u?"wss":"ws";-1!==a.indexOf(":")&&(a="["+a+"]");var d=f+"://"+a+":"+c+"/weechat";t.debug("Connecting to URL: ",d);var m=function(){var o=function(e){return r.send(weeChat.Protocol.formatInit({password:e,compression:l?"off":"zlib"})),r.send(weeChat.Protocol.formatInfo({name:"version"}))},a=function(){return r.send(weeChat.Protocol.formatHdata({path:"hotlist:gui_hotlist(*)",keys:[]}))},c=function(){return r.send(weeChat.Protocol.formatHdata({path:"buffer:gui_buffers(*)",keys:["local_variables,notify,number,full_name,short_name,title"]}))},u=function(){return r.send(weeChat.Protocol.formatSync({}))};o(s).then(function(){c().then(function(e){for(var t=e.objects[0].content,n=0;n=0;a.lines.length=0,a.requestedLines=0;var c=t.objects[0].content.length;n.handleLineInfo(t,!0),a.lastSeen-=i,o>c&&(a.allLinesFetched=!0),e.loadingLines=!1;var s=!r&&a.lastSeen>=0;e.scrollWithBuffer(s,!0)})};return{connect:a,disconnect:c,sendMessage:s,sendCoreCommand:u,fetchMoreLines:f,requestNicklist:l}}])}(),function(){"use strict";var e=angular.module("weechat");e.directive("inputBar",function(){return{templateUrl:"directives/input.html",scope:{inputId:"@inputId",command:"=command"},controller:["$rootScope","$scope","$element","$log","connection","models","IrcUtils","settings",function(e,t,n,i,r,o,a,c){t.getInputNode=function(){return document.querySelector("textarea#"+t.inputId)},t.hideSidebar=function(){e.hideSidebar()},t.completeNick=function(){var e=t.getInputNode(),n=e.selectionStart,i=o.getActiveBuffer(),r=t.command||"",c=a.completeNick(r,n,t.iterCandidate,i.getNicklistByTime(),":");t.iterCandidate=c.iterCandidate,t.command=c.text,setTimeout(function(){e.focus(),e.setSelectionRange(c.caretPos,c.caretPos)},0)},t.sendMessage=function(){var e=o.getActiveBuffer();void 0!==t.command&&""!==t.command&&(e.addToHistory(t.command),_.each(t.command.split(/\r?\n/),function(e){("/quit"!==e&&0!==e.indexOf("/quit ")||window.confirm("Are you sure you want to quit WeeChat? This will prevent you from connecting with Glowing Bear until you restart WeeChat on the command line!"))&&r.sendMessage(e)}),("/buffer clear"===t.command||"/c"===t.command)&&(i.debug("Clearing lines"),e.clear()),t.command=""),t.getInputNode().focus()},e.addMention=function(e){var n=e[e.length-1].text,i=t.command||"",r=0===i.length;if(i.length>0){var a=i.trim();if(":"===a.charAt(a.length-1)){var c=a.lastIndexOf(" ")+1,s=a.slice(c,a.length-1),u=o.getActiveBuffer().getNicklistByTime();for(var l in u)if(u[l].name===s){i=i.slice(0,i.lastIndexOf(":"))+" ",r=!0;break}}" "!==i.charAt(i.length-1)&&(i+=" ")}i+=n,r&&(i+=": "),t.command=i,t.getInputNode().focus()},e.handleKeyPress=function(n){if(!e.connected)return!0;var i=t.getInputNode(),a=n.keyCode?n.keyCode:n.charCode;e.showQuickKeys=!1;var s=t.iterCandidate;if(t.iterCandidate=null,n.altKey&&!n.ctrlKey&&a>47&&58>a){48===a&&(a=58);var u,l=a-48-1;if((t.$parent.search.length||t.$parent.onlyUnread)&&t.$parent.filteredBuffers.length){var f=t.$parent.filteredBuffers[l];void 0!==f&&(u=[f.number,f.id])}else{var d=_.map(o.getBuffers(),function(e){return[e.number,e.id]}).sort(function(e,t){return e[0]-t[0]});u=d[l]}u&&(t.$parent.setActiveBuffer(u[1]),n.preventDefault())}if(9===a&&!n.altKey&&!n.ctrlKey)return n.preventDefault(),t.iterCandidate=s,t.completeNick(),!0;if(n.altKey&&!n.ctrlKey&&78===a)return n.preventDefault(),e.toggleNicklist(),!0;if(n.altKey&&(97===a||65===a))return n.preventDefault(),e.switchToActivityBuffer(),!0;if(n.altKey&&(76===a||108===a))return n.preventDefault(),i.focus(),i.setSelectionRange(t.command.length,t.command.length),!0;if(n.altKey&&(60===a||226===a)){var m=o.getPreviousBuffer();if(m)return o.setActiveBuffer(m.id),n.preventDefault(),!0}if(27===a){n.preventDefault();for(var h=document.querySelectorAll(".gb-modal"),g=0;g=0;b--)if(v[b].offsetTop-y.scrollTopy.clientHeight/2){v[b].scrollIntoView(!0);break}return!0}if(c.readlineBindings&&n.ctrlKey&&!n.altKey&&!n.shiftKey&&document.activeElement===i){if(p=i.selectionStart,65==a)i.setSelectionRange(0,0);else if(69==a)i.setSelectionRange(t.command.length,t.command.length);else if(85==a)t.command=t.command.slice(p),setTimeout(function(){i.setSelectionRange(0,0)});else if(75==a)t.command=t.command.slice(0,p),setTimeout(function(){i.setSelectionRange(t.command.length,t.command.length)});else{if(87!=a)return!1;var w=t.command.slice(0,p),k=w.lastIndexOf(" ")+1;t.command=t.command.slice(0,k)+t.command.slice(p,t.command.length),setTimeout(function(){i.setSelectionRange(k,k)})}return n.preventDefault(),!0}"keydown"!==n.type||18!==a||n.ctrlKey||n.shiftKey||(e.showQuickKeys=!0)},e.handleKeyRelease=function(t){return 18===t.keyCode?(void 0!==e.quickKeysTimer&&clearTimeout(e.quickKeysTimer),e.quickKeysTimer=setTimeout(function(){e.showQuickKeys&&(e.showQuickKeys=!1,e.$apply()),delete e.quickKeysTimer},1e3),!0):void 0}}]}})}(),function(){"use strict";var e=angular.module("weechat");e.directive("plugin",["$rootScope","settings",function(e,t){return{templateUrl:"directives/plugin.html",scope:{plugin:"=data"},controller:["$scope",function(n){n.displayedContent="",n.plugin.visible=!t.noembed&&!n.plugin.nsfw,n.plugin.className="embed_"+n.plugin.$$hashKey.replace(":","_"),n.plugin.getElement=function(){return document.querySelector("."+n.plugin.className)},n.hideContent=function(){n.plugin.visible=!1},n.showContent=function(t){var i=n.plugin.getElement();n.plugin.content instanceof Function?i&&""!==i.innerHTML||setTimeout(function(){n.plugin.content()}):n.displayedContent=n.plugin.content,n.plugin.visible=!0;var r;if(t){var o=e.bufferBottom;r=function(){e.updateBufferBottom(o)}}else r=function(){i&&void 0!==i.scrollIntoViewIfNeeded&&(i.scrollIntoViewIfNeeded(),e.updateBufferBottom())};setTimeout(r,500)},n.plugin.visible&&n.showContent(!0)}]}}])}(),function(){"use strict";var e=angular.module("ngWebsockets",[]);e.factory("ngWebsockets",["$rootScope","$q",function(e,t){var n=null,i=null,r={},o=0,a=function(e){for(var t in r)r[t].cb.reject(e)},c=function(){return o+=1,o>1e3&&(o=0),o},s=function(e){var t=u(e);return e=n.setId(t.id,e),i.send(e),t.promise},u=function(){var e=t.defer(),n=c();return r[n]={time:new Date,cb:e},e.id=n,e},l=function(e){var n=[];for(var i in e){var r=s(e[i]);n.push(r)}return t.all(n)},f=function(t){var i=n.parse(t.data);if(_.has(r,i.id)){var o=r[i.id];o.cb.resolve(i),delete r[i.id]}else e.$emit("onMessage",i);e.$apply()},d=function(e,t,r){i=new WebSocket(e),n=t;for(var o in r)i[o]=r[o];i.onmessage="onmessage"in r?function(e){r.onmessage(e),f(e)}:f},m=function(){i.close()};return{send:s,sendAll:l,connect:d,disconnect:m,failCallbacks:a}}])}(),function(){"use strict";var e=angular.module("weechatModels",[]);e.service("models",["$rootScope","$filter",function(e,t){function n(e,t){if(t in e&&e[t]&&e[t].length>0){var n=e[t];if(n.match(/^weechat/)){var i=n.match(/[a-zA-Z0-9_]+$/)[0];return["cof-"+i,"cob-"+i,"coa-"+i]}if(n.match(/^[a-zA-Z]+$/))return["cwf-"+n];if(n.match(/^[0-9]+$/))return["cef-"+n]}return["cwf-default"]}function i(e){return{name:n(e,"color"),prefix:n(e,"prefix_color")}}var r=function(e){var t=weeChat.Protocol.rawText2Rich(e),n={option:"cof-",weechat:"cwf-",ext:"cef-"},i={option:"cob-",weechat:"cwb-",ext:"ceb-"};return t.forEach(function(e){e.classes=[];var t=n[e.fgColor.type];e.classes.push(t+e.fgColor.name),t=i[e.bgColor.type],e.classes.push(t+e.bgColor.name),null!==e.attrs.name&&e.classes.push("coa-"+e.attrs.name);var r,o;for(r in e.attrs.override)o=e.attrs.override[r],e.classes.push(o?"a-"+r:"a-no-"+r)}),t};this.parseRichText=r,this.Buffer=function(e){var t=e.full_name,n=e.short_name,i=n.replace(/^[#&+]/,"")||(n?" ":null),o=["#","&","+"].indexOf(n.charAt(0))>=0?n.charAt(0):"",a=r(e.title),c=e.number,s=e.pointers[0],u=3,l=[],f=0,d={},m=[],h=0,g=0,p=0,v=-1,b=t.replace(/^irc\.server\.(\w+)/,"irc.$1"),y=e.local_variables.type,w=["channel","private"].indexOf(y)>=0;void 0!==e.notify&&(u=e.notify);for(var k="",C=0;C=m.length&&m.push(e),0>=h||h>=m.length)return e;h--;var t=m[h];return t},M=function(e){return h===m.length?(void 0!==e&&""!==e&&(m.push(e),h++),""):0>h||h>m.length?e:(h++,m.length>0&&h==m.length-1?m.pop():m[h])},E=function(){for(var e in d)if("root"!==e)return!1;return!0},D=function(){return d.hasOwnProperty("root")},H=function(){for(;l.length>0;)l.pop();f=0};return{id:s,fullName:t,shortName:n,trimmedName:i,prefix:o,number:c,title:a,rtitle:k,lines:l,clear:H,requestedLines:f,addLine:x,lastSeen:v,unread:p,notification:g,notify:u,nicklist:d,addNick:S,delNick:B,updateNick:A,getNicklistByTime:$,serverSortKey:b,indent:w,type:y,history:m,addToHistory:T,getHistoryUp:I,getHistoryDown:M,isNicklistEmpty:E,nicklistRequested:D}},this.BufferLine=function(e){var n=e.buffer,i=e.date,o=t("date")(i,"HH:mm"),a=r(e.prefix),c=e.tags_array,s=e.displayed,u=e.highlight,l=r(e.message);u&&a.forEach(function(e){e.classes.push("highlight")});for(var f="",d=0;d]/g,i=function(e,t){return{contentForMessage:function(e){for(var i=e.match(n),r=[],o=0;i&&o=0;s--){var u=1==c.length?void 0:s+1;r(c[s],e[o].name,u)}else r(c,e[o].name);if(e[o].exclusive)break}}return n};return{registerPlugins:n,contentForMessage:r}};this.PluginManager=new n,this.PluginManager.registerPlugins(e.plugins)}]),e.factory("userPlugins",function(){var e=function(e,t){var n="jsonp_callback_"+Math.round(1e5*Math.random());window[n]=function(e){delete window[n],document.body.removeChild(i),t(e)};var i=document.createElement("script");i.src=e+(e.indexOf("?")>=0?"&":"?")+"callback="+n,document.body.appendChild(i)},n=new t("Spotify track",function(e){var t=[],n=function(e){for(var n=0;e&&n')}};return n(e.match(/spotify:track:([a-zA-Z-0-9]{22})/g)),n(e.match(/open.spotify.com\/track\/([a-zA-Z-0-9]{22})/g)),t}),r=new i("YouTube video",function(e){var t=/(?:youtube.com|youtu.be)\/(?:v\/|embed\/|watch(?:\?v=|\/))?([a-zA-Z0-9-]+)/i,n=e.match(t);if(n){var i=n[1],r="https://www.youtube.com/embed/"+i+"?html5=1&iv_load_policy=3&modestbranding=1&rel=0&showinfo=0";return''}}),o=new t("Dailymotion video",function(e){var t=/dailymotion.com\/.*video\/([^_?# ]+)/,n=/dailymotion.com\/.*#video=([^_& ]+)/,i=/dai.ly\/([^_?# ]+)/,r=e.match(t)||e.match(n)||e.match(i);if(r){var o=r[1],a="https://www.dailymotion.com/embed/video/"+o+"?html&controls=html&startscreen=html&info=0&logo=0&related=0";return''}return null}),a=new t("AlloCine video",function(e){var t=/allocine.fr\/videokast\/video-(\d+)/,n=/allocine.fr\/.*cmedia=(\d+)/,i=e.match(t)||e.match(n);if(i){var r=i[1],o="http://www.allocine.fr/_video/iblogvision.aspx?cmedia="+r;return''}return null}),c=new i("image",function(e){return e.match(/\.(png|gif|jpg|jpeg)(:(small|medium|large))?\b/i)?(-1!=e.indexOf("^https?://fukung.net/v/")?e=e.replace(/.*\//,"http://media.fukung.net/imgs/"):e.match(/^http:\/\/(i\.)?imgur\.com\//i)?e=e.replace(/http:/,""):e.match(/^https:\/\/www\.dropbox\.com\/s\/[a-z0-9]+\/[^?]+$/i)&&(e+="?dl=1"),''):void 0}),s=new i("video",function(e){return e.match(/\.(mp4|webm|ogv)\b/i)?'':void 0}),u=new i("cloud music",function(e){return e.match(/^https?:\/\/soundcloud.com\//)?'':e.match(/^https?:\/\/([a-z]+\.)?mixcloud.com\//)?'':void 0}),l=new i("Google Map",function(e){return e.match(/^https?:\/\/maps\.google\./i)||e.match(/^https?:\/\/(?:[\w]+\.)?google\.[\w]+\/maps/i)?'':void 0}),f=new i("ascii cast",function(e){var t=/^https?:\/\/(?:www\.)?asciinema.org\/a\/(\d+)/i,n=e.match(t);if(n){var i=n[1];return function(){var e=this.getElement(),t=document.createElement("script");t.src="https://asciinema.org/a/"+i+".js",t.id="asciicast-"+i,t.async=!0,e.appendChild(t)}}}),d=new i("meteogram",function(e){var t=/^https?:\/\/(?:www\.)?yr\.no\/(place|stad|sted|sadji|paikka)\/(([^\s.;,(){}<>\/]+\/){3,})/,n=e.match(t);if(n){var i=n[1],r=n[2],o=n[n.length-1].slice(0,-1);return e="http://www.yr.no/"+i+"/"+r+"avansert_meteogram.png","Meteogram for "+o+""}}),m=new i("Gist",function(t){var n=/^https:\/\/gist\.github.com\/[^.?]+/i,i=t.match(n);return i?(t=i[0]+".json",function(){var n=this.getElement();e(t,function(e){if(document.querySelectorAll('link[rel=stylesheet][href="'+e.stylesheet+'"]').length<1){var t='';document.getElementsByTagName("head")[0].innerHTML+=t}n.innerHTML='
'+e.div+"
"})}):void 0}),h=new i("Tweet",function(t){var n=/^https?:\/\/twitter\.com\/(?:#!\/)?(\w+)\/status(?:es)?\/(\d+)/i,i=t.match(n);return i?(t="https://api.twitter.com/1/statuses/oembed.json?id="+i[2],function(){var n=this.getElement();e(t,function(e){var t=e.html.indexOf("'}});return{plugins:[r,o,a,c,s,n,u,l,f,d,m,h,g]}})}(); //# sourceMappingURL=min.map \ No newline at end of file diff --git a/min.map b/min.map index d680b3b..ca4c8d3 100644 --- a/min.map +++ b/min.map @@ -1 +1 @@ -{"version":3,"file":"min.js","sources":["js/localstorage.js","js/weechat.js","js/irc-utils.js","js/glowingbear.js","js/settings.js","js/utils.js","js/notifications.js","js/filters.js","js/handlers.js","js/connection.js","js/inputbar.js","js/plugin-directive.js","js/websockets.js","js/models.js","js/plugins.js"],"names":["ls","angular","module","factory","$parse","storage","window","localStorage","undefined","supported","JSON","console","log","privateMethods","parseValue","res","val","parse","parseFloat","isObject","e","publicMethods","set","key","value","saver","stringify","setItem","get","item","getItem","remove","removeItem","enumerateKeys","keys","i","len","length","push","bind","$scope","def","assign","$watch","exports","WeeChatProtocol","this","_types","chr","_getChar","int","_getInt","str","_getString","inf","_getInfo","hda","_getHdata","ptr","_getPointer","lon","_getStrNumber","tim","_getTime","buf","arr","_getArray","htb","_getHashTable","inl","_warnUnimplemented","_typesStr","_strDirect","_strToString","_weeChatColorsNames","_colorsOptionsNames","_getDefaultColor","type","name","_getDefaultAttributes","override","bold","reverse","italic","underline","_getDefaultStyle","fgColor","bgColor","attrs","_cloneColor","color","clone","_cloneAttrs","attr","_attrNameFromChar","ch","chars","*","!","/","_","\u0001","\u0002","\u0003","\u0004","_attrsFromStr","charAt","attrName","_getColorObj","code","parseInt","codeStr","substring","toString","_getStyle","txt","matchers","regex","fn","m","ret","optionCode","optionName","text","some","matcher","match","rawText2Rich","rawText","parts","split","curFgColor","curBgColor","curAttrs","curSpecialToken","curAttrsOnlyFalseOverrides","map","p","firstCharCode","charCodeAt","firstChar","style","orideVal","orideName","allReset","filter","_uia2s","uia","encodedString","String","fromCharCode","apply","decodedString","decodeURIComponent","escape","exception","s","n","_mergeParams","defaults","v","_formatCmd","id","cmdIdName","cmd","unshift","join","replace","formatInit","params","defaultParams","password","compression","formatHdata","path","formatInfo","formatNicklist","buffer","formatInput","data","_formatSyncDesync","cmdName","buffers","options","formatSync","formatDesync","formatTest","formatQuit","formatPing","args","prototype","_getType","t","_getSlice","Uint8Array","_runType","cb","boundCb","_getByte","obj","_objToString","info","runType","tmp","pointers","paths","self","forEach","objs","count","hpath","Date","parsedData","l","_getHeader","comp","_getId","_getObject","content","typeKeys","typeValues","dict","keyStr","values","dataAt","_data","byteLength","slice","_dataAt","_setData","setId","command","header","raw","inflate","Zlib","Inflate","plain","decompress","objects","object","msg","Protocol","weeChat","IrcUtils","service","_ciNickList","nickList","newList","sortBy","nickObj","spokeAt","pluck","_completeSingleNick","candidate","foundNick","nick","toLowerCase","search","_nextNick","iterCandidate","currentNick","matchingNicks","at","lcIterCandidate","lcCurrentNick","lcNick","completeNick","caretPos","suf","doIterate","searchNickList","beforeCaret","afterCaret","RegExp","newNick","weechat","$compileProvider","compileProvider","config","debugInfoEnabled","controller","$rootScope","$store","$timeout","$log","models","connection","notifications","utils","settings","themes","setDefaults","theme","host","port","ssl","location","protocol","savepassword","autoconnect","nonicklist","isMobileUi","noembed","onlyUnread","hotlistsync","orderbyserver","useFavico","showtimestamp","showtimestampSeconds","fontsize","fontfamily","readlineBindings","countWatchers","scope","q","watchers","pop","$$watchers","$$childHead","$$nextSibling","debug","isinstalled","navigator","mozApps","getSelf","onsuccess","evt","app","target","result","document","hidden","documentHidden","documentVisibilityChange","webkitHidden","mozHidden","msHidden","f","segs","indexOf","debugMode","reloadWithDebugInfo","isWindowFocused","isHidden","addEventListener","getActiveBuffer","unread","notification","$emit","$apply","$on","event","unreadSum","ab","minRetainUnread","lines","surplusLines","lines_per_screen","linesToRemove","Math","min","splice","requestedLines","lastSeen","allLinesFetched","bufferlines","nicklist","nicklistRequested","showNicklist","updateShowNicklist","requestNicklist","fullName","scrollWithBuffer","numLines","fetchMoreLines","then","bl","getElementById","lastScrollHeight","scrollHeight","scrollHeightObserver","newScrollHeight","updateBufferBottom","bufferBottom","setTimeout","onscroll","debounce","updateTitle","sendCoreCommand","focus","favico","Favico","animation","updateFavico","pageTitle","notificationStatus","cancelAll","reinitialize","connectbutton","getBuffers","activeBuffer","connected","waseverconnected","addCallback","wasMobileUi","isSidebarVisible","getAttribute","showSidebar","setAttribute","each","getElementsByTagName","elem","blur","hideSidebar","sslError","securityError","errorMessage","connect","toggleSidebar","openNick","closeNick","predicate","reset","changeClassStyle","setActiveBuffer","bufferId","openBuffer","bufferName","lastIndexOf","sendMessage","calculateNumLines","bufferlineElements","querySelectorAll","lineHeight","idx","clientHeight","areaHeight","querySelector","ceil","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","rescroll","loadingLines","bottom","eob","scrollIntoView","offsetTop","scrollTop","scrollToReadmarker","moreLines","sVal","scroll","sTop","abs","readmarker","parentElement","requestNotificationPermission","disconnect","install","base_url","pathname","request","appRecord","launch","alert","onerror","error","showModal","elementId","closeModal","$event","closest","selector","matchesSelector","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","call","toggleAccordion","stopPropagation","preventDefault","parentNode","siblings","children","childId","child","nodeType","hasUnread","isNicklistEmpty","switchToActivityBuffer","sortedBuffers","toggleNicklist","handleSearchBoxKey","keyCode","charCode","filteredBuffers","onbeforeunload","returnValue","$routeProvider","when","templateUrl","that","callbacks","defineProperty","Object","enumerable","newVal","keyIdx","callback","classSelector","getElementsByClassName","getClassStyle","mobile_cutoff","body","clientWidth","Notification","requestPermission","status","permission","webkitNotifications","havePermission","checkPermission","unreadCount","model","shortName","rtitle","badge","textColor","createHighlight","message","title","numNotifications","prefix","icon","timeout","onshow","close","onclick","onclose","soundnotification","audioFile","soundHTML","innerHTML","storeIdx","defineProperties","$key","$idx","configurable","entities","<",">","\"","'","&","char","channelRegex","substitute","hexColourRegex","rgbColourRegex","$filter","$sce","extraArgument","arguments","filterFunction","el","createElement","process","node","nodeValue","newNode","parent","sibling","nextSibling","removeChild","insertBefore","appendChild","firstChild","nextNode","trustAsHtml","$quickKey","number","sort","left","right","enable_JS_Emoji","twemoji","plugins","handleBufferClosing","bufferMessage","closeBuffer","handleLine","line","manually","BufferLine","getBuffer","displayed","PluginManager","contentForMessage","addLine","active","notify","contains","tags","highlight","handleBufferLineAdded","handleBufferOpened","Buffer","addBuffer","handleBufferTitleChanged","old","full_name","parseRichText","handleBufferRenamed","short_name","trimmedName","handleBufferLocalvarChanged","localvars","local_variables","indent","handleLineInfo","handleHotlistInfo","hotlist","reduce","memo","num","handleNicklist","group","g","NickGroup","Nick","addNick","handleNicklistDiff","d","_diff","delNick","updateNick","eventHandlers","_buffer_closing","_buffer_line_added","_buffer_localvar_added","_buffer_localvar_removed","_buffer_opened","_buffer_title_changed","_buffer_renamed","_nicklist","_nicklist_diff","has","handleEvent","handlers","ngWebsockets","passwd","noCompression","proto","url","onopen","_initializeConnection","send","_requestHotlist","_requestBufferInfos","_requestSync","bufinfo","bufferInfos","passwordError","onmessage","failCallbacks","lastError","now","readyState","binaryType","max","lineinfo","oldLength","hadAllUnreadLines","linesReceivedCount","directive","inputId","$element","getInputNode","inputNode","selectionStart","input","nickComp","getNicklistByTime","setSelectionRange","addToHistory","confirm","clear","addMention","newValue","addColon","trimmedValue","trim","lastSpace","lastWord","index","handleKeyPress","showQuickKeys","tmpIterCandidate","altKey","ctrlKey","activeBufferId","bufferNumber","$parent","filteredBufferNum","previousBuffer","getPreviousBuffer","modals","modalId","lastEscape","activeElement","getHistoryUp","getHistoryDown","shiftKey","handleKeyRelease","quickKeysTimer","clearTimeout","plugin","displayedContent","visible","nsfw","className","$$hashKey","getElement","hideContent","showContent","automated","embed","Function","wasBottom","scrollIntoViewIfNeeded","websockets","$q","ws","currentCallBackId","reason","reject","getCurrentCallBackId","createCallback","promise","defer","cbId","time","sendAll","messages","promises","all","resolve","protocol_","properties","WebSocket","property","nickGetColorClasses","nickMsg","propName","colorName","nickGetClasses","textElements","typeToClassPrefixFg","option","ext","typeToClassPrefixBg","textEl","classes","pointer","history","historyPos","serverSortKey","updateNickSpeak","nicks","nickGroup","newlist","a","b","currentLine","hasOwnProperty","date","shortTime","tags_array","rtext","colorClasses","prefixClasses","nameClasses","find","firstBuffer","Plugin","exclusive","urlRegexp","UrlPlugin","urlCallback","urls","userPlugins","PluginManagerObject","registerPlugins","nsfwRegexp","metadata","addPluginContent","pluginName","pluginContent","Array","j","jsonp","callbackName","round","random","script","src","spotifyPlugin","addMatch","substr","youtubePlugin","token","embedurl","dailymotionPlugin","rPath","rAnchor","rShorten","allocinePlugin","rVideokast","rCmedia","imagePlugin","videoPlugin","cloudmusicPlugin","googlemapPlugin","asciinemaPlugin","regexp","element","scriptElem","async","yrPlugin","language","city","gistPlugin","stylesheet","div","tweetPlugin","scriptIndex","html","vinePlugin"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"min.js","sources":["js/localstorage.js","js/weechat.js","js/irc-utils.js","js/glowingbear.js","js/settings.js","js/utils.js","js/notifications.js","js/filters.js","js/handlers.js","js/connection.js","js/inputbar.js","js/plugin-directive.js","js/websockets.js","js/models.js","js/plugins.js"],"names":["ls","angular","module","factory","$parse","storage","window","localStorage","undefined","supported","JSON","console","log","privateMethods","parseValue","res","val","parse","parseFloat","isObject","e","publicMethods","set","key","value","saver","stringify","setItem","get","item","getItem","remove","removeItem","enumerateKeys","keys","i","len","length","push","bind","$scope","def","assign","$watch","exports","WeeChatProtocol","this","_types","chr","_getChar","int","_getInt","str","_getString","inf","_getInfo","hda","_getHdata","ptr","_getPointer","lon","_getStrNumber","tim","_getTime","buf","arr","_getArray","htb","_getHashTable","inl","_warnUnimplemented","_typesStr","_strDirect","_strToString","_weeChatColorsNames","_colorsOptionsNames","_getDefaultColor","type","name","_getDefaultAttributes","override","bold","reverse","italic","underline","_getDefaultStyle","fgColor","bgColor","attrs","_cloneColor","color","clone","_cloneAttrs","attr","_attrNameFromChar","ch","chars","*","!","/","_","\u0001","\u0002","\u0003","\u0004","_attrsFromStr","charAt","attrName","_getColorObj","code","parseInt","codeStr","substring","toString","_getStyle","txt","matchers","regex","fn","m","ret","optionCode","optionName","text","some","matcher","match","rawText2Rich","rawText","parts","split","curFgColor","curBgColor","curAttrs","curSpecialToken","curAttrsOnlyFalseOverrides","map","p","firstCharCode","charCodeAt","firstChar","style","orideVal","orideName","allReset","filter","_uia2s","uia","encodedString","String","fromCharCode","apply","decodedString","decodeURIComponent","escape","exception","s","n","_mergeParams","defaults","v","_formatCmd","id","cmdIdName","cmd","unshift","join","replace","formatInit","params","defaultParams","password","compression","formatHdata","path","formatInfo","formatNicklist","buffer","formatInput","data","_formatSyncDesync","cmdName","buffers","options","formatSync","formatDesync","formatTest","formatQuit","formatPing","args","prototype","_getType","t","_getSlice","Uint8Array","_runType","cb","boundCb","_getByte","obj","_objToString","info","runType","tmp","pointers","paths","self","forEach","objs","count","hpath","Date","parsedData","l","_getHeader","comp","_getId","_getObject","content","typeKeys","typeValues","dict","keyStr","values","dataAt","_data","byteLength","slice","_dataAt","_setData","setId","command","header","raw","inflate","Zlib","Inflate","plain","decompress","objects","object","msg","Protocol","weeChat","IrcUtils","service","_ciNickList","nickList","newList","sortBy","nickObj","spokeAt","pluck","_completeSingleNick","candidate","foundNick","nick","toLowerCase","search","_nextNick","iterCandidate","currentNick","matchingNicks","at","lcIterCandidate","lcCurrentNick","lcNick","completeNick","caretPos","suf","doIterate","searchNickList","beforeCaret","afterCaret","RegExp","newNick","weechat","$compileProvider","compileProvider","config","debugInfoEnabled","controller","$rootScope","$store","$timeout","$log","models","connection","notifications","utils","settings","themes","setDefaults","theme","host","port","ssl","location","protocol","savepassword","autoconnect","nonicklist","isMobileUi","noembed","onlyUnread","hotlistsync","orderbyserver","useFavico","showtimestamp","showtimestampSeconds","fontsize","fontfamily","readlineBindings","enableJSEmoji","countWatchers","scope","q","watchers","pop","$$watchers","$$childHead","$$nextSibling","debug","isinstalled","navigator","mozApps","getSelf","onsuccess","evt","app","target","result","document","hidden","documentHidden","documentVisibilityChange","webkitHidden","mozHidden","msHidden","f","segs","indexOf","debugMode","reloadWithDebugInfo","isWindowFocused","isHidden","addEventListener","getActiveBuffer","unread","notification","$emit","$apply","$on","event","unreadSum","ab","minRetainUnread","lines","surplusLines","lines_per_screen","linesToRemove","Math","min","splice","requestedLines","lastSeen","allLinesFetched","bufferlines","nicklist","nicklistRequested","showNicklist","updateShowNicklist","requestNicklist","fullName","scrollWithBuffer","numLines","fetchMoreLines","then","bl","getElementById","lastScrollHeight","scrollHeight","scrollHeightObserver","newScrollHeight","updateBufferBottom","bufferBottom","setTimeout","onscroll","debounce","updateTitle","sendCoreCommand","focus","favico","Favico","animation","updateFavico","pageTitle","notificationStatus","cancelAll","reinitialize","connectbutton","getBuffers","activeBuffer","connected","waseverconnected","addCallback","wasMobileUi","isSidebarVisible","getAttribute","showSidebar","setAttribute","each","getElementsByTagName","elem","blur","hideSidebar","sslError","securityError","errorMessage","connect","toggleSidebar","openNick","closeNick","predicate","reset","changeClassStyle","setActiveBuffer","bufferId","openBuffer","bufferName","lastIndexOf","sendMessage","calculateNumLines","bufferlineElements","querySelectorAll","lineHeight","idx","clientHeight","areaHeight","querySelector","ceil","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","rescroll","loadingLines","bottom","eob","scrollIntoView","offsetTop","scrollTop","scrollToReadmarker","moreLines","sVal","scroll","sTop","abs","readmarker","parentElement","requestNotificationPermission","disconnect","install","base_url","pathname","request","appRecord","launch","alert","onerror","error","showModal","elementId","closeModal","$event","closest","selector","matchesSelector","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","call","toggleAccordion","stopPropagation","preventDefault","parentNode","siblings","children","childId","child","nodeType","hasUnread","isNicklistEmpty","switchToActivityBuffer","sortedBuffers","toggleNicklist","handleSearchBoxKey","keyCode","charCode","filteredBuffers","onbeforeunload","returnValue","$routeProvider","when","templateUrl","that","callbacks","defineProperty","Object","enumerable","newVal","keyIdx","callback","classSelector","getElementsByClassName","getClassStyle","mobile_cutoff","body","clientWidth","Notification","requestPermission","status","permission","webkitNotifications","havePermission","checkPermission","unreadCount","model","shortName","rtitle","badge","textColor","createHighlight","message","title","numNotifications","prefix","icon","timeout","onshow","close","onclick","onclose","soundnotification","audioFile","soundHTML","innerHTML","storeIdx","defineProperties","$key","$idx","configurable","entities","<",">","\"","'","&","char","channelRegex","substitute","hexColourRegex","rgbColourRegex","$filter","$sce","extraArgument","arguments","filterFunction","el","createElement","process","node","nodeValue","newNode","parent","sibling","nextSibling","removeChild","insertBefore","appendChild","firstChild","nextNode","trustAsHtml","$quickKey","number","sort","left","right","enable_JS_Emoji","twemoji","plugins","handleBufferClosing","bufferMessage","closeBuffer","handleLine","line","manually","BufferLine","getBuffer","displayed","PluginManager","contentForMessage","addLine","active","notify","contains","tags","highlight","handleBufferLineAdded","handleBufferOpened","Buffer","addBuffer","handleBufferTitleChanged","old","full_name","parseRichText","handleBufferRenamed","short_name","trimmedName","handleBufferLocalvarChanged","localvars","local_variables","indent","handleLineInfo","handleHotlistInfo","hotlist","reduce","memo","num","handleNicklist","group","g","NickGroup","Nick","addNick","handleNicklistDiff","d","_diff","delNick","updateNick","eventHandlers","_buffer_closing","_buffer_line_added","_buffer_localvar_added","_buffer_localvar_removed","_buffer_opened","_buffer_title_changed","_buffer_renamed","_nicklist","_nicklist_diff","has","handleEvent","handlers","ngWebsockets","passwd","noCompression","proto","url","onopen","_initializeConnection","send","_requestHotlist","_requestBufferInfos","_requestSync","bufinfo","bufferInfos","passwordError","onmessage","failCallbacks","lastError","now","readyState","binaryType","max","lineinfo","oldLength","hadAllUnreadLines","linesReceivedCount","directive","inputId","$element","getInputNode","inputNode","selectionStart","input","nickComp","getNicklistByTime","setSelectionRange","addToHistory","confirm","clear","addMention","newValue","addColon","trimmedValue","trim","lastSpace","lastWord","index","handleKeyPress","showQuickKeys","tmpIterCandidate","altKey","ctrlKey","activeBufferId","bufferNumber","$parent","filteredBufferNum","previousBuffer","getPreviousBuffer","modals","modalId","lastEscape","activeElement","getHistoryUp","getHistoryDown","shiftKey","handleKeyRelease","quickKeysTimer","clearTimeout","plugin","displayedContent","visible","nsfw","className","$$hashKey","getElement","hideContent","showContent","automated","embed","Function","wasBottom","scrollIntoViewIfNeeded","websockets","$q","ws","currentCallBackId","reason","reject","getCurrentCallBackId","createCallback","promise","defer","cbId","time","sendAll","messages","promises","all","resolve","protocol_","properties","WebSocket","property","nickGetColorClasses","nickMsg","propName","colorName","nickGetClasses","textElements","typeToClassPrefixFg","option","ext","typeToClassPrefixBg","textEl","classes","pointer","history","historyPos","serverSortKey","updateNickSpeak","nicks","nickGroup","newlist","a","b","currentLine","hasOwnProperty","date","shortTime","tags_array","rtext","colorClasses","prefixClasses","nameClasses","find","firstBuffer","Plugin","exclusive","urlRegexp","UrlPlugin","urlCallback","urls","userPlugins","PluginManagerObject","registerPlugins","nsfwRegexp","metadata","addPluginContent","pluginName","pluginContent","Array","j","jsonp","callbackName","round","random","script","src","spotifyPlugin","addMatch","substr","youtubePlugin","token","embedurl","dailymotionPlugin","rPath","rAnchor","rShorten","allocinePlugin","rVideokast","rCmedia","imagePlugin","videoPlugin","cloudmusicPlugin","googlemapPlugin","asciinemaPlugin","regexp","element","scriptElem","async","yrPlugin","language","city","gistPlugin","stylesheet","div","tweetPlugin","scriptIndex","html","vinePlugin"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index 33f59f2..711af47 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "glowing-bear", "private": true, - "version": "0.4.5", + "version": "0.4.8", "description": "A web client for Weechat", "repository": "https://github.com/glowing-bear/glowing-bear", "license": "GPLv3",