{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/AutoComplete.vue?dc94","webpack:///./src/components/StartupError.vue?cf4c","webpack:///./src/libs/Notifications.js","webpack:///./src/components/MessageListMessageCompact.vue?4e14","webpack:///./src/libs/polyfill/Element.closest.js","webpack:///./src/libs/Logger.js","webpack:///./src/components/utils/TabbedView.vue?4476","webpack:///./src/libs/state/NetworkState.js","webpack:///./src/components/UrlEmbed.vue?bbe1","webpack:///./src/components/startups/CustomServer.vue?2bdd","webpack:///./src/components/Avatar.vue?021a","webpack:///./src/components/utils/InputConfirm.vue?7413","webpack:///./src/components/ControlInput.vue?0097","webpack:///./src/components/startups/ZncLogin.vue?380a","webpack:///./src/components/utils/IrcInput.vue?3e92","webpack:///./src/thirdparty/kiwiirccom.vue?7d18","webpack:///./src/libs/MessageFormatter.js","webpack:///./src/components/utils/InputPrompt.vue?d442","webpack:///./src/components/Avatar.vue?5de3","webpack:///./src/components/startups/ZncLogin.vue?bc87","webpack:///./src/components/ServerView.vue?320a","webpack:///./src/res/kiwiLoadingLogo.png","webpack:///./src/components/MessageInfo.vue?6d11","webpack:///./src/components/utils/InputText.vue?d4fa","webpack:///./src/components/inputtools/TextStyle.vue?4a34","webpack:///./src/components/App.vue?2df3","webpack:///./src/components/NetworkSettings.vue?5552","webpack:///./src/components/ChannelInvitelist.vue?c75c","webpack:///./src/components/Container.vue?dafa","webpack:///./src/components/utils/InputText.vue?254d","webpack:///./src/libs/ThemeManager.js","webpack:///./src/components/utils/InputConfirm.vue?03f3","webpack:///./src/helpers/Colours.js","webpack:///./src/components/SelfUser.vue?f66b","webpack:///./src/components/MessageList.vue?719c","webpack:///./src/components/MessageListMessageModern.vue?0934","webpack:///./src/components/ServerSelector.vue?3a8e","webpack:///./src/components/MessageList.vue?4207","webpack:///./src/components/ServerView.vue?a991","webpack:///./src/libs/state/BufferState.js","webpack:///./src/components/MessageListMessageInline.vue?d335","webpack:///./src/components/startups/KiwiBnc.vue?a30a","webpack:///./src/components/AwayStatusIndicator.vue?8196","webpack:///./src/libs/BouncerMiddleware.js","webpack:///./src/components/ServerView.vue?2406","webpack:///./src/components/inputtools/Emoji.vue?54e9","webpack:///./src/components/MessageInfo.vue?5c1d","webpack:///./src/components/AwayStatusIndicator.vue?14a5","webpack:///./src/components/NotConnected.vue?cb68","webpack:///./src/components/NicklistUser.vue?04de","webpack:///./src/components/TypingUsersList.vue?e190","webpack:///./src/components/startups/CommonLayout.vue?c656","webpack:///./src/components/App.vue?66b7","webpack:///./src/thirdparty/kiwiirccom.vue?938e","webpack:///./src/components/utils/IrcInput.vue?fdcf","webpack:///./src/components/StateBrowser.vue?b090","webpack:///./src/components/ChannelInfo.vue?1e7d","webpack:///./src/libs/WindowTitle.js","webpack:///./src/components/StateBrowserUsermenu.vue?40ef","webpack:///./src/libs/AliasRewriter.js","webpack:///./src/components/MessageListMessageInline.vue?ef74","webpack:///./src/components/UserBox.vue?8c8a","webpack:///./src/components/NotConnected.vue?7b97","webpack:///./src/components/SidebarAboutBuffer.vue?37f1","webpack:///./src/components/utils/InputConfirm.vue?fc76","webpack:///./src/components/StartupError.vue?5377","webpack:///./src/components/MessageInfo.vue?edeb","webpack:///./src/libs/GlobalApi.js","webpack:///./src/components/TypingStatusIndicator.vue?e82d","webpack:///./src/components/startups/KiwiBnc.vue?91f0","webpack:///./src/components/startups/ZncLogin.vue?2112","webpack:///./src/components/MediaViewer.vue?4a05","webpack:///./src/components/BufferKey.vue?6d5c","webpack:///./src/components/startups/Personal.vue?3cce","webpack:///./src/components/MessageList.vue?fa35","webpack:///./src/components/MessageListAvatar.vue?2335","webpack:///./src/components/StateBrowser.vue?0a00","webpack:///./src/components/ServerSelector.vue?bc13","webpack:///./src/components/StartupError.vue?c747","webpack:///./src/components/startups/ZncLogin.vue?fbeb","webpack:///./src/components/StateBrowserNetwork.vue?b81e","webpack:///./src/components/startups/CommonLayout.vue?eb03","webpack:///./src/components/TypingUsersList.vue?65cb","webpack:///./src/components/utils/InputPrompt.vue?bac6","webpack:///./src/components/AwayStatusIndicator.vue?0480","webpack:///./src/components/ChannelInfo.vue?88df","webpack:///./src/components/AutoComplete.vue?6857","webpack:///./src/components/ChannelList.vue?b249","webpack:///./src/components/UserBox.vue?33eb","webpack:///./src/components/AutoComplete.vue?2adc","webpack:///./src/libs/batchedAdd.js","webpack:///./src/components/UrlEmbed.vue?9598","webpack:///./src/thirdparty/index.js","webpack:///./src/components/TypingUsersList.vue?179e","webpack:///./src/components/ControlInput.vue?8ded","webpack:///./src/thirdparty/kiwiirccom.vue?fe34","webpack:///./src/components/ServerSelector.vue?9dcb","webpack:///./src/components/StateBrowser.vue?14dd","webpack:///./src/components/Avatar.vue?eabd","webpack:///./src/components/LoadingAnimation.vue?b1ef","webpack:///./src/components/ContainerHeader.vue?a8e3","webpack:///./src/components/ChannelBanlist.vue?1df5","webpack:///./src/components/UrlEmbed.vue?0c23","webpack:///./src/components/SidebarState.vue?dea5","webpack:///./src/components/SettingsAdvanced.vue?d0b4","webpack:///./src/components/startups/Personal.vue?7893","webpack:///./src/components/ChannelInfo.vue?6d37","webpack:///./src/main.js","webpack:///./src/res/configTemplates.js","webpack:///./src/components/ChannelInfo.vue?e1a9","webpack:///./src/components/NetworkSettings.vue?2baf","webpack:///./src/components/ChannelBanlist.vue?fc93","webpack:///./src/components/startups/CustomServer.vue?1e5a","webpack:///./src/components/ServerSelector.vue?2148","webpack:///./src/helpers/TextFormatting.js","webpack:///./src/components/BufferSettings.vue?1461","webpack:///./src/components/inputtools/TextStyle.vue?2c74","webpack:///./src/libs/IrcClient.js","webpack:///./src/components/MessageListMessageModern.vue?71b5","webpack:///./src/components/AppSettings.vue?3a4f","webpack:///./src/components/Sidebar.vue?780a","webpack:///./src/components/utils/InputText.vue?ef0a","webpack:///./src/components/UserBox.vue?3e77","webpack:///./src/components/StartupError.vue?f239","webpack:///./src/components/NotConnected.vue?a936","webpack:///./src/thirdparty/kiwiirccom.vue?2155","webpack:///./src/components/App.vue?6f48","webpack:///./src/res/autocompleteCommands.js","webpack:///./src/libs/StatePersistence.js","webpack:///./src/components/ServerSelector.vue?bcc9","webpack:///./src/components/Captcha.vue?9c06","webpack:///./src/components/StateBrowser.vue?8c18","webpack:///./src/components/startups/CommonLayout.vue?b4ed","webpack:///./src/components/LoadingAnimation.vue?a8d8","webpack:///./src/components/MessageList.vue?ff87","webpack:///./src/components/Nicklist.vue?d2cf","webpack:///./src/components/ChannelList.vue?2203","webpack:///./src/components/ContainerHeader.vue?4434","webpack:///./src/components/AppSettings.vue?a7b2","webpack:///./src/components/TypingUsersList.vue?f591","webpack:///./src/components/StateBrowserUsermenu.vue?d1b2","webpack:///./src/thirdparty/kiwiirccom.vue?10df","webpack:///./src/components/UrlEmbed.vue?5549","webpack:///./src/components/ChannelList.vue?75c6","webpack:///./src/libs/storage/Local.js","webpack:///./src/components/LoadingAnimation.vue?6d68","webpack:///./src/components/AwayStatusIndicator.vue?0773","webpack:///./src/helpers/IrcdDiffs.js","webpack:///./src/components/utils/IrcInput.vue?d746","webpack:///./src/components/MessageList.vue?5e4c","webpack:///./src/components/BufferKey.vue?215c","webpack:///./src/components/App.vue?0284","webpack:///./src/components/MessageListAvatar.vue","webpack:///./src/components/utils/InputPrompt.vue?4c2e","webpack:///./src/components/utils/InputConfirm.vue?069e","webpack:///./src/components/startups/Welcome.vue?957b","webpack:///./src/components/AppSettings.vue?372f","webpack:///./src/libs/ConfigLoader.js","webpack:///./src/components/AutoComplete.vue?ceb9","webpack:///./src/components/utils/TabbedView.vue?9de9","webpack:///./src/components/StateBrowserUsermenu.vue?81c2","webpack:///./src/components/startups/Welcome.vue?8754","webpack:///./src/components/startups/CustomServer.vue?1104","webpack:///./src/components/utils/InputText.vue?6cfe","webpack:///./src/components/MessageListAvatar.vue?39f9","webpack:///./src/components/AppSettings.vue?8116","webpack:///./src/components/utils/TabbedView.vue?8ac1","webpack:///./src/components/ChannelList.vue?c4fc","webpack:///./src/components/TypingUsersList.vue?5fa8","webpack:///./src/components/NicklistUser.vue?de0f","webpack:///./src/components/Sidebar.vue?d93c","webpack:///./src/components/SelfUser.vue?c9d9","webpack:///./src/helpers/Misc.js","webpack:///./src/libs/NetworkProvider.js","webpack:///./src/libs/IPC.js","webpack:///./src/components/SidebarAboutBuffer.vue?ef7f","webpack:///./src/components/StateBrowserNetwork.vue?bea4","webpack:///./src/components/Container.vue?ddfe","webpack:///./src/components/MessageInfo.vue?b223","webpack:///./src/components/NetworkSettings.vue?14e1","webpack:///./src/components/Container.vue?df63","webpack:///./src/components/SidebarState.vue","webpack:///./src/components/utils/TabbedView.vue?04ef","webpack:///./src/components/inputtools/TextStyle.vue?3e37","webpack:///./src/components/SidebarAboutBuffer.vue?2912","webpack:///./src/components/NetworkSettings.vue?cf9c","webpack:///./src/components/Captcha.vue?8c76","webpack:///./src/components/UrlEmbed.vue?9dd5","webpack:///./src/components/inputtools/Emoji.vue?c0df","webpack:///./src/components/ChannelBanlist.vue?27e7","webpack:///./src/libs/bufferTools.js","webpack:///./src/components/startups/ZncLogin.vue?1169","webpack:///./src/components/ChannelInvitelist.vue?5b3d","webpack:///./src/components/ControlInput.vue?e8c8","webpack:///./src/components/startups/KiwiBnc.vue?3c99","webpack:///./src/libs/renderers/Html.js","webpack:///./src/libs/settingTools.js","webpack:///./src/components/AutoComplete.vue?8da5","webpack:///./src/components/NotConnected.vue?2426","webpack:///./src/components/MessageListMessageCompact.vue?ae43","webpack:///./src/components/SettingsAdvanced.vue?ffa2","webpack:///./src/components/TypingStatusIndicator.vue?ba3e","webpack:///./src/components/SidebarAboutBuffer.vue?9ecd","webpack:///./src/components/utils/TabbedView.vue?c0fb","webpack:///./src/libs/ChathistoryMiddleware.js","webpack:///./src/components/SidebarAboutBuffer.vue?2808","webpack:///./src/components/MessageInfo.vue?2118","webpack:///./src/components/utils/IrcInput.vue?21c9","webpack:///./src/components/SelfUser.vue?1692","webpack:///./src/components/MessageListMessageModern.vue?f965","webpack:///./src/components/utils/InputPrompt.vue?60ce","webpack:///./src/components/startups/Personal.vue?e177","webpack:///./src/components/MessageListMessageCompact.vue?aeb3","webpack:///./src/components/MediaViewer.vue?acb6","webpack:///./src/components/utils/InputConfirm.vue?667d","webpack:///./src/components/startups/Welcome.vue?ee8d","webpack:///./src/components/BufferKey.vue?fdc1","webpack:///./src/components/SettingsAliases.vue?da04","webpack:///./src/components/MediaViewer.vue?f1eb","webpack:///./src/components/MediaViewer.vue?6df6","webpack:///./src/components/SettingsAliases.vue?18b7","webpack:///./src/components/utils/InputPrompt.vue?e19e","webpack:///./src/components/Nicklist.vue?f797","webpack:///./src/components/SettingsAdvanced.vue?9cb0","webpack:///./src/components/ControlInput.vue?a75e","webpack:///./src/components/Avatar.vue?3213","webpack:///./src/libs/state/UserState.js","webpack:///./src/components/StateBrowserUsermenu.vue?46a0","webpack:///./src/components/startups/CustomServer.vue?d1f0","webpack:///./src/components/startups/Personal.vue?8c27","webpack:///./src/components/startups/CommonLayout.vue?b50d","webpack:///./src/components/NicklistUser.vue?ab37","webpack:///./src/components/ChannelInvitelist.vue?1913","webpack:///./src/components/ServerView.vue?d132","webpack:///./src/libs/BouncerProvider.js","webpack:///./src/components/BufferSettings.vue?a9b7","webpack:///./src/components/SidebarState.vue?0e21","webpack:///./src/components/inputtools/TextStyle.vue?afcc","webpack:///./src/components/StateBrowserNetwork.vue?4efa","webpack:///./src/libs/Message.js","webpack:///./src/components/MessageListMessageModern.vue?1f41","webpack:///./src/components/ChannelBanlist.vue?2f2a","webpack:///./src/components/MessageListMessageInline.vue?6760","webpack:///./src/libs/state/common.js","webpack:///./src/components/Nicklist.vue?0081","webpack:///./src/components/SelfUser.vue?50cf","webpack:///./src/libs/SoundBleep.js","webpack:///./src/components/AppSettings.vue?fd26","webpack:///./src/components/NicklistUser.vue?fe74","webpack:///./src/components/MessageListMessageInline.vue?3a80","webpack:///./src/components/inputtools/Emoji.vue?e1e5","webpack:///./src/components/LoadingAnimation.vue?cfb2","webpack:///./src/components/SettingsAliases.vue?87cd","webpack:///./src/components/SettingsAdvanced.vue?f320","webpack:///./src/components/MessageListMessageInline.vue?4c59","webpack:///./src/components/MessageListMessageCompact.vue?72b1","webpack:///./src/components/startups/KiwiBnc.vue?de6f","webpack:///./src/components/ChannelList.vue?978b","webpack:///./src/components/MessageListMessageModern.vue?6a9b","webpack:///./src/components/ChannelInfo.vue?fa2f","webpack:///./src/components/Nicklist.vue?b4f8","webpack:///./src/components/MediaViewer.vue?7a2e","webpack:///./src/components/startups/KiwiBnc.vue?bc43","webpack:///./src/components/Container.vue?3c20","webpack:///./src/components/startups/CustomServer.vue?793d","webpack:///./src/components/ControlInput.vue?7f8f","webpack:///./src/components/ContainerHeader.vue?64d0","webpack:///./src/thirdparty/about.html","webpack:///./src/components/ServerView.vue?e010","webpack:///./src/components/startups/Welcome.vue?f844","webpack:///./src/components/StateBrowser.vue?08b7","webpack:///./src/components/inputtools/TextStyle.vue?8108","webpack:///./src/components/UserBox.vue?6a29","webpack:///./src/components/SettingsAdvanced.vue?0bcc","webpack:///./src/components/LoadingAnimation.vue?bc88","webpack:///./src/components/utils/IrcInput.vue?2711","webpack:///./src/components/AwayStatusIndicator.vue?c490","webpack:///./src/components/NetworkSettings.vue?b367","webpack:///./src/components/BufferKey.vue?b621","webpack:///./src/components/SelfUser.vue?d5d2","webpack:///./src/components/ChannelBanlist.vue?2ec2","webpack:///./src/components/Sidebar.vue?274a","webpack:///./src/components/startups/Welcome.vue?410d","webpack:///./src/components/Avatar.vue?21c4","webpack:///./src/components/TypingStatusIndicator.vue?a71f","webpack:///./src/libs/AudioManager.js","webpack:///./src/components/inputtools/Emoji.vue?c1e1","webpack:///./src/libs/InputHandler.js","webpack:///./src/components/TypingStatusIndicator.vue","webpack:///./src/libs/MessageParser.js","webpack:///./src/components/ChannelInvitelist.vue?e83f","webpack:///./src/components/Sidebar.vue?f2eb","webpack:///./src/components/Captcha.vue","webpack:///./src/components/Container.vue?71da","webpack:///./src/components/MessageListMessageCompact.vue?e34c","webpack:///./src/components/Sidebar.vue?44fc","webpack:///./src/components/SettingsAliases.vue?dc98","webpack:///./src/components/UserBox.vue?1ed9","webpack:///./src/components/StateBrowserNetwork.vue?7863","webpack:///./src/components/BufferSettings.vue?76c7","webpack:///./src/components/BufferSettings.vue?0382","webpack:///./src/libs/TypingMiddleware.js","webpack:///./src/components/BufferKey.vue?8aa2","webpack:///./src/components/NotConnected.vue?e36a","webpack:///./src/components/SettingsAliases.vue?0520","webpack:///./src/components/ContainerHeader.vue?087a","webpack:///./src/components/Captcha.vue?3831","webpack:///./src/components/utils/InputText.vue?3821","webpack:///./src/components/inputtools/Emoji.vue?6055","webpack:///./src/libs/state.js","webpack:///./src/components/StartupError.vue?3dd3","webpack:///./src/components/ChannelInvitelist.vue?18e7","webpack:///./src/components/App.vue?10ef","webpack:///./src/components/startups/CommonLayout.vue?e37b","webpack:///./src/components/StateBrowserUsermenu.vue?c34c","webpack:///./src/components/startups/Personal.vue?2d70","webpack:///./src/components/NicklistUser.vue?b449","webpack:///./src/components/ContainerHeader.vue?b2d7","webpack:///./src/libs/ServerConnection.js","webpack:///./src/components/MessageListAvatar.vue?84fd","webpack:///./src/components/BufferSettings.vue?a8ea","webpack:///./src/components/Nicklist.vue?fe55","webpack:///./src/components/StateBrowserNetwork.vue?3a5e"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","component","_interopRequireDefault","_Object$defineProperty","requestPermission","show","listenForNewMessages","_assign","_bind","_setTimeout2","_lodash","isEnabled","state","Notification","permission","$emit","title","body","opts","_context","notify","icon","ttl","default","close","throttledShow","throttle","$on","message","_opts","onclick","notification","_kiwi_exports","libs","Notifications","Element","matches","msMatchesSelector","webkitMatchesSelector","closest","el","this","parentElement","parentNode","nodeType","_concat","defaultLogger","makeLogger","_default","label","rootLogger","logger","info","arguments","logLevel","compareLevel","level","LEVEL_DEBUG","LEVEL_INFO","LEVEL_ERROR","debug","_window$console","_len","args","Array","_key","concat","console","log","_window$console2","_context2","_len2","_key2","error","_window$console3","_context3","_len3","_key3","assert","condition","_context4","_len4","_key4","setLevel","newLevel","namespace","newLabel","_context5","Logger","_interopRequireWildcard","_setImmediate2","_indexOf","_create","_classCallCheck2","_createClass2","_vue","_common","IrcClient","NetworkState","id","appState","userDict","bufferDict","_this","editable_name","state_error","last_error","auto_commands","is_znc","is_bnc","hidden","channel_list","channel_list_state","ircd","connection","server","port","tls","path","password","direct","encoding","bncnetid","nick","settings","show_raw_caps","username","gecos","away","observable","def","newVal","$set","networks","_this$ircClient","ircClient","connect","getBufferByName","val","input","chanPrefixes","network","supports","tabName","_this2","setActiveBuffer","serverBuffer","buffers","getBuffersWithUser","buffer","isUserAnOp","user","getUser","hasWhois","operator","frameworkClient","methods","props","avatar","firstNickLetter","hasAvatar","small","large","avatarStyle","style","url","size","colour","getColour","String","components","Avatar","render","_vm","_h","$createElement","_c","_self","staticClass","class","selfuser_open","has_focus","attrs","networkState","getNetwork","on","$event","_e","currentUser","toggleSelfUser","_v","_s","currentNick","preventDefault","submitForm","maybeHidePlugins","ref","autocomplete_items","autocomplete_filter","onAutocompleteTemp","onAutocompleteSelected","onAutocompleteCancel","setting","$t","inputUpdate","inputKeyDown","inputKeyUp","closeInputTool","showPlugins","onToolClickTextStyle","onToolClickEmoji","_l","plugin","directives","rawName","controlinput","self","expression","active_tool","_b","tag","active_tool_props","staticRenderFns","scopedSlots","_u","fn","staticStyle","proxy","formSubmit","domProps","greetingText","readableStateError","model","callback","$$v","znc_network","readyToStart","buttonText","parse","createNewBlock","_parseInt2","_keys","_forEach","tokens","inp","block","blocks","openTokens","pos","len","tok","findTokenAtPosition","extras","extra","content","containsContent","newBlock","styles","newPos","token","substr","undefined","type","meta","prevBlock","openToks","underline","bold","remainingText","nextPos","italic","quote","str","endPos","k","colours","0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","colourMatchRegexp","match","exec","fgColour","bgColour","color","background","MessageFormatter","display","prompt","_t","complete","indexOf","_k","keyCode","cancel","target","composing","hideCancel","_GlobalApi","_MessageList","_NetworkSettings","_ChannelList","MessageList","NetworkSettings","ChannelList","pluginUiElements","singleton","serverViewPlugins","computed","hasMessages","getMessages","restrictedServer","$state","networkConnected","watch","$nextTick","$refs","tabs","a","created","listen","showTab","setActiveByName","tabChanged","show_input","ServerView","stopPropagation","mentioned_urls","urlPreview","requestingInput","openQuery","areWeAnOp","isSelf","onKick","onBan","Vue","plainTextEnabled","inputIdCache","inputId","Math","floor","random","toString","currentValue","set","updateValue","newValue","isEdgeBrowser","navigator","appVersion","utils","InputText","showPlainText","isArray","_i","$$a","$$el","$$c","checked","$$i","_q","$slots","_now","_find","_trim","createdInstance","ThemeManager","listenForIrcEvents","varsEl","varName","document","querySelector","getComputedStyle","v","getPropertyValue","themes","currentThemeName","toLowerCase","theme","isMatch","theTheme","availableThemes","currentTheme","replace","instance","event","ctcpType","reload","parts","split","qs","connoteCss","yes","no","hex2rgb","rgb2hex","rgb2hsl","hsl2rgb","rgb2rgbString","_slice","_map","_hex","shorthandRegex","hex","g","b","rgb","join","max","min","h","hsl","hue2rgb","_p","q","round","helpers","Colours","_includes","_some","_reduce","_flags","_filter","_splice","_batchedAdd","bufferTools","nextBufferId","BufferState","networkid","messageDict","topics","joined","enabled","created_at","users","modes","flags","unread","has_opened","channel_badkey","chathistory_available","requested_modes","requested_banlist","is_requesting_chathistory","last_read","active_timeout","message_count","current_input","input_history","input_history_pos","latest_messages","chathistory_request_count","messagesObj","messages","messageIds","onNetworkConnecting","onNetworkMotd","isQuery","requestLatestScrollback","onBufferClose","$off","onNetworkConnectingBound","onBufferCloseBound","onNetworkMotdBound","createMessageBatch","createUserBatch","isChannel","maybeStartWhoLoop","chathistory","isSupported","bufMessages","startTime","endTime","server_time","ircNetwork","options","CHANTYPES","isSpecial","isServer","userBufferInfo","opModes","hasOp","netPrefixes","PREFIX","prefix","symbol","newName","oldName","setActive","getActiveBuffer","bufferMessages","_direction","direction","time","chathistoryFuncName","lastMessage","earliest","current","ignoreTypes","validType","Date","Error","firstMessage","latest","flag","existingMessageIds","then","hasNewMessages","commands","msg","tags","msgid","finally","_this3","before","delayed","clearTimeout","_context6","markAsRead","allowedUpdate","bnc","bufferSeen","flagName","addUserBatch","nickLower","_context7","hasMode","userMode","userObj","pull","queue","$delete","_context8","_this4","each","addMessageBatch","_context9","_this5","isNewer","instance_num","unshift","newMessage","addMessage","fnNames","privmsg","action","notice","fnName","reason","part","historySupport","messagesInBatchQueue","getLoadingState","bufferState","addSingleUser","u","addMultipleUsers","clone","addSingleMessage","updateLatestMessages","isMessageTrimming","trimMessages","orderedMessages","inPlace","noFilter","addMultipleMessages","newMessages","_context10","toAdd","scrollbackSize","_context11","removed","nextLoop","on001","command","eventNetwork","updateWhoStatusLoop","bufferByName","whoLoop","isJoined","hasAwayNotify","cap","who","_state","toggleSelfAway","isUserSelf","isAway","raw","toggle","shouldShowStatus","awayNotifyEnabled","Boolean","AwayStatusIndicator","bouncerMiddleware","_promise","_ircFramework","Misc","client","rawEvents","parsedEvents","requestCap","addFunctionsToClient","use","theMiddleware","rawLine","next","params","command_handler","emit","MessageTags","decode","networkId","host","connected","account","account_password","netId","detectedBuffers","_netId","_tags","topic","seen","netName","eventObj","_netId2","_netName","_eventObj","hasNetwork","getNetworks","resolve","reject","once","getBuffers","closeBuffer","bufferName","seenTime","timeStr","dateIso","addNetwork","tagString","createTagString","onOk","off","onError","removeNetwork","saveNetwork","tagParts","BouncerMiddleware","text","eCode","location","onImgClick","_obj","$options","connecting","shouldShowLoading","reconnect","channel","showNetworkSettings","closing","backgroundStyle","startupOptions","infoBackground","backgroundImage","infoContent","startApp","$el","removeEventListener","persistence","watchStateForChanges","$parent","addEventListener","startups","CommonLayout","stateBrowserDrawOpen","ui","is_touch","emitDocumentClick","emitBufferPaste","themeUrl","hasStarted","fallbackComponent","startupComponent","startUp","sidebarState","activeComponent","mediaviewerUrl","mediaviewerComponent","mediaviewerComponentProps","mediaviewerIframe","source","activeComponentProps","fallbackComponentProps","_regenerator","_asyncToGenerator2","TextFormatting","_about","firstRun","ctor","about_open","aboutContent","showServerBuffer","toggleStateBrowser","init","mark","_callee","wrap","prev","constructor","stop","_created","_callee2","getStartups","kiwiirccom","thirdparty","modifiers","showPrevTopics","topicText","idx","trim","modeM","modeI","modeT","modeN","modeK","_setInterval2","WindowTitle","windowTitle","alert","updateTitle","$watch","alertTmr","stopAlert","enable","startAlert","clearInterval","newTitle","_AwayStatusIndicator","is_usermenu_open","userInitial","initial","charAt","toUpperCase","networkName","isConnected","clickForget","confirmed","confirm","forgetState","StateBrowserUsermenu","AliasRewriter","recursiveDepth","depth","aliases","line","spaceSep","substring","actions","vars","aliasLen","words","alias","currentAliasWord","currentAliasWordLen","processedConditionals","compiled","checkVar","num","firstWord","processInput","process","_MediaViewer","_MessageInfo","displayNick","suffix","ml","userModePrefix","inject","MessageInfo","MediaViewer","Number","_sort","_Html","_MessageParser","pluginUiSections","aboutBufferPlugins","closedSections","formattedTopic","highlights","isHighlight","html","toggleSection","section","SidebarAboutBuffer","StartupError","_construct","_toConsumableArray2","_inherits2","_possibleConstructorReturn2","_getPrototypeOf2","_eventemitter","_json","_compareVersions","_Logger","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Super","NewTarget","Reflect","sham","Proxy","e","singletonInstance","pluginsToInit","nextPluginId","GlobalApi","_EventEmitter","_super","version","JSON5","controlInputPlugins","stateBrowserPlugins","channelHeaderPlugins","queryHeaderPlugins","sideBarPlugins","appSettingsPlugins","isReady","initPlugins","pluginName","initPlugin","pluginLogger","err","stack","modPath","mod","stateEmit","thisEmit","themeManager","element","extend","tab","dest","require","replaceObjectProps","_CommonLayout","StartupLayout","loading","statusMessage","greeting","_startUp","bncnet","cleanUpEvents","onRegistered","onClose","getBncNetwork","_ref","bncNetworks","sent","t0","addNetworkToState","monitorNetworkChanges","layout","active","net","bncname","newBuffer","addBuffer","getTime","bncNet","existingNets","rememberNetworks","saveState","bncName","debouncedSaveState","debounce","deep","networkFromBnc","currentNum","existingNet","KiwiBnc","network_extras","showNetwork","showPass","showUser","show_password_box","hash","autoConnect","networkErrorMessage","netList","compact","onClosed","extraNet","ZncLogin","_strftime","_BufferKey","_MessageListMessageCompact","_MessageListMessageModern","_MessageListMessageInline","_LoadingAnimation","BOTTOM_SCROLL_MARGIN","BufferKey","MessageListMessageModern","MessageListMessageCompact","MessageListMessageInline","LoadingAnimation","smooth_scroll","auto_scroll","force_smooth_scroll","chathistoryAvailable","hover_nick","message_info_open","timeToClose","startClosing","selectedMessages","thisMl","listType","useExtraFormatting","shouldShowChathistoryTools","isCorrectBufferType","shouldRequestChannelKey","ourNick","filteredMessagesGroupedDay","days","lastDay","filteredMessages","day","dayNum","shouldShowJoiningLoader","checkScrollingState","maybeScrollToBottom","oldBuffer","scrollToBottom","mounted","addCopyListeners","opt","maybeScrollToId","isHoveringOverMessage","toggleMessageInfo","canShowInfoForMessage","sel","getSelection","rangeCount","range","getRangeAt","collapsed","shouldShowUnreadMarker","previous","lastRead","shouldShowDateChangeMarker","getDay","showInfoForTypes","bufferSetting","formatTime","formatTimeFull","format","toLocaleString","formatMessage","toHtml","isMessageHighlight","userColour","openUserBox","onListClick","onMessageDblClick","messageClickTmr","dataNick","getAttribute","userByName","onMessageClick","delay","isLink","tagName","channelName","userNick","embed","payload","nodeName","scrolledUpByPx","scrollHeight","offsetHeight","scrollTop","onListResize","messageElement","offsetTop","getSelectedMessages","messageEls","querySelectorAll","selectedMessageEls","intersectsNode","restrictTextSelection","classList","add","userSelect","unrestrictTextSelection","remove","removeSelections","removeNative","selection","removeAllRanges","LogFormatter","toLocaleTimeString","hour","minute","second","copyData","selecting","selectionChangeOff","contains","onSelectionChange","anchorNode","className","selectedMesssageEls","dataset","messageId","clipboard","writeText","createElement","appendChild","innerHTML","select","execCommand","removeChild","openEmbedInPreview","_Avatar","MessageListAvatar","clickAppSettings","keys","provided_networks","show_provided_networks","pNets","pNetTypeName","pNet","connectProvidedNetwork","isRestrictedServer","clickAddNetwork","presetServer","usePreset","presetNetworks","$$selectedVal","filter","selected","map","_value","multiple","toUri","showCustom","toggleTls","noprompt","focus","InputPrompt","ipRegex","IrcdDiffs","whoisRequested","whoisLoading","availableChannelModes","availableModes","prefixes","knownPrefix","isAChannelModeAdmin","isQChannelModeOwner","supportsHalfOp","description","formattedRealname","realname","isUserOnBuffer","oldVal","changes","targets","userChannels","channels","linkifyChannels","userModeOnThisBuffer","is_narrow","onChannelsClick","updateWhoisData","whois","kickUser","createBanMask","extban","extbanAccount","ipTest","RegExp","v4","v6","test","hexTest","_match","mask","banUser","banMask","kickbanUser","UserBox","item","selected_idx","selectCurrentItem","batchedAdd","singleFn","batchedFn","numInsertsSec","inTick","numInLastSec","queueLoopTmr","loopInterval","checkSecRateTmr","queueLoop","maybeStartLoop","resetAddCounter","batchFn","embedlyTagIncluded","debouncedUpdateEmbed","updateEmbed","checkEmbedlyAndShowCard","embedly","embedlyLink","showPin","maxHeight","head","getElementsByTagName","script","embedlyUrl","getSetting","src","UrlEmbed","typingUsers","_m","_BufferSettings","_ChannelInfo","_ChannelBanlist","BufferSettings","ChannelInfo","ChannelBanlist","pluginUiChannelElements","pluginUiQueryElements","prompts","closeChannel","sidebarSection","userOnline","showPrompt","onConnectButtonClick","toggleUser","joinCurrentBuffer","closeCurrentBuffer","removeBuffer","onHeaderClick","ContainerHeader","updateBanlist","banlist","ban","banned","banned_by","banned_at","toDateString","removeBan","_BouncerProvider","_IPC","hasOtherTab","addedNetworkToExisting","readyToShowOptions","hasFragment","parseFragment","findOtherTabs","listenForOtherTabs","send","addEmptyNetwork","abrupt","handleIPCMessage","timer","removeListener","addNetworkToExistingTab","con","temporary","storageKey","getNetworkFromAddress","fragment","uriCheck","decodeURIComponent","connections","parseIrcUri","persistSetting","controllerNet","bouncer","remember_buffers","includeBuffers","setSetting","Personal","_typeof2","_symbol","_setTimeout3","_setInterval3","_i18next","_i18nextXhrBackend","_vueI18next","_vueVirtualScroller","_available","_enUs","_App","_StartupError","_ConfigLoader","_ThemeManager","_InputHandler","_StatePersistence","Storage","_AudioManager","_SoundBleep","_WindowTitle","_configTemplates","logLevelMatch","href","api","kiwi","getQueryVariable","variable","query","search","pair","mixin","beforeDestroy","listeningEvents","listenOnce","_fn","onceFn","$once","timerEvents","tmr","setInterval","_setInterval","setTimeout","_setTimeout","directive","binding","rawEl","bindings","inserted","ROSymbol","loadApp","configFile","configObj","kiwiConfig","showError","configContents","parseErr","configLoader","addValueReplacement","protocol","hostname","referrer","loadFromObj","loadFromUrl","applyConfig","initState","initInputCommands","initLocales","initThemes","loadPlugins","initSound","catch","config","dedotObject","configTemplates","template","applyConfigObj","obj","plugins","pluginIdx","loadNextScript","sSrc","fOnload","scr","onerror","onload","fetch","response","pluginRaw","scripts","limitedScr","i18n","whitelist","locales","fallbackLng","lowerCaseLng","backend","loadPath","crossDomain","withCredentials","interpolation","escapeValue","addResourceBundle","$i18n","i18next","i18nLoadedAt","lng","setDefaultLanguage","defaultLang","preferredLangs","languages","changeLanguage","lang","_initState","stateKey","persistLog","persist","state_key","loadStateIfExists","setState","themeMgr","setThemeManager","argTheme","setTheme","sound","SoundBleep","bleep","AudioManager","watchForMessages","cb","ResizeObserver","observe","unbind","unobserve","useMonospace","language","restricted","startupScreen","kiwiServer","warnOnExit","quitMessage","messageLayout","alert_on","timestamp_format","timestamp_full_format","show_timestamps","scrollback_size","show_hostnames","show_joinparts","show_topics","show_nick_changes","show_mode_changes","show_presence_changes","traffic_as_activity","coloured_nicklist","colour_nicknames_in_messages","block_pms","show_emoticons","extra_formatting","mute_sound","hide_message_counts","show_realnames","default_ban_mask","default_kick_reason","shared_input","show_message_info","who_loop","share_typing","flash_title","nicklist_avatars","show_link_previews","inline_link_auto_previews","inline_link_auto_preview_whitelist","nick_format","autoReconnect","disconnectOnSaslFail","allowRegisterProtocolHandler","noticeActiveBuffer","nicklistGroupAway","showChanlistModes","showAutocomplete","showEmojiPicker","showColorPicker","showSendButton","showAwayStatusIndicators","sidebarDefault","showRaw","useBufferHistory","hideSettings","teamHighlights","Key","emojis","emojiLocation","textFormats","user_full","channel_join","channel_part","channel_quit","channel_kicked","channel_selfkick","channel_badpassword","channel_topic","channel_banned","channel_inviteonly","channel_alreadyin","channel_limitreached","channel_invalid_name","channel_topic_setby","channel_has_been_invited","server_connecting","server_connecting_error","selfmode","nickname_alreadyinuse","network_disconnected","network_connected","whois_channels","whois_idle_and_signon","whois_away","whois_server","whois_idle","whois_notfound","nick_changed","applet_notfound","encoding_changed","encoding_invalid","settings_saved","ignore_title","ignore_none","ignore_nick","ignore_stop_notice","ignore_stopped","chanop_privs_needed","no_such_nick","unknown_command","motd","ctcp_response","ctcp_request","whois_ident","whois_error","whowas_ident","whowas_server","whowas_error","quit","rejoin","set_setting","list_aliases","ignored_pattern","wallops","message_nick","general_error","irc","team","_url","_isNan","_Captcha","_ServerSelector","ServerSelector","Captcha","server_type","znc_username","znc_password","show_advanced","switch_tabs_on_connect","network_list","settingShowRaw","directWs","addr","setZncPass","isZnc","newPass","_default2","networkList","willEmit","parsePresetServer","importUris","serverList","servers","createNickColour","toInt","hexVal","mapRange","formatAndT","formatUser","formatUserFull","formatText","formatDuration","formatNumber","channelRegex","urlRegex","_parseFloat2","murmurhash3","word","mLead","mPrefix","mChannel","mSuffix","chan","escape","lead","link","themeMngr","nickNum","x86","hash32","bucketSize","themeVar","hueOffset","abs","int","index","vMin","vMax","dMin","dMax","vValue","vRange","dRange","formatId","formatParams","localeId","localeParams","fNick","fUsername","fHost","ident","ret","timeSeconds","seconds","weeks","hours","minutes","tmp","count","settingAlertOn","settingMuteSound","settingHideMessageCount","_Object$defineProperty2","_defineProperty2","_defineProperties","_getOwnPropertyDescriptors","_getOwnPropertyDescriptor","_getOwnPropertySymbols","_slicedToArray2","_entries","_defineProperty3","_TypingMiddleware","_ChathistoryMiddleware","ServerConnection","ownKeys","enumerableOnly","symbols","sym","_objectSpread","_context27","_context28","Client","enable_chghost","enable_setname","message_max_length","clientMiddleware","originalIrcClientConnect","auto_reconnect","configOptions","transport","createChannelConstructor","originalIrcClientRaw","Message","rawString","ircLineParser","handled","getOrAddBufferByName","from_server","typingStatus","status","isRegistered","parsedEventsHandler","rawEventsHandler","last_error_numeric","clearUsers","param","end","ircEventObj","eventTime","timeToLocal","serverTime","from","redirect_to","to","addUser","numConnects","targetNick","_buffer","containsNick","isChannelMessage","isChannelName","channelBuffer","_buffer2","clearMessageRange","isPrivateMessage","batch","existingBuffer","activeBuffer","hasActiveBuffer","PM_BLOCK_BLOCKED","PM_BLOCK_REQUIRES_CHECK","pmBlock","isNickExemptFromPmBlocks","blockNewPms","_buffer3","textFormatType","messageBody","_message","awaitingWhois","pendingPms","whoisData","pm","_buffer4","_messageBody","rename","_buffer5","addUserToBuffer","_messageBody2","type_extra","_buffer6","removeUserFromBuffer","kicked","_messageBody3","chanop","_buffer7","remainingBuffers","removeUser","_nick","_messageBody4","_buffer8","real_name","prop","_buffer9","_buffer10","usersTransaction","_context12","eventUser","_context13","channel_modes","channel_list_cache","_context14","filteredEvent","_buffer11","_messageBody5","registered","_context15","newNick","rand","_messageBody6","newnick","changeNick","_buffer12","new_nick","changeUserNick","_messageBody7","_buffers","_context16","_context17","_buffer13","hadExistingUsers","addMultipleUsersToBuffer","correctBuffer","_context18","_ref2","paramName","_buffer14","_context19","modeStrs","adding","modeChar","tFormat","timeCreated","_buffer15","_modeStrs","_context20","_user","modeIdx","_adding","modeLocaleIds","modeLocaleDataBuilders","builders","localeDataFn","localeData","localeKey","_context21","modeslines","_context22","_context23","_serverBuffer","_buffer16","bans","banText","_context24","_context25","dateStr","_context26","_buffer17","_messageBody8","_buffer18","help","_buffer19","textFormatId","_messageBody9","ctcpResponse","_messageBody10","_buffer20","_buffer21","_messageBody11","ignore","server_info","res","autocompleteCommands","_stringify","StatePersistence","storage","isPersisting","watcher","_loadStateIfExists","storedState","importState","exportState","watchVals","buffersVals","_forgetState","resetState","recaptchaUrl","recaptchaSiteId","recaptchaResponse","showCaptcha","loadRecaptcha","recaptchaLoaded","grecaptcha","captchacontainer","sitekey","recaptchaSuccess","recaptchaExpired","defer","currentTarget","requestScrollback","filter_visible","shouldShowAvatars","toggleUserFilter","sortedUsers","onFilterBlur","user_filter","list","isLoading","maybeUpdateList","prevPage","page","maxPages","nextPage","noResults","last_updated","num_users","joinChannel","formatAndTrimTopic","_localesList","_SettingsAliases","_SettingsAdvanced","bindSetting","settingName","SettingsAliases","SettingsAdvanced","customThemeUrl","localesList","themeSupportsMonospace","canRegisterProtocolHandler","registerProtocolHandler","timestamps_24h","newFormat","settingShowAutoComplete","settingUseMonospace","settingHighlights","settingBufferColourNicknames","settingBufferShowTimestamps","settingBufferShowEmoticons","settingBufferBlockPms","settingBufferScrollbackSize","settingBufferExtraFormatting","settingBufferTrafficAsActivity","settingBufferMuteSound","settingBufferShareTyping","settingBufferInlineLinkPreviews","settingDefaultBanMask","settingDefaultKickReason","settingAdvancedEnable","show_advanced_tab","settingLanguage","messageLayouts","traditional","modern","inline","settingMessageLayout","invert","listenForThemeSettings","closeSettings","refreshTheme","watches","updateFn","watchTheme","watchCustomThemeUrl","setCustomThemeUrl","teardownFn","unwatchFn","enableAdvancedTab","makeDefaultProtocolHandler","origin","pathname","AppSettings","supportedCached","localStorage","getItem","setItem","storageAvailable","x","removeItem","DOMException","code","logo","Y","fontSize","font","animationFrame","destroying","getContext","tmpText","width","height","draw","cancelAnimationFrame","clearRect","globalCompositeOperation","drawImage","fillStyle","fillText","globalAlpha","requestAnimationFrame","ircdType","notSupported","notAdmin","notOwner","flipConnotation","InputConfirm","_xhr","ConfigLoader","valReplacements","configUrl","errMsg","m1","m2","setConfig","confObj","walkObject","_val","insertReplacements","out","items_","filteredItems","filterVal","items","localeCompare","filteredAndLimitedItems","itemIdx","numItems","idxFrom","idxTo","isInRange","selectedItem","getBoundingClientRect","tempCurrentItem","handleOnKeyDown","cancelKeyCodes","shiftKey","altKey","AutoComplete","_lastIndexOf","errorMessage","showChannel","toggablePass","showNick","connectWithoutChannel","captchaReady","footerText","footer","isNickValid","nickPatternStr","nickPattern","pattern","escapeRegExp","ready","bufferObjs","extractBuffers","bufferObj","connectOptions","previousNet","queryStringVal","processNickRandomNumber","showPassword","toggablePassword","allowNoChannel","direct_path","onAltClose","altComponent","netAddress","clearMessages","hasSwitchedActiveBuffer","handleCaptcha","connectionInfoFromConfig","Welcome","znc_network_support","show_type_switcher","is_connecting","saveThisSessionsState","applyDefaults","hasSetActiveBuffer","infoClick","CustomServer","_reverse","sidebarOpen","page_size","listState","filteredList","found","sortBy","paginated","offset","canGoForward","canGoBackward","rawTopic","showModes","_values","_TypingStatusIndicator","TypingStatusIndicator","getActiveNetwork","myNick","TypingUsersList","isOpen","settingShowJoinParts","settingShowTopics","settingShowNickChanges","settingShowModeChanges","settingExtraFormatting","settingColouredNicklist","settingShareTyping","accessTab","sidebarUser","error_message","self_user_settings_open","modeString","netUser","awayStatus","openSelfActions","openProfile","closeSelfUser","onNewNickSubmit","userNameCancel","networkSupportsAway","checkUserAway","getUserFromString","SelfUser","extractURL","stripStyles","mentionsNick","matchUri","parseIntZero","_TextFormatting","strftimeUTC","timezone","spaceIdx","bufferNames","punc","escapedNick","stylesStrippedInput","_name","regex","results","errs","err_unknown_host","err_forbidden","err_timeout","err_refused","err_tls","err_proxy","wsUri","websocket","uri","reg","connectionString","_channelName","hasPrefix","pipePos","colonPos","_place","place","ourPlace","date","_eventEmitter","NetworkProvider","providers","provider","availableNetworks","pType","_assertThisInitialized2","IpcBroadcastChannel","bc","BroadcastChannel","onmessage","postMessage","IpcLocalStorage","_EventEmitter2","_super2","parsedMsg","JSON","IPC","channel_filter","channel_filter_display","channel_add_display","channel_add_input_has_focus","channel_add_input","isActiveNetwork","totalNetworkCount","serverUnread","totalUnread","serverHighlight","highlight","filteredBuffers","filtered","orderBuffers","onNewChannelInputFocus","onNewChannelInputBlur","submitNewChannelForm","newChannelVal","chanName","ignoreNames","onChannelFilterInputBlur","closeFilterChannel","awayNotifySupported","showMessageCounts","isActiveBuffer","active_network","active_buffer","showNetworkChannels","onSearchChannelClick","toggleFilterChannel","toggleAddChannel","StateBrowserNetwork","promptedReason","defaultReason","isDrawn","unreadMessages","header","prefixID","$children","setActiveCheck","getActive","foundChild","child","TabbedView","onColourClick","rgbObj","ircinput","setColour","onResetClick","resetStyles","inputtools","TextStyle","getNextBuffer","getPreviousBuffer","_findIndex","order","messageTypesToShowSetting","traffic","presence","hiddenMessageTypes","getBufferFromDirection","ordered","getNetworkFromDirection","inviteListSorter","aMask","invited","bMask","inviteList","is_refreshing","supportsAccounts","inviteListAccounts","accounts","inviteListNonAccounts","invites","channelIsInviteOnly","anyRegisteredUserCanJoin","invite","knownAccounts","inviteAccountNames","accountUsers","orderBy","updateInvitelist","displayMask","inviteEvent","removeInvite","addAccountInvite","accountName","addInvite","setInviteOnly","removeInviteOnly","renderEmoticons","showEmoticons","retHtml","classes","linkifyUrl","addHandle","handleClass","linkifyUser","linkifyChannel","addEmoji","buildSpan","nice","cssClass","handleContent","escaped","isSingle","emoji","renderers","Html","buildTree","ignoreKeys","base","modified","ourBase","settingTools","forceLoader","netStatus","maybeForceLoader","minimumLoaderViewtime","NotConnected","filterString","filteredSettings","resetValue","settingKey","updateSetting","about","when","Intl","DateTimeFormat","showNicklist","scrollToMessage","chathistoryMiddleware","batchCallbacks","history","messageReference","callbacks","cbs","targetCallbacks","dateOrTime","after","around","between","fromDateOrTime","toDateOrTime","fromRef","toRef","ChathistoryMiddleware","placeholder","updateValueProps","onTextInput","onPaste","onFocus","_UrlEmbed","iframeSandboxOptions","isIframe","setMaxHeight","setHeight","newHeight","componentProps","_NicklistUser","intlCollator","strCompare","compare","global","Collator","numeric","NicklistUser","userbox_user","prefixOrders","nickMap","bufferUsers","nickFilter","lowercaseNick","bufferId","bufferA","bufferB","_msg","modesA","modesB","aP","bP","useColouredNicks","openUserbox","Nicklist","UserState","typingState","_target","typing","started","timeout","delete","timeoutLen","nicklist","injections","_BouncerMiddleware","BouncerProvider","controllerNetwork","rewriteConnections","networksSnapshot","monitoringChanges","onNetworkState","onBouncerNetworks","_bncNetwork$connectio","bncNetwork","_this$parseBncCredent","parseBncCredentials","_this$parseBncCredent2","listenToState","_onNetworkMotd","_this$parseBncCredent3","_this$parseBncCredent4","netid","syncBncNetwork","initAndAddNetworks","_x","_x2","isController","getController","effectedNetwork","getNetworkFromBncNetId","_initAndAddNetworks","_x3","isNetworkInBncList","_net","_syncBncNetwork","_callee3","clientBuffer","existingBuffers","bncBuffer","_x4","_addNetworkToState","_callee4","_x5","server_password","controller","snapshot","networkInfo","snapshotCurrentNetworks","netname","tryNetworkName","bncNetworkPassword","_bncNetworkPassword$s","_bncNetworkPassword$s2","app_width","hasNick","showBufferSettings","showAbout","toggleNicklist","toggleBufferSettings","toggleAbout","SidebarState","_defineProperty","nextId","writable","extractMessageId","bodyTemplate","messageList","hasRendered","toBlocks","userList","maybeAutoEmbed","showLinkPreviews","whitelistRegex","isRepeat","isMessage","displayAvatar","MessageAvatar","showRealName","banEvent","unban","canSet","definition","audio","canPlayType","play","show_help","aliasText","_MessageListAvatar","prevMessage","types","generateComputedMode","modeVal","setMode","generateComputedModeWithParam","newTopic","setTopic","prevTopics","updateBanList","_ContainerHeader","_Sidebar","_NotConnected","_ServerView","Sidebar","bufferType","ev","scrollDistance","clientHeight","scrollMax","toggleSidebar","Container","_autocompleteCommands","_AutoComplete","_TextStyle","_Emoji","_SelfUser","_TypingUsersList","autocomplete_open","autocomplete_filtering","current_input_value","activeNetwork","shouldShowSendButton","shouldShowEmojiPicker","shouldShowColorPicker","shouldShowInputButtons","history_pos","setValue","inputRestore","typingTimer","lastTypingTime","ctrlKey","metaKey","arrowKeyCodes","elements","doNotRefocus","insertText","toolComponent","toggleInputTool","currentInput","reset","selectionToEnd","tool","toggleBold","toggleItalic","toggleUnderline","selectedValue","setCurrentWord","autocomplete","currentWord","getCurrentWord","emojiList","addImg","historyBack","historyForward","_currentWord","currentToken","position","inputText","getRawText","buildAutoCompleteItems","openAutoComplete","inputVal","startTyping","stopTyping","rawInput","getValue","ircText","buildIrcText","bufferList","commandList","desc","settingList","shouldShareTyping","start","sendStopPause","pause","ControlInput","_NetworkProvider","_StateBrowserNetwork","_StateBrowserUsermenu","_AppSettings","netProv","isPersistingState","networksToShow","hideStatebrowser","StateBrowser","blur","htmlparser","last_known_value","text_value","current_el","current_el_pos","default_colour","code_map","editor","clipboardData","ignoreThisPaste","clpData","ig","getData","clpText","deleteContents","insertNode","createTextNode","anchorOffset","maybeEmitInput","lastChild","currentHtml","textValue","toggles","addToggle","getToggles","parser","Parser","onopentag","attribs","codeLookup","mappedCode","_mappedCode","ontext","onclosetag","pop","decodeEntities","write","rawHtml","br","existingImages","newImg","images","img","prevElCnt","previousSibling","keepPosition","textContent","startVal","space","startPos","endVal","createRange","setStart","setEnd","addRange","innerText","IrcInput","lastPlayed","shouldBleep","inFocus","app_has_focus","available","ascii","Emoji","_trimEnd","_AliasRewriter","inputCommands","InputHandler","aliasRewriter","importFromString","listenForInput","context","TypeError","defaultContext","lines","processLine","validateContext","stylesStrippedLine","escapedCommand","aliasVars","destination","handleMessage","localBuffer","extractedTarget","extractTargetGroup","subLine","dice","sides","rndNumber","number","ctcp","_network$ircClient","ctcpRequest","lineParts","kick","toKick","kickReason","toIgnore","unignore","toUnignore","back","_this6","formats","registered_nick","secure","idle","logon","actual_ip","actual_hostname","idleSeconds","logonTime","logonDate","whowas","_this7","whowasData","names","addReadBuffer","clear","echo","spacePos","serverAddr","serverPort","serverTls","serverPassword","beep","_trimInstanceProperty","parseMessage","_startsWith","_MessageFormatter","formatOpts","formatedBlocks","acc","processBlock","wordMatch","wordsRegex","specialMatches","matchChannel","matchUrl","matchUser","matchEmoji","mergeMatches","channelMatch","urlMatch","punctuation","urlText","matchText","hasProp","nickIdx","trimWord","normWord","resultBlocks","lastProcessedIndex","specialMatch","beforeMatchContent","MessageParser","addInviteList","addInviteText","invited_by","invited_at","_SidebarState","_UserBox","_SidebarAboutBuffer","_ChannelInvitelist","_Nicklist","ChannelInvitelist","typingMiddleware","activeTyping","lastSentStatus","TypingMiddleware","_NetworkState","_BufferState","_UserState","_Message","createNewState","stateObj","user_settings","sessionId","last_active_buffers","app_height","favicon_counter","availableStartups","toExport","networkObj","cloneDeep","serialise","stateStr","importObj","importNetwork","impBuffer","latestMessages","$data","userSetting","propName","nextVal","netAddr","serverInfo","networkidReduce","currentMax","channelId","services","findNewNetwork","openLastActiveBuffer","lastActive","targetNetwork","targetBuffer","_network","updateBufferLastRead","toMatch","bufferIdx","messageIdx","bufferMessage","includeAsActivity","typesForActivty","isNewMessage","extraHighlights","patterns","everyone","here","incrementFlag","notifyTitle","notifyMessage","parent","usersArr_","usersArr","newUsers","bufUsers","newUser","normalisedNick","bufferNameLower","oldNick","normalisedNew","normalisedOld","recreate","$destroy","_watchers","_cssVarsPonyfill","_tinycon","_Welcome","_ZncLogin","_CustomServer","_KiwiBnc","_Personal","_StateBrowser","_Container","_ControlInput","mediaviewerOpen","State","listenForActiveComponents","watchForThemes","initStateBrowser","initMediaviewer","configureFavicon","onKeyDown","onBlur","onTouchStart","startupScreens","welcome","customServer","kiwiBnc","znc","personal","extraStartupScreens","startupName","startup","trackWindowDimensions","warnOnPageClose","requestNotificationPermission","iframe","setOptions","fallback","setBubble","_this8","trackWindowDims","clientWidth","_this9","onbeforeunload","onunload","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","App","unpin","_sockjsClient","serverConnections","createdChannels","controlChannel","_addr","_socketChannel","createNewConnection","socketChannel","nextChannelId","createChannelOnConnection","wsAddr","ws","onopen","connectStr","onclose","initChannel","ConnectionChannel","sendControlBuffer","remoteState","sendControl","setEncoding","writeLine","ssl","newEncoding","disposeSocket"],"mappings":"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","file":"static/js/app.f7552a9f.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"vendor\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoComplete.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoComplete.vue?vue&type=style&index=0&lang=css&\"","import { render, staticRenderFns } from \"./StartupError.vue?vue&type=template&id=3613e78a&\"\nimport script from \"./StartupError.vue?vue&type=script&lang=js&\"\nexport * from \"./StartupError.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StartupError.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.requestPermission = requestPermission;\nexports.show = show;\nexports.listenForNewMessages = listenForNewMessages;\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar isEnabled = false;\n\nfunction requestPermission(state) {\n // Do we support notifications?\n if (!('Notification' in window)) {\n isEnabled = false;\n return;\n } // Permissions already been granted?\n\n\n if (Notification.permission === 'granted') {\n state.$emit('notification.enabled');\n isEnabled = true;\n return;\n }\n\n if (Notification.permission !== 'denied') {\n Notification.requestPermission(function (permission) {\n if (permission === 'granted') {\n state.$emit('notification.enabled');\n isEnabled = true;\n } else {\n isEnabled = false;\n }\n });\n }\n}\n\nfunction show(title, body, opts) {\n if (!isEnabled) {\n return false;\n }\n\n var notify = new Notification(title, {\n body: body,\n icon: opts.icon\n });\n\n if (opts.ttl) {\n var _context;\n\n (0, _setTimeout2.default)((0, _bind.default)(_context = notify.close).call(_context, notify), opts.ttl);\n }\n\n return notify;\n}\n\nvar throttledShow = _lodash.default.throttle(show, 2000);\n\nfunction listenForNewMessages(state) {\n state.$on('notification.show', function (message, _opts) {\n if (!isEnabled) {\n return;\n }\n\n var opts = (0, _assign.default)({\n title: 'Kiwi IRC',\n message: message,\n icon: '',\n onclick: null,\n ttl: 10000\n }, _opts);\n\n if (!opts.message) {\n return;\n }\n\n var notification = throttledShow(opts.title, opts.message, {\n ttl: opts.ttl\n });\n\n if (notification && typeof opts.onclick === 'function') {\n notification.onclick = opts.onclick;\n }\n });\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"Notifications\"]\r\nwindow._kiwi_exports.libs.Notifications = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MessageListMessageCompact.vue?vue&type=template&id=23bc1672&scoped=true&functional=true&\"\nimport script from \"./MessageListMessageCompact.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListMessageCompact.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageListMessageCompact.vue?vue&type=style&index=0&id=23bc1672&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n \"23bc1672\",\n null\n \n)\n\nexport default component.exports","// From the Element.closest mdn page.\nif (!Element.prototype.matches) {\n Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n}\n\nif (!Element.prototype.closest) {\n Element.prototype.closest = function closest(s) {\n var el = this;\n\n do {\n if (el.matches(s)) {\n return el;\n }\n\n el = el.parentElement || el.parentNode;\n } while (el !== null && el.nodeType === 1);\n\n return null;\n };\n}","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar defaultLogger = makeLogger();\nvar _default = defaultLogger;\nexports.default = _default;\n\nfunction makeLogger(label, rootLogger) {\n function logger() {\n logger.info.apply(logger, arguments);\n }\n\n logger.LEVEL_DEBUG = 2;\n logger.LEVEL_INFO = 1;\n logger.LEVEL_ERROR = 0;\n logger.level = logger.LEVEL_ERROR;\n\n function logLevel(compareLevel) {\n var l = rootLogger || logger;\n return l.level >= compareLevel;\n }\n\n logger.debug = function logDebug() {\n if (logLevel(logger.LEVEL_DEBUG)) {\n var _window$console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (label) {\n var _context;\n\n args[0] = (0, _concat.default)(_context = \"[\".concat(label, \"] DEBUG \")).call(_context, args[0]);\n }\n\n (_window$console = window.console).log.apply(_window$console, args);\n }\n };\n\n logger.info = function logInfo() {\n if (logLevel(logger.LEVEL_INFO)) {\n var _window$console2;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (label) {\n var _context2;\n\n args[0] = (0, _concat.default)(_context2 = \"[\".concat(label, \"] INFO \")).call(_context2, args[0]);\n }\n\n (_window$console2 = window.console).log.apply(_window$console2, args);\n }\n };\n\n logger.error = function logError() {\n if (logLevel(logger.LEVEL_ERROR)) {\n var _window$console3;\n\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n if (label) {\n var _context3;\n\n args[0] = (0, _concat.default)(_context3 = \"[\".concat(label, \"] ERROR \")).call(_context3, args[0]);\n }\n\n (_window$console3 = window.console).error.apply(_window$console3, args);\n }\n };\n\n logger.assert = function assert(condition) {\n var _context4;\n\n if (condition) {\n return;\n }\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n this.error.apply(this, (0, _concat.default)(_context4 = ['Assertion failed.']).call(_context4, args));\n };\n\n logger.setLevel = function setLevel(newLevel) {\n logger.level = newLevel;\n };\n\n logger.namespace = function namespace(newLabel) {\n var l = newLabel;\n\n if (label) {\n var _context5;\n\n l = (0, _concat.default)(_context5 = \"[\".concat(label, \"][\")).call(_context5, l, \"]\");\n }\n\n return makeLogger(l, logger);\n };\n\n return logger;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"Logger\"]\r\nwindow._kiwi_exports.libs.Logger = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=script&lang=js&\"","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setImmediate2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-immediate\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _common = require(\"./common\");\n\nvar IrcClient = _interopRequireWildcard(require(\"../IrcClient\"));\n\n/** @module */\n\n/** The IRC network instance */\nvar NetworkState = /*#__PURE__*/function () {\n function NetworkState(id, appState, userDict, bufferDict) {\n var _this = this;\n\n (0, _classCallCheck2.default)(this, NetworkState);\n // Enumerable properties that become reactive under Vue\n this.id = id;\n this.name = '';\n this.editable_name = false; // State of the transport\n\n this.state = 'disconnected';\n this.state_error = ''; // Last error from the IRC server. Resets on reconnect\n\n this.last_error = '';\n this.auto_commands = '';\n this.is_znc = false;\n this.is_bnc = false;\n this.hidden = false;\n this.channel_list = [];\n this.channel_list_state = ''; // The IRCd type as mentioned in the 002 numeric\n\n this.ircd = '';\n this.connection = {\n server: '',\n port: 6667,\n tls: false,\n path: '',\n // Server password\n password: '',\n direct: false,\n encoding: 'utf8',\n bncnetid: '',\n nick: ''\n };\n this.settings = {\n show_raw_caps: false\n };\n this.nick = '';\n this.username = '';\n this.gecos = ''; // SASL password\n\n this.password = '';\n this.away = '';\n\n _vue.default.observable(this); // Some non-enumerable properties (vues $watch won't cover these properties)\n\n\n (0, _common.def)(this, 'appState', appState, false);\n (0, _common.def)(this, 'userDict', userDict, false);\n (0, _common.def)(this, 'bufferDict', bufferDict, false);\n (0, _common.def)(this, 'frameworkClient', null, true);\n (0, _common.def)(this, 'users', (0, _create.default)(null), function (newVal) {\n appState.$set(userDict.networks, _this.id, newVal);\n }); // Pending prviate messages awaiting whois operator check\n\n (0, _common.def)(this, 'pendingPms', [], false);\n bufferDict.$set(bufferDict.networks, this.id, []);\n }\n\n (0, _createClass2.default)(NetworkState, [{\n key: \"connect\",\n value: function connect() {\n var _this$ircClient;\n\n (_this$ircClient = this.ircClient).connect.apply(_this$ircClient, arguments);\n }\n }, {\n key: \"bufferByName\",\n value: function bufferByName(name) {\n return this.appState.getBufferByName(this.id, name);\n }\n }, {\n key: \"serverBuffer\",\n value: function serverBuffer() {\n return this.appState.getBufferByName(this.id, '*');\n }\n }, {\n key: \"setting\",\n value: function setting(name, val) {\n if (typeof val !== 'undefined') {\n this.appState.$set(this.settings, name, val);\n return val;\n }\n\n return this.settings[name];\n }\n }, {\n key: \"isChannelName\",\n value: function isChannelName(input) {\n if (typeof input !== 'string' || !input) {\n return false;\n }\n\n var chanPrefixes = this.ircClient.network.supports('CHANTYPES') || '#&';\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, input[0]) > -1;\n }\n }, {\n key: \"showServerBuffer\",\n value: function showServerBuffer(tabName) {\n var _this2 = this;\n\n this.appState.$emit('active.component', null);\n this.appState.setActiveBuffer(this.id, this.serverBuffer().name); // Hacky, but the server buffer component listens for events to switch\n // between tabs\n\n (0, _setImmediate2.default)(function () {\n _this2.appState.$emit('server.tab.show', tabName || 'settings');\n });\n }\n /**\n * Check if a nick is exempt from block PM's\n * @param {String} nick of the user to check\n * @returns {Boolean} If the boolean is null a whois check is required\n */\n\n }, {\n key: \"isNickExemptFromPmBlocks\",\n value: function isNickExemptFromPmBlocks(nick) {\n // Check if nick is op of shared channel\n var buffers = this.appState.getBuffersWithUser(this.id, nick);\n\n for (var i = 0; i < buffers.length; i++) {\n var buffer = buffers[i];\n\n if (buffer.isUserAnOp(nick)) {\n return true;\n }\n }\n\n var user = this.appState.getUser((0, _indexOf.default)(this), nick);\n\n if (!user || !user.hasWhois) {\n // if we have not seen or whois the user they might be a network oper\n // so return null then a whois can be performed\n return null;\n }\n\n if (user.operator) {\n return true;\n }\n\n return false;\n }\n }, {\n key: \"currentUser\",\n value: function currentUser() {\n return this.appState.getUser(this.id, this.nick);\n }\n }, {\n key: \"userByName\",\n value: function userByName(nick) {\n return this.appState.getUser(this.id, nick);\n }\n }, {\n key: \"ircClient\",\n get: function get() {\n if (!this.frameworkClient) {\n this.frameworkClient = IrcClient.create(this.appState, this);\n }\n\n return this.frameworkClient;\n }\n }, {\n key: \"buffers\",\n get: function get() {\n return this.bufferDict.networks[this.id];\n }\n }]);\n return NetworkState;\n}();\n\nexports.default = NetworkState;","import { render, staticRenderFns } from \"./UrlEmbed.vue?vue&type=template&id=32b5d18e&\"\nimport script from \"./UrlEmbed.vue?vue&type=script&lang=js&\"\nexport * from \"./UrlEmbed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UrlEmbed.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar methods = {\n props: {},\n avatar: function avatar(props) {\n // let props = this.props;\n return props.message && props.message.avatar || props.user && props.user.avatar;\n },\n firstNickLetter: function firstNickLetter(props) {\n // let props = this.props;\n return (props.message && props.message.nick || props.user && props.user.nick || '')[0];\n },\n hasAvatar: function hasAvatar(props) {\n // let props = this.props;\n return !!(props.user.avatar && (props.user.avatar.small || props.user.avatar.large));\n },\n avatarStyle: function avatarStyle(props) {\n // let props = this.props;\n var style = {};\n\n if (this.hasAvatar(props)) {\n var url = props.size === 'small' && this.avatar(props).small ? this.avatar(props).small : this.avatar(props).large;\n style['background-image'] = \"url(\\\"\".concat(url, \"\\\")\");\n } else {\n style['background-color'] = \"\".concat(this.colour(props));\n }\n\n return style;\n },\n colour: function colour(props) {\n // let props = this.props;\n var user = props.message && props.message.user || props.user;\n return user.getColour();\n }\n};\nvar _default = {\n props: {\n message: Object,\n user: Object,\n size: String\n },\n m: methods\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"Avatar\"]\r\nwindow._kiwi_exports.components.Avatar = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-controlinput kiwi-theme-bg\",class:{\n 'kiwi-controlinput-selfuser--open': _vm.selfuser_open,\n 'kiwi-controlinput--focus': _vm.has_focus,\n }},[_c('div',{staticClass:\"kiwi-controlinput-selfuser\"},[_c('transition',{attrs:{\"name\":\"kiwi-selfuser-trans\"}},[(_vm.networkState==='connected'\n && _vm.selfuser_open === true)?_c('self-user',{attrs:{\"network\":_vm.buffer.getNetwork()},on:{\"close\":function($event){_vm.selfuser_open=false}}}):_vm._e()],1)],1),_c('div',{staticClass:\"kiwi-controlinput-inner\",class:[_vm.selfuser_open ? 'kiwi-controlinput-portrait-hide' : '']},[(_vm.buffer.getNetwork() && _vm.buffer.getNetwork().state === 'connected')?_c('away-status-indicator',{attrs:{\"network\":_vm.buffer.getNetwork(),\"user\":_vm.buffer.getNetwork().currentUser()}}):_vm._e(),(_vm.currentNick)?_c('div',{staticClass:\"kiwi-controlinput-user\",on:{\"click\":_vm.toggleSelfUser}},[_c('span',{staticClass:\"kiwi-controlinput-user-nick\"},[_vm._v(_vm._s(_vm.currentNick))]),_c('i',{staticClass:\"fa\",class:[_vm.selfuser_open ? 'fa-caret-down' : 'fa-caret-up'],attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),_c('form',{staticClass:\"kiwi-controlinput-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitForm($event)},\"click\":_vm.maybeHidePlugins}},[(_vm.autocomplete_open)?_c('auto-complete',{ref:\"autocomplete\",attrs:{\"items\":_vm.autocomplete_items,\"filter\":_vm.autocomplete_filter,\"buffer\":_vm.buffer},on:{\"temp\":_vm.onAutocompleteTemp,\"selected\":_vm.onAutocompleteSelected,\"cancel\":_vm.onAutocompleteCancel}}):_vm._e(),(_vm.buffer.setting('share_typing'))?_c('typing-users-list',{attrs:{\"buffer\":_vm.buffer}}):_vm._e(),_c('div',{staticClass:\"kiwi-controlinput-input-wrap\"},[_c('irc-input',{ref:\"input\",staticClass:\"kiwi-controlinput-input\",attrs:{\"placeholder\":_vm.$t('input_placeholder'),\"wrap\":\"off\"},on:{\"input\":_vm.inputUpdate,\"keydown\":function($event){return _vm.inputKeyDown($event)},\"keyup\":function($event){return _vm.inputKeyUp($event)},\"click\":_vm.closeInputTool,\"focus\":function($event){_vm.has_focus = true},\"blur\":function($event){_vm.has_focus = false}}})],1),(_vm.shouldShowSendButton)?_c('button',{staticClass:\"kiwi-controlinput-send fa fa-paper-plane\",attrs:{\"type\":\"submit\"}}):_vm._e()],1),(_vm.shouldShowInputButtons)?_c('div',{ref:\"plugins\",staticClass:\"kiwi-controlinput-tools\"},[_c('div',{staticClass:\"kiwi-controlinput-tools-container-expand\",class:{'kiwi-controlinput-tools-container-expand--inverse': !_vm.showPlugins},on:{\"click\":function($event){_vm.showPlugins=!_vm.showPlugins}}},[_c('i',{staticClass:\"fa fa-bars\",attrs:{\"aria-hidden\":\"true\"}})]),_c('transition',{attrs:{\"name\":\"kiwi-plugin-ui-trans\"}},[(_vm.showPlugins)?_c('div',{staticClass:\"kiwi-controlinput-tools-container\"},[(_vm.shouldShowColorPicker)?_c('a',{staticClass:\"kiwi-controlinput-tool\",on:{\"click\":function($event){$event.preventDefault();return _vm.onToolClickTextStyle($event)}}},[_c('i',{staticClass:\"fa fa-adjust\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.shouldShowEmojiPicker)?_c('a',{staticClass:\"kiwi-controlinput-tool\",on:{\"click\":function($event){$event.preventDefault();return _vm.onToolClickEmoji($event)}}},[_c('i',{staticClass:\"fa fa-smile-o\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),_vm._l((_vm.pluginUiElements),function(plugin){return _c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:({\n el: plugin.el,\n props: {\n controlinput: _vm.self,\n }\n }),expression:\"{\\n el: plugin.el,\\n props: {\\n controlinput: self,\\n }\\n }\"}],key:plugin.id,staticClass:\"kiwi-controlinput-tool\"})})],2):_vm._e()])],1):_vm._e()],1),_c('div',{staticClass:\"kiwi-controlinput-active-tool\"},[_c(_vm.active_tool,_vm._b({tag:\"component\"},'component',_vm.active_tool_props,false))],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('startup-layout',{ref:\"layout\",staticClass:\"kiwi-welcome-znc\",scopedSlots:_vm._u([(!_vm.network || _vm.network.state === 'disconnected')?{key:\"connection\",fn:function(){return [_c('form',{staticClass:\"u-form u-form--big kiwi-welcome-znc-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.formSubmit($event)}}},[_c('h2',{domProps:{\"innerHTML\":_vm._s(_vm.greetingText)}}),(_vm.network && (_vm.network.last_error || _vm.network.state_error))?_c('div',{staticClass:\"kiwi-welcome-znc-error\"},[_vm._v(\" We couldn't connect to the server :( \"),_c('span',[_vm._v(\" \"+_vm._s(_vm.network.last_error || _vm.readableStateError(_vm.network.state_error))+\" \")])]):_vm._e(),(_vm.showUser)?_c('input-text',{staticClass:\"kiwi-welcome-znc-nick\",attrs:{\"label\":_vm.$t('username')},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}):_vm._e(),(_vm.showPass)?_c('input-text',{staticClass:\"kiwi-welcome-znc-password\",attrs:{\"label\":_vm.$t('password'),\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}):_vm._e(),(_vm.showNetwork)?_c('input-text',{staticClass:\"kiwi-welcome-znc-channel\",attrs:{\"label\":_vm.$t('network')},model:{value:(_vm.znc_network),callback:function ($$v) {_vm.znc_network=$$v},expression:\"znc_network\"}}):_vm._e(),_c('button',{staticClass:\"u-button u-button-primary u-submit kiwi-welcome-znc-start\",attrs:{\"disabled\":!_vm.readyToStart,\"type\":\"submit\"},domProps:{\"innerHTML\":_vm._s(_vm.buttonText)}})],1)]},proxy:true}:(_vm.network.state !== 'connected')?{key:\"connection\",fn:function(){return [_c('i',{staticClass:\"fa fa-spin fa-spinner\",staticStyle:{\"font-size\":\"2em\",\"margin-top\":\"1em\"}})]},proxy:true}:null],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=script&lang=js&\"","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = parse;\nexports.createNewBlock = createNewBlock;\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar tokens = (0, _create.default)(null);\n/**\n * Token functions may return:\n * null - move forward in the input by the length of the token\n * -1 - do not treat this character as a token and continue as normal content\n * 0+ - move to this point in the input\n */\n\n/* eslint-disable dot-notation */\n\ntokens['_'] = {\n token: '_',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context;\n\n if (openToks[this.token]) {\n delete block.styles.underline;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.underline === true) {\n return -1;\n } // Underscores may be part of a word or URL so consider it an opening\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // token if it's on it's own\n // Only underline if we have a closing _ further on\n\n\n if ((0, _indexOf.default)(_context = inp.substr(pos + 1)).call(_context, this.token) === -1) {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.underline = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['*'] = {\n token: '*',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.bold;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.bold === true) {\n return -1;\n } // Ignore is after a : character. :* is usually a kiss emoji\n\n\n if (inp[pos - 1] === ':') {\n return -1;\n } // * may be part of a word (ie. pasting code) or URL so only start bolding if * is after a\n // space\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // Only style if:\n // * we have a closing * further on\n // * the * further on has a space after it or is the last character\n\n\n var remainingText = inp.substr(pos + 1);\n var nextPos = (0, _indexOf.default)(remainingText).call(remainingText, this.token);\n\n if (nextPos === -1 || nextPos < remainingText.length - 1 && remainingText[nextPos + 1] !== ' ') {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.bold = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['**'] = {\n token: '**',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context2;\n\n if (openToks[this.token]) {\n delete block.styles.italic;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.italic === true) {\n return -1;\n } // Only style if we have a closing ** further on\n\n\n if ((0, _indexOf.default)(_context2 = inp.substr(pos + 1)).call(_context2, this.token) === -1) {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.italic = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['`'] = {\n token: '`',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.quote;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // Backticks may be part of a word or NICK so only consider it a codeblock if\n // it's at the start of a scentence or comes after a space\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // Find the closing backtick\n\n\n var str = inp.substr(pos + 1);\n var endPos = (0, _indexOf.default)(str).call(str, this.token); // If we don't have a closing backtick further on, don't take this as an opening backtick\n\n if (endPos === -1) {\n return -1;\n } // Only consider the found closing backtick as closing if it comes before a space or is at\n // the end of the text. If it's in the middle of text then it's highly lickely part of that\n // text and not actually closing. eg. `hello and wel`come\n\n\n if (str[endPos + 1] && str[endPos + 1] !== ' ') {\n return -1;\n } // No styling should appear in this codeblock. Add all the content we can\n // before jumping the position forward in the input\n\n\n openToks[this.token] = true;\n block.styles.quote = true;\n block.content += this.token + str.substr(0, endPos);\n block.containsContent = true; // The + 1 because:\n // We added 2 ` characters, but we want the last ` character to call this\n // fn again so it can be closed.\n\n return pos + endPos + 1;\n }\n}; // Bold\n\ntokens['\\x02'] = {\n token: '\\x02',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.bold;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.bold = true;\n }\n\n return null;\n }\n}; // Italic\n\ntokens['\\x1D'] = {\n token: '\\x1D',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.italic;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.italic = true;\n }\n\n return null;\n }\n}; // Underline\n\ntokens['\\x1F'] = {\n token: '\\x1F',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.underline;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.underline = true;\n }\n\n return null;\n }\n}; // Clear all styles\n\ntokens['\\x0F'] = {\n token: '\\x0F',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context3, _context4;\n\n (0, _forEach.default)(_context3 = (0, _keys.default)(block.styles)).call(_context3, function (k) {\n return delete block.styles[k];\n });\n (0, _forEach.default)(_context4 = (0, _keys.default)(openToks)).call(_context4, function (k) {\n return delete openToks[k];\n });\n return null;\n }\n}; // Colours\n\ntokens['\\x03'] = {\n token: '\\x03',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var colours = {\n 0: 'white',\n 1: 'black',\n 2: 'blue',\n 3: 'green',\n 4: 'light-red',\n 5: 'brown',\n 6: 'purple',\n 7: 'orange',\n 8: 'yellow',\n 9: 'light-green',\n 10: 'cyan',\n 11: 'light-cyan',\n 12: 'light-blue',\n 13: 'pink',\n 14: 'grey',\n 15: 'light-grey'\n };\n var colourMatchRegexp = /^\\x03(([0-9][0-9]?)(,([0-9][0-9]?))?)/;\n var match = colourMatchRegexp.exec(inp.substr(pos, 6));\n\n if (match) {\n // fg colour = 2, bg colour = 4\n var fgColour = colours[(0, _parseInt2.default)(match[2], 10)];\n var bgColour = colours[(0, _parseInt2.default)(match[4], 10)];\n\n if (typeof fgColour !== 'undefined') {\n block.styles.color = fgColour;\n }\n\n if (typeof bgColour !== 'undefined') {\n block.styles.background = bgColour;\n }\n\n return pos + match[0].length;\n } // 03 without a colour = delete any existing colour\n\n\n delete block.styles.color;\n delete block.styles.background;\n return null;\n }\n}; // Reverse (unimplemented)\n\ntokens['\\x16'] = {\n token: '\\x16',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n return null;\n }\n};\n\nfunction parse(inp, _opts) {\n var opts = _opts || {};\n var block = createNewBlock();\n var blocks = [block];\n var openTokens = (0, _create.default)(null);\n var pos = 0;\n var len = inp.length;\n\n while (pos < len) {\n var tok = findTokenAtPosition();\n\n if (!tok || !opts.extras && tok.extra) {\n block.content += inp[pos];\n block.containsContent = true;\n pos++;\n continue;\n } // Current character is a token of some sort\n\n\n var newBlock = null; // Consecutive tokens can stack up styles into the same blocks. A consecutive\n // token means that the block before it will not have any content yet\n\n if (block.containsContent) {\n newBlock = createNewBlock();\n } else {\n newBlock = block;\n }\n\n (0, _assign.default)(newBlock.styles, block.styles);\n var newPos = tok.fn(inp, pos, newBlock, block, openTokens);\n\n if (newPos === -1) {\n // The token invalidated itself so treat it as content\n block.content += tok.token;\n block.containsContent = true;\n pos += tok.token.length;\n continue;\n }\n\n block = newBlock; // This block may have already been pushed if this is a consecutive token\n\n if (blocks[blocks.length - 1] !== newBlock) {\n blocks.push(newBlock);\n }\n\n if (typeof newPos === 'number') {\n pos = newPos;\n } else {\n pos += tok.token.length;\n }\n }\n\n return blocks;\n\n function findTokenAtPosition() {\n var tok = tokens[inp.substr(pos, 2)] || tokens[inp[pos]];\n return tok;\n }\n}\n\nfunction createNewBlock() {\n var content = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var styles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'text';\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var newBlock = {\n styles: styles,\n content: content,\n containsContent: !!content,\n type: type,\n meta: meta\n };\n return newBlock;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"MessageFormatter\"]\r\nwindow._kiwi_exports.libs.MessageFormatter = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-prompt\",style:({display: _vm.block ? 'block' : 'inline-block'})},[(_vm.state==='pre')?_c('div',{on:{\"click\":_vm.prompt}},[_vm._t(\"default\")],2):_vm._e(),(_vm.state==='prompt')?_c('form',{staticClass:\"u-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.complete($event)}}},[_c('span',{staticClass:\"u-input-prompt-label\"},[_vm._v(_vm._s(_vm.label))]),_c('div',{staticClass:\"u-input-prompt-inputs\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"u-input\",domProps:{\"value\":(_vm.value)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.cancel($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.value=$event.target.value}}}),_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.complete}},[_vm._v(_vm._s(_vm.$t('ok')))]),(!_vm.hideCancel)?_c('a',{staticClass:\"u-button u-button-warning\",on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('cancel'))+\" \")]):_vm._e()])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ZncLogin.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ZncLogin.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _MessageList = _interopRequireDefault(require(\"./MessageList\"));\n\nvar _NetworkSettings = _interopRequireDefault(require(\"./NetworkSettings\"));\n\nvar _ChannelList = _interopRequireDefault(require(\"./ChannelList\"));\n\nvar _default = {\n components: {\n MessageList: _MessageList.default,\n NetworkSettings: _NetworkSettings.default,\n ChannelList: _ChannelList.default\n },\n props: ['network'],\n data: function data() {\n return {\n pluginUiElements: _GlobalApi.default.singleton().serverViewPlugins\n };\n },\n computed: {\n hasMessages: function hasMessages() {\n return this.network.serverBuffer().getMessages().length > 0;\n },\n serverBuffer: function serverBuffer() {\n return this.network.serverBuffer();\n },\n restrictedServer: function restrictedServer() {\n return this.$state.setting('restricted');\n },\n networkConnected: function networkConnected() {\n return this.network.state === 'connected';\n }\n },\n watch: {\n networkConnected: function networkConnected() {\n var _this = this;\n\n this.$nextTick(function () {\n // Vue won't update the tabs being displayed here so we to\n // manually update a property to force a re-render of the tabs\n _this.$refs.tabs.a++;\n });\n }\n },\n created: function created() {\n var _this2 = this;\n\n this.listen(this.$state, 'server.tab.show', function (tabName) {\n _this2.showTab(tabName);\n });\n },\n methods: {\n showTab: function showTab(tabName) {\n this.$refs.tabs.setActiveByName(tabName);\n },\n tabChanged: function tabChanged(tabName) {\n this.serverBuffer.show_input = tabName === 'messages';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ServerView\"]\r\nwindow._kiwi_exports.components.ServerView = exports.default ? exports.default : exports;\r\n","module.exports = __webpack_public_path__ + \"static/img/kiwiLoadingLogo.ee10be5a.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-messageinfo\",on:{\"click\":function($event){$event.stopPropagation();}}},[(_vm.message.mentioned_urls.length > 0)?_c('div',{staticClass:\"kiwi-messageinfo-urls\"},_vm._l((_vm.message.mentioned_urls),function(url){return _c('div',{key:url,staticClass:\"kiwi-messageinfo-url\"},[_c('a',{staticClass:\"u-button u-button-secondary\",on:{\"click\":function($event){return _vm.urlPreview(url)}}},[_vm._v(\"Preview\")]),_c('a',{staticClass:\"u-link\",attrs:{\"href\":url,\"target\":\"_blank\"}},[_vm._v(\" \"+_vm._s(url)+\" \")])])}),0):_vm._e(),_c('div',{staticClass:\"kiwi-messageinfo-actions\",class:{'kiwi-messageinfo-actions--open': _vm.requestingInput}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-reply\",on:{\"click\":_vm.openQuery}},[_vm._v(\" Reply in private \")]):_vm._e(),(_vm.areWeAnOp() && !_vm.isSelf())?_c('div',{staticClass:\"kiwi-messageinfo-opbuttons\"},[_c('input-prompt',{attrs:{\"label\":\"Kick reason:\"},on:{\"submit\":_vm.onKick,\"cancel\":function($event){_vm.requestingInput = false}}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-kick-user\",on:{\"click\":function($event){_vm.requestingInput = true}}},[_vm._v(\" Kick \"+_vm._s(_vm.message.nick)+\" \")]):_vm._e()]),_c('input-prompt',{attrs:{\"label\":\"Ban reason:\"},on:{\"submit\":_vm.onBan,\"cancel\":function($event){_vm.requestingInput = false}}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-ban-user\",on:{\"click\":function($event){_vm.requestingInput = true}}},[_vm._v(\" Ban \"+_vm._s(_vm.message.nick)+\" \")]):_vm._e()])],1):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-text', {\n props: ['value', 'label', 'type', 'showPlainText'],\n data: function data() {\n return {\n plainTextEnabled: false,\n inputIdCache: ''\n };\n },\n computed: {\n inputId: function inputId() {\n if (!this.inputIdCache) {\n // eslint-disable-next-line\n this.inputIdCache = 'inp_' + Math.floor(Math.random() * 1e17).toString(36);\n }\n\n return this.inputIdCache;\n },\n currentValue: {\n get: function getCurrentValue() {\n return this.value;\n },\n set: function setCurrentValue(newVal) {\n this.$emit('input', newVal);\n }\n }\n },\n methods: {\n updateValue: function updateValue(newValue) {\n this.$emit('input', newValue);\n },\n isEdgeBrowser: function isEdgeBrowser() {\n var _context;\n\n return (0, _indexOf.default)(_context = navigator.appVersion).call(_context, 'Edge') > -1;\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputText\"]\r\nwindow._kiwi_exports.components.utils.InputText = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NetworkSettings.vue?vue&type=template&id=5c460638&\"\nimport script from \"./NetworkSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./NetworkSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NetworkSettings.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInvitelist.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInvitelist.vue?vue&type=style&index=0&lang=less&\"","import { render, staticRenderFns } from \"./Container.vue?vue&type=template&id=0a567944&\"\nimport script from \"./Container.vue?vue&type=script&lang=js&\"\nexport * from \"./Container.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Container.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-text\"},[(_vm.label)?_c('label',{attrs:{\"for\":_vm.inputId}},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_c('div',{staticClass:\"u-input-text-inputs\",staticStyle:{\"display\":\"flex\"}},[(_vm.type==='password')?[((_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password')==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.currentValue)?_vm._i(_vm.currentValue,null)>-1:(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"change\":function($event){var $$a=_vm.currentValue,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.currentValue=$$a.concat([$$v]))}else{$$i>-1&&(_vm.currentValue=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.currentValue=$$c}}}}):((_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password')==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.currentValue,null)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"change\":function($event){_vm.currentValue=null}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password'},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}),(_vm.showPlainText && !_vm.isEdgeBrowser())?_c('i',{staticClass:\"u-input-text-plaintext fa fa-eye\",class:{'u-input-text-plaintext--active': _vm.plainTextEnabled},attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){_vm.plainTextEnabled = !_vm.plainTextEnabled}}}):_vm._e()]:(_vm.type==='number')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId,\"type\":\"number\"},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}):(_vm.type==='textarea')?_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\"},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}),(_vm.$slots.default)?_c('div',{staticClass:\"u-input-text-c\"},[_vm._t(\"default\")],2):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar createdInstance = null;\n\nvar ThemeManager = /*#__PURE__*/function () {\n function ThemeManager(state) {\n (0, _classCallCheck2.default)(this, ThemeManager);\n this.state = state;\n this.listenForIrcEvents();\n this.varsEl = null;\n }\n\n (0, _createClass2.default)(ThemeManager, [{\n key: \"themeVar\",\n value: function themeVar(varName) {\n var _context;\n\n if (!this.varsEl) {\n this.varsEl = document.querySelector('.kiwi-wrap');\n }\n\n var styles = window.getComputedStyle(this.varsEl);\n var v = styles.getPropertyValue('--kiwi-' + varName);\n return (0, _trim.default)(_context = v || '').call(_context);\n }\n }, {\n key: \"availableThemes\",\n value: function availableThemes() {\n return this.state.settings.themes;\n }\n }, {\n key: \"currentTheme\",\n value: function currentTheme() {\n var state = this.state;\n var currentThemeName = state.setting('theme');\n currentThemeName = currentThemeName.toLowerCase();\n var theme = (0, _find.default)(_lodash.default).call(_lodash.default, state.settings.themes, function (t) {\n var isMatch = t.name.toLowerCase() === currentThemeName;\n return isMatch;\n }); // If no theme was set, use the first one in our theme list\n\n if (!theme) {\n theme = state.settings.themes[0];\n }\n\n return theme;\n }\n }, {\n key: \"setTheme\",\n value: function setTheme(theme) {\n var theTheme = null;\n\n if (typeof theme === 'string') {\n // Make sure this theme exists\n theTheme = (0, _find.default)(_lodash.default).call(_lodash.default, this.availableThemes(), function (t) {\n var isMatch = t.name.toLowerCase() === theme.toLowerCase();\n return isMatch;\n });\n\n if (!theTheme) {\n return;\n }\n } else {\n theTheme = theme;\n }\n\n this.state.setting('theme', theTheme.name);\n this.state.$emit('theme.change');\n }\n }, {\n key: \"reload\",\n value: function reload() {\n var theme = this.currentTheme();\n\n if (!theme) {\n return;\n }\n\n var url = theme.url;\n\n if ((0, _indexOf.default)(url).call(url, 'cb=') > -1) {\n url = url.replace(/cb=[0-9]+/, function () {\n return 'cb=' + (0, _now.default)();\n });\n } else if ((0, _indexOf.default)(url).call(url, '?') > -1) {\n url += '&cb=' + (0, _now.default)();\n } else {\n url += '?cb=' + (0, _now.default)();\n }\n\n theme.url = url;\n this.state.$emit('theme.change');\n }\n }, {\n key: \"setCustomThemeUrl\",\n value: function setCustomThemeUrl(url) {\n var theme = (0, _find.default)(_lodash.default).call(_lodash.default, ThemeManager.instance().availableThemes(), {\n name: 'custom'\n });\n\n if (theme) {\n theme.url = url;\n }\n\n if (theme.name === 'custom') {\n this.state.$emit('theme.change');\n }\n } // When we get a CTCP 'kiwi theme reload' then reload our theme. Handy for theme devs\n\n }, {\n key: \"listenForIrcEvents\",\n value: function listenForIrcEvents() {\n var _this = this;\n\n this.state.$on('irc.ctcp request', function (event, network) {\n var _context2;\n\n var ctcpType = (event.type || '').toLowerCase();\n\n if (ctcpType === 'kiwi' && (0, _indexOf.default)(_context2 = event.message).call(_context2, 'theme reload') > -1) {\n _this.reload();\n }\n });\n }\n }], [{\n key: \"themeUrl\",\n value: function themeUrl(theme) {\n var parts = theme.url.split('?');\n var url = parts[0];\n var qs = parts[1] || '';\n\n if (url[url.length - 1] !== '/') {\n url += '/';\n }\n\n return url + 'theme.css' + (qs ? '?' + qs : '');\n }\n }]);\n return ThemeManager;\n}();\n\nexports.default = ThemeManager;\n\nThemeManager.instance = function instance(state) {\n if (!createdInstance) {\n createdInstance = new ThemeManager(state);\n }\n\n return createdInstance;\n};\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"ThemeManager\"]\r\nwindow._kiwi_exports.libs.ThemeManager = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-confirm kiwi-theme-bg\"},[(_vm.state==='pre')?_c('div',{on:{\"click\":_vm.prompt}},[_vm._t(\"default\")],2):_vm._e(),(_vm.state==='prompt')?[_c('span',{staticClass:\"u-input-confirm-label\"},[_vm._v(_vm._s(_vm.label))]),_c('a',{staticClass:\"u-button\",class:['u-button-'+_vm.connoteCss.yes],on:{\"click\":function($event){return _vm.complete(true)}}},[_vm._v(\" \"+_vm._s(_vm.$t('yes'))+\" \")]),_c('a',{staticClass:\"u-button\",class:['u-button-'+_vm.connoteCss.no],on:{\"click\":function($event){return _vm.complete(false)}}},[_vm._v(\" \"+_vm._s(_vm.$t('no'))+\" \")])]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n'kiwi public';\n/** @module */\n\n/**\n * Converts a hex CSS color value to RGB.\n * Adapted from http://stackoverflow.com/a/5624139.\n *\n * @param {String} _hex The hexadecimal color value\n * @return {Object} The RGB representation\n */\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.hex2rgb = hex2rgb;\nexports.rgb2hex = rgb2hex;\nexports.rgb2hsl = rgb2hsl;\nexports.hsl2rgb = hsl2rgb;\nexports.rgb2rgbString = rgb2rgbString;\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nfunction hex2rgb(_hex) {\n // Expand shorthand form (e.g. \"03F\") to full form (e.g. \"0033FF\")\n var shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n\n var hex = _hex.replace(shorthandRegex, function (m, r, g, b) {\n return r + r + g + g + b + b;\n });\n\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: (0, _parseInt2.default)(result[1], 16),\n g: (0, _parseInt2.default)(result[2], 16),\n b: (0, _parseInt2.default)(result[3], 16)\n } : null;\n}\n/**\n * Converts an RGB color value to a hex string.\n * @param {Object} rgb RGB as r, g, and b keys\n * @return {String} Hex color string\n */\n\n\nfunction rgb2hex(rgb) {\n var _context;\n\n return '#' + (0, _map.default)(_context = ['r', 'g', 'b']).call(_context, function (key) {\n var _context2;\n\n return (0, _slice.default)(_context2 = '0' + rgb[key].toString(16)).call(_context2, -2);\n }).join('');\n}\n/**\n * Converts an RGB color value to HSL. Conversion formula adapted from\n * http://en.wikipedia.org/wiki/HSL_color_space. This function adapted\n * from http://stackoverflow.com/a/9493060.\n * Assumes r, g, and b are contained in the set [0, 255] and\n * returns h, s, and l in the set [0, 1].\n *\n * @param Object rgb RGB as r, g, and b keys\n * @return Object HSL as h, s, and l keys\n */\n\n\nfunction rgb2hsl(rgb) {\n var r = rgb.r;\n var g = rgb.g;\n var b = rgb.b;\n r /= 255;\n g /= 255;\n b /= 255;\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0; // achromatic\n } else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n if (max === r) {\n h = (g - b) / d + (g < b ? 6 : 0);\n } else if (max === g) {\n h = (b - r) / d + 2;\n } else if (max === b) {\n h = (r - g) / d + 4;\n }\n\n h /= 6;\n }\n\n return {\n h: h,\n s: s,\n l: l\n };\n}\n/**\n * Converts an HSL color value to RGB. Conversion formula adapted from\n * http://en.wikipedia.org/wiki/HSL_color_space. This function adapted\n * from http://stackoverflow.com/a/9493060.\n * Assumes h, s, and l are contained in the set [0, 1] and\n * returns r, g, and b in the set [0, 255].\n *\n * @param Object hsl HSL as h, s, and l keys\n * @return Object RGB as r, g, and b values\n */\n\n\nfunction hsl2rgb(hsl) {\n function hue2rgb(_p, _q, _t) {\n var p = _p;\n var q = _q;\n var t = _t;\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n\n var h = hsl.h;\n var s = hsl.s;\n var l = hsl.l;\n var r = 0;\n var g = 0;\n var b = 0;\n\n if (s === 0) {\n r = g = b = l; // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255)\n };\n}\n\nfunction rgb2rgbString(rgb) {\n return 'rgb(' + [rgb.r, rgb.g, rgb.b].join(',') + ')';\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"Colours\"]\r\nwindow._kiwi_exports.helpers.Colours = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./SelfUser.vue?vue&type=template&id=cd4c5738&\"\nimport script from \"./SelfUser.vue?vue&type=script&lang=js&\"\nexport * from \"./SelfUser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SelfUser.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageModern.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageModern.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MessageList.vue?vue&type=template&id=8fc0eedc&\"\nimport script from \"./MessageList.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageList.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./ServerView.vue?vue&type=template&id=604d1314&\"\nimport script from \"./ServerView.vue?vue&type=script&lang=js&\"\nexport * from \"./ServerView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ServerView.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _some = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/some\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _reduce = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reduce\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _common = require(\"./common\");\n\nvar _batchedAdd = _interopRequireDefault(require(\"../batchedAdd\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"../bufferTools\"));\n\n/** @module */\nvar nextBufferId = 0;\n/** The IRC buffer instance */\n\nvar BufferState = /*#__PURE__*/function () {\n function BufferState(name, networkid, state, messageDict) {\n (0, _classCallCheck2.default)(this, BufferState);\n // Enumerable properties that become reactive under Vue\n this.id = nextBufferId++;\n this.networkid = networkid;\n this.name = name;\n this.topics = [];\n this.key = '';\n this.joined = false;\n this.enabled = true;\n this.created_at = null;\n this.users = (0, _create.default)(null);\n this.modes = (0, _create.default)(null);\n this.flags = {\n unread: 0,\n has_opened: false,\n channel_badkey: false,\n chathistory_available: true,\n requested_modes: false,\n requested_banlist: false,\n is_requesting_chathistory: false\n };\n this.settings = {};\n this.last_read = 0;\n this.active_timeout = null;\n this.message_count = 0;\n this.current_input = '';\n this.input_history = [];\n this.input_history_pos = 0;\n this.show_input = true;\n this.latest_messages = []; // Counter for chathistory requests. While this value is 0, it means that this buffer is\n // still loading messages\n\n this.chathistory_request_count = 0;\n\n _vue.default.observable(this); // Some non-enumerable properties (vues $watch won't cover these properties)\n\n\n (0, _common.def)(this, 'state', state, false);\n (0, _common.def)(this, 'messageDict', messageDict, false);\n var messagesObj = {\n networkid: this.networkid,\n buffer: this.name,\n messages: [],\n messageIds: (0, _create.default)(null)\n };\n this.messageDict.push(messagesObj);\n (0, _common.def)(this, 'messagesObj', messagesObj, false);\n (0, _common.def)(this, 'isMessageTrimming', true, true);\n (0, _common.def)(this, 'addMessageBatch', createMessageBatch(this), false);\n (0, _common.def)(this, 'addUserBatch', createUserBatch(this), false); // poll who to update away status if away-notify is not enabled\n\n if (this.isChannel()) {\n maybeStartWhoLoop(this);\n } // When the network re-connects, we reset the chathistory request counter.\n // This will make the `getLoadingState()` stay as 'loading' while the chathistory reloads.\n\n\n function onNetworkConnecting(event) {\n if (event.network === this.getNetwork()) {\n this.chathistory_request_count = 0;\n }\n }\n\n function onNetworkMotd(event, network) {\n if (network === this.getNetwork() && this.isQuery()) {\n this.requestLatestScrollback();\n }\n } // Clean up the previous event and itself when the buffer is closed.\n\n\n function onBufferClose(event) {\n if (event.buffer === this) {\n this.state.$off('network.connecting', onNetworkConnectingBound);\n this.state.$off('buffer.close', onBufferCloseBound);\n this.state.$off('irc.motd', onNetworkMotdBound);\n }\n }\n\n var onNetworkConnectingBound = (0, _bind.default)(onNetworkConnecting).call(onNetworkConnecting, this);\n var onBufferCloseBound = (0, _bind.default)(onBufferClose).call(onBufferClose, this);\n var onNetworkMotdBound = (0, _bind.default)(onNetworkMotd).call(onNetworkMotd, this);\n state.$on('network.connecting', onNetworkConnectingBound);\n state.$on('buffer.close', onBufferCloseBound);\n state.$on('irc.motd', onNetworkMotdBound);\n\n if (this.isQuery() && this.getNetwork().ircClient.chathistory.isSupported()) {\n // Get PM message histories, while channel buffers request it after their nicklist\n // has been received\n this.requestLatestScrollback();\n }\n }\n\n (0, _createClass2.default)(BufferState, [{\n key: \"getNetwork\",\n value: function getNetwork() {\n return this.state.getNetwork(this.networkid);\n }\n }, {\n key: \"getMessages\",\n value: function getMessages() {\n var bufMessages = (0, _find.default)(_lodash.default).call(_lodash.default, this.messageDict, {\n networkid: this.networkid,\n buffer: this.name\n });\n return bufMessages ? bufMessages.messages : [];\n }\n }, {\n key: \"clearMessages\",\n value: function clearMessages() {\n var _context;\n\n (0, _splice.default)(_context = this.messagesObj.messages).call(_context, 0, this.messagesObj.messages.length);\n this.messagesObj.messageIds = (0, _create.default)(null);\n } // Remove a block of messages between a time (server-time) range. Inclusive.\n\n }, {\n key: \"clearMessageRange\",\n value: function clearMessageRange(startTime, endTime) {\n var _context2,\n _this = this;\n\n this.messagesObj.messages = (0, _filter.default)(_context2 = this.messagesObj.messages).call(_context2, function (message) {\n if (message.server_time < startTime || message.server_time > endTime) {\n return true;\n } // This message will be removed\n\n\n delete _this.messagesObj.messageIds[message.id];\n return false;\n }); // Mark that something changed\n\n this.message_count++;\n }\n }, {\n key: \"isServer\",\n value: function isServer() {\n return this.name === '*';\n }\n }, {\n key: \"isChannel\",\n value: function isChannel() {\n var chanPrefixes = ['#', '&'];\n var ircNetwork = this.getNetwork().ircClient.network;\n\n if (ircNetwork && ircNetwork.options.CHANTYPES) {\n chanPrefixes = ircNetwork.options.CHANTYPES;\n }\n\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, this.name[0]) > -1;\n }\n }, {\n key: \"isQuery\",\n value: function isQuery() {\n var chanPrefixes = ['#', '&'];\n var ircNetwork = this.getNetwork().ircClient.network;\n\n if (ircNetwork && ircNetwork.options.CHANTYPES) {\n chanPrefixes = ircNetwork.options.CHANTYPES;\n }\n\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, this.name[0]) === -1 && !this.isSpecial() && !this.isServer();\n }\n }, {\n key: \"isSpecial\",\n value: function isSpecial() {\n // Special buffer names (Usually controller queries, like *status or *raw).\n // Server buffer '*' is not included in this classification.\n var name = this.name;\n return name[0] === '*' && name.length > 1;\n }\n }, {\n key: \"isUserAnOp\",\n value: function isUserAnOp(nick) {\n var user = this.state.getUser(this.networkid, nick);\n\n if (!user) {\n return false;\n }\n\n var userBufferInfo = user.buffers[this.id];\n\n if (!userBufferInfo) {\n return false;\n }\n\n var modes = userBufferInfo.modes;\n var opModes = ['Y', 'y', 'q', 'a', 'o', 'h'];\n var hasOp = (0, _find.default)(_lodash.default).call(_lodash.default, modes, function (mode) {\n return (0, _indexOf.default)(opModes).call(opModes, mode.toLowerCase()) > -1;\n });\n return !!hasOp;\n }\n /**\n * Get a users prefix symbol on a buffer from its modes\n * @param {Object} user The user object\n */\n\n }, {\n key: \"userModePrefix\",\n value: function userModePrefix(user) {\n // The user may not be on the buffer\n if (!user.buffers[this.id]) {\n return '';\n }\n\n var modes = user.buffers[this.id].modes;\n\n if (modes.length === 0) {\n return '';\n }\n\n var network = this.getNetwork();\n var netPrefixes = network.ircClient.network.options.PREFIX; // Find the first (highest) netPrefix in the users buffer modes\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, netPrefixes, function (p) {\n return (0, _indexOf.default)(modes).call(modes, p.mode) > -1;\n });\n return prefix ? prefix.symbol : '';\n }\n /**\n * Get a users mode on a buffer\n * @param user {Object} The user object\n */\n\n }, {\n key: \"userMode\",\n value: function userMode(user) {\n // The user may not be on the buffer\n if (!user.buffers[this.id]) {\n return '';\n }\n\n var modes = user.buffers[this.id].modes;\n\n if (modes.length === 0) {\n return '';\n } // if there is only one mode just return it\n\n\n if (modes.length === 1) {\n return modes[0];\n }\n\n var network = this.getNetwork();\n var netPrefixes = network.ircClient.network.options.PREFIX; // Find the first (highest) netPrefix in the users buffer modes\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, netPrefixes, function (p) {\n return (0, _indexOf.default)(modes).call(modes, p.mode) > -1;\n });\n return prefix ? prefix.mode : '';\n }\n }, {\n key: \"setting\",\n value: function setting(name, val) {\n if (typeof val !== 'undefined') {\n this.state.$set(this.settings, name, val);\n return val;\n } // Check the buffer specific settings before reverting to global settings\n\n\n var result = typeof this.settings[name] !== 'undefined' ? this.settings[name] : this.state.setting('buffers.' + name);\n return result;\n }\n }, {\n key: \"rename\",\n value: function rename(newName) {\n var network = this.getNetwork();\n var oldName = this.name;\n var setActive = this.state.getActiveBuffer() === this;\n this.name = newName;\n\n if (setActive) {\n this.state.setActiveBuffer(network.id, newName);\n } // update the buffer name on our messages\n\n\n var bufferMessages = (0, _find.default)(_lodash.default).call(_lodash.default, this.messageDict, {\n networkid: network.id,\n buffer: oldName\n });\n bufferMessages.buffer = newName;\n }\n }, {\n key: \"flag\",\n value: function flag(name, val) {\n if (typeof val !== 'undefined') {\n this.state.$set((0, _flags.default)(this), name, val);\n return val;\n }\n\n return (0, _flags.default)(this)[name];\n }\n }, {\n key: \"requestScrollback\",\n value: function requestScrollback(_direction) {\n var _this2 = this;\n\n var direction = _direction || 'backward';\n var time = '';\n var chathistoryFuncName = 'before'; // Going backwards takes the earliest message we already have and requests messages\n // before it. Going forward takes the last message we have and requests messages after\n // it.\n\n if (direction === 'backward') {\n var _context3;\n\n var lastMessage = (0, _reduce.default)(_context3 = this.getMessages()).call(_context3, function (earliest, current) {\n var ignoreTypes = ['traffic', 'topic', 'connection', 'presence'];\n var validType = (0, _indexOf.default)(ignoreTypes).call(ignoreTypes, earliest.type) === -1;\n\n if (validType && earliest.time && earliest.time < current.time) {\n return earliest;\n }\n\n return current;\n }, this.getMessages()[0]);\n chathistoryFuncName = 'before';\n time = lastMessage ? new Date(lastMessage.server_time) : new Date();\n } else if (direction === 'forward') {\n var _context4;\n\n var firstMessage = (0, _reduce.default)(_context4 = this.getMessages()).call(_context4, function (latest, current) {\n var ignoreTypes = ['traffic', 'topic', 'connection', 'presence'];\n var validType = (0, _indexOf.default)(ignoreTypes).call(ignoreTypes, latest.type) === -1;\n\n if (validType && latest.time && latest.time > current.time) {\n return latest;\n }\n\n return current;\n }, this.getMessages()[0]);\n chathistoryFuncName = 'after';\n time = firstMessage ? new Date(firstMessage.server_time) : new Date();\n } else {\n throw new Error('Invalid direction for requestScrollback(): ' + _direction);\n }\n\n var ircClient = this.getNetwork().ircClient;\n this.flag('is_requesting_chathistory', true);\n this.chathistory_request_count += 1;\n var existingMessageIds = (0, _assign.default)({}, this.messagesObj.messageIds);\n ircClient.chathistory[chathistoryFuncName](this.name, time).then(function (event) {\n var _context5;\n\n if (!event) {\n _this2.flag('chathistory_available', false);\n\n return;\n } // The BNC server may reply with messages that are already in the buffer.\n // If we get no new messages that we didn't already have, assume that we have\n // all the available history\n\n\n var hasNewMessages = (0, _some.default)(_context5 = event.commands).call(_context5, function (msg) {\n return msg.tags.msgid && !existingMessageIds[msg.tags.msgid];\n }); // If there are new messages, then there could be more in the backlog.\n // If there are no new messages, then the chat history is empty.\n\n _this2.flag('chathistory_available', hasNewMessages);\n }).finally(function () {\n _this2.flag('is_requesting_chathistory', false);\n });\n }\n }, {\n key: \"requestLatestScrollback\",\n value: function requestLatestScrollback() {\n var _this3 = this;\n\n var ircClient = this.getNetwork().ircClient;\n this.flag('is_requesting_chathistory', true);\n this.chathistory_request_count += 1;\n ircClient.chathistory.before(this.name, '*').finally(function () {\n _this3.flag('is_requesting_chathistory', false);\n });\n }\n }, {\n key: \"markAsRead\",\n value: function markAsRead(delayed) {\n if (this.active_timeout) {\n clearTimeout(this.active_timeout);\n this.active_timeout = null;\n }\n\n if (delayed) {\n var _context6;\n\n this.active_timeout = (0, _setTimeout2.default)((0, _bind.default)(_context6 = this.markAsRead).call(_context6, this), 10000, false);\n } else {\n this.last_read = (0, _now.default)();\n this.flag('highlight', false); // If running under a bouncer, set it on the server-side too\n\n var network = this.getNetwork();\n var allowedUpdate = !network ? false : this.isChannel() || this.isQuery();\n\n if (allowedUpdate && network.connection.bncnetid) {\n network.ircClient.bnc.bufferSeen(network.connection.bncnetid, this.name);\n }\n }\n }\n }, {\n key: \"incrementFlag\",\n value: function incrementFlag(flagName) {\n (0, _flags.default)(this)[flagName] = ((0, _flags.default)(this)[flagName] || 0) + 1;\n }\n }, {\n key: \"addUser\",\n value: function addUser(user) {\n this.addUserBatch(user);\n }\n }, {\n key: \"hasNick\",\n value: function hasNick(nick) {\n var nickLower = nick.toLowerCase();\n return nickLower in this.users || this.isQuery() && this.name.toLowerCase() === nickLower;\n }\n }, {\n key: \"hasMode\",\n value: function hasMode(mode) {\n var _context7;\n\n return (0, _indexOf.default)(_context7 = (0, _keys.default)(this.modes)).call(_context7, mode) > -1;\n }\n }, {\n key: \"shouldShareTyping\",\n value: function shouldShareTyping() {\n var network = this.getNetwork();\n\n if (!this.setting('share_typing')) {\n // Feature disabled\n return false;\n }\n\n if (!this.isChannel() && !this.isQuery()) {\n // Qnly share tying with channels and queries\n return false;\n }\n\n if (this.isChannel() && !this.joined) {\n // Channel is in an unjoined state\n return false;\n }\n\n if (this.hasMode('m') && !this.userMode(network.currentUser())) {\n // Channel is moderated (+m) and we do not have a user mode +v or above\n return false;\n }\n\n return true;\n }\n }, {\n key: \"removeUser\",\n value: function removeUser(nick) {\n var userObj = this.state.getUser(this.networkid, nick); // A user could be queued to be added, so make sure it's not there as it\n // would just be added again. Eg. user joins/parts during a flood\n\n _lodash.default.pull(this.addUserBatch.queue(), userObj);\n\n this.state.$delete(this.users, nick.toLowerCase());\n\n if (userObj) {\n delete userObj.buffers[this.id];\n }\n }\n }, {\n key: \"clearUsers\",\n value: function clearUsers() {\n var _context8,\n _this4 = this;\n\n // Users could be queued to be added, so make sure to clear them as they\n // would just be added again. Eg. user joins/parts during a flood\n this.addUserBatch && (0, _splice.default)(_context8 = this.addUserBatch.queue()).call(_context8, 0);\n\n _lodash.default.each(this.users, function (userObj, nick) {\n delete userObj.buffers[_this4.id];\n });\n\n this.state.$set(this, 'users', {});\n }\n }, {\n key: \"addMessage\",\n value: function addMessage(message) {\n this.addMessageBatch(message);\n }\n }, {\n key: \"updateLatestMessages\",\n value: function updateLatestMessages(message) {\n var _context9,\n _this5 = this;\n\n if (!(0, _includes.default)(_context9 = ['privmsg', 'notice']).call(_context9, message.type)) {\n return;\n }\n\n var isNewer = function isNewer(msg) {\n return _this5.latest_messages[0].time <= msg.time && _this5.latest_messages[0].instance_num < msg.instance_num;\n };\n\n if (!this.latest_messages[0] || isNewer(message)) {\n this.latest_messages.unshift(message);\n }\n\n if (this.latest_messages.length > 5) {\n // restrict array to 5 elements\n this.latest_messages.length = 5;\n }\n }\n }, {\n key: \"getLatestMessage\",\n value: function getLatestMessage() {\n return this.latest_messages[0];\n }\n }, {\n key: \"say\",\n value: function say(message) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var network = this.getNetwork();\n var newMessage = {\n time: (0, _now.default)(),\n nick: network.nick,\n message: message,\n type: opts.type || 'privmsg'\n };\n this.state.addMessage(this, newMessage);\n var fnNames = {\n privmsg: 'say',\n action: 'action',\n notice: 'notice'\n };\n var fnName = fnNames[opts.type] || 'say';\n network.ircClient[fnName](this.name, message);\n }\n }, {\n key: \"join\",\n value: function join() {\n if (!this.isChannel()) {\n return;\n }\n\n var network = this.getNetwork();\n network.ircClient.join(this.name, this.key || '');\n }\n }, {\n key: \"part\",\n value: function part(reason) {\n if (!this.isChannel()) {\n return;\n }\n\n var network = this.getNetwork();\n network.ircClient.part(this.name, reason || '');\n }\n }, {\n key: \"scrollToMessage\",\n value: function scrollToMessage(id) {\n this.state.$emit('messagelist.scrollto', {\n id: id\n });\n }\n }, {\n key: \"getLoadingState\",\n value: function getLoadingState() {\n var networkState = this.getNetwork().state;\n var historySupport = !!this.getNetwork().ircClient.chathistory.isSupported();\n var messagesInBatchQueue = this.addMessageBatch.queue().length; // Hack; We need to make vue aware that we depend on message_count in order to\n // update the loading state.\n // eslint-disable-next-line no-unused-vars\n\n var messageCount = this.message_count;\n\n if (networkState === 'disconnected') {\n return 'disconnected';\n } else if (networkState === 'connecting') {\n return 'connecting';\n } else if (networkState === 'connected' && this.enabled && historySupport && ((0, _flags.default)(this).is_requesting_chathistory || // If chathistory is supported then a request will always be made when first\n // joining a channel. If request_count===0 then we're still waiting for it\n // to happen.\n this.chathistory_request_count === 0 || // keep in loading state while the batch is being processed\n messagesInBatchQueue > 0)) {\n return 'loading';\n }\n\n return 'done';\n }\n }, {\n key: \"isReady\",\n value: function isReady() {\n return this.getLoadingState() === 'done';\n }\n }, {\n key: \"topic\",\n get: function get() {\n return this.topics.length === 0 ? '' : this.topics[this.topics.length - 1];\n },\n set: function set(newVal) {\n this.topics.push(newVal);\n }\n }]);\n return BufferState;\n}();\n/**\n * Batch up floods of addUsers for a huge performance gain.\n * Generally happens when reconnecting to a BNC\n */\n\n\nexports.default = BufferState;\n\nfunction createUserBatch(bufferState) {\n var addSingleUser = function addSingleUser(u) {\n bufferState.state.$set(bufferState.users, u.nick.toLowerCase(), u);\n };\n\n var addMultipleUsers = function addMultipleUsers(users) {\n var o = _lodash.default.clone(bufferState.users);\n\n (0, _forEach.default)(users).call(users, function (u) {\n o[u.nick.toLowerCase()] = u;\n });\n bufferState.users = o;\n };\n\n return (0, _batchedAdd.default)(addSingleUser, addMultipleUsers, 2);\n}\n/**\n * batch up floods of new messages for a huge performance gain\n */\n\n\nfunction createMessageBatch(bufferState) {\n var addSingleMessage = function addSingleMessage(newMessage) {\n if (bufferState.messagesObj.messageIds[newMessage.id]) {\n return;\n }\n\n bufferState.updateLatestMessages(newMessage);\n bufferState.messagesObj.messages.push(newMessage);\n bufferState.messagesObj.messageIds[newMessage.id] = newMessage;\n\n if (bufferState.isMessageTrimming) {\n trimMessages();\n }\n\n bufferTools.orderedMessages(bufferState, {\n inPlace: true,\n noFilter: true\n });\n bufferState.message_count++;\n };\n\n var addMultipleMessages = function addMultipleMessages(newMessages) {\n var toAdd = (0, _filter.default)(newMessages).call(newMessages, function (msg) {\n return !bufferState.messagesObj.messageIds[msg.id];\n });\n\n if (toAdd.length > 0) {\n var _context10;\n\n bufferState.messagesObj.messages = (0, _concat.default)(_context10 = bufferState.messagesObj.messages).call(_context10, toAdd);\n (0, _forEach.default)(toAdd).call(toAdd, function (msg) {\n bufferState.updateLatestMessages(msg);\n bufferState.messagesObj.messageIds[msg.id] = msg;\n });\n\n if (bufferState.isMessageTrimming) {\n trimMessages();\n }\n\n bufferTools.orderedMessages(bufferState, {\n inPlace: true,\n noFilter: true\n });\n } // Trigger Vue's reactivity on the buffer whether messages were added or not, just in case\n // anything was depending on the batch queue which has now been emptied.\n\n\n bufferState.message_count++;\n };\n\n var trimMessages = function trimMessages() {\n var scrollbackSize = bufferState.setting('scrollback_size');\n var length = bufferState.messagesObj.messages.length;\n\n if (bufferState.messagesObj.messages.length > scrollbackSize) {\n var _context11;\n\n var removed = (0, _splice.default)(_context11 = bufferState.messagesObj.messages).call(_context11, 0, length - scrollbackSize);\n (0, _forEach.default)(removed).call(removed, function (msg) {\n return delete bufferState.messagesObj.messageIds[msg.id];\n });\n }\n };\n\n return (0, _batchedAdd.default)(addSingleMessage, addMultipleMessages, 4);\n} // Update our user list status every 30seconds to get each users current away status\n\n\nfunction maybeStartWhoLoop(bufferState) {\n var network = bufferState.state.getNetwork(bufferState.networkid);\n\n if (network.state === 'connected') {\n // network is connected start the loop if its needed\n nextLoop();\n } else {\n // Network is not coonnected. Wait until it is\n var on001 = function on001(command, event, eventNetwork) {\n if (eventNetwork === network) {\n bufferState.state.$off('irc.raw.001', on001);\n nextLoop();\n }\n };\n\n bufferState.state.$on('irc.raw.001', on001);\n }\n\n function nextLoop() {\n (0, _setTimeout2.default)(updateWhoStatusLoop, 30000);\n }\n\n function updateWhoStatusLoop() {\n network = bufferState.state.getNetwork(bufferState.networkid); // Make sure the network still exists\n\n if (!network) {\n return;\n } // Make sure the buffer still exists\n\n\n if (!network.bufferByName(bufferState.name)) {\n return;\n }\n\n var whoLoop = bufferState.setting('who_loop');\n var isJoined = bufferState.joined;\n var hasAwayNotify = network.ircClient.network.cap.isEnabled('away-notify');\n var networkConnected = network.state === 'connected';\n\n if (whoLoop && networkConnected && isJoined && !hasAwayNotify) {\n network.ircClient.who(bufferState.name, function () {\n nextLoop();\n });\n } else {\n nextLoop();\n }\n }\n}","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageInline.vue?vue&type=style&index=0&id=7979fe60&lang=less&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageInline.vue?vue&type=style&index=0&id=7979fe60&lang=less&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KiwiBnc.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KiwiBnc.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar methods = {\n props: {},\n toggleSelfAway: function toggleSelfAway(props) {\n // let props = this.props;\n if (props.isUserSelf) {\n var val = props.user.isAway();\n props.network.ircClient.raw('AWAY', val ? '' : 'Currently away');\n }\n },\n isUserSelf: function isUserSelf(props) {\n // let props = this.props;\n if (props.toggle === false) {\n return false;\n }\n\n var user = (0, _state.default)().getUser(props.network.id, props.network.nick);\n return props.user === user;\n },\n shouldShowStatus: function shouldShowStatus(props) {\n // let props = this.props;\n if (!(0, _state.default)().setting('showAwayStatusIndicators')) {\n return false;\n }\n\n if (props.network.state !== 'connected') {\n return false;\n }\n\n var awayNotifyEnabled = props.network.ircClient.network.cap.isEnabled('away-notify');\n return (0, _state.default)().setting('buffers.who_loop') || awayNotifyEnabled;\n }\n};\nvar _default = {\n props: {\n network: Object,\n user: Object,\n toggle: Boolean\n },\n m: methods\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AwayStatusIndicator\"]\r\nwindow._kiwi_exports.components.AwayStatusIndicator = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = bouncerMiddleware;\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _ircFramework = require(\"irc-framework\");\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\n/**\n * Adds the BOUNCER IRCv3 spec to irc-framework\n */\nfunction bouncerMiddleware() {\n var networks = [];\n var buffers = {};\n return function middleware(client, rawEvents, parsedEvents) {\n client.requestCap('bouncer');\n addFunctionsToClient(client);\n rawEvents.use(theMiddleware);\n };\n\n function theMiddleware(command, message, rawLine, client, next) {\n var _context, _context2, _context3;\n\n if (command !== 'BOUNCER') {\n next();\n return;\n }\n\n var params = message.params;\n\n if (params[0] === 'listnetworks' && (0, _indexOf.default)(_context = ['end', 'RPL_OK']).call(_context, params[1]) > -1) {\n client.command_handler.emit('bouncer networks', networks);\n networks = [];\n } else if (params[0] === 'listnetworks') {\n var tags = _ircFramework.MessageTags.decode(params[2]);\n\n networks.push({\n networkId: params[1],\n name: tags.network,\n host: tags.host,\n port: (0, _parseInt2.default)(tags.port, 10),\n tls: tags.tls === '1',\n connected: tags.state === 'connected',\n nick: tags.nick,\n currentNick: tags.currentNick,\n password: tags.password || '',\n account: tags.account || '',\n account_password: tags.account_password || ''\n });\n } else if (params[0] === 'listbuffers' && (0, _indexOf.default)(_context2 = ['end', 'RPL_OK']).call(_context2, params[2]) > -1) {\n var netId = params[1] || '';\n var detectedBuffers = buffers[netId] || [];\n delete buffers[netId];\n client.command_handler.emit('bouncer buffers', detectedBuffers);\n client.command_handler.emit('bouncer buffers ' + netId, detectedBuffers);\n } else if (params[0] === 'listbuffers') {\n var _netId = params[1] || '';\n\n var _tags = _ircFramework.MessageTags.decode(params[2]);\n\n buffers[_netId] = buffers[_netId] || [];\n\n buffers[_netId].push({\n networkId: _netId,\n network: _tags.network,\n name: _tags.buffer,\n topic: _tags.topic,\n joined: _tags.joined === '1',\n seen: _tags.seen,\n notify: _tags.notify || 'highlight'\n });\n } else if (params[0] === 'state') {\n client.command_handler.emit('bouncer state', {\n networkId: params[1],\n network: params[2],\n state: params[3]\n });\n } // BOUNCER addnetwork NetID Network1 ERR_NAMEINUSE\n\n\n if (params[0] === 'addnetwork' && params[3].substr(0, 4) === 'ERR_') {\n var netName = (params[2] || '').toLowerCase();\n var eventObj = {\n error: params[3],\n reason: params[4] || ''\n };\n client.command_handler.emit('bouncer addnetwork error', eventObj);\n client.command_handler.emit('bouncer addnetwork error ' + netName, eventObj);\n } else if (params[0] === 'addnetwork' && (0, _indexOf.default)(_context3 = ['end', 'RPL_OK']).call(_context3, params[3]) > -1) {\n // BOUNCER addnetwork 5 Network1 RPL_OK\n var _netId2 = params[1] || '';\n\n var _netName = (params[2] || '').toLowerCase();\n\n var _eventObj = {\n networkId: _netId2,\n network: _netName\n };\n client.command_handler.emit('bouncer addnetwork ok', _eventObj);\n client.command_handler.emit('bouncer addnetwork ok ' + _netName, _eventObj);\n }\n }\n}\n\nfunction addFunctionsToClient(client) {\n var bnc = client.bnc = {};\n\n bnc.tags = function tags() {\n var token = client.network.supports('bouncer');\n return !token || typeof token !== 'string' ? {} : _ircFramework.MessageTags.decode(token) || {};\n };\n\n bnc.hasNetwork = function hasNetwork() {\n var token = client.network.supports('bouncer');\n\n if (!token || token === true) {\n return false;\n }\n\n var tags = _ircFramework.MessageTags.decode(token);\n\n return tags && !!tags.network;\n };\n\n bnc.getNetworks = function getNetworks() {\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER listnetworks');\n client.once('bouncer networks', function (networks) {\n resolve(networks);\n });\n });\n };\n\n bnc.getBuffers = function getBuffers(netId) {\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER listbuffers ' + netId);\n client.once('bouncer buffers ' + netId, function (buffers) {\n resolve(buffers);\n });\n });\n };\n\n bnc.closeBuffer = function closeBuffer(netId, bufferName) {\n return new _promise.default(function (resolve, reject) {\n var _context4;\n\n client.raw((0, _concat.default)(_context4 = \"BOUNCER delbuffer \".concat(netId, \" \")).call(_context4, bufferName));\n });\n };\n\n bnc.bufferSeen = function bufferSeen(netId, bufferName, seenTime) {\n return new _promise.default(function (resolve, reject) {\n var _context5, _context6;\n\n // 1 tells the bouncer to use the current time\n var timeStr = seenTime ? Misc.dateIso(seenTime) : '1';\n client.raw((0, _concat.default)(_context5 = (0, _concat.default)(_context6 = \"BOUNCER changebuffer \".concat(netId, \" \")).call(_context6, bufferName, \" seen=\")).call(_context5, timeStr));\n });\n };\n\n bnc.addNetwork = function addNetwork(netName, host, port, tls, nick, user, password) {\n var tags = {};\n tags.network = netName;\n tags.host = host;\n tags.port = port;\n tags.tls = tls ? 1 : 0;\n tags.nick = nick;\n tags.password = password;\n\n if (user) {\n tags.user = user;\n }\n\n var tagString = createTagString(tags);\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER addnetwork ' + tagString);\n client.once('bouncer addnetwork ok ' + netName.toLowerCase(), onOk);\n client.once('bouncer addnetwork error', onError);\n\n function onOk(event) {\n client.off('bouncer addnetwork error', onError);\n resolve(event);\n }\n\n function onError(event) {\n client.off('bouncer addnetwork ok ' + netName.toLowerCase(), onOk);\n reject({\n error: event.error,\n reason: event.reason\n });\n }\n });\n };\n\n bnc.removeNetwork = function removeNetwork(netId, bufferName) {\n return new _promise.default(function (resolve, reject) {\n client.raw(\"BOUNCER delnetwork \".concat(netId));\n });\n };\n\n bnc.saveNetwork = function saveNetwork(netId, opts) {\n var tags = {};\n\n if (typeof opts.network !== 'undefined') {\n tags.network = opts.network;\n }\n\n if (typeof opts.host !== 'undefined') {\n tags.host = opts.host;\n }\n\n if (typeof opts.port !== 'undefined') {\n tags.port = opts.port;\n }\n\n if (typeof opts.tls !== 'undefined') {\n tags.tls = opts.tls ? 1 : 0;\n }\n\n if (typeof opts.nick !== 'undefined') {\n tags.nick = opts.nick;\n }\n\n if (typeof opts.user !== 'undefined') {\n tags.user = opts.user;\n }\n\n if (typeof opts.password !== 'undefined') {\n tags.password = opts.password;\n }\n\n if (typeof opts.account_password !== 'undefined') {\n tags.account_password = opts.account_password;\n }\n\n if (typeof opts.account !== 'undefined') {\n tags.account = opts.account;\n }\n\n var tagString = createTagString(tags);\n return new _promise.default(function (resolve, reject) {\n if (tagString.length === 0) {\n resolve();\n } else {\n var _context7;\n\n client.raw((0, _concat.default)(_context7 = \"BOUNCER changenetwork \".concat(netId, \" \")).call(_context7, tagString));\n }\n });\n };\n}\n\nfunction createTagString(tags) {\n var _context8;\n\n var tagParts = [];\n (0, _forEach.default)(_context8 = (0, _keys.default)(tags)).call(_context8, function (tag) {\n var val = tags[tag];\n\n if (typeof val !== 'undefined') {\n val = val.toString().replace(' ', '\\\\s').replace(';', '\\\\:');\n tagParts.push(tag + '=' + val);\n } else {\n tagParts.push(tag);\n }\n });\n return tagParts.join(';');\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"BouncerMiddleware\"]\r\nwindow._kiwi_exports.libs.BouncerMiddleware = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerView.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-inputtool-emoji\"},[_c('div',{staticClass:\"kiwi-inputtool-emoji-palette\",on:{\"mousedown\":function($event){$event.preventDefault();},\"click\":function($event){$event.preventDefault();}}},_vm._l((_vm.emojis),function(text,eCode){return _c('div',{key:eCode,staticClass:\"kiwi-inputtool-emoji-emoji\",style:({'background-image':(\"url(\" + _vm.location + eCode + \".png)\")}),attrs:{\"data-code\":text + ' '},on:{\"click\":_vm.onImgClick}})}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=style&index=0&lang=css&\"","var render = function (_h,_vm) {\nvar _obj;\nvar _c=_vm._c;return (_vm.$options.m.shouldShowStatus(_vm.props))?_c('span',{staticClass:\"kiwi-awaystatusindicator\",class:( _obj = {\n 'kiwi-awaystatusindicator--away': _vm.props.user && _vm.props.user.isAway(),\n 'kiwi-awaystatusindicator--self': _vm.$options.m.isUserSelf(_vm.props)\n }, _obj[_vm.data.staticClass] = true, _obj ),on:{\"click\":function($event){return _vm.$options.m.toggleSelfAway(_vm.props)}}}):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-notconnected kiwi-warning-block\",class:{ connecting: _vm.shouldShowLoading }},[(!_vm.shouldShowLoading)?[_c('div',{staticClass:\"kiwi-notconnected-caption\"},[_c('span',[_vm._v(_vm._s(_vm.$t('not_connected')))]),(!_vm.shouldShowLoading)?_c('i',{staticClass:\"fa fa-frown-o\",attrs:{\"aria-hidden\":\"true\"}}):_vm._e()]),_c('div',{staticClass:\"kiwi-notconnected-buttons\"},[(_vm.isChannel())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_channel', {channel: _vm.buffer.name}))+\" \")])]:(_vm.isServer())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_network', {network: _vm.buffer.getNetwork().name}))+\" \")])]:(_vm.isQuery())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_query', {user: _vm.buffer.name}))+\" \")])]:_vm._e(),(!_vm.restrictedServer)?_c('a',{staticClass:\"kiwi-notconnected-button kiwi-notconnected-button-settings\",on:{\"click\":_vm.showNetworkSettings}},[_c('i',{staticClass:\"fa fa-cogs\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e()],2)]:_c('div',{staticClass:\"kiwi-notconnected-caption\"},[_vm._v(\" \"+_vm._s(_vm.$t('connecting'))+\" \"),_c('i',{staticClass:\"fa fa-refresh fa-spin kiwi-notconnected-bigicon\",attrs:{\"aria-hidden\":\"true\"}})]),_c('captcha',{staticClass:\"kiwi-notconnected-captcha\",attrs:{\"network\":_vm.network}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NicklistUser.vue?vue&type=template&id=f1a1d6b2&functional=true&\"\nimport script from \"./NicklistUser.vue?vue&type=script&lang=js&\"\nexport * from \"./NicklistUser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NicklistUser.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./TypingUsersList.vue?vue&type=template&id=59987590&\"\nimport script from \"./TypingUsersList.vue?vue&type=script&lang=js&\"\nexport * from \"./TypingUsersList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n data: function data() {\n return {\n closing: false\n };\n },\n computed: {\n backgroundStyle: function backgroundStyle() {\n var style = {};\n var options = this.$state.settings.startupOptions;\n\n if (options.infoBackground) {\n style['background-image'] = \"url(\".concat(options.infoBackground, \")\");\n }\n\n return style;\n },\n backgroundImage: function backgroundImage() {\n return this.$state.settings.startupOptions.infoBackground || '';\n },\n infoContent: function infoContent() {\n return this.$state.settings.startupOptions.infoContent || '';\n }\n },\n methods: {\n close: function close() {\n var _this = this;\n\n this.closing = true;\n\n var startApp = function startApp(event) {\n _this.$el.removeEventListener('transitionend', startApp);\n\n _this.$state.persistence.watchStateForChanges(); // Hacky to be using $parent but this component should only be used in a sepcific\n // scope within startup screens\n\n\n _this.$parent.$emit('start');\n };\n\n this.$el.addEventListener('transitionend', startApp, false);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"CommonLayout\"]\r\nwindow._kiwi_exports.components.startups.CommonLayout = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-wrap kiwi-theme-bg\",class:{\n 'kiwi-wrap--statebrowser-drawopen': _vm.stateBrowserDrawOpen,\n 'kiwi-wrap--monospace': _vm.$state.setting('useMonospace'),\n 'kiwi-wrap--touch': _vm.$state.ui.is_touch,\n },attrs:{\"data-activebuffer\":_vm.buffer ? _vm.buffer.name.toLowerCase() : ''},on:{\"click\":_vm.emitDocumentClick,\"!paste\":function($event){return _vm.emitBufferPaste($event)}}},[_c('link',{attrs:{\"href\":_vm.themeUrl,\"rel\":\"stylesheet\",\"type\":\"text/css\"}}),(!_vm.hasStarted || (!_vm.fallbackComponent && _vm.networks.length === 0))?[_c(_vm.startupComponent,{tag:\"component\",on:{\"start\":_vm.startUp}})]:[_c('state-browser',{attrs:{\"networks\":_vm.networks,\"sidebar-state\":_vm.sidebarState}}),_c('div',{staticClass:\"kiwi-workspace\",class:{\n 'kiwi-workspace--disconnected': _vm.network && _vm.network.state !== 'connected'\n },on:{\"click\":function($event){_vm.stateBrowserDrawOpen = false}}},[_c('div',{staticClass:\"kiwi-workspace-background\"}),(!_vm.activeComponent && _vm.network)?[_c('container',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState},scopedSlots:_vm._u([(_vm.mediaviewerOpen)?{key:\"before\",fn:function(){return [_c('media-viewer',{staticClass:\"kiwi-main-mediaviewer\",attrs:{\"url\":_vm.mediaviewerUrl,\"component\":_vm.mediaviewerComponent,\"component-props\":_vm.mediaviewerComponentProps,\"is-iframe\":_vm.mediaviewerIframe},on:{\"close\":function($event){return _vm.$state.$emit('mediaviewer.hide', { source: 'user' });}}})]},proxy:true}:null],null,true)}),(_vm.buffer.show_input)?_c('control-input',{attrs:{\"container\":_vm.networks,\"buffer\":_vm.buffer}}):_vm._e()]:(!_vm.activeComponent)?_c(_vm.fallbackComponent,_vm._b({tag:\"component\"},'component',_vm.fallbackComponentProps,false)):_c(_vm.activeComponent,_vm._b({tag:\"component\"},'component',_vm.activeComponentProps,false))],2)]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _about = _interopRequireDefault(require(\"./about.html\"));\n\nvar firstRun = true;\nvar ctor = {\n data: function data() {\n return {\n about_open: false\n };\n },\n computed: {\n networks: function networks() {\n return this.$state.networks;\n },\n aboutContent: function aboutContent() {\n return _about.default;\n }\n },\n methods: {\n addNetwork: function addNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n network.showServerBuffer('settings');\n },\n toggleStateBrowser: function toggleStateBrowser() {\n this.$state.$emit('statebrowser.show');\n },\n init: function init() {\n var _this = this;\n\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.$state.persistence.watchStateForChanges();\n\n _this.$emit('start', {\n fallbackComponent: _this.constructor\n });\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n },\n created: function () {\n var _created = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (firstRun) {\n this.init();\n firstRun = false;\n }\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function created() {\n return _created.apply(this, arguments);\n }\n\n return created;\n }()\n};\nvar _default = ctor;\nexports.default = _default;\n(0, _state.default)().getStartups().kiwiirccom = ctor;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"thirdparty\"]) window._kiwi_exports[\"thirdparty\"] = {};\nwindow._kiwi_exports[\"thirdparty\"][\"kiwiirccom\"]\r\nwindow._kiwi_exports.thirdparty.kiwiirccom = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channelinfo\"},[_c('form',{staticClass:\"u-form kiwi-channelinfo-basicmodes\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('label',{staticClass:\"kiwi-channelinfo-topic\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_topic')))]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(_vm.topic),expression:\"topic\",modifiers:{\"lazy\":true}}],attrs:{\"rows\":\"2\"},domProps:{\"value\":(_vm.topic)},on:{\"change\":function($event){_vm.topic=$event.target.value}}})]),(_vm.buffer.topics.length > 1)?_c('div',{staticClass:\"kiwi-channelinfo-previoustopics\"},[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){_vm.showPrevTopics = !_vm.showPrevTopics}}},[_vm._v(\" Previous topics \"),_c('i',{class:'fa fa-caret-' + (_vm.showPrevTopics ? 'up' : 'down')})]),(_vm.showPrevTopics)?_c('ul',_vm._l((_vm.prevTopics),function(topicText,idx){return _c('li',{key:idx},[_c('span',[_vm._v(_vm._s(topicText.trim()))])])}),0):_vm._e()]):_vm._e(),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_moderated')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeM),expression:\"modeM\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeM)?_vm._i(_vm.modeM,null)>-1:(_vm.modeM)},on:{\"change\":function($event){var $$a=_vm.modeM,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeM=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeM=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeM=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_invite')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeI),expression:\"modeI\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeI)?_vm._i(_vm.modeI,null)>-1:(_vm.modeI)},on:{\"change\":function($event){var $$a=_vm.modeI,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeI=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeI=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeI=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_moderated_topic')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeT),expression:\"modeT\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeT)?_vm._i(_vm.modeT,null)>-1:(_vm.modeT)},on:{\"change\":function($event){var $$a=_vm.modeT,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeT=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeT=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeT=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_external')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeN),expression:\"modeN\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeN)?_vm._i(_vm.modeN,null)>-1:(_vm.modeN)},on:{\"change\":function($event){var $$a=_vm.modeN,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeN=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeN=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeN=$$c}}}})]),_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('password')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(_vm.modeK),expression:\"modeK\",modifiers:{\"lazy\":true}}],staticClass:\"u-input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.modeK)},on:{\"change\":function($event){_vm.modeK=$event.target.value}}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setInterval2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-interval\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar WindowTitle = /*#__PURE__*/function () {\n function WindowTitle(state) {\n var _this = this;\n\n (0, _classCallCheck2.default)(this, WindowTitle);\n this.state = state;\n this.title = state.settings.windowTitle || '';\n this.alert = false; // Update the window title if we have one\n\n if (state.settings.windowTitle) {\n this.updateTitle();\n }\n\n state.$watch('settings.windowTitle', function (newVal) {\n _this.updateTitle(newVal);\n });\n state.$watch('ui.app_has_focus', function (newVal) {\n if (newVal && _this.alertTmr) {\n _this.stopAlert();\n }\n });\n state.$on('notification.title', function (enable) {\n if (enable) {\n _this.startAlert();\n } else {\n _this.stopAlert();\n }\n });\n }\n\n (0, _createClass2.default)(WindowTitle, [{\n key: \"startAlert\",\n value: function startAlert() {\n var _this2 = this;\n\n if (this.alertTmr) {\n return;\n }\n\n this.alertTmr = (0, _setInterval2.default)(function () {\n _this2.updateTitle();\n }, 1000);\n }\n }, {\n key: \"stopAlert\",\n value: function stopAlert() {\n if (this.alertTmr) {\n clearInterval(this.alertTmr);\n this.alertTmr = null;\n }\n\n this.updateTitle();\n }\n }, {\n key: \"updateTitle\",\n value: function updateTitle(newTitle) {\n if (typeof newTitle === 'string') {\n this.title = newTitle;\n }\n\n if (this.alertTmr && !this.alert) {\n window.document.title = '* ' + this.title;\n this.alert = true;\n } else {\n window.document.title = this.title;\n this.alert = false;\n }\n }\n }]);\n return WindowTitle;\n}();\n\nexports.default = WindowTitle;","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['network'],\n data: function data() {\n return {\n is_usermenu_open: false\n };\n },\n computed: {\n userInitial: function userInitial() {\n var initial = 'U';\n\n if (this.network && this.network.nick) {\n initial = this.network.nick.charAt(0).toUpperCase();\n }\n\n return initial;\n },\n networkName: function networkName() {\n var name = TextFormatting.t('no_network');\n\n if (this.network) {\n name = this.network.name;\n }\n\n return name;\n },\n getUser: function getUser() {\n return this.network ? this.network.currentUser() : null;\n },\n isConnected: function isConnected() {\n return this.network && this.network.state === 'connected';\n }\n },\n methods: {\n clickForget: function clickForget() {\n var msg = 'This will delete all stored networks and start fresh. Are you sure?';\n /* eslint-disable no-restricted-globals, no-alert */\n\n var confirmed = confirm(msg);\n\n if (!confirmed) {\n return;\n }\n\n this.$state.persistence.forgetState();\n window.location.reload();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowserUsermenu\"]\r\nwindow._kiwi_exports.components.StateBrowserUsermenu = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\n/**\n * Command input Alias + re-writing\n *\n * Variables used in aliases:\n * - $0 = the command being run\n * - $1 = first param of input\n * - $N = Nth param of input\n * - $1+2 = first param of input and the next 2 words\n * - $2+4 = second param of input and the next 4 words\n * - $2+ = second param of input and all words after\n * - $variable = variable as set in the vars object\n */\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar AliasRewriter = /*#__PURE__*/function () {\n function AliasRewriter() {\n (0, _classCallCheck2.default)(this, AliasRewriter);\n // Max alias recursion depth\n this.recursiveDepth = 3; // Current alias recursion depth\n\n this.depth = 0;\n this.aliases = {};\n }\n /** Reset the current aliases object from a newline delimited string of aliases */\n\n\n (0, _createClass2.default)(AliasRewriter, [{\n key: \"importFromString\",\n value: function importFromString(str) {\n var _context,\n _this = this;\n\n // Clear out the current aliases before adding new ones in\n this.aliases = {};\n (0, _forEach.default)(_context = str.split('\\n')).call(_context, function (line) {\n var _context2;\n\n if (line[0] !== '/') {\n return;\n }\n\n var spaceSep = (0, _indexOf.default)(line).call(line, ' ');\n\n if (spaceSep === -1) {\n return;\n }\n\n var command = line.substring(0, spaceSep);\n var actions = (0, _trim.default)(_context2 = line.substring(spaceSep + 1)).call(_context2);\n\n if (!actions) {\n return;\n }\n\n _this.aliases[command.toLowerCase()] = actions;\n });\n } // Takes an array of words to process!\n\n }, {\n key: \"processInput\",\n value: function processInput(input, vars) {\n var words = input || [];\n var alias = this.aliases[words[0].toLowerCase()];\n var aliasLen;\n var currentAliasWord = '';\n var currentAliasWordLen = 0;\n var processedConditionals = false;\n var compiled = []; // If an alias wasn't found, return the original input\n\n if (!alias) return input; // Split the alias up into useable words\n\n alias = alias.split(' ');\n aliasLen = alias.length; // Iterate over each word and pop them into the final compiled array.\n // Any $ words are processed with the result ending into the compiled array.\n\n for (var i = 0; i < aliasLen; i++) {\n currentAliasWord = alias[i];\n currentAliasWordLen = currentAliasWord.length; // $var? word makes this command only run if the var exists\n\n if (!processedConditionals && currentAliasWord[0] === '$' && currentAliasWord[currentAliasWordLen - 1] === '?') {\n var checkVar = currentAliasWord.substr(1, currentAliasWordLen - 2);\n\n if (!vars[checkVar]) {\n compiled = [];\n break;\n } else {\n continue;\n }\n } else {\n processedConditionals = true;\n } // Non $ word\n\n\n if (currentAliasWord[0] !== '$') {\n compiled.push(currentAliasWord);\n continue;\n } // Refering to an input word ($N)\n\n\n if ((currentAliasWord[1] || '').match(/\\d/)) {\n var num = currentAliasWord.match(/\\$(\\d+)(\\+)?(\\d+)?/); // Did we find anything or does the word it refers to non-existant?\n\n if (!num || !words[num[1]]) continue;\n\n if (num[2] === '+' && num[3]) {\n // Add X number of words\n compiled = (0, _concat.default)(compiled).call(compiled, (0, _slice.default)(words).call(words, (0, _parseInt2.default)(num[1], 10), (0, _parseInt2.default)(num[1], 10) + (0, _parseInt2.default)(num[3], 10)));\n } else if (num[2] === '+') {\n // Add the remaining of the words\n compiled = (0, _concat.default)(compiled).call(compiled, (0, _slice.default)(words).call(words, (0, _parseInt2.default)(num[1], 10)));\n } else {\n // Add a single word\n compiled.push(words[(0, _parseInt2.default)(num[1], 10)]);\n }\n\n continue;\n } // Refering to a variable\n\n\n if (typeof vars[currentAliasWord.substr(1)] !== 'undefined') {\n // Get the variable\n compiled.push(vars[currentAliasWord.substr(1)]);\n continue;\n }\n }\n\n return compiled;\n }\n /** Take a string input, process any aliases and output the finalised string */\n\n }, {\n key: \"process\",\n value: function process(input, vars) {\n var line = input || '';\n var words = line.split(' ');\n var firstWord = (words[0] || '').toLowerCase();\n this.depth++;\n\n if (this.depth >= this.recursiveDepth) {\n this.depth--;\n return line;\n }\n\n if (this.aliases[firstWord]) {\n words = this.processInput(words, vars);\n firstWord = (words[0] || '').toLowerCase();\n\n if (this.aliases[firstWord]) {\n words = this.process(words.join(' '), vars).split(' ');\n }\n }\n\n this.depth--;\n return words.join(' ');\n }\n }]);\n return AliasRewriter;\n}();\n\nexports.default = AliasRewriter;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"AliasRewriter\"]\r\nwindow._kiwi_exports.libs.AliasRewriter = exports.default ? exports.default : exports;\r\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _MediaViewer = _interopRequireDefault(require(\"./MediaViewer\"));\n\nvar _MessageInfo = _interopRequireDefault(require(\"./MessageInfo\"));\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar methods = {\n props: {},\n displayNick: function displayNick() {\n var props = this.props;\n var suffix = props.message.nick ? ':' : '';\n return props.message.nick + suffix;\n },\n userMode: function userMode(user) {\n var props = this.props;\n return props.ml.buffer.userMode(user);\n },\n userModePrefix: function userModePrefix(user) {\n var props = this.props;\n return props.ml.buffer.userModePrefix(user);\n }\n};\nvar _default = {\n inject: {\n components: {\n default: {\n MessageInfo: _MessageInfo.default,\n MediaViewer: _MediaViewer.default\n }\n }\n },\n props: {\n ml: Object,\n message: Object,\n idx: Number,\n m: {\n default: function m() {\n // vue uses this function to generate the prop. `this`==null Return our own function\n return function n() {\n // Give our methods some props context before its function is called.\n // This is only safe because the function on the methods object is called on\n // the same js tick\n methods.props = this;\n return methods;\n };\n }\n }\n }\n};\nexports.default = _default;","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBox.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _default = {\n props: ['network', 'buffer', 'sidebarState'],\n data: function data() {\n return {\n pluginUiSections: _GlobalApi.default.singleton().aboutBufferPlugins,\n closedSections: {}\n };\n },\n computed: {\n b: function b() {\n return this.buffer || {};\n },\n formattedTopic: function formattedTopic() {\n var blocks = (0, _MessageParser.default)(this.b.topic || '', {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n highlights: function highlights() {\n var _context, _context2, _context3, _context4, _context5, _context6;\n\n // Tap into buffer.message_count to force vuejs to update this function when\n // it changes\n\n /* eslint-disable no-unused-vars */\n var tmp = this.buffer.message_count;\n return (0, _sort.default)(_context = (0, _filter.default)(_context2 = (0, _filter.default)(_context3 = (0, _filter.default)(_context4 = (0, _filter.default)(_context5 = (0, _filter.default)(_context6 = this.buffer.getMessages()).call(_context6, function (m) {\n return m.isHighlight;\n })).call(_context5, function (m) {\n return m.type !== 'traffic';\n })).call(_context4, function (m) {\n return m.type !== 'topic';\n })).call(_context3, function (m) {\n return m.type !== 'mode';\n })).call(_context2, function (m) {\n return m.html;\n })).call(_context, function (a, b) {\n return b.time - a.time;\n });\n }\n },\n methods: {\n toggleSection: function toggleSection(section) {\n this.$set(this.closedSections, section, !this.closedSections[section]);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"SidebarAboutBuffer\"]\r\nwindow._kiwi_exports.components.SidebarAboutBuffer = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n props: ['error']\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StartupError\"]\r\nwindow._kiwi_exports.components.StartupError = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=script&lang=js&\"","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/getPrototypeOf\"));\n\nvar _eventemitter = _interopRequireDefault(require(\"eventemitter3\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _compareVersions = _interopRequireDefault(require(\"compare-versions\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Logger = _interopRequireDefault(require(\"./Logger\"));\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = (0, _construct.default)(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !_construct.default) return false; if (_construct.default.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call((0, _construct.default)(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar singletonInstance = null;\nvar pluginsToInit = [];\nvar nextPluginId = 0;\n/** The global kiwi API instance */\n\nvar GlobalApi = /*#__PURE__*/function (_EventEmitter) {\n (0, _inherits2.default)(GlobalApi, _EventEmitter);\n\n var _super = _createSuper(GlobalApi);\n\n function GlobalApi() {\n var _this;\n\n (0, _classCallCheck2.default)(this, GlobalApi);\n _this = _super.call(this); // eslint-disable-next-line no-undef\n\n _this.version = __VERSION__;\n /** A reference to the internal Vuejs instance */\n\n _this.Vue = _vue.default;\n /** Expose JSON5 so that plugins can use the same config format */\n\n _this.JSON5 = _json.default;\n /** The applications internal state */\n\n _this.state = null;\n /** The applications ThemeManager */\n\n _this.themes = null;\n _this.controlInputPlugins = [];\n _this.stateBrowserPlugins = [];\n _this.channelHeaderPlugins = [];\n _this.queryHeaderPlugins = [];\n _this.sideBarPlugins = [];\n _this.appSettingsPlugins = [];\n _this.serverViewPlugins = [];\n _this.aboutBufferPlugins = [];\n _this.tabs = (0, _create.default)(null);\n _this.isReady = false;\n /* eslint-disable no-underscore-dangle */\n\n _this.exports = window._kiwi_exports || {};\n\n _this.on('init', function () {\n _this.isReady = true;\n\n _this.initPlugins();\n });\n\n return _this;\n }\n\n (0, _createClass2.default)(GlobalApi, [{\n key: \"versionMatches\",\n value: function versionMatches(v) {\n return (0, _compareVersions.default)(this.version, v) >= 0;\n }\n /**\n * Register a plugin with kiwi\n *\n * Plugins being loaded at startup will be registered once Kiwi is ready. At any\n * other point the plugin will be registered instantly\n * @param {String} pluginName The name of this plugin\n * @param {Function} fn A callback function to start the plugin. function(kiwi, logger)\n */\n\n }, {\n key: \"plugin\",\n value: function plugin(pluginName, fn) {\n var plugin = {\n name: pluginName,\n fn: fn\n };\n\n if (this.isReady) {\n this.initPlugin(plugin);\n } else {\n pluginsToInit.push(plugin);\n }\n } // Init any plugins that were added before we were ready\n\n }, {\n key: \"initPlugins\",\n value: function initPlugins() {\n var _this2 = this;\n\n (0, _forEach.default)(pluginsToInit).call(pluginsToInit, function (plugin) {\n return _this2.initPlugin(plugin);\n });\n pluginsToInit = [];\n }\n }, {\n key: \"initPlugin\",\n value: function initPlugin(plugin) {\n var pluginLogger = _Logger.default.namespace(\"Plugin \".concat(plugin.name));\n\n try {\n plugin.fn(this, pluginLogger);\n this.state.$emit('plugin.loaded', {\n name: plugin.name\n });\n } catch (err) {\n pluginLogger.error(err.stack);\n }\n }\n /**\n * Get a reference to an internal Kiwi module\n *\n * E.g. require('helpers/TextFormatting');\n * @param {String} mod The module path\n */\n\n }, {\n key: \"require\",\n value: function require(modPath) {\n var path = modPath.replace(/\\//g, '.');\n\n var mod = _lodash.default.get(this.exports, path);\n\n if (typeof mod === 'undefined') {\n _Logger.default.error('Module does not exist: ' + modPath);\n }\n\n return mod;\n }\n }, {\n key: \"setState\",\n value: function setState(state) {\n var _this3 = this;\n\n this.state = state; // Hacky, but since Vues emitter doesnt support 'all', hijack its $emit call\n // so that we can forward the event on to plugins\n\n var stateEmit = this.state.$emit;\n var thisEmit = this.emit;\n\n this.state.$emit = function () {\n var _context3;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n try {\n var _context, _context2;\n\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context = [_this3, 'all', args[0]]).call(_context, (0, _toConsumableArray2.default)((0, _slice.default)(args).call(args, 1))));\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context2 = [_this3]).call(_context2, args));\n } catch (err) {\n _Logger.default.error(err.stack);\n }\n\n return stateEmit.call.apply(stateEmit, (0, _concat.default)(_context3 = [_this3.state]).call(_context3, args));\n }; // Let plugins emit events into the internal state\n\n\n this.emit = function () {\n var _context4, _context5;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n stateEmit.call.apply(stateEmit, (0, _concat.default)(_context4 = [_this3.state]).call(_context4, args));\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context5 = [_this3]).call(_context5, args));\n };\n }\n }, {\n key: \"setThemeManager\",\n value: function setThemeManager(themeManager) {\n this.themes = themeManager;\n }\n /**\n * Change the logging level output\n * @param {number} newLevel The new logging level\n */\n\n }, {\n key: \"logLevel\",\n value: function logLevel(newLevel) {\n _Logger.default.setLevel(newLevel);\n }\n }, {\n key: \"addUi\",\n\n /**\n * Add a DOM element to different parts of the Kiwi UI\n * - addUi('input', domElement)\n * - addUi('browser', domElement)\n * - addUi('header_channel', domElement)\n * - addUi('header_query', domElement)\n * @param {string} type Where this DOM element should be added\n * @param {element} element The HTML element to add\n * @param {object} args Optional arguments for this plugis\n */\n value: function addUi(type, element) {\n var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var plugin = {\n el: element,\n id: nextPluginId++,\n args: args\n };\n\n switch (type) {\n case 'input':\n this.controlInputPlugins.push(plugin);\n break;\n\n case 'browser':\n this.stateBrowserPlugins.push(plugin);\n break;\n\n case 'header_channel':\n this.channelHeaderPlugins.push(plugin);\n break;\n\n case 'header_query':\n this.queryHeaderPlugins.push(plugin);\n break;\n\n case 'about_buffer':\n this.aboutBufferPlugins.push(plugin);\n break;\n\n default:\n break;\n }\n }\n /**\n * Add a Vue component as a tab to different tabbed views in the Kiwi API\n * - addTab('channel', 'title', component, props)\n * - addTab('settings', 'title', component, props)\n * - addTab('server', 'title', component, props)\n * @param {String} type The type of tab to add. This determines where it will be shown\n * @param {String} title The title shown on the tab\n * @param {Component} component The vuejs component that is displayed for this tab\n * @param {Object} props Optional properties for the vuejs component\n */\n\n }, {\n key: \"addTab\",\n value: function addTab(type, title, component, props) {\n var plugin = {\n id: nextPluginId++,\n title: title,\n component: component,\n props: props\n };\n\n switch (type) {\n case 'channel':\n this.sideBarPlugins.push(plugin);\n break;\n\n case 'settings':\n this.appSettingsPlugins.push(plugin);\n break;\n\n case 'server':\n this.serverViewPlugins.push(plugin);\n break;\n\n default:\n break;\n }\n }\n /**\n * Register a Vue component that may be shown in future. It is shown over the entire\n * client alongside the StateBrowser\n * @param {String} name A name to reference this view in future\n * @param {Component} component The vuejs component to create the view\n * @param {Object} props Optional properties the the vuejs component\n */\n\n }, {\n key: \"addView\",\n value: function addView(name, component, props) {\n this.tabs[name] = {\n id: nextPluginId++,\n component: _vue.default.extend(component),\n props: props || {}\n };\n }\n /**\n * Show a previously registered view\n * @param {String} name The name of previously registered view to show\n */\n\n }, {\n key: \"showView\",\n value: function showView(name) {\n // null disables any active component and reverts the UI back to the buffers\n var tab = this.tabs[name];\n\n if (tab) {\n this.state.$emit('active.component', tab.component, tab.props);\n } else {\n this.state.$emit('active.component', null);\n }\n }\n /**\n * Show a Vuejs component in the sidebar\n * @param {Object} component The vuejs component to render\n */\n\n }, {\n key: \"showInSidebar\",\n value: function showInSidebar(component) {\n this.state.$emit('sidebar.component', component);\n }\n /**\n * Add a custom startup screen that may be loaded by the configuration file\n * @param {String} name The name of this startup screen\n * @param {Object} ctor The constructor object for the vuejs component\n */\n\n }, {\n key: \"addStartup\",\n value: function addStartup(name, ctor) {\n var startups = this.state.getStartups();\n startups[name] = ctor;\n }\n /**\n *\n * @param {String} dest The module path to replace\n * @param {Object} source The new module to insert in place\n */\n\n }, {\n key: \"replaceModule\",\n value: function replaceModule(dest, source) {\n var mod = this.require(dest);\n\n if (!mod) {\n throw new Error(\"The module \".concat(dest, \" does not exist\"));\n }\n\n Misc.replaceObjectProps(mod, source);\n }\n }, {\n key: \"log\",\n get: function get() {\n return _Logger.default;\n }\n }], [{\n key: \"singleton\",\n value: function singleton() {\n singletonInstance = singletonInstance || new GlobalApi();\n return singletonInstance;\n }\n }]);\n return GlobalApi;\n}(_eventemitter.default);\n\nexports.default = GlobalApi;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"GlobalApi\"]\r\nwindow._kiwi_exports.libs.GlobalApi = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingStatusIndicator.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingStatusIndicator.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nvar log = _Logger.default.namespace('Startup/kiwiBnc');\n\nvar _default = {\n components: {\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n loading: false,\n username: '',\n password: '',\n statusMessage: ''\n };\n },\n computed: {\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n buttonText: function buttonText() {\n if (this.loading) {\n return '';\n }\n\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n }\n },\n methods: {\n startUp: function () {\n var _startUp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _this = this;\n\n var bncnet, cleanUpEvents, onRegistered, onError, onClose;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n this.statusMessage = this.$t('logging_in');\n this.loading = true;\n bncnet = this.getBncNetwork();\n\n cleanUpEvents = function cleanUpEvents() {\n bncnet.ircClient.off('registered', onRegistered);\n bncnet.ircClient.off('irc error', onError);\n bncnet.ircClient.off('close', onClose);\n };\n\n onRegistered = /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var bncNetworks, i, network, buffers;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n cleanUpEvents();\n _context.next = 3;\n return bncnet.ircClient.bnc.getNetworks();\n\n case 3:\n bncNetworks = _context.sent;\n i = 0;\n\n case 5:\n if (!(i < bncNetworks.length)) {\n _context.next = 22;\n break;\n }\n\n network = bncNetworks[i];\n network.buffers = [];\n _context.prev = 8;\n _context.next = 11;\n return bncnet.ircClient.bnc.getBuffers(network.name);\n\n case 11:\n buffers = _context.sent;\n network.buffers = buffers;\n _context.next = 18;\n break;\n\n case 15:\n _context.prev = 15;\n _context.t0 = _context[\"catch\"](8);\n // Log the error here or something\n log.error(_context.t0);\n\n case 18:\n _this.addNetworkToState(network);\n\n case 19:\n i++;\n _context.next = 5;\n break;\n\n case 22:\n _this.monitorNetworkChanges(bncnet, bncNetworks);\n\n _this.$refs.layout.close();\n\n case 24:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[8, 15]]);\n }));\n\n return function onRegistered() {\n return _ref.apply(this, arguments);\n };\n }();\n\n onError = function onError(event) {\n cleanUpEvents();\n _this.statusMessage = _this.$t('invalid_login');\n _this.loading = false;\n };\n\n onClose = function onClose(event) {\n cleanUpEvents();\n _this.statusMessage = _this.$t('invalid_login');\n _this.loading = false;\n };\n\n bncnet.ircClient.once('registered', onRegistered);\n bncnet.ircClient.once('irc error', onError);\n bncnet.ircClient.once('close', onClose);\n bncnet.ircClient.connect();\n\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function startUp() {\n return _startUp.apply(this, arguments);\n }\n\n return startUp;\n }(),\n getBncNetwork: function getBncNetwork() {\n var bnc = this.$state.setting('bnc');\n\n if (bnc.network) {\n bnc.username = this.username;\n bnc.password = this.password;\n return bnc.network;\n }\n\n var options = this.$state.settings.startupOptions; // Indicate that all our connections will be going through a BNC\n\n bnc.active = true;\n bnc.server = options.server || '';\n bnc.port = options.port || 6667;\n bnc.tls = !!options.tls;\n bnc.username = this.username;\n bnc.password = this.password;\n var bncnet = this.$state.addNetwork('bnccontrol', this.username, {\n server: bnc.server,\n port: bnc.port,\n tls: bnc.tls\n });\n bnc.network = bncnet;\n return bncnet;\n },\n addNetworkToState: function addNetworkToState(network) {\n var _context3,\n _this2 = this;\n\n // Expects network to be in the format of:\n // {\n // \"buffers\":[{\"channel\":\"1\",\"name\":\"#prawnsalad\",\"joined\":\"1\"}],\n // \"name\":\"freenode\",\n // \"channel\":\"1\",\n // \"connected\":\"1\",\n // \"host\":\"irc.freenode.net\",\n // \"port\":\"6667\",\n // \"tls\":\"0\",\n // \"nick\":\"notprawn99829\"\n // },\n var net = this.$state.addNetwork(network.name, network.nick, {\n server: network.host,\n port: network.port,\n tls: network.tls,\n password: network.password,\n bncname: network.name,\n username: network.user\n });\n (0, _forEach.default)(_context3 = network.buffers).call(_context3, function (buffer) {\n var newBuffer = _this2.$state.addBuffer(net.id, buffer.name);\n\n if (buffer.joined) {\n newBuffer.enabled = true;\n }\n\n if (buffer.seen) {\n newBuffer.last_read = new Date(buffer.seen).getTime();\n }\n });\n },\n monitorNetworkChanges: function monitorNetworkChanges(bncNet, bncNetworks) {\n var _this3 = this;\n\n var existingNets = (0, _create.default)(null);\n\n function rememberNetworks() {\n var _context4;\n\n (0, _forEach.default)(_context4 = this.$state.networks).call(_context4, function (network) {\n if (!network.connection.bncname) {\n return;\n }\n\n existingNets[network.connection.bncname] = {\n name: network.connection.bncname,\n host: network.connection.server,\n port: network.connection.port,\n tls: network.connection.tls,\n password: network.password,\n nick: network.nick,\n username: network.username\n };\n });\n }\n\n rememberNetworks();\n\n var saveState = function saveState(newVal) {\n var _context5;\n\n (0, _forEach.default)(_context5 = _this3.$state.networks).call(_context5, function (network) {\n // Only deal with BNC networks\n if (network.name === 'bnccontrol') {\n return;\n }\n\n var bncName = network.connection.bncname;\n var current = existingNets[bncName] || {};\n var tags = {};\n\n if (network.connection.server !== current.host) {\n tags.host = network.connection.server;\n }\n\n if (network.connection.port !== current.port) {\n tags.port = network.connection.port;\n }\n\n if (network.connection.tls !== current.tls) {\n tags.tls = network.connection.tls;\n }\n\n if (network.password !== current.password) {\n tags.password = network.password;\n }\n\n if (network.nick !== current.nick) {\n tags.nick = network.nick;\n }\n\n if (network.username !== current.username) {\n tags.user = network.username;\n } // A newly added network would not have a current name property set yet.\n // Only save the network if we've entered a host.\n\n\n if (!current.name && tags.host) {\n network.connection.bncname = network.name;\n bncNet.ircClient.bnc.addNetwork(network.name, tags.host, tags.port, tags.tls, tags.nick, tags.user, tags.password);\n } else if (current.name) {\n bncNet.ircClient.bnc.saveNetwork(bncName, tags);\n }\n });\n rememberNetworks();\n };\n\n var debouncedSaveState = _lodash.default.debounce(saveState, 2000);\n\n this.$state.$watch('networks', debouncedSaveState, {\n deep: true\n }); // Just before we connect to a network, make sure the BNC is sabed and connected to\n // it or at least trying to connect.\n\n this.$state.$on('network.connecting', function (event) {\n saveState();\n var netName = event.network.connection.bncname;\n var networkFromBnc = (0, _find.default)(_lodash.default).call(_lodash.default, bncNetworks, {\n name: netName\n });\n\n if (networkFromBnc && !networkFromBnc.connected) {\n bncNet.ircClient.raw('BOUNCER connect ' + netName);\n }\n }); // Very hacky until we have network name renaming on the bnc. When a new network\n // is added, change the name to the next available network name.\n\n this.$state.$on('network.new', function (event) {\n var currentNum = 1;\n var existingNet = true;\n\n while (existingNet) {\n existingNet = (0, _find.default)(_lodash.default).call(_lodash.default, _this3.$state.networks, {\n name: 'Network' + currentNum\n });\n\n if (!existingNet) {\n event.network.name = 'Network' + currentNum;\n }\n\n currentNum++;\n }\n });\n this.$state.$on('network.removed', function (event) {\n bncNet.ircClient.bnc.removeNetwork(event.network.connection.bncname);\n });\n this.$state.$on('buffer.close', function (event) {\n var buffer = event.buffer;\n var network = event.buffer.getNetwork();\n var bncName = network.connection.bncname;\n\n if (bncName) {\n bncNet.ircClient.bnc.closeBuffer(bncName, buffer.name);\n }\n });\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"KiwiBnc\"]\r\nwindow._kiwi_exports.components.startups.KiwiBnc = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nvar _default = {\n components: {\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n network: null,\n network_extras: null,\n username: '',\n password: '',\n znc_network: '',\n showNetwork: true,\n showPass: true,\n showUser: true,\n show_password_box: false\n };\n },\n computed: {\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n buttonText: function buttonText() {\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n },\n readyToStart: function readyToStart() {\n return this.username && (this.password || this.showPass === false);\n },\n infoContent: function infoContent() {\n return this.$state.settings.startupOptions.infoContent || '';\n }\n },\n created: function created() {\n var options = this.$state.settings.startupOptions;\n this.username = options.username || '';\n this.password = options.password || '';\n this.znc_network = window.location.hash.substr(1) || options.network || '';\n this.showNetwork = typeof options.showNetwork === 'boolean' ? options.showNetwork : true;\n this.showUser = typeof options.showUser === 'boolean' ? options.showUser : true;\n this.showPass = typeof options.showPass === 'boolean' ? options.showPass : true;\n\n if (options.autoConnect && this.username && this.password) {\n this.startUp();\n }\n },\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n formSubmit: function formSubmit() {\n if (this.readyToStart) {\n this.startUp();\n }\n },\n addNetwork: function addNetwork(netName) {\n var options = this.$state.settings.startupOptions;\n var password = this.username;\n\n if (netName) {\n password += '/' + netName;\n }\n\n password += ':' + this.password;\n var net = this.$state.addNetwork(netName, 'ZNC', {\n server: (0, _trim.default)(_lodash.default).call(_lodash.default, options.server),\n port: options.port,\n tls: options.tls,\n password: password\n });\n return net;\n },\n startUp: function startUp() {\n var _this = this;\n\n if (this.network) {\n this.$state.removeNetwork(this.network.id);\n }\n\n var netList = _lodash.default.compact(this.znc_network.split(','));\n\n if (netList.length === 0) {\n netList.push('');\n } // add our first network and make sure we can connect\n // before trying to add other networks.\n\n\n var net = this.network = this.addNetwork(netList.shift());\n this.network_extras = netList;\n\n var onRegistered = function onRegistered() {\n var _context;\n\n _this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n (0, _forEach.default)(_context = _this.network_extras).call(_context, function (netName, idx) {\n var extraNet = _this.addNetwork((0, _trim.default)(_lodash.default).call(_lodash.default, netName));\n\n extraNet.ircClient.connect();\n });\n\n _this.$refs.layout.close();\n };\n\n var onClosed = function onClosed() {\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n net.ircClient.connect();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"ZncLogin\"]\r\nwindow._kiwi_exports.components.startups.ZncLogin = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MediaViewer.vue?vue&type=template&id=47b80fad&\"\nimport script from \"./MediaViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaViewer.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BufferKey.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BufferKey.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Personal.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Personal.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"@/libs/bufferTools\"));\n\nvar _BufferKey = _interopRequireDefault(require(\"./BufferKey\"));\n\nvar _MessageListMessageCompact = _interopRequireDefault(require(\"./MessageListMessageCompact\"));\n\nvar _MessageListMessageModern = _interopRequireDefault(require(\"./MessageListMessageModern\"));\n\nvar _MessageListMessageInline = _interopRequireDefault(require(\"./MessageListMessageInline\"));\n\nvar _LoadingAnimation = _interopRequireDefault(require(\"./LoadingAnimation.vue\"));\n\nrequire('@/libs/polyfill/Element.closest');\n\nvar log = _Logger.default.namespace('MessageList.vue'); // If we're scrolled up more than this many pixels, don't auto scroll down to the bottom\n// of the message list\n\n\nvar BOTTOM_SCROLL_MARGIN = 60;\nvar _default = {\n components: {\n BufferKey: _BufferKey.default,\n MessageListMessageModern: _MessageListMessageModern.default,\n MessageListMessageCompact: _MessageListMessageCompact.default,\n MessageListMessageInline: _MessageListMessageInline.default,\n LoadingAnimation: _LoadingAnimation.default\n },\n props: ['buffer'],\n data: function data() {\n return {\n smooth_scroll: false,\n auto_scroll: true,\n force_smooth_scroll: null,\n chathistoryAvailable: true,\n hover_nick: '',\n message_info_open: null,\n timeToClose: false,\n startClosing: false,\n selectedMessages: (0, _create.default)(null)\n };\n },\n computed: {\n thisMl: function thisMl() {\n return this;\n },\n listType: function listType() {\n if (this.$state.setting('messageLayout')) {\n log.info('Deprecation Warning: The config option \\'messageLayout\\' has been moved to buffers.messageLayout');\n }\n\n return this.buffer.setting('messageLayout') || this.$state.setting('messageLayout');\n },\n useExtraFormatting: function useExtraFormatting() {\n // Enables simple markdown formatting\n return this.buffer.setting('extra_formatting');\n },\n shouldShowChathistoryTools: function shouldShowChathistoryTools() {\n // Only show it if we're connected\n if (this.buffer.getNetwork().state !== 'connected') {\n return false;\n }\n\n var isCorrectBufferType = this.buffer.isChannel() || this.buffer.isQuery();\n var isSupported = !!this.buffer.getNetwork().ircClient.chathistory.isSupported();\n return isCorrectBufferType && isSupported && (0, _flags.default)(this.buffer).chathistory_available;\n },\n shouldRequestChannelKey: function shouldRequestChannelKey() {\n return this.buffer.getNetwork().state === 'connected' && this.buffer.isChannel() && (0, _flags.default)(this.buffer).channel_badkey;\n },\n ourNick: function ourNick() {\n return this.buffer ? this.buffer.getNetwork().nick : '';\n },\n filteredMessagesGroupedDay: function filteredMessagesGroupedDay() {\n var _context;\n\n // Group messages by day\n var days = [];\n var lastDay = null;\n (0, _forEach.default)(_context = this.filteredMessages).call(_context, function (message) {\n var day = Math.floor(message.time / 1000 / 86400);\n\n if (!lastDay || day !== lastDay) {\n days.push({\n dayNum: day,\n messages: []\n });\n lastDay = day;\n }\n\n days[days.length - 1].messages.push(message);\n });\n return days;\n },\n filteredMessages: function filteredMessages() {\n return bufferTools.orderedMessages(this.buffer);\n },\n shouldShowJoiningLoader: function shouldShowJoiningLoader() {\n return this.buffer.isChannel() && this.buffer.enabled && !this.buffer.joined && this.buffer.getNetwork().state === 'connected';\n }\n },\n watch: {\n filteredMessages: function filteredMessages() {\n var _this = this;\n\n // Data has changed and now preparing to update the DOM.\n // Check our scrolling state before the DOM updates so that we know if we're scrolled\n // at the bottom before new messages are added\n this.checkScrollingState(); // Wait until after the DOM has updated before possibly scrolling down based on the\n // previous check\n\n this.$nextTick(function () {\n _this.maybeScrollToBottom();\n });\n },\n buffer: function buffer(newBuffer, oldBuffer) {\n var _this2 = this;\n\n if (oldBuffer) {\n oldBuffer.isMessageTrimming = true;\n }\n\n if (!newBuffer) {\n return;\n }\n\n this.message_info_open = null;\n\n if (this.buffer.getNetwork().state === 'connected') {\n (0, _flags.default)(newBuffer).has_opened = true;\n }\n\n this.auto_scroll = true;\n this.force_smooth_scroll = false;\n this.$nextTick(function () {\n _this2.scrollToBottom();\n });\n }\n },\n mounted: function mounted() {\n var _this3 = this;\n\n this.addCopyListeners();\n this.$nextTick(function () {\n _this3.scrollToBottom(); // this.smooth_scroll = true;\n\n });\n this.listen(this.$state, 'mediaviewer.opened', function () {\n _this3.$nextTick(_this3.maybeScrollToBottom.apply(_this3));\n });\n this.listen(this.$state, 'messagelist.scrollto', function (opt) {\n if (opt && opt.id) {\n _this3.maybeScrollToId(opt.id);\n }\n });\n },\n methods: {\n isHoveringOverMessage: function isHoveringOverMessage(message) {\n return message.nick && message.nick.toLowerCase() === this.hover_nick.toLowerCase();\n },\n toggleMessageInfo: function toggleMessageInfo(message) {\n if (!message) {\n this.message_info_open = null;\n } else if (this.message_info_open === message) {// It's already open, so don't do anything\n } else if (this.canShowInfoForMessage(message)) {\n var _context2;\n\n // If in the process of selecting text, don't show the info box\n var sel = window.getSelection();\n\n if (sel.rangeCount > 0) {\n var range = sel.getRangeAt(0);\n\n if (range && !range.collapsed) {\n return;\n }\n }\n\n this.message_info_open = message;\n this.$nextTick((0, _bind.default)(_context2 = this.maybeScrollToBottom).call(_context2, this));\n }\n },\n shouldShowUnreadMarker: function shouldShowUnreadMarker(message) {\n var _context3;\n\n var idx = (0, _indexOf.default)(_context3 = this.filteredMessages).call(_context3, message);\n var previous = this.filteredMessages[idx - 1];\n var current = this.filteredMessages[idx];\n var lastRead = this.buffer.last_read;\n\n if (!lastRead) {\n return false;\n }\n\n if (!current) {\n return false;\n } // If the last message has been read, and this message not read\n\n\n if (previous && previous.time < lastRead && current.time > lastRead) {\n return true;\n }\n\n return false;\n },\n shouldShowDateChangeMarker: function shouldShowDateChangeMarker(idx) {\n var previous = this.filteredMessages[idx - 1];\n var current = this.filteredMessages[idx];\n\n if (!previous && new Date(current.time).getDay() !== new Date().getDay()) {\n // The first message of the lsit and it's not today\n return true;\n } else if (!previous) {\n // The first message of the lsit but it's today\n return false;\n } // If the last message has been read, and this message not read\n\n\n if (new Date(previous.time).getDay() !== new Date(current.time).getDay()) {\n return true;\n }\n\n return false;\n },\n canShowInfoForMessage: function canShowInfoForMessage(message) {\n var showInfoForTypes = ['privmsg', 'notice', 'action'];\n return (0, _indexOf.default)(showInfoForTypes).call(showInfoForTypes, message.type) > -1;\n },\n bufferSetting: function bufferSetting(key) {\n return this.buffer.setting(key);\n },\n formatTime: function formatTime(time) {\n return (0, _strftime.default)(this.buffer.setting('timestamp_format') || '%T', new Date(time));\n },\n formatTimeFull: function formatTimeFull(time) {\n var format = this.buffer.setting('timestamp_full_format');\n return format ? (0, _strftime.default)(format, new Date(time)) : new Date(time).toLocaleString();\n },\n formatMessage: function formatMessage(message) {\n return message.toHtml(this);\n },\n isMessageHighlight: function isMessageHighlight(message) {\n // Highlighting ourselves when we join or leave a channel is silly\n if (message.type === 'traffic') {\n return false;\n }\n\n return message.isHighlight;\n },\n userColour: function userColour(user) {\n if (user && this.bufferSetting('colour_nicknames_in_messages')) {\n return user.getColour();\n }\n\n return '';\n },\n openUserBox: function openUserBox(nick) {\n var user = this.$state.getUser(this.buffer.networkid, nick);\n\n if (user) {\n this.$state.$emit('userbox.show', user, {\n buffer: this.buffer\n });\n }\n },\n onListClick: function onListClick(event) {\n this.toggleMessageInfo();\n },\n onMessageDblClick: function onMessageDblClick(event, message) {\n clearTimeout(this.messageClickTmr);\n var dataNick = event.target.getAttribute('data-nick');\n\n if (!dataNick) {\n return;\n }\n\n var network = this.buffer.getNetwork();\n var user = network.userByName(dataNick); // The user might have left use dataNick as fallback\n\n var nick = user && user.nick ? user.nick : dataNick;\n this.$state.$emit('input.insertnick', nick);\n },\n onMessageClick: function onMessageClick(event, message, delay) {\n // Delaying the click for 200ms allows us to check for a second click. ie. double click\n // Quick hack as we only need double click for nicks, nothing else\n if (delay && event.target.getAttribute('data-nick')) {\n clearTimeout(this.messageClickTmr);\n this.messageClickTmr = (0, _setTimeout2.default)(this.onMessageClick, 200, event, message, false);\n return;\n }\n\n var isLink = event.target.tagName === 'A';\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName && isLink) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n this.$state.setActiveBuffer(this.buffer.networkid, channelName);\n return;\n }\n\n var userNick = event.target.getAttribute('data-nick');\n\n if (userNick && isLink) {\n this.openUserBox(userNick);\n return;\n }\n\n var url = event.target.getAttribute('data-url');\n\n if (url && isLink) {\n if (this.$state.setting('buffers.inline_link_auto_previews')) {\n message.embed.type = 'url';\n message.embed.payload = url;\n } else {\n this.$state.$emit('mediaviewer.show', url);\n }\n }\n\n if (this.message_info_open && this.message_info_open !== message) {\n // Clicking on another message while another info is open, just close the info\n this.toggleMessageInfo();\n event.preventDefault();\n return;\n }\n\n if (this.$state.ui.is_touch && this.$state.setting('buffers.show_message_info')) {\n if (this.canShowInfoForMessage(message) && event.target.nodeName === 'A') {\n // We show message info boxes on touch screen devices so that the user has an\n // option to preview the links or do other stuff.\n event.preventDefault();\n }\n\n this.toggleMessageInfo(message);\n }\n },\n checkScrollingState: function checkScrollingState() {\n var el = this.$el;\n var scrolledUpByPx = el.scrollHeight - (el.offsetHeight + el.scrollTop); // We need to know at this point (before the DOM has updated with new messages) if we\n // are at the bottom of the messagelist or not, otherwise once the DOM has updated then\n // it is too late to determine if we should auto scroll down\n\n if (scrolledUpByPx > BOTTOM_SCROLL_MARGIN) {\n this.auto_scroll = false;\n this.buffer.isMessageTrimming = false;\n } else {\n this.auto_scroll = true;\n this.buffer.isMessageTrimming = true;\n }\n\n if (this.force_smooth_scroll !== null) {\n this.smooth_scroll = this.force_smooth_scroll;\n this.force_smooth_scroll = null; // TODO: Enabling smooth_scroll breaks the auto-scroll-to-bottom on fast buffers as\n // it takes time to scroll down and it looks like we're scrolled too far up when\n // detecting if were scrolled up or not. Look into ways around this so that we\n // can enable it as it does look a lot better.\n // } else if (scrolledUpByPx < BOTTOM_SCROLL_MARGIN) {\n // this.smooth_scroll = true;\n } else {\n this.smooth_scroll = false;\n }\n },\n onListResize: function onListResize(e) {\n // The messagelist has resized or had new content added so check if we should auto\n // scroll down to the bottom\n this.maybeScrollToBottom();\n },\n scrollToBottom: function scrollToBottom() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n maybeScrollToBottom: function maybeScrollToBottom() {\n if (this.auto_scroll) {\n this.scrollToBottom();\n }\n },\n maybeScrollToId: function maybeScrollToId(id) {\n var messageElement = this.$el.querySelector('.kiwi-messagelist-message[data-message-id=\"' + id + '\"]');\n\n if (messageElement && messageElement.offsetTop) {\n this.$el.scrollTop = messageElement.offsetTop;\n this.auto_scroll = false;\n }\n },\n getSelectedMessages: function getSelectedMessages() {\n var sel = document.getSelection();\n var r = sel.getRangeAt(0);\n var messageEls = (0, _toConsumableArray2.default)(this.$el.querySelectorAll('.kiwi-messagelist-message'));\n var selectedMessageEls = (0, _filter.default)(messageEls).call(messageEls, function (el) {\n return r.intersectsNode(el);\n });\n return selectedMessageEls;\n },\n restrictTextSelection: function restrictTextSelection() {\n // Prevents the selection cursor escaping the message list.\n document.querySelector('body').classList.add('kiwi-unselectable');\n this.$el.style.userSelect = 'text';\n },\n unrestrictTextSelection: function unrestrictTextSelection() {\n // Allows all page elements to be selected again.\n document.querySelector('body').classList.remove('kiwi-unselectable');\n this.$el.style.userSelect = 'auto';\n },\n removeSelections: function removeSelections() {\n var removeNative = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n this.selectedMessages = (0, _create.default)(null);\n var selection = document.getSelection();\n\n if (removeNative && selection) {\n // stops the native browser selection being left behind after ctrl+c\n selection.removeAllRanges();\n }\n },\n addCopyListeners: function addCopyListeners() {\n var _this4 = this;\n\n // Better copy pasting\n var LogFormatter = function LogFormatter(msg) {\n var _context4;\n\n var text = '';\n\n switch (msg.type) {\n case 'privmsg':\n text = (0, _concat.default)(_context4 = \"<\".concat(msg.nick, \"> \")).call(_context4, msg.message);\n break;\n\n case 'nick':\n case 'mode':\n case 'action':\n case 'traffic':\n text = \"\".concat(msg.message);\n break;\n\n default:\n text = msg.message;\n }\n\n if (text.length) {\n var _context5;\n\n return (0, _concat.default)(_context5 = \"[\".concat(new Date(msg.time).toLocaleTimeString({\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit'\n }), \"] \")).call(_context5, text);\n }\n\n return null;\n };\n\n var copyData = '';\n var selecting = false;\n var selectionChangeOff = null;\n this.listen(document, 'selectstart', function (e) {\n if (!_this4.$el.contains(e.target)) {\n // Selected elsewhere on the page\n copyData = '';\n\n _this4.removeSelections();\n\n return;\n }\n\n _this4.removeSelections();\n\n selectionChangeOff = _this4.listen(document, 'selectionchange', onSelectionChange);\n });\n this.listen(document, 'mouseup', function (e) {\n selectionChangeOff && selectionChangeOff();\n\n _this4.unrestrictTextSelection();\n\n if (selecting) {\n e.preventDefault();\n }\n\n selecting = false;\n });\n\n var onSelectionChange = function onSelectionChange(e) {\n if (!_this4.$el) {\n return true;\n }\n\n copyData = ''; // Store the text data to be copied in this.\n\n var selection = document.getSelection();\n\n if (!selection || !selection.anchorNode || !selection.anchorNode.parentNode.closest('.' + _this4.$el.className)) {\n _this4.unrestrictTextSelection();\n\n _this4.removeSelections();\n\n return true;\n }\n\n _this4.removeSelections(); // Prevent the selection escaping the message list\n\n\n _this4.restrictTextSelection();\n\n if (selection.rangeCount > 0) {\n var _context6, _context7;\n\n selecting = true;\n\n var selectedMesssageEls = _this4.getSelectedMessages();\n\n var selectedMessages = [];\n (0, _forEach.default)(selectedMesssageEls).call(selectedMesssageEls, function (el) {\n var m = _this4.buffer.messagesObj.messageIds[el.dataset.messageId];\n\n if (m) {\n selectedMessages.push(m);\n }\n }); // If only 1 message is selected then treat the selection as native text\n // selection. Most likely copying part of a message only.\n\n if (selectedMessages.length === 1) {\n selectedMessages = [];\n }\n\n _this4.selectedMessages = (0, _create.default)(null);\n (0, _forEach.default)(selectedMessages).call(selectedMessages, function (m) {\n _this4.selectedMessages[m.id] = m;\n }); // Iterate through the selected messages, format and store as a\n // string to be used in the copy handler\n\n copyData = (0, _map.default)(_context6 = (0, _filter.default)(_context7 = (0, _sort.default)(selectedMessages).call(selectedMessages, function (a, b) {\n return a.time > b.time ? 1 : -1;\n })).call(_context7, function (m) {\n var _context8;\n\n return (0, _trim.default)(_context8 = m.message).call(_context8).length;\n })).call(_context6, LogFormatter).join('\\r\\n');\n } else {\n _this4.unrestrictTextSelection();\n }\n\n return false;\n };\n\n this.listen(document, 'copy', function (e) {\n if (!copyData || !copyData.length) {\n // Just do a normal copy if no special data\n return true;\n }\n\n if (navigator.clipboard) {\n // Supports Clipboard API\n navigator.clipboard.writeText(copyData);\n } else {\n var input = document.createElement('textarea');\n document.body.appendChild(input);\n input.innerHTML = copyData;\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n }\n\n return true;\n });\n },\n // Move a messages embeded content to the main media preview\n openEmbedInPreview: function openEmbedInPreview(message) {\n // First open the embed in the main media preview\n var embed = message.embed;\n\n if (embed.type === 'url') {\n this.$state.$emit('mediaviewer.show', embed.payload);\n } else if (embed.type === 'component') {\n this.$state.$emit('mediaviewer.show', {\n component: embed.payload\n });\n } // Remove the embed from the message\n\n\n embed.payload = null;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageList\"]\r\nwindow._kiwi_exports.components.MessageList = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _Avatar = _interopRequireDefault(require(\"./Avatar\"));\n\n// This component simply wraps the Avatar component so that plugins may override this messagelist\n// avatar separately than the nicklist avatar\nvar _default = {\n c: {\n Avatar: _Avatar.default\n },\n props: ['message', 'user']\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageListAvatar\"]\r\nwindow._kiwi_exports.components.MessageListAvatar = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-statebrowser kiwi-theme-bg\"},[(!_vm.$state.setting('hideSettings'))?_c('div',{staticClass:\"kiwi-statebrowser-appsettings\",attrs:{\"title\":_vm.$t('kiwi_settings')},on:{\"click\":_vm.clickAppSettings}},[_c('i',{staticClass:\"fa fa-cog\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.isPersistingState)?_c('state-browser-usermenu',{attrs:{\"network\":_vm.getNetwork}}):_vm._e(),_c('div',{staticClass:\"kiwi-statebrowser-tools\"},_vm._l((_vm.pluginUiElements),function(plugin){return _c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:(plugin.el),expression:\"plugin.el\"}],key:plugin.id,staticClass:\"kiwi-statebrowser-tool\"})}),0),(Object.keys(_vm.provided_networks).length > 0)?_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks\"},[_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-toggle\",on:{\"click\":function($event){_vm.show_provided_networks=!_vm.show_provided_networks}}},[_vm._v(\" ↪ \"+_vm._s(_vm.$t('state_available'))+\" \")]),_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-networks\",class:{\n 'kiwi-statebrowser-availablenetworks-networks--open': _vm.show_provided_networks\n }},_vm._l((_vm.provided_networks),function(pNets,pNetTypeName){return _c('div',{key:pNetTypeName,staticClass:\"kiwi-statebrowser-availablenetworks-type\"},[_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-name\"},[_vm._v(_vm._s(pNetTypeName))]),_vm._l((pNets),function(pNet){return _c('div',{key:pNet.name,staticClass:\"kiwi-statebrowser-availablenetworks-link\",class:[\n pNet.connected?'kiwi-statebrowser-availablenetworks-link--connected':''\n ]},[_c('a',{on:{\"click\":function($event){return _vm.connectProvidedNetwork(pNet)}}},[_vm._v(_vm._s(pNet.name))]),_c('br')])})],2)}),0)]):_vm._e(),_c('div',{staticClass:\"kiwi-statebrowser-scrollarea\"},[_c('div',{staticClass:\"kiwi-statebrowser-networks\"},_vm._l((_vm.networksToShow),function(network){return _c('state-browser-network',{key:network.id,attrs:{\"network\":network,\"sidebar-state\":_vm.sidebarState}})}),1)]),(!_vm.isRestrictedServer)?_c('div',{staticClass:\"kiwi-statebrowser-newnetwork\"},[_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.clickAddNetwork}},[_vm._v(\" \"+_vm._s(_vm.$t('add_network'))+\" \"),_c('i',{staticClass:\"fa fa-plus\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-serverselector\",class:{'kiwi-serverselector--custom': _vm.presetServer === 'custom'}},[(_vm.usePreset && _vm.presetNetworks.length > 0)?_c('div',{staticClass:\"kiwi-serverselector-presets\"},[_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('server')))]),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.presetServer),expression:\"presetServer\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.presetServer=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"custom\"}},[_vm._v(\"Custom Server\")]),_c('option',{attrs:{\"disabled\":\"\"}},[_vm._v(\"-----------------\")]),_vm._l((_vm.presetNetworks),function(s){return _c('option',{key:s.name,domProps:{\"value\":_vm.toUri(s)}},[_vm._v(_vm._s(s.name))])})],2)])]):_vm._e(),(_vm.showCustom || _vm.presetNetworks.length === 0 || !_vm.usePreset)?[_c('input-text',{directives:[{name:\"focus\",rawName:\"v-focus\"}],staticClass:\"kiwi-networksettings-connection-address\",attrs:{\"label\":_vm.$t('server')},model:{value:(_vm.connection.server),callback:function ($$v) {_vm.$set(_vm.connection, \"server\", $$v)},expression:\"connection.server\"}}),_c('input-text',{staticClass:\"kiwi-networksettings-connection-port\",attrs:{\"label\":_vm.$t('settings_port'),\"type\":\"number\"},model:{value:(_vm.connection.port),callback:function ($$v) {_vm.$set(_vm.connection, \"port\", $$v)},expression:\"connection.port\"}},[_c('span',{staticClass:\"fa-stack fa-lg kiwi-customserver-tls\",class:{ 'kiwi-customserver-tls--enabled' : _vm.connection.tls },on:{\"click\":_vm.toggleTls}},[(_vm.connection.tls)?_c('i',{staticClass:\"fa fa-lock fa-stack-1x kiwi-customserver-tls-lock\"}):_c('i',{staticClass:\"fa fa-unlock fa-stack-1x kiwi-customserver-tls-minus\"})])])]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-wrap kiwi-wrap-error\"},[_c('h2',[_vm._v(\"Kiwi IRC could not start :(\")]),_c('div',[_vm._v(_vm._s(_vm.error))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ZncLogin.vue?vue&type=template&id=d0abb22c&\"\nimport script from \"./ZncLogin.vue?vue&type=script&lang=js&\"\nexport * from \"./ZncLogin.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ZncLogin.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserNetwork.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserNetwork.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommonLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommonLayout.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-prompt', {\n props: ['label', 'hideCancel', 'noprompt', 'block'],\n data: function data() {\n return {\n value: '',\n state: 'pre'\n };\n },\n created: function created() {\n if (this.noprompt) {\n this.prompt();\n }\n },\n methods: {\n prompt: function prompt() {\n var _this = this;\n\n this.state = 'prompt';\n this.$nextTick(function () {\n _this.$el.querySelector('input').focus();\n });\n },\n complete: function complete() {\n this.$emit('submit', this.value);\n this.state = 'pre';\n },\n cancel: function cancel() {\n this.$emit('cancel');\n this.state = 'pre';\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputPrompt\"]\r\nwindow._kiwi_exports.components.utils.InputPrompt = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./AwayStatusIndicator.vue?vue&type=template&id=6a59392d&functional=true&\"\nimport script from \"./AwayStatusIndicator.vue?vue&type=script&lang=js&\"\nexport * from \"./AwayStatusIndicator.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoComplete.vue?vue&type=template&id=c151b764&\"\nimport script from \"./AutoComplete.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoComplete.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AutoComplete.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./ChannelList.vue?vue&type=template&id=20211d72&\"\nimport script from \"./ChannelList.vue?vue&type=script&lang=js&\"\nexport * from \"./ChannelList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChannelList.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar ipRegex = _interopRequireWildcard(require(\"ip-regex\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar IrcdDiffs = _interopRequireWildcard(require(\"@/helpers/IrcdDiffs\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['buffer', 'network', 'user'],\n data: function data() {\n return {\n whoisRequested: false,\n whoisLoading: false\n };\n },\n computed: {\n // Channel modes differ on some IRCds so get them from the network options\n availableChannelModes: function availableChannelModes() {\n var availableModes = [];\n var prefixes = this.network.ircClient.network.options.PREFIX;\n var knownPrefix = {\n q: 'Owner',\n a: 'Admin',\n o: 'Operator',\n h: 'Half-Operator',\n v: 'Voice'\n };\n\n if (!IrcdDiffs.isAChannelModeAdmin(this.network)) {\n delete knownPrefix.a;\n }\n\n if (!IrcdDiffs.isQChannelModeOwner(this.network)) {\n delete knownPrefix.q;\n }\n\n if (!IrcdDiffs.supportsHalfOp(this.network)) {\n delete knownPrefix.h;\n }\n\n (0, _forEach.default)(prefixes).call(prefixes, function (prefix) {\n var mode = prefix.mode;\n\n if (knownPrefix[mode]) {\n availableModes.push({\n mode: mode,\n description: knownPrefix[mode]\n });\n }\n });\n return availableModes;\n },\n areWeAnOp: function areWeAnOp() {\n if (!this.buffer) {\n return false;\n }\n\n return this.buffer.isUserAnOp(this.buffer.getNetwork().nick);\n },\n formattedRealname: function formattedRealname() {\n var blocks = (0, _MessageParser.default)(this.user.realname || '', {\n extras: false\n });\n var content = (0, _Html.default)(blocks, false);\n return content;\n },\n isUserOnBuffer: function isUserOnBuffer() {\n if (!this.buffer) {\n return false;\n }\n\n if (!this.user.buffers[this.buffer.id]) {\n // Probably switched buffer while the userbox was open\n return false;\n }\n\n return true;\n },\n userMode: {\n get: function getUserMode() {\n if (!this.buffer) {\n return '';\n }\n\n var userBufferInfo = this.user.buffers[this.buffer.id];\n\n if (!userBufferInfo) {\n // Probably switched buffer while the userbox was open\n return '';\n }\n\n var modes = userBufferInfo.modes;\n return modes.length > 0 ? modes[0] : '';\n },\n // Switch the current user mode for the new one\n set: function setUserMode(newVal) {\n var _context;\n\n var client = this.network.ircClient;\n var oldVal = this.userMode;\n var changes = [];\n var targets = [];\n\n if (oldVal) {\n changes.push('-' + oldVal);\n targets.push(this.user.nick);\n }\n\n if (newVal) {\n changes.push('+' + newVal);\n targets.push(this.user.nick);\n }\n\n var params = (0, _concat.default)(_context = ['MODE', this.buffer.name, changes.join('')]).call(_context, targets);\n client.raw(params);\n }\n },\n userChannels: function userChannels() {\n var _context2;\n\n var channels = (0, _trim.default)(_context2 = this.user.channels).call(_context2).split(' ');\n\n for (var i = 0; i < channels.length; i++) {\n channels[i] = TextFormatting.linkifyChannels(channels[i]);\n }\n\n return channels.join(' ');\n },\n isSelf: function isSelf() {\n return this.user === this.network.currentUser();\n }\n },\n watch: {\n user: function watchUser() {\n // Reset the whois view since the user is now different\n this.whoisRequested = false;\n this.whoisLoading = false;\n }\n },\n methods: {\n userModeOnThisBuffer: function userModeOnBuffer(user) {\n if (!this.buffer) {\n return '';\n }\n\n var userBufferInfo = user.buffers[this.buffer.id];\n var modes = userBufferInfo.modes;\n return modes.length > 0 ? modes[0] : '';\n },\n openQuery: function openQuery() {\n var buffer = this.$state.addBuffer(this.network.id, this.user.nick);\n this.$state.setActiveBuffer(this.network.id, buffer.name);\n\n if (this.$state.ui.is_narrow) {\n this.$state.$emit('userbox.hide');\n }\n },\n onChannelsClick: function onChannelsClick(event) {\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n }\n },\n updateWhoisData: function updateWhoisData() {\n var _this = this;\n\n this.whoisRequested = true;\n this.whoisLoading = true;\n this.network.ircClient.whois(this.user.nick, function () {\n _this.whoisLoading = false;\n });\n },\n kickUser: function kickUser() {\n var reason = this.$state.setting('buffers.default_kick_reason');\n this.network.ircClient.raw('KICK', this.buffer.name, this.user.nick, reason);\n },\n createBanMask: function createBanMask() {\n // try to ban via user account first\n if (this.user.account) {\n var _context3;\n\n // if EXTBAN is supported use that\n var extban = IrcdDiffs.extbanAccount(this.network);\n\n if (extban) {\n return extban + ':' + this.user.account;\n } // if the account name is in the host ban the host\n // Eg. user@network/user/accountname\n\n\n if ((0, _indexOf.default)(_context3 = this.user.host.toLowerCase()).call(_context3, this.user.account.toLowerCase()) > -1) {\n return '*!*@' + this.user.host;\n }\n } // if an ip address is in the host and not the whole host ban the ip\n // Eg. user@gateway/1.2.3.4\n\n\n var ipTest = new RegExp('(' + ipRegex.v4().source + '|' + ipRegex.v6().source + ')');\n\n if (ipTest.test(this.user.host)) {\n var match = this.user.host.match(ipTest)[0];\n\n if (match !== this.user.host) {\n return '*!*@*' + match + '*';\n }\n } // if an 8 char hex is the username ban by username. Commonly used in gateways\n // Eg. 59d4c432@a.clients.kiwiirc.com\n\n\n var hexTest = /^([a-f0-9]{8})$/i;\n\n if (hexTest.test(this.user.username)) {\n var _match = this.user.username.match(hexTest)[0];\n return '*!' + _match + '@*';\n } // fallback to default_ban_mask from config\n\n\n var mask = this.$state.setting('buffers.default_ban_mask');\n mask = mask.replace('%n', this.user.nick);\n mask = mask.replace('%i', this.user.username);\n mask = mask.replace('%h', this.user.host);\n return mask;\n },\n banUser: function banUser() {\n if (!this.user.username || !this.user.host) {\n return;\n }\n\n var banMask = this.createBanMask();\n this.network.ircClient.raw('MODE', this.buffer.name, '+b', banMask);\n },\n kickbanUser: function kickbanuser() {\n if (!this.user.username || !this.user.host) {\n return;\n }\n\n var banMask = this.createBanMask();\n var reason = this.$state.setting('buffers.default_kick_reason');\n this.network.ircClient.raw('MODE', this.buffer.name, '+b', banMask);\n this.network.ircClient.raw('KICK', this.buffer.name, this.user.nick, reason);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"UserBox\"]\r\nwindow._kiwi_exports.components.UserBox = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-autocomplete kiwi-theme-bg\"},_vm._l((_vm.filteredAndLimitedItems),function(item){return _c('div',{key:item.type+item.text,class:{\n 'kiwi-autocomplete-item': true,\n 'kiwi-autocomplete-item--selected': item.idx === _vm.selected_idx},on:{\"click\":function($event){_vm.selected_idx = item.idx; _vm.selectCurrentItem()}}},[(item.type === 'user')?[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))]),_c('span',{staticClass:\"u-link kiwi-autocomplete-item-action\",on:{\"click\":function($event){$event.stopPropagation();return _vm.openQuery(item.text)}}},[_vm._v(\" \"+_vm._s(_vm.$t('send_message'))+\" \")])]:(item.type === 'command')?[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))]),_c('span',{staticClass:\"u-link kiwi-autocomplete-item-description\"},[_vm._v(\" \"+_vm._s(item.description)+\" \")])]:[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))])]],2)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n'kiwi public';\n/**\n * batchedAdd prevents a flood of new inserts into state. Based on JS ticks, inserts /sec are\n * counted by each JS tick that inserts an item. Eg. 10 inserts in 1 tick = 1 count. 10 inserts\n * on different JS ticks = 10 counts.\n * After X counts/sec, batch each second worth of new items at the same time.\n */\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = batchedAdd;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nfunction batchedAdd(singleFn, batchedFn) {\n var numInsertsSec = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;\n var inTick = false;\n var queue = [];\n var numInLastSec = 0;\n var queueLoopTmr = null;\n var loopInterval = 1000;\n var checkSecRateTmr = null;\n\n function queueLoop() {\n numInLastSec = 0;\n\n if (queue.length) {\n // emptying queue before calling batchedFn in case that function triggers\n // code that needs to see that the queue has been processed.\n var q = queue;\n queue = [];\n batchedFn(q);\n queueLoopTmr = (0, _setTimeout2.default)(queueLoop, loopInterval);\n } else {\n queueLoopTmr = null;\n }\n }\n\n function maybeStartLoop() {\n if (!queueLoopTmr) {\n queueLoopTmr = (0, _setTimeout2.default)(queueLoop, loopInterval);\n }\n } // Reset numInLastSec after loopInterval. This allows enough time for the counter to\n // increase to detect batching. Only needs to run if we are not currently batching and\n // only needs to run once at a time.\n\n\n function resetAddCounter() {\n if (!queueLoopTmr && !checkSecRateTmr) {\n checkSecRateTmr = (0, _setTimeout2.default)(function () {\n checkSecRateTmr = null;\n\n if (!queueLoopTmr) {\n numInLastSec = 0;\n }\n }, loopInterval);\n }\n }\n\n function batchFn(item) {\n if (!inTick) {\n numInLastSec++;\n } // If already queuing or we reached our limit on items/sec, queue the item\n\n\n if (queue.length || numInLastSec > numInsertsSec) {\n queue.push(item);\n maybeStartLoop();\n } else {\n inTick = true;\n (0, _setTimeout2.default)(function () {\n inTick = false;\n });\n singleFn(item);\n resetAddCounter();\n }\n }\n\n batchFn.queue = function getQueue() {\n return queue;\n };\n\n return batchFn;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"batchedAdd\"]\r\nwindow._kiwi_exports.libs.batchedAdd = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar embedlyTagIncluded = false;\nvar _default = {\n props: ['url', 'showPin', 'iframeSandboxOptions'],\n data: function data() {\n return {\n debouncedUpdateEmbed: null\n };\n },\n computed: {\n settings: function settings() {\n return this.$state.setting('embedly');\n }\n },\n watch: {\n url: function url() {\n this.updateEmbed();\n }\n },\n created: function created() {\n this.updateEmbed();\n },\n methods: {\n updateEmbed: function updateEmbed() {\n var _this = this;\n\n var checkEmbedlyAndShowCard = function checkEmbedlyAndShowCard() {\n // If the embedly function doesn't exist it's probably still loading\n // the embedly script\n if (typeof window.embedly !== 'function') {\n (0, _setTimeout2.default)(checkEmbedlyAndShowCard, 100);\n return;\n }\n\n _this.$nextTick(function () {\n window.embedly('card', _this.$refs.embedlyLink);\n\n _this.$emit('setHeight', 'auto');\n\n if (_this.showPin) {\n // This is inline so set a max height\n _this.$el.style.maxHeight = (_this.settings.maxHeight || 400) + 'px';\n } else {\n // This is main media view set a relative max height\n _this.$emit('setMaxHeight', '54%');\n }\n });\n };\n\n if (!embedlyTagIncluded) {\n var head = document.getElementsByTagName('head')[0];\n var script = document.createElement('script');\n script.type = 'text/javascript';\n var embedlyUrl = this.$state.getSetting('settings.embedly.script') || '//cdn.embedly.com/widgets/platform.js';\n script.src = embedlyUrl;\n head.appendChild(script);\n embedlyTagIncluded = true;\n }\n\n checkEmbedlyAndShowCard();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"UrlEmbed\"]\r\nwindow._kiwi_exports.components.UrlEmbed = exports.default ? exports.default : exports;\r\n","\"use strict\";\n\nrequire(\"./kiwiirccom\");","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-typinguserslist\"},[_vm._l((_vm.typingUsers),function(user,idx){return _c('span',{key:user.nick,style:({ color: _vm.userColour(user) })},[_vm._v(\" \"+_vm._s(user.nick)+_vm._s(_vm.typingUsers.length - 1 > idx ? ',' : '')+\" \")])}),_vm._v(\" \"+_vm._s(_vm.typingUsers.length > 0 ? '…' : '')+\" \")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ControlInput.vue?vue&type=template&id=5a479d47&\"\nimport script from \"./ControlInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ControlInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ControlInput.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./kiwiirccom.vue?vue&type=template&id=5b797949&\"\nimport script from \"./kiwiirccom.vue?vue&type=script&lang=js&\"\nexport * from \"./kiwiirccom.vue?vue&type=script&lang=js&\"\nimport style0 from \"./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"kiwi-loading-logo\",attrs:{\"src\":require(\"../res/kiwiLoadingLogo.png\")}}),_c('canvas',{staticClass:\"kiwi-loading-animation\"})])}]\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar _ChannelInfo = _interopRequireDefault(require(\"./ChannelInfo\"));\n\nvar _ChannelBanlist = _interopRequireDefault(require(\"./ChannelBanlist\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n ChannelInfo: _ChannelInfo.default,\n ChannelBanlist: _ChannelBanlist.default,\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['buffer', 'sidebarState'],\n data: function data() {\n return {\n pluginUiChannelElements: _GlobalApi.default.singleton().channelHeaderPlugins,\n pluginUiQueryElements: _GlobalApi.default.singleton().queryHeaderPlugins,\n prompts: {\n closeChannel: false\n }\n };\n },\n computed: {\n isJoined: function isJoined() {\n var buffer = this.buffer;\n return buffer.getNetwork().state === 'connected' && buffer.joined;\n },\n isConnected: function isConnected() {\n return this.buffer.getNetwork().state === 'connected';\n },\n formattedTopic: function formattedTopic() {\n var blocks = (0, _MessageParser.default)(this.buffer.topic, {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n network: function network() {\n return this.buffer.getNetwork();\n },\n sidebarSection: function sidebarSection() {\n return this.sidebarState.section();\n },\n userOnline: function userOnline() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.buffer.name);\n return !!user;\n }\n },\n created: function created() {\n var _this = this;\n\n this.listen(this.$state, 'document.clicked', function (e) {\n // If clicking anywhere else on the page, close all our prompts\n if (!_this.$el.contains(e.target)) {\n var _context;\n\n (0, _forEach.default)(_context = (0, _keys.default)(_this.prompts)).call(_context, function (prompt) {\n _this.prompts[prompt] = false;\n });\n }\n });\n },\n methods: {\n showPrompt: function showPrompt(prompt) {\n this.prompts[prompt] = true;\n },\n isChannel: function isChannel() {\n return this.buffer.isChannel();\n },\n isServer: function isServer() {\n return this.buffer.isServer();\n },\n isQuery: function isQuery() {\n return this.buffer.isQuery();\n },\n isSpecial: function isSpecial() {\n return this.buffer.isSpecial();\n },\n showNetworkSettings: function showNetworkSettings(network) {\n network.showServerBuffer('settings');\n },\n onConnectButtonClick: function onConnectButtonClick() {\n var network = this.buffer.getNetwork();\n\n if (!network.connection.server) {\n network.showServerBuffer('settings');\n } else {\n network.ircClient.connect();\n }\n },\n toggleUser: function toggleUser() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.buffer.name);\n this.sidebarState.toggleUser(user);\n },\n joinCurrentBuffer: function joinCurrentBuffer() {\n var network = this.buffer.getNetwork();\n this.buffer.enabled = true;\n network.ircClient.join(this.buffer.name);\n },\n closeCurrentBuffer: function closeCurrentBuffer() {\n this.$state.removeBuffer(this.buffer);\n },\n onHeaderClick: function onHeaderClick(event) {\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n }\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ContainerHeader\"]\r\nwindow._kiwi_exports.components.ContainerHeader = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channelbanlist\"},[_c('form',{staticClass:\"u-form kiwi-channelbanlist\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('a',{staticClass:\"u-link\",on:{\"click\":_vm.updateBanlist}},[_vm._v(_vm._s(_vm.$t('bans_refresh')))]),(_vm.banlist.length > 0)?_c('table',{staticClass:\"kiwi-channelbanlist-table\"},[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('bans_user')))]),_c('th'),_c('th')]),_vm._l((_vm.banlist),function(ban){return _c('tr',{key:ban.banned,attrs:{\"title\":'By ' + ban.banned_by}},[_c('td',{staticClass:\"kiwi-channelbanlist-table-mask\"},[_vm._v(_vm._s(ban.banned))]),_c('td',{staticClass:\"kiwi-channelbanlist-table-bannedat\"},[_vm._v(\" \"+_vm._s((new Date(ban.banned_at * 1000)).toDateString())+\" \")]),_c('td',{staticClass:\"kiwi-channelbanlist-table-actions\"},[_c('i',{staticClass:\"fa fa-trash\",attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){return _vm.removeBan(ban.banned)}}})])])})],2):(_vm.is_refreshing)?_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('bans_refreshing'))+\" \")]):_c('div',{staticClass:\"kiwi-channelbanlist-empty\"},[_vm._v(\" \"+_vm._s(_vm.$t('bans_nobody'))+\" \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:_vm.url,staticClass:\"kiwi-mediaviewer-embedly\"},[_c('a',{ref:\"embedlyLink\",staticClass:\"kiwi-embedly-card\",attrs:{\"href\":_vm.url,\"data-card-key\":_vm.settings.key,\"data-card-chrome\":\"0\",\"data-card-controls\":\"0\",\"data-card-recommend\":\"0\"}},[_vm._v(_vm._s(_vm.$t('media_loading', {url: _vm.url})))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarState.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarState.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdvanced.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdvanced.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _BouncerProvider = _interopRequireDefault(require(\"@/libs/BouncerProvider\"));\n\nvar _IPC = _interopRequireDefault(require(\"@/libs/IPC\"));\n\nvar firstRun = true;\nvar _default = {\n data: function data() {\n return {\n hasOtherTab: false,\n addedNetworkToExisting: false,\n server: null,\n readyToShowOptions: false\n };\n },\n computed: {\n networks: function networks() {\n return this.$state.networks;\n },\n hasFragment: function hasFragment() {\n return window.location.hash && window.location.hash.length > 1;\n }\n },\n created: function created() {\n var _this = this;\n\n this.$state.setting('allowRegisterProtocolHandler', true);\n var server = null;\n\n if (this.hasFragment) {\n server = this.parseFragment();\n this.server = server;\n }\n\n if (server) {\n this.findOtherTabs().then(function (hasOtherTab) {\n if (hasOtherTab) {\n _this.hasOtherTab = true; // Don't start the main kiwi app here as it's already open elsewhere\n } else {\n _this.listenForOtherTabs();\n\n _this.init();\n }\n\n _this.readyToShowOptions = true;\n });\n } else {\n this.listenForOtherTabs();\n this.init();\n }\n },\n methods: {\n listenForOtherTabs: function listenForOtherTabs() {\n var _this2 = this;\n\n _IPC.default.on('message', function (e) {\n // respond to other tabs that are looking\n var msg = e.data;\n\n if (msg.type === 'ping' && _this2.networks.length > 0) {\n _IPC.default.send({\n type: 'pong'\n });\n } else if (msg.type === 'addNetwork') {\n var _context;\n\n var network = (0, _find.default)(_context = _this2.networks).call(_context, function (n) {\n return n.name === msg.server;\n });\n\n if (!network) {\n network = _this2.$state.addNetwork(msg.server, msg.nick || 'Guest' + Math.floor(Math.random() * 100), msg);\n }\n\n network.showServerBuffer('settings');\n }\n });\n },\n addEmptyNetwork: function addEmptyNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n network.showServerBuffer('settings');\n },\n findOtherTabs: function findOtherTabs() {\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", new _promise.default(function (resolve, reject) {\n var handleIPCMessage = function handleIPCMessage(e) {\n var msg = e.data;\n\n if (msg.type === 'pong') {\n clearTimeout(timer);\n resolve(true);\n }\n };\n\n var timer = (0, _setTimeout2.default)(function (e) {\n _IPC.default.removeListener('message', handleIPCMessage);\n\n resolve(false);\n }, 200);\n\n _IPC.default.on('message', handleIPCMessage);\n\n _IPC.default.send({\n type: 'ping'\n });\n }));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee);\n }))();\n },\n addNetworkToExistingTab: function addNetworkToExistingTab() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var con = this.server;\n this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n\n _IPC.default.send({\n nick: nick,\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || '',\n type: 'addNetwork'\n });\n\n window.location.hash = '';\n this.addedNetworkToExisting = true;\n },\n addNetwork: function addNetwork() {\n var temporary = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this.server) {\n return;\n }\n\n var con = this.server;\n\n if (temporary) {\n this.$state.persistence.storageKey = null;\n this.$state.persistence.forgetState();\n this.init();\n }\n\n var network = this.$state.getNetworkFromAddress(con.server);\n\n if (!network) {\n network = this.$state.addNetwork(con.server, con.nick || 'Guest' + Math.floor(Math.random() * 100), {\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || ''\n });\n }\n\n window.location.hash = '';\n network.showServerBuffer('settings');\n this.$emit('start', {\n fallbackComponent: this.constructor\n });\n },\n parseFragment: function parseFragment() {\n if (window.location.hash.substr(1)) {\n var fragment = window.location.hash.substr(1); // Check to see if we're dealing with an encoded irc: uri (browsers do this\n // when clicking an IRC link)\n\n var uriCheck = fragment.substr(0, 7).toLowerCase();\n\n if (uriCheck === 'ircs%3a' || uriCheck.substr(0, 6) === 'irc%3a') {\n fragment = decodeURIComponent(fragment);\n }\n\n var connections = Misc.parseIrcUri(fragment);\n var con = connections[0];\n return con;\n }\n\n return null;\n },\n toggleStateBrowser: function toggleStateBrowser() {\n this.$state.$emit('statebrowser.show');\n },\n init: function init() {\n var _this3 = this;\n\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var persistSetting, _context3, controllerNet, bouncer;\n\n return _regenerator.default.wrap(function _callee2$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n if (firstRun) {\n _context4.next = 2;\n break;\n }\n\n return _context4.abrupt(\"return\");\n\n case 2:\n firstRun = false; // persist the buffers in the state by default\n\n persistSetting = _this3.$state.settings.startupOptions.remember_buffers;\n\n if (typeof persistSetting === 'undefined') {\n _this3.$state.persistence.includeBuffers = true;\n } else {\n _this3.$state.persistence.includeBuffers = !!persistSetting;\n }\n\n _this3.$state.persistence.watchStateForChanges();\n\n if (_this3.$state.settings.startupOptions.bouncer) {\n controllerNet = (0, _find.default)(_context3 = _this3.$state.networks).call(_context3, function (n) {\n return n.is_bnc;\n });\n\n if (controllerNet) {\n bouncer = new _BouncerProvider.default(_this3.$state);\n bouncer.enable(controllerNet.connection.server, controllerNet.connection.port, controllerNet.connection.tls, controllerNet.connection.direct, controllerNet.connection.path);\n }\n } // force restricted: false as users need access\n // to network settings to add a network\n\n\n _this3.$state.setSetting('settings.restricted', false);\n\n _this3.$emit('start', {\n fallbackComponent: _this3.constructor\n });\n\n case 9:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee2);\n }))();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"Personal\"]\r\nwindow._kiwi_exports.components.startups.Personal = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _symbol = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/symbol\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _setTimeout3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _setInterval3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-interval\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _i18next = _interopRequireDefault(require(\"i18next\"));\n\nvar _i18nextXhrBackend = _interopRequireDefault(require(\"i18next-xhr-backend\"));\n\nvar _vueI18next = _interopRequireDefault(require(\"@panter/vue-i18next\"));\n\nvar _vueVirtualScroller = _interopRequireDefault(require(\"vue-virtual-scroller\"));\n\nrequire(\"vue-virtual-scroller/dist/vue-virtual-scroller.css\");\n\nrequire(\"whatwg-fetch\");\n\nrequire(\"intersection-observer\");\n\nvar _available = _interopRequireDefault(require(\"@/res/locales/available.json\"));\n\nvar _enUs = _interopRequireDefault(require(\"@/../static/locales/en-us.json\"));\n\nvar _App = _interopRequireDefault(require(\"@/components/App\"));\n\nvar _StartupError = _interopRequireDefault(require(\"@/components/StartupError\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _ConfigLoader = _interopRequireDefault(require(\"@/libs/ConfigLoader\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _InputHandler = _interopRequireDefault(require(\"@/libs/InputHandler\"));\n\nvar _StatePersistence = _interopRequireDefault(require(\"@/libs/StatePersistence\"));\n\nvar Storage = _interopRequireWildcard(require(\"@/libs/storage/Local\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _AudioManager = require(\"@/libs/AudioManager\");\n\nvar _SoundBleep = require(\"@/libs/SoundBleep\");\n\nvar _WindowTitle = _interopRequireDefault(require(\"@/libs/WindowTitle\"));\n\nvar _configTemplates = require(\"@/res/configTemplates\");\n\nrequire(\"@/components/utils/TabbedView\");\n\nrequire(\"@/components/utils/InputText\");\n\nrequire(\"@/components/utils/IrcInput\");\n\nrequire(\"@/components/utils/InputPrompt\");\n\nrequire(\"@/components/utils/InputConfirm\");\n\nrequire(\"@/thirdparty/\");\n\n// fetch polyfill\n// polyfill for vue-virtual-scroller & ie11\n// Global utilities\n_vue.default.use(_vueVirtualScroller.default);\n\nvar logLevelMatch = window.location.href.match(/kiwi-loglevel=(\\d)/);\n\nif (logLevelMatch && logLevelMatch[1]) {\n var newLevel = (0, _parseInt2.default)(logLevelMatch[1], 10);\n\n _Logger.default.setLevel(newLevel);\n\n (0, _Logger.default)('Logging level set to', newLevel);\n}\n\nvar log = _Logger.default.namespace('main'); // Add the global API as soon as possible so that things can start listening to it\n\n\nvar api = window.kiwi = _GlobalApi.default.singleton(); // Third party imports now have access to the state and api\n\n/* eslint-disable import/first */\n\n\nfunction getQueryVariable(variable) {\n var query = window.location.search.substring(1);\n var vars = query.split('&');\n\n for (var i = 0; i < vars.length; i++) {\n var pair = vars[i].split('=');\n\n if (pair[0] === variable) {\n return pair[1];\n }\n }\n\n return false;\n} // Add a handy this.listen() fn to Vue instances. Saves on the need to add an event listener\n// and then manually remove them all the time.\n\n\n_vue.default.mixin({\n beforeDestroy: function beforeDestroy() {\n var _context;\n\n (0, _forEach.default)(_context = this.listeningEvents || []).call(_context, function (fn) {\n return fn();\n });\n },\n methods: {\n listen: function listen(source, event, fn) {\n this.listeningEvents = this.listeningEvents || [];\n\n var off = function off() {\n (source.removeEventListener || source.$off || source.off).call(source, event, fn);\n };\n\n this.listeningEvents.push(off);\n (source.addEventListener || source.$on || source.on).call(source, event, fn);\n return off;\n },\n listenOnce: function listenOnce(source, event, _fn) {\n var fn = _fn;\n this.listeningEvents = this.listeningEvents || [];\n\n var off = function off() {\n (source.removeEventListener || source.$off || source.off).call(source, event, fn);\n };\n\n this.listeningEvents.push(off);\n\n if (source.addEventListener) {\n // Create our own once handler as the DOM doesn't support this itself\n fn = function onceFn() {\n source.removeEventListener(event, onceFn);\n fn.apply(void 0, arguments);\n };\n\n source.addEventListener(event, fn);\n } else {\n (source.$once || source.once).call(source, event, fn);\n }\n\n return off;\n }\n }\n}); // Timer functions that are auto cleaned up when a component is destroyed\n\n\n_vue.default.mixin({\n beforeDestroy: function beforeDestroy() {\n var _context2;\n\n (0, _forEach.default)(_context2 = this.timerEvents || []).call(_context2, function (tmr) {\n return clearTimeout(tmr);\n });\n },\n methods: {\n setInterval: function (_setInterval) {\n function setInterval() {\n return _setInterval.apply(this, arguments);\n }\n\n setInterval.toString = function () {\n return _setInterval.toString();\n };\n\n return setInterval;\n }(function () {\n this.timerEvents = this.timerEvents || [];\n\n var v = _setInterval3.default.apply(void 0, arguments);\n\n this.timerEvents.push(v);\n return v;\n }),\n setTimeout: function (_setTimeout) {\n function setTimeout() {\n return _setTimeout.apply(this, arguments);\n }\n\n setTimeout.toString = function () {\n return _setTimeout.toString();\n };\n\n return setTimeout;\n }(function () {\n this.timerEvents = this.timerEvents || [];\n\n var v = _setTimeout3.default.apply(void 0, arguments);\n\n this.timerEvents.push(v);\n return v;\n })\n }\n}); // Make the state available to all components by default\n\n\n_vue.default.mixin({\n computed: {\n $state: function $state() {\n return (0, _state.default)();\n }\n }\n}); // Allow adding existing raw elements to component templates\n// Eg:
\n// Eg: \n\n\n_vue.default.directive('rawElement', {\n bind: function bind(el, binding) {\n if (binding.value.nodeName) {\n el.appendChild(binding.value);\n } else if (binding.value.el) {\n var rawEl = binding.value.el;\n el.appendChild(rawEl); // Add any data attributes to the raw element\n\n if (binding.value.data) {\n var _context3;\n\n (0, _forEach.default)(_context3 = (0, _keys.default)(binding.value.data)).call(_context3, function (key) {\n rawEl.dataset[key] = binding.value.data[key];\n });\n } // Add any properties to the raw element\n\n\n if (binding.value.props) {\n var _context4;\n\n (0, _forEach.default)(_context4 = (0, _keys.default)(binding.value.props)).call(_context4, function (key) {\n rawEl[key] = binding.value.props[key];\n });\n }\n }\n }\n}); // Register a global custom directive called `v-focus`\n\n\n_vue.default.directive('focus', {\n // Support conditional eg. v-focus=\"false\"\n bind: function bind(el, bindings) {\n el.dataset.focus = bindings.value === undefined || !!bindings.value;\n },\n // When the bound element is inserted into the DOM...\n inserted: function inserted(el) {\n // dataset properties are strings\n if (el.dataset.focus !== 'true') {\n return;\n } // Element is input so focus it\n\n\n if (el.tagName === 'INPUT') {\n el.focus();\n return;\n } // Try to focus the first input element\n\n\n var input = el.getElementsByTagName('input')[0];\n\n if (input) {\n input.focus();\n }\n }\n});\n\nvar ROSymbol = (0, _symbol.default)('resizeobserver');\n\n_vue.default.directive('resizeobserver', {\n bind: function bind(el, bindings) {\n var cb = bindings.value || function noop() {};\n\n el[ROSymbol] = new ResizeObserver(cb);\n el[ROSymbol].observe(el);\n },\n unbind: function unbind(el) {\n el[ROSymbol].unobserve(el);\n }\n});\n\nloadApp();\n\nfunction loadApp() {\n var configFile = 'static/config.json';\n var configObj = null;\n /**\n * Finding the config file\n * In order, looks in the following places:\n * 1. If a 'config' argument is in the query string, static/config_THEVALUE_.json\n * 2. If a window.kiwiConfig function exists, use it's return value as the config object.\n * 3. If a is found, then the content becomes the config\n * URL.\n * 4. If a is found, then the\n * content becomes the config JSON without making another web request.\n */\n\n if (getQueryVariable('config')) {\n configFile = 'static/config_' + getQueryVariable('config') + '.json';\n } else if (typeof window.kiwiConfig === 'function') {\n try {\n configObj = window.kiwiConfig();\n } catch (err) {\n log.error('Config file: ' + err.stack);\n showError();\n }\n } else if (document.querySelector('meta[name=\"kiwiconfig\"]')) {\n configFile = document.querySelector('meta[name=\"kiwiconfig\"]').content;\n } else if (document.querySelector('script[name=\"kiwiconfig\"]')) {\n var configContents = document.querySelector('script[name=\"kiwiconfig\"]').innerHTML;\n\n try {\n configObj = _json.default.parse(configContents);\n } catch (parseErr) {\n log.error('Config file: ' + parseErr.stack);\n showError();\n }\n }\n\n var configLoader = new _ConfigLoader.default();\n configLoader.addValueReplacement('protocol', window.location.protocol).addValueReplacement('wsprotocol', window.location.protocol === 'https:' ? 'wss:' : 'ws:').addValueReplacement('tls', window.location.protocol === 'https:').addValueReplacement('hostname', window.location.hostname).addValueReplacement('host', window.location.host).addValueReplacement('port', window.location.port || (window.location.protocol === 'https:' ? 443 : 80)).addValueReplacement('hash', (window.location.hash || '').substr(1)).addValueReplacement('query', (window.location.search || '').substr(1)).addValueReplacement('referrer', window.document.referrer);\n (configObj ? configLoader.loadFromObj(configObj) : configLoader.loadFromUrl(configFile)).then(applyConfig).then(initState).then(initInputCommands).then(initLocales).then(initThemes).then(loadPlugins).then(initSound).then(startApp).catch(showError);\n}\n\nfunction applyConfig(config) {\n Misc.dedotObject(config); // if we have a config template apply that before other configs\n\n if (_configTemplates.configTemplates[config.template]) {\n applyConfigObj(_configTemplates.configTemplates[config.template], (0, _state.default)().settings);\n }\n\n applyConfigObj(config, (0, _state.default)().settings);\n} // Recursively merge an object onto another via Vue.$set\n\n\nfunction applyConfigObj(obj, target) {\n _lodash.default.each(obj, function (val, key) {\n if ((0, _typeof2.default)(val) === 'object') {\n if ((0, _typeof2.default)(target[key]) !== 'object') {\n // Create the correct type of object\n var newVal = _lodash.default.isArray(val) ? [] : {};\n\n _vue.default.set(target, key, newVal);\n }\n\n applyConfigObj(val, target[key]);\n } else {\n _vue.default.set(target, key, val);\n }\n });\n}\n\nfunction loadPlugins() {\n return new _promise.default(function (resolve, reject) {\n var plugins = (0, _state.default)().settings.plugins || [];\n var pluginIdx = -1;\n loadNextScript();\n\n function loadNextScript(sSrc, fOnload) {\n var _context5;\n\n var plugin = plugins[++pluginIdx];\n\n if (!plugin) {\n resolve();\n return;\n }\n\n if ((0, _indexOf.default)(_context5 = plugin.url).call(_context5, '.js') > -1) {\n // The plugin is a .js file so inject it as a script\n var scr = document.createElement('script');\n\n scr.onerror = function () {\n var _context6;\n\n log.error((0, _concat.default)(_context6 = \"Error loading plugin '\".concat(plugin.name, \"' from '\")).call(_context6, plugin.url, \"'\"));\n loadNextScript();\n };\n\n scr.onload = function () {\n loadNextScript();\n };\n\n document.body.appendChild(scr);\n scr.src = plugin.url;\n } else {\n // Treat the plugin as a HTML document and just inject it into the document\n fetch(plugin.url).then(function (response) {\n return response.text();\n }).then(function (pluginRaw) {\n var el = document.createElement('div');\n el.id = 'kiwi_plugin_' + plugin.name.replace(/[ \"']/g, '');\n el.style.display = 'none';\n el.innerHTML = pluginRaw; // The browser won't execute any script elements so we need to extract them and\n // place them into the DOM using our own script elements\n\n var scripts = (0, _toConsumableArray2.default)(el.querySelectorAll('script')); // IE11 does not support nodes.forEach()\n\n (0, _forEach.default)(scripts).call(scripts, function (limitedScr) {\n limitedScr.parentElement.removeChild(limitedScr);\n var scr = document.createElement('script');\n scr.text = limitedScr.text;\n el.appendChild(scr);\n });\n document.body.appendChild(el);\n loadNextScript();\n }).catch(function () {\n var _context7;\n\n log.error((0, _concat.default)(_context7 = \"Error loading plugin '\".concat(plugin.name, \"' from '\")).call(_context7, plugin.url, \"'\"));\n loadNextScript();\n });\n }\n }\n });\n}\n\nfunction initLocales() {\n _vue.default.use(_vueI18next.default); // Make the translation services available via the global API\n\n\n api.i18n = _i18next.default;\n\n _i18next.default.use(_i18nextXhrBackend.default);\n\n _i18next.default.init({\n whitelist: _available.default.locales,\n fallbackLng: 'en-us',\n lowerCaseLng: true,\n backend: {\n loadPath: 'static/locales/{{lng}}.json',\n // allow cross domain requests\n crossDomain: false,\n // allow credentials on cross domain requests\n withCredentials: false\n },\n interpolation: {\n // We let vuejs handle HTML output escaping\n escapeValue: false\n }\n }); // Build in the english translation so it can be used as a fallback\n\n\n _i18next.default.addResourceBundle('en-us', 'translation', _enUs.default); // Override the $t function so that empty translations fallback to en-us\n\n\n _vue.default.mixin({\n computed: {\n $t: function $t() {\n var _this = this;\n\n return function (key, options) {\n var val = _this.$i18n.i18next.t(key, options, _this.$i18n.i18nLoadedAt);\n\n if (!val) {\n var opts = options || {};\n opts.lng = 'en-us';\n val = _this.$i18n.i18next.t(key, opts, _this.$i18n.i18nLoadedAt);\n }\n\n return val;\n };\n }\n }\n });\n\n var setDefaultLanguage = function setDefaultLanguage() {\n var defaultLang = (0, _state.default)().setting('language');\n var preferredLangs = _lodash.default.clone(window.navigator && window.navigator.languages) || []; // our configs default lang overrides all others\n\n if (defaultLang) {\n preferredLangs.unshift(defaultLang);\n } // set a default language\n\n\n _i18next.default.changeLanguage('en-us'); // Go through our browser languages until we find one that we support\n\n\n for (var idx = 0; idx < preferredLangs.length; idx++) {\n var lang = preferredLangs[idx]; // if this is a language such as 'fr', add a following one of 'fr-fr' to cover\n // both cases\n\n if (lang.length === 2) {\n (0, _splice.default)(preferredLangs).call(preferredLangs, idx + 1, 0, lang + '-' + lang);\n }\n\n if ((0, _includes.default)(_lodash.default).call(_lodash.default, _available.default.locales, lang.toLowerCase())) {\n _i18next.default.changeLanguage(lang, function (err, t) {\n if (err) {\n // setting the language failed so set default again\n _i18next.default.changeLanguage('en-us');\n }\n });\n\n break;\n }\n }\n };\n\n setDefaultLanguage(); // Update the language if the setting changes.\n\n (0, _state.default)().$watch('user_settings.language', function (lang) {\n if (!lang && !(0, _state.default)().setting('language')) {\n setDefaultLanguage();\n } else {\n _i18next.default.changeLanguage(lang || (0, _state.default)().setting('language') || 'en-us');\n }\n });\n}\n\nfunction initState() {\n return _initState.apply(this, arguments);\n}\n\nfunction _initState() {\n _initState = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var stateKey, persistLog, persist;\n return _regenerator.default.wrap(function _callee$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n stateKey = (0, _state.default)().settings.startupOptions.state_key; // Default to a preset key if it wasn't set\n\n if (typeof stateKey === 'undefined') {\n stateKey = 'kiwi-state';\n }\n\n persistLog = _Logger.default.namespace('StatePersistence');\n persist = new _StatePersistence.default(stateKey || '', (0, _state.default)(), Storage, persistLog);\n persist.includeBuffers = !!(0, _state.default)().settings.startupOptions.remember_buffers;\n\n if (!stateKey) {\n _context8.next = 8;\n break;\n }\n\n _context8.next = 8;\n return persist.loadStateIfExists();\n\n case 8:\n api.setState((0, _state.default)());\n\n case 9:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee);\n }));\n return _initState.apply(this, arguments);\n}\n\nfunction initThemes() {\n var themeMgr = _ThemeManager.default.instance((0, _state.default)());\n\n api.setThemeManager(themeMgr);\n var argTheme = getQueryVariable('theme');\n\n if (argTheme) {\n themeMgr.setTheme(argTheme);\n }\n}\n\nfunction initSound() {\n var sound = new _SoundBleep.SoundBleep();\n var bleep = new _AudioManager.AudioManager(sound);\n bleep.listen((0, _state.default)());\n bleep.watchForMessages((0, _state.default)());\n}\n\nfunction initInputCommands() {\n /* eslint-disable no-new */\n new _InputHandler.default((0, _state.default)());\n}\n\nfunction startApp() {\n new _WindowTitle.default((0, _state.default)());\n api.emit('init');\n /* eslint-disable no-new */\n\n new _vue.default({\n el: '#app',\n render: function render(h) {\n return h(_App.default);\n },\n i18n: new _vueI18next.default(_i18next.default)\n });\n api.emit('ready');\n}\n\nfunction showError(err) {\n if (err) {\n log.error('Error starting Kiwi IRC:', err);\n } else {\n log.error('Unknown error starting Kiwi IRC');\n }\n /* eslint-disable no-new */\n\n\n new _vue.default({\n el: '#app',\n render: function render(h) {\n return h(_StartupError.default, {\n props: {\n error: err\n }\n });\n }\n });\n}","\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.configTemplates = void 0;\n\n/**\n * Configuration templates\n *\n * All the default values for config options throughout kiwi are set here, under\n * the 'default' template object below.\n * If a 'default.template' value is set in the user config, this is used to\n * find the next template object below and is merged over the default config\n * template.\n * The user config (config.json by default) is then merged over the resulting\n * config object.\n *\n * The advanced settings dialog also displays these settings by iterating\n * through the keys. The values must not be null otherwise they will not be\n * shown.\n */\nvar configTemplates = {\n default: {\n plugins: [],\n windowTitle: 'Kiwi IRC - The web IRC client',\n useMonospace: false,\n language: '',\n theme: 'Default',\n themes: [{\n name: 'Default',\n url: 'static/themes/default'\n }],\n // Restricted to a single IRC server\n restricted: true,\n // The startup screen\n startupScreen: 'customServer',\n // Where to find the kiwi server\n kiwiServer: '/webirc/kiwiirc/',\n // If active, all connections will be routed via this BNC server. Network settings\n // will be read and updated to the BNC as they are changed.\n bnc: {\n active: false,\n server: '',\n port: 6667,\n tls: false,\n path: '',\n username: '',\n password: ''\n },\n warnOnExit: true,\n quitMessage: 'Page closed',\n // Default buffer settings\n buffers: {\n messageLayout: 'modern',\n alert_on: 'highlight',\n timestamp_format: '%H:%M:%S',\n // If timestamp_full_format is falsy, the browsers locale date format will be used\n timestamp_full_format: '',\n show_timestamps: true,\n scrollback_size: 250,\n show_hostnames: false,\n show_joinparts: true,\n show_topics: true,\n show_nick_changes: true,\n show_mode_changes: true,\n show_presence_changes: true,\n traffic_as_activity: false,\n coloured_nicklist: true,\n colour_nicknames_in_messages: true,\n block_pms: false,\n show_emoticons: true,\n extra_formatting: true,\n mute_sound: false,\n hide_message_counts: false,\n show_realnames: false,\n default_ban_mask: '*!%i@%h',\n default_kick_reason: 'Your behaviour is not conducive to the desired environment.',\n shared_input: false,\n show_message_info: true,\n who_loop: true,\n share_typing: true,\n // flash_title: message/highlight/off\n flash_title: 'message',\n nicklist_avatars: false,\n show_link_previews: true,\n inline_link_auto_previews: true,\n inline_link_auto_preview_whitelist: '.*'\n },\n // Startup screen default\n startupOptions: {\n server: '',\n port: 6667,\n tls: false,\n channel: '',\n nick: 'kiwi_?',\n direct: false,\n state_key: 'kiwi-state',\n remember_buffers: true,\n nick_format: ''\n },\n autoReconnect: false,\n disconnectOnSaslFail: true,\n allowRegisterProtocolHandler: false,\n noticeActiveBuffer: true,\n nicklistGroupAway: false,\n showChanlistModes: false,\n showAutocomplete: true,\n showEmojiPicker: true,\n showColorPicker: false,\n showSendButton: false,\n showAwayStatusIndicators: true,\n sidebarDefault: 'nicklist',\n showRaw: false,\n useBufferHistory: true,\n hideSettings: null,\n highlights: '',\n teamHighlights: false,\n aliases: \"\\n# General aliases\\n/p /part $1+\\n/me /action $destination $1+\\n/j /join $1+\\n/q /query $1+\\n/w /whois $1+\\n/raw /quote $1+\\n/connect /server $1+\\n/disconnect /quit $1+\\n/cycle $channel? /lines /part $channel | /join $channel\\n/active /back $1+\\n/umode /mode $nick $1+\\n\\n# Op related aliases\\n/op /quote mode $channel +o $1+\\n/deop /quote mode $channel -o $1+\\n/hop /quote mode $channel +h $1+\\n/dehop /quote mode $channel -h $1+\\n/voice /quote mode $channel +v $1+\\n/devoice /quote mode $channel -v $1+\\n/k /kick $channel $1+\\n/bans /mode $channel +b\\n/ban /quote mode $channel +b $1+\\n/unban /quote mode $channel -b $1+\\n\\n# Misc aliases\\n/slap /me slaps $1 around a bit with a large trout\\n/tick /msg $channel \\u2714\",\n embedly: {\n Key: ''\n },\n\n /* eslint-disable quote-props */\n emojis: {\n '-___-': '1f611',\n ':\\'-)': '1f602',\n '\\':-)': '1f605',\n '\\':-D': '1f605',\n '>:-)': '1f606',\n '\\':-(': '1f613',\n '>:-(': '1f620',\n ':\\'-(': '1f622',\n 'O:-)': '1f607',\n '0:-3': '1f607',\n '0:-)': '1f607',\n '0;^)': '1f607',\n 'O;-)': '1f607',\n '0;-)': '1f607',\n 'O:-3': '1f607',\n '-__-': '1f611',\n ':-Þ': '1f61b',\n '<3': '2764',\n '3': '1f494',\n ':\\')': '1f602',\n ':-D': '1f603',\n '\\':)': '1f605',\n '\\'=)': '1f605',\n '\\':D': '1f605',\n '\\'=D': '1f605',\n '>:)': '1f606',\n '>;)': '1f606',\n '>=)': '1f606',\n 'XD': '1f606',\n ';-)': '1f609',\n '*-)': '1f609',\n ';-]': '1f609',\n ';^)': '1f609',\n '\\':(': '1f613',\n '\\'=(': '1f613',\n ':-*': '1f618',\n ':^*': '1f618',\n '>:P': '1f61c',\n 'X-P': '1f61c',\n '>:[': '1f61e',\n ':-(': '1f61e',\n ':-[': '1f61e',\n '>:(': '1f620',\n ':\\'(': '1f622',\n ';-(': '1f622',\n '>.<': '1f623',\n '#-)': '1f635',\n '%-)': '1f635',\n 'X-)': '1f635',\n '\\\\0/': '1f646',\n '\\\\O/': '1f646',\n '0:3': '1f607',\n '0:)': '1f607',\n 'O:)': '1f607',\n 'O=)': '1f607',\n 'O:3': '1f607',\n 'B-)': '1f60e',\n '8-)': '1f60e',\n 'B-D': '1f60e',\n '8-D': '1f60e',\n '-_-': '1f611',\n '>:\\\\': '1f615',\n '>:/': '1f615',\n ':-/': '1f615',\n ':-.': '1f615',\n ':-P': '1f61b',\n ':Þ': '1f61b',\n ':-b': '1f61b',\n ':-O': '1f62e',\n 'O_O': '1f62e',\n '>:O': '1f62e',\n ':-X': '1f636',\n ':-#': '1f636',\n ':-)': '1f642',\n '(y)': '1f44d',\n ':D': '1f603',\n '=D': '1f603',\n ';)': '1f609',\n '*)': '1f609',\n ';]': '1f609',\n ';D': '1f609',\n ':*': '1f618',\n '=*': '1f618',\n ':(': '1f61e',\n ':[': '1f61e',\n '=(': '1f61e',\n ':@': '1f620',\n ';(': '1f622',\n 'D:': '1f628',\n ':$': '1f633',\n '=$': '1f633',\n '#)': '1f635',\n '%)': '1f635',\n 'X)': '1f635',\n 'B)': '1f60e',\n '8)': '1f60e',\n ':/': '1f615',\n ':\\\\': '1f615',\n '=/': '1f615',\n '=\\\\': '1f615',\n ':L': '1f615',\n '=L': '1f615',\n ':P': '1f61b',\n ':p': '1f61b',\n '=P': '1f61b',\n ':b': '1f61b',\n ':O': '1f62e',\n ':X': '1f636',\n ':#': '1f636',\n '=X': '1f636',\n '=#': '1f636',\n ':)': '1f642',\n '=]': '1f642',\n '=)': '1f642',\n ':]': '1f642'\n },\n emojiLocation: 'https://kiwiirc.com/shared/emoji/',\n textFormats: {\n user: '%nick',\n user_full: '%nick (%username@%host)',\n channel_join: '→ %text',\n channel_part: '← %text (%reason)',\n channel_quit: '← %text (%reason)',\n channel_kicked: '← %text (%reason)',\n channel_selfkick: '× %text (%reason)',\n channel_badpassword: '× %text',\n channel_topic: 'ⓘ %text',\n channel_banned: '× %text',\n channel_badkey: '⚠ %text',\n channel_inviteonly: '⚠ %channel %text',\n channel_alreadyin: '⚠ %nick %text',\n channel_limitreached: '⚠ %channel %text',\n channel_invalid_name: '⚠ %channel %text',\n channel_topic_setby: 'ⓘ %text',\n channel_has_been_invited: 'ⓘ %nick %text',\n server_connecting: '%text',\n server_connecting_error: '%text',\n mode: 'ⓘ %text',\n selfmode: 'ⓘ %nick %text',\n nickname_alreadyinuse: '⚠ %text',\n network_disconnected: '%text',\n network_connected: '%text',\n whois_channels: '%text',\n whois_idle_and_signon: '%text',\n whois_away: '%text',\n whois_server: '%text',\n whois_idle: '%text',\n whois_notfound: 'ⓘ %text',\n nick_changed: 'ⓘ %text',\n applet_notfound: '⚠ %text',\n encoding_changed: 'ⓘ %text',\n encoding_invalid: '⚠ %text',\n settings_saved: 'ⓘ %text',\n ignore_title: '%text:',\n ignore_none: '%text',\n ignore_nick: '%text',\n ignore_stop_notice: '%text',\n ignore_stopped: '%text',\n chanop_privs_needed: '⚠ %text',\n no_such_nick: 'ⓘ %nick: %text',\n unknown_command: 'ⓘ %text',\n motd: '%text',\n ctcp_response: '[CTCP %nick reply] %message',\n ctcp_request: '[CTCP %nick] %message',\n privmsg: '%text',\n notice: '[NOTICE] %text',\n action: '* %nick %text',\n whois_ident: '%nick [%nick!%ident@%host] * %text',\n whois_error: '[%nick] %text',\n whois: '%text',\n whowas_ident: 'was [%nick!%ident@%host] * %name',\n whowas_server: 'using %server (%info)',\n whowas_error: '[%nick] %text',\n who: '%nick [%nick!%ident@%host] * %realname',\n quit: '%text',\n rejoin: '%text',\n set_setting: 'ⓘ %text',\n list_aliases: 'ⓘ %text',\n ignored_pattern: 'ⓘ %text',\n wallops: '[WALLOPS] %text',\n message_nick: '%prefix%nick',\n general_error: '%text'\n },\n presetNetworks: []\n },\n // Config template for those hardcore irc veterans\n irc: {\n showEmojiPicker: false,\n sidebarDefault: 'nicklist',\n buffers: {\n messageLayout: 'inline',\n show_hostnames: true,\n coloured_nicklist: false,\n colour_nicknames_in_messages: false,\n show_emoticons: false,\n show_message_info: false,\n share_typing: false,\n inline_link_auto_previews: false\n }\n },\n // Config template for working as part of a team\n team: {\n teamHighlights: true,\n buffers: {\n messageLayout: 'modern',\n show_joinparts: false,\n show_nick_changes: true,\n show_mode_changes: true,\n show_realnames: true\n }\n }\n};\nexports.configTemplates = configTemplates;","import { render, staticRenderFns } from \"./ChannelInfo.vue?vue&type=template&id=118a686e&\"\nimport script from \"./ChannelInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./ChannelInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _url = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/url\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Captcha = _interopRequireDefault(require(\"@/components/Captcha\"));\n\nvar _ServerSelector = _interopRequireDefault(require(\"./ServerSelector\"));\n\nvar _default = {\n components: {\n ServerSelector: _ServerSelector.default,\n Captcha: _Captcha.default\n },\n props: ['network'],\n data: function data() {\n return {\n server_type: 'network',\n znc_username: '',\n znc_network: '',\n znc_password: '',\n show_advanced: false,\n switch_tabs_on_connect: false,\n network_list: []\n };\n },\n computed: {\n settingShowRaw: {\n get: function get() {\n return this.network.setting('show_raw');\n },\n set: function set(val) {\n return this.network.setting('show_raw', val);\n }\n },\n directWs: {\n get: function get() {\n if (!this.network.connection.direct) {\n return '';\n }\n\n var connection = this.network.connection;\n var addr = '';\n addr += connection.tls ? 'wss://' : 'ws://';\n addr += connection.server;\n var port = (0, _parseInt2.default)(connection.port, 10);\n\n if ((0, _isNan.default)(port)) {\n port = connection.tls ? 443 : 80;\n } // Only include the port if needed\n\n\n if (connection.tls && port !== 443 || !connection.tls && port !== 80) {\n addr += ':' + connection.port;\n }\n\n addr += connection.path;\n return addr;\n },\n set: function set(newVal) {\n var url = null;\n\n try {\n url = new _url.default(newVal);\n } catch (e) {\n return;\n }\n\n var connection = this.network.connection;\n connection.tls = url.protocol.toLowerCase() === 'wss:';\n connection.server = url.hostname;\n var port = (0, _parseInt2.default)(url.port, 10);\n\n if ((0, _isNan.default)(port)) {\n port = url.protocol.toLowerCase() === 'wss:' ? 443 : 80;\n }\n\n connection.port = port;\n var u = url.href.replace(url.protocol + '//', '');\n connection.path = u.substr((0, _indexOf.default)(u).call(u, '/'));\n }\n }\n },\n watch: {\n znc_username: function znc_username() {\n this.setZncPass();\n },\n znc_network: function znc_network() {\n this.setZncPass();\n },\n znc_password: function znc_password() {\n this.setZncPass();\n },\n 'network.state': function networkState() {\n if (!this.switch_tabs_on_connect) {\n return;\n }\n\n if (this.network.state === 'connected') {\n this.switch_tabs_on_connect = false;\n this.$state.$emit('server.tab.show', 'messages');\n } else if (this.network.state_error) {\n this.switch_tabs_on_connect = false;\n }\n }\n },\n created: function created() {\n var isZnc = !!(this.network.connection.password || '').match(/^(.*)\\/(.*):(.*)$/);\n this.server_type = isZnc ? 'znc' : 'network';\n\n if (isZnc) {\n var match = (this.network.connection.password || '').match(/^(.*)\\/(.*):(.*)$/);\n this.znc_username = match[1] || '';\n this.znc_network = match[2] || '';\n this.znc_password = match[3] || '';\n }\n\n this.network_list = this.$state.setting('presetNetworks') || [];\n },\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n connect: function connect() {\n this.switch_tabs_on_connect = true;\n this.network.ircClient.connect();\n },\n reconnect: function reconnect() {\n this.network.ircClient.connect();\n },\n removeNetwork: function removeNetwork() {\n /* eslint-disable no-restricted-globals, no-alert */\n var confirmed = confirm('Really remove this network? This cannot be undone!');\n\n if (!confirmed) {\n return;\n }\n\n this.$state.removeNetwork(this.network.id);\n this.$state.$emit('active.component');\n },\n setZncPass: function setZncPass() {\n var _context, _context2;\n\n var newPass = (0, _concat.default)(_context = (0, _concat.default)(_context2 = \"\".concat(this.znc_username, \"/\")).call(_context2, this.znc_network, \":\")).call(_context, this.znc_password);\n this.network.connection.password = newPass;\n this.network.connection.nick = this.znc_username;\n },\n toggleTls: function toggleTls() {\n var connection = this.network.connection;\n connection.tls = !connection.tls; // Switching the port only if were currently using the most common TLS/plain text ports\n\n if (connection.tls && connection.port === 6667) {\n connection.port = 6697;\n } else if (!connection.tls && connection.port === 6697) {\n connection.port = 6667;\n }\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"NetworkSettings\"]\r\nwindow._kiwi_exports.components.NetworkSettings = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelBanlist.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelBanlist.vue?vue&type=style&index=0&lang=less&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _default2 = {\n props: {\n usePreset: {\n type: Boolean,\n default: true\n },\n networkList: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n connection: {\n type: Object,\n default: function _default() {}\n }\n },\n data: function data() {\n return {\n name: '',\n presetNetworks: [],\n showCustom: true,\n willEmit: false\n };\n },\n computed: {\n presetServer: {\n set: function set(newVal) {\n if (newVal === 'custom') {\n this.name = '';\n this.connection.server = '';\n this.connection.port = 6697;\n this.connection.tls = true;\n this.showCustom = true;\n } else {\n var addr = Misc.parsePresetServer(newVal);\n this.name = addr.name;\n this.connection.server = addr.server;\n this.connection.port = addr.port;\n this.connection.tls = addr.tls;\n this.showCustom = false;\n }\n },\n get: function get() {\n return this.showCustom ? 'custom' : this.toUri(this.connection);\n }\n }\n },\n created: function created() {\n if (this.networkList) {\n this.importUris(this.networkList);\n } // If the given network is in the preset server list, select it\n\n\n var con = this.connection;\n\n if ((0, _find.default)(_lodash.default).call(_lodash.default, this.presetNetworks, function (s) {\n var match = s.server === con.server && s.port === con.port && s.tls === con.tls;\n return match;\n })) {\n this.showCustom = false;\n }\n },\n methods: {\n toUri: function toUri(s) {\n var _context, _context2;\n\n return (0, _concat.default)(_context = (0, _concat.default)(_context2 = \"\".concat(s.server, \":\")).call(_context2, s.tls ? '+' : '')).call(_context, s.port);\n },\n toggleTls: function toggleTls() {\n this.connection.tls = !this.connection.tls; // Switching the port only if were currently using the most common TLS/plain text ports\n\n if (this.connection.tls && this.connection.port === 6667) {\n this.connection.port = 6697;\n } else if (!this.connection.tls && this.connection.port === 6697) {\n this.connection.port = 6667;\n }\n },\n importUris: function importUris(serverList) {\n // [ 'freenode|irc.freenode.net:+6697', 'irc.snoonet.org:6667' ]\n var servers = (0, _map.default)(serverList).call(serverList, function (s) {\n return Misc.parsePresetServer(s);\n });\n this.$set(this, 'presetNetworks', servers);\n }\n }\n};\nexports.default = _default2;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ServerSelector\"]\r\nwindow._kiwi_exports.components.ServerSelector = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.linkifyChannels = linkifyChannels;\nexports.createNickColour = createNickColour;\nexports.toInt = toInt;\nexports.hexVal = hexVal;\nexports.mapRange = mapRange;\nexports.formatAndT = formatAndT;\nexports.formatUser = formatUser;\nexports.formatUserFull = formatUserFull;\nexports.formatText = formatText;\nexports.formatDuration = formatDuration;\nexports.formatNumber = formatNumber;\nexports.t = t;\nexports.channelRegex = exports.urlRegex = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _parseFloat2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-float\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar ipRegex = _interopRequireWildcard(require(\"ip-regex\"));\n\nvar _i18next = _interopRequireDefault(require(\"i18next\"));\n\nvar murmurhash3 = _interopRequireWildcard(require(\"murmurhash3js\"));\n\nvar urlRegex = new RegExp( // Detect either a protocol or 'www.' to start a URL\n/(([A-Za-z][A-Za-z0-9-]*:\\/\\/)|(www\\.))/.source + '(' + // Hostname and tld\n/([\\w\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF.-]+\\.[a-zA-Z]{2,63})/.source + '|' + // IPv4 address\nipRegex.v4().source + '|' + // IPv6 address\n'(\\\\[?' + ipRegex.v6().source + '\\\\]?)' + ')' + // Optional port..\n/(:[0-9]+)?/.source + // Optional path..\n/(\\/[\\w\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF!:.?$'()[\\]*,;~+=&%@!\\-/]*)?/.source + // Optional fragment\n/(#.*)?/.source, 'i');\nexports.urlRegex = urlRegex;\nvar channelRegex = /(^|\\s)([@+~&%}]*)([#&][^ .,\\007<>\\n\\r]+?)([:;.,<>\\n\\r]+)?$/i;\nexports.channelRegex = channelRegex;\n\nfunction linkifyChannels(word) {\n // \"@#kiwiirc,\" = 3 parts. (prefix=@)(channel=#kiwiirc)(suffix=,)\n return word.replace(channelRegex, function (match, mLead, mPrefix, mChannel, mSuffix) {\n var _context, _context2, _context3, _context4;\n\n var chan = _lodash.default.escape((0, _trim.default)(mChannel).call(mChannel));\n\n var lead = _lodash.default.escape(mLead);\n\n var prefix = _lodash.default.escape(mPrefix);\n\n var suffix = _lodash.default.escape(mSuffix);\n\n var link = (0, _concat.default)(_context = \"\")).call(_context, chan, \"\");\n return (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = \"\".concat(lead)).call(_context4, prefix)).call(_context3, link)).call(_context2, suffix);\n });\n}\n/**\n * Convert a nickname string to a colour code\n * Uses these properties from the CSS theme file:\n * --kiwi-nickcolour-count: 200; - number of available nick colours\n * --kiwi-nickcolour-hueoffset: 0; - moves the hue value by hueoffset amounts\n * --kiwi-nickcolour-saturation: 70; - the nick saturation in HSL value\n * --kiwi-nickcolour-lightness: 40; - the nick lightness in HSL value\n */\n\n\nfunction createNickColour(nick) {\n var _context5, _context6;\n\n var themeMngr = _ThemeManager.default.instance();\n\n var nickLower = (nick || '').toLowerCase();\n var nickNum = murmurhash3.x86.hash32(nickLower);\n var bucketSize = toInt(themeMngr.themeVar('nickcolour-count')) || 200;\n var hueOffset = toInt(themeMngr.themeVar('nickcolour-hueoffset'));\n var hsl = {\n h: mapRange(Math.abs(nickNum) % bucketSize, 0, bucketSize, 0, 360) + hueOffset,\n s: toInt(themeMngr.themeVar('nickcolour-saturation')) || 70,\n l: toInt(themeMngr.themeVar('nickcolour-lightness')) || 40\n };\n return (0, _concat.default)(_context5 = (0, _concat.default)(_context6 = \"hsl(\".concat(hsl.h, \", \")).call(_context6, hsl.s, \"%, \")).call(_context5, hsl.l, \"%)\");\n}\n/**\n * Parse a string to an int, where NaN is 0\n * @param {string} inp\n */\n\n\nfunction toInt(inp) {\n var int = (0, _parseInt2.default)(inp, 10);\n\n if ((0, _isNan.default)(int)) {\n int = 0;\n }\n\n return int;\n}\n/**\n * Extract a substring from a hex string and parse it as an integer\n * @param {string} hash - Source hex string\n * @param {number} index - Start index of substring\n * @param {number} [length] - Length of substring. Defaults to 1.\n */\n\n\nfunction hexVal(hash, index, len) {\n return (0, _parseInt2.default)(hash.substr(index, len || 1), 16);\n}\n/*\n * Re-maps a number from one range to another\n * http://processing.org/reference/map_.html\n */\n\n\nfunction mapRange(value, vMin, vMax, dMin, dMax) {\n var vValue = (0, _parseFloat2.default)(value);\n var vRange = vMax - vMin;\n var dRange = dMax - dMin;\n return (vValue - vMin) * dRange / vRange + dMin;\n}\n/**\n * Format a string according to the configured textFormats, including a\n * translation for the %text formatting variable\n */\n\n\nfunction formatAndT(formatId, formatParams, localeId, localeParams) {\n var body = t(localeId, localeParams);\n\n if (formatParams) {\n formatParams.text = body;\n body = formatText(formatId, formatParams);\n } else {\n body = formatText(formatId, {\n text: body\n });\n }\n\n return body;\n}\n/**\n * Create a user reference string similar to 'nick'\n */\n\n\nfunction formatUser(fNick) {\n var nick = fNick; // Allow passing of a user object or irc-framework event\n\n if ((0, _typeof2.default)(nick) === 'object') {\n nick = nick.nick;\n }\n\n return formatText('user', {\n nick: nick\n });\n}\n/**\n * Create a full user reference similar to 'nick (user@host)'\n */\n\n\nfunction formatUserFull(fNick, fUsername, fHost) {\n var nick = '';\n var username = '';\n var host = ''; // Allow passing of a user object or irc-framework event\n\n if ((0, _typeof2.default)(fNick) === 'object') {\n var user = fNick;\n nick = user.nick;\n username = user.username || user.ident;\n host = user.hostname || user.host;\n } else {\n nick = fNick;\n username = fUsername;\n host = fHost;\n }\n\n return formatText('user_full', {\n nick: nick,\n username: username,\n host: host\n });\n}\n/**\n * Format a string according to the configured textFormats\n */\n\n\nfunction formatText(formatId, formatParams) {\n var format = (0, _state.default)().setting('textFormats.' + formatId);\n var params = formatParams; // Most texts only have a 'text' variable so allow passing of a string for this\n // variable as shorthand.\n\n if (typeof params === 'string') {\n params = {\n text: params\n };\n } // Expand a user mask into its individual parts (nick, ident, hostname)\n\n\n if (params.user) {\n params.nick = params.user.nick || '';\n params.username = params.user.username || '';\n params.host = params.user.hostname || '';\n params.prefix = params.user.prefix || '';\n } // Do the magic. Use the %shorthand syntax to produce output.\n\n\n var result = format.replace(/%([A-Z]{2,})/ig, function (match, key) {\n var ret = '';\n\n if (typeof params[key] !== 'undefined') {\n ret = params[key];\n }\n\n return ret;\n });\n return result;\n} // Convert a given duration in seconds to human readable weeks,days,hours,minutes,seconds\n// only showing the duration parts that are used eg 3666 --> 1 hour, 1 minute, 6 seconds\n\n\nfunction formatDuration(timeSeconds) {\n var seconds = timeSeconds;\n var weeks = Math.floor(seconds / (3600 * 24 * 7));\n seconds -= weeks * 3600 * 24 * 7;\n var days = Math.floor(seconds / (3600 * 24));\n seconds -= days * 3600 * 24;\n var hours = Math.floor(seconds / 3600);\n seconds -= hours * 3600;\n var minutes = Math.floor(seconds / 60);\n seconds -= minutes * 60;\n var tmp = [];\n weeks && tmp.push(t('week', {\n count: weeks\n }));\n (weeks || days) && tmp.push(t('day', {\n count: days\n }));\n (days || hours) && tmp.push(t('hour', {\n count: hours\n }));\n (days || hours || minutes) && tmp.push(t('minute', {\n count: minutes\n }));\n tmp.push(t('second', {\n count: seconds\n }));\n return tmp.join(' ');\n}\n\nfunction formatNumber(num) {\n return num.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,');\n}\n\nfunction t(key, options) {\n var val = _i18next.default.t(key, options);\n\n if (!val) {\n var opts = options || {};\n opts.lng = 'en-us';\n val = _i18next.default.t(key, opts);\n }\n\n return val;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"TextFormatting\"]\r\nwindow._kiwi_exports.helpers.TextFormatting = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-buffersettings\"},[_c('div',{staticClass:\"kiwi-buffersettings-alerts\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('settings_notify')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"message\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"message\")},on:{\"change\":function($event){_vm.settingAlertOn=\"message\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_all')))])]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"highlight\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"highlight\")},on:{\"change\":function($event){_vm.settingAlertOn=\"highlight\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_mentioned')))])]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"never\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"never\")},on:{\"change\":function($event){_vm.settingAlertOn=\"never\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_never')))])])]),_c('h3',[_vm._v(_vm._s(_vm.$t('settings')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_mute')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingMuteSound),expression:\"settingMuteSound\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingMuteSound)?_vm._i(_vm.settingMuteSound,null)>-1:(_vm.settingMuteSound)},on:{\"change\":function($event){var $$a=_vm.settingMuteSound,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingMuteSound=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingMuteSound=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingMuteSound=$$c}}}})]),_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('settings_show_message_counts')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingHideMessageCount),expression:\"settingHideMessageCount\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingHideMessageCount)?_vm._i(_vm.settingHideMessageCount,null)>-1:(_vm.settingHideMessageCount)},on:{\"change\":function($event){var $$a=_vm.settingHideMessageCount,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingHideMessageCount=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingHideMessageCount=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingHideMessageCount=$$c}}}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TextStyle.vue?vue&type=template&id=2a7204ee&\"\nimport script from \"./TextStyle.vue?vue&type=script&lang=js&\"\nexport * from \"./TextStyle.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TextStyle.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty2 = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty2(exports, \"__esModule\", {\n value: true\n});\n\nexports.create = create;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\"));\n\nvar _defineProperties = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-properties\"));\n\nvar _getOwnPropertyDescriptors = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors\"));\n\nvar _getOwnPropertyDescriptor = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\"));\n\nvar _getOwnPropertySymbols = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/slicedToArray\"));\n\nvar _entries = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/entries\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _defineProperty3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/defineProperty\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _ircFramework = _interopRequireDefault(require(\"irc-framework\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar IrcdDiffs = _interopRequireWildcard(require(\"@/helpers/IrcdDiffs\"));\n\nvar _TypingMiddleware = _interopRequireDefault(require(\"./TypingMiddleware\"));\n\nvar _ChathistoryMiddleware = _interopRequireDefault(require(\"./ChathistoryMiddleware\"));\n\nvar ServerConnection = _interopRequireWildcard(require(\"./ServerConnection\"));\n\nfunction ownKeys(object, enumerableOnly) { var keys = (0, _keys.default)(object); if (_getOwnPropertySymbols.default) { var symbols = (0, _getOwnPropertySymbols.default)(object); if (enumerableOnly) symbols = (0, _filter.default)(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor.default)(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context27; (0, _forEach.default)(_context27 = ownKeys(Object(source), true)).call(_context27, function (key) { (0, _defineProperty3.default)(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors.default) { (0, _defineProperties.default)(target, (0, _getOwnPropertyDescriptors.default)(source)); } else { var _context28; (0, _forEach.default)(_context28 = ownKeys(Object(source))).call(_context28, function (key) { (0, _defineProperty2.default)(target, key, (0, _getOwnPropertyDescriptor.default)(source, key)); }); } } return target; }\n\nfunction create(state, network) {\n var networkid = network.id;\n var ircClient = new _ircFramework.default.Client({\n // Most options are set under the overloaded .connect()\n version: null,\n enable_chghost: true,\n enable_setname: true,\n message_max_length: 350\n });\n ircClient.requestCap('znc.in/self-message');\n ircClient.use((0, _ChathistoryMiddleware.default)());\n ircClient.use(clientMiddleware(state, network));\n ircClient.use((0, _TypingMiddleware.default)()); // Overload the connect() function to make sure we are connecting with the\n // most recent connection details from the network state\n\n var originalIrcClientConnect = ircClient.connect;\n\n ircClient.connect = function connect() {\n // Set some defaults if we don't have eveything\n if (!network.connection.nick) {\n network.connection.nick = 'Guest' + Math.floor(Math.random() * 100);\n }\n\n ircClient.options.host = network.connection.server;\n ircClient.options.port = network.connection.port;\n ircClient.options.tls = network.connection.tls;\n ircClient.options.path = network.connection.path;\n ircClient.options.password = network.connection.password;\n\n if (network.password) {\n ircClient.options.account = {\n account: network.connection.nick,\n password: network.password\n };\n } else {\n // No password so give an empty account config. This forces irc-framework to keep\n // the server password (options.password) separate from SASL\n ircClient.options.account = {};\n }\n\n ircClient.options.nick = network.connection.nick;\n ircClient.options.username = network.username || network.connection.nick;\n ircClient.options.gecos = network.gecos || 'https://kiwiirc.com/';\n ircClient.options.encoding = network.connection.encoding;\n ircClient.options.auto_reconnect = !!state.setting('autoReconnect'); // Apply any irc-fw options specified in kiwiirc config\n\n var configOptions = state.setting('ircFramework');\n\n if (configOptions) {\n (0, _assign.default)(ircClient.options, configOptions);\n }\n\n var eventObj = {\n network: network,\n transport: null\n };\n state.$emit('network.connecting', eventObj);\n\n if (eventObj.transport) {\n // A plugin might use its own transport of some kind\n ircClient.options.transport = eventObj.transport;\n } else if (!network.connection.direct) {\n // A direct connection uses a websocket to connect (note: some browsers limit\n // the number of connections to the same host!).\n // A non-direct connection will connect via the configured kiwi server using\n // with our own irc-framework compatible transport.\n ircClient.options.transport = ServerConnection.createChannelConstructor(state.settings.kiwiServer, (window.location.hash || '').substr(1), networkid);\n } else {\n // Use the irc-framework default transport\n ircClient.options.transport = undefined;\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n originalIrcClientConnect.apply(ircClient, args);\n }; // Overload the raw() function so that we can emit outgoing IRC messages to plugins\n\n\n var originalIrcClientRaw = ircClient.raw;\n\n ircClient.raw = function raw() {\n var message = null;\n\n if ((arguments.length <= 0 ? undefined : arguments[0]) instanceof _ircFramework.default.Message) {\n message = arguments.length <= 0 ? undefined : arguments[0];\n } else {\n var rawString = ircClient.rawString.apply(ircClient, arguments);\n message = _ircFramework.default.ircLineParser(rawString);\n }\n\n var eventObj = {\n network: network,\n message: message,\n handled: false\n };\n state.$emit('ircout', eventObj);\n\n if (!eventObj.handled) {\n originalIrcClientRaw.apply(ircClient, [message]);\n }\n };\n\n ircClient.on('raw', function (event) {\n if (!network.setting('show_raw') && !state.setting('showRaw')) {\n return;\n }\n\n var buffer = state.getOrAddBufferByName(networkid, '*raw');\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: '',\n message: (event.from_server ? '[S] ' : '[C] ') + event.line\n });\n });\n ircClient.on('typing', function (event) {\n var user = state.getUser(network.id, event.nick);\n\n if (user) {\n user.typingStatus(event.target, event.status);\n }\n });\n return ircClient;\n}\n\nfunction clientMiddleware(state, network) {\n var networkid = network.id; // eslint-disable-next-line\n\n var numConnects = 0;\n var isRegistered = false;\n return function middlewareFn(client, rawEvents, parsedEvents) {\n parsedEvents.use(parsedEventsHandler);\n rawEvents.use(rawEventsHandler);\n client.on('connecting', function () {\n network.state_error = '';\n network.state = 'connecting';\n network.last_error = '';\n network.last_error_numeric = 0;\n });\n client.on('connected', function () {\n network.state_error = '';\n network.state = 'connected';\n });\n client.on('socket close', function (err) {\n var _context;\n\n isRegistered = false;\n network.state = 'disconnected';\n network.state_error = err || '';\n (0, _forEach.default)(_context = network.buffers).call(_context, function (buffer) {\n if (!buffer) {\n return;\n }\n\n buffer.joined = false;\n buffer.clearUsers();\n });\n });\n };\n\n function rawEventsHandler(command, event, rawLine, client, next) {\n // Allow plugins to override raw IRC events\n var eventObj = _objectSpread(_objectSpread({}, event), {}, {\n raw: rawLine,\n handled: false\n });\n\n state.$emit('irc.raw', command, eventObj, network);\n\n if (eventObj.handled) {\n return;\n }\n\n state.$emit('irc.raw.' + command, command, eventObj, network);\n\n if (eventObj.handled) {\n return;\n }\n\n if (command === '002') {\n // Your host is server.example.net, running version InspIRCd-2.0\n var param = event.params[1] || '';\n var m = param.match(/running version (.*)$/);\n network.ircd = m ? m[1] : '';\n } // SASL failed auth\n\n\n if (command === '904') {\n if (!network.state !== 'connected') {\n network.last_error = 'Invalid login';\n\n if (state.setting('disconnectOnSaslFail')) {\n network.ircClient.connection.end();\n }\n }\n\n var serverBuffer = network.serverBuffer();\n state.addMessage(serverBuffer, {\n time: (0, _now.default)(),\n nick: '*',\n message: 'Invalid login'\n });\n }\n\n if (command === 'CAP' && network.setting('show_raw_caps')) {\n var _context2;\n\n var params = (0, _toConsumableArray2.default)(event.params);\n\n if ((0, _indexOf.default)(_context2 = params[params.length - 1]).call(_context2, ' ') > -1) {\n params[params.length - 1] = ':' + params[params.length - 1];\n }\n\n var buffer = network.serverBuffer();\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: '',\n message: event.command + ' ' + params.join(' ')\n });\n }\n\n next();\n }\n\n function parsedEventsHandler(command, event, client, next) {\n // Trigger this event through the state object first. If it's been handled\n // somewhere else then we ignore it.\n var ircEventObj = {\n handled: false\n };\n state.$emit('irc.' + command, event, network, ircEventObj);\n\n if (ircEventObj.handled) {\n next();\n return;\n } // Ignore any of the control messages. They're transport related to kiwi internals\n\n\n if (event && event.command === 'CONTROL') {\n next();\n return;\n } // If there is a time difference between this client and the server, convert it\n // to match our local time so it makes sense to the user\n\n\n var eventTime = event && event.time ? network.ircClient.network.timeToLocal(event.time) : (0, _now.default)();\n var serverTime = event && event.time || 0;\n\n if (command === 'channel_redirect') {\n var b = network.bufferByName(event.from);\n\n if (b) {\n (0, _flags.default)(b).redirect_to = event.to;\n }\n }\n\n if (command === 'registered') {\n isRegistered = true;\n network.nick = event.nick;\n state.addUser(networkid, {\n nick: event.nick,\n username: client.user.username\n });\n var serverBuffer = network.serverBuffer();\n state.addMessage(serverBuffer, {\n time: (0, _now.default)(),\n nick: '',\n message: TextFormatting.t('connected_to', {\n network: client.network.name\n })\n }); // Get some extra info about ourselves\n\n client.raw('WHO ' + event.nick);\n\n if (network.auto_commands) {\n var _context3;\n\n (0, _forEach.default)(_context3 = network.auto_commands.split('\\n')).call(_context3, function (line) {\n state.$emit('input.raw', line[0] === '/' ? line : \"/\".concat(line));\n });\n } // Join our channels\n // If under bouncer mode, the bouncer will send the channels were joined to instead.\n\n\n if (!network.connection.bncnetid) {\n var _context4;\n\n (0, _forEach.default)(_context4 = network.buffers).call(_context4, function (buffer) {\n if (buffer.isChannel() && buffer.enabled) {\n client.join(buffer.name, buffer.key);\n }\n });\n }\n\n numConnects++;\n }\n\n if (command === 'server options') {\n // If the network name has changed from the irc-framework default, update ours\n // Also if it isn't a BNC network as the name is then derived from the BNC info instead\n if (client.network.name !== 'Network' && !network.connection.bncnetid) {\n network.name = client.network.name;\n }\n } // Show unhandled data from the server in the servers tab\n\n\n if (command === 'unknown command') {\n if (event.command === '486') {\n // You must log in with services to message this user\n var targetNick = event.params[1];\n var buffer = state.getOrAddBufferByName(network.id, targetNick);\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: '*',\n message: event.params[2],\n type: 'error'\n });\n } else {\n var _buffer = network.serverBuffer();\n\n var message = ''; // Only show non-numeric commands\n\n if (!event.command.match(/^\\d+$/)) {\n message += event.command + ' ';\n }\n\n var containsNick = event.params[0] === network.ircClient.user.nick;\n var isChannelMessage = network.isChannelName(event.params[1]); // Strip out the nick if it's the first params (many commands include this)\n\n if (containsNick && isChannelMessage) {\n var _context5;\n\n var channelBuffer = network.bufferByName(event.params[1]);\n\n if (channelBuffer) {\n _buffer = channelBuffer;\n }\n\n message += (0, _slice.default)(_context5 = event.params).call(_context5, 2).join(', ');\n } else if (containsNick) {\n var _context6;\n\n message += (0, _slice.default)(_context6 = event.params).call(_context6, 1).join(', ');\n } else {\n message += event.params.join(', ');\n }\n\n state.addMessage(_buffer, {\n nick: '',\n message: message\n });\n }\n }\n\n if (command.toLowerCase() === 'batch start chathistory' && client.chathistory) {\n var _context7;\n\n // We have a new batch of messages. To prevent duplicate messages being shown, we remove\n // all messages we have locally in the range of these new messages so that the new block\n // of messages we recieved are displayed accurately. Each message in the block will\n // trigger a 'message' event after this.\n var startTime = 0;\n var endTime = 0;\n (0, _forEach.default)(_context7 = event.commands).call(_context7, function (message) {\n if (message.time && message.time > endTime) {\n endTime = message.time;\n }\n\n if (message.time && message.time < startTime) {\n startTime = message.time;\n }\n });\n\n if (!startTime || !endTime) {\n return;\n }\n\n var _buffer2 = state.getBufferByName(networkid, event.params[0]);\n\n if (_buffer2) {\n _buffer2.clearMessageRange(startTime, endTime);\n }\n }\n\n if (command === 'message') {\n var isPrivateMessage = false;\n var bufferName = event.from_server ? '*' : event.target; // If the message came from a batch then params[0] is the bufferName\n\n if (event.batch && event.batch.type === 'chathistory' && event.batch.params[0]) {\n bufferName = event.batch.params[0];\n isPrivateMessage = !network.isChannelName(bufferName);\n } else if (!event.from_server && event.target === client.user.nick) {\n // PMs should go to a buffer with the name of the other user\n isPrivateMessage = true;\n bufferName = event.nick;\n } // Chanserv sometimes PMs messages about a channel on join in the format of\n // [#channel] welcome!\n // Redirect these to #channel\n\n\n if (event.nick.toLowerCase() === 'chanserv' && isPrivateMessage && event.message[0] === '[') {\n var _context8;\n\n bufferName = event.message.substr(1, (0, _indexOf.default)(_context8 = event.message).call(_context8, ']') - 1);\n } // Notices from somewhere when we don't have an existing buffer for them should go into\n // the server tab. ie. notices from servers\n\n\n if (event.type === 'notice') {\n var existingBuffer = state.getBufferByName(networkid, bufferName);\n var noticeActiveBuffer = state.setting('noticeActiveBuffer');\n var activeBuffer = state.getActiveBuffer();\n var hasActiveBuffer = activeBuffer && activeBuffer.networkid === networkid; // If we don't have a buffer for this notice sender, either show it in our active\n // buffer or the server buffer\n\n if (!existingBuffer) {\n if (noticeActiveBuffer && hasActiveBuffer) {\n bufferName = activeBuffer.name;\n } else {\n bufferName = '*';\n }\n }\n }\n\n var PM_BLOCK_BLOCKED = false; // const PM_BLOCK_NOT_BLOCKED = true;\n\n var PM_BLOCK_REQUIRES_CHECK = null;\n var pmBlock = network.isNickExemptFromPmBlocks(event.nick);\n var blockNewPms = state.setting('buffers.block_pms');\n\n var _buffer3 = state.getBufferByName(networkid, bufferName);\n\n var textFormatType = 'privmsg';\n\n if (event.type === 'action') {\n textFormatType = 'action';\n } else if (event.type === 'notice') {\n textFormatType = 'notice';\n }\n\n var messageBody = TextFormatting.formatText(textFormatType, {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n text: event.message\n });\n var _message = {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: messageBody,\n type: event.type,\n tags: event.tags || {}\n }; // If this is a new PM and the sending user is not exempt from blocks, ignore it\n\n if (blockNewPms && isPrivateMessage && !_buffer3 && pmBlock === PM_BLOCK_BLOCKED) {\n return;\n } // If we need to manually check if this user is blocked..\n // PM_BLOCK_REQUIRES_CHECK means we should whois the user to get their oper status. We\n // allways allow messages from opers.\n\n\n if (blockNewPms && isPrivateMessage && !_buffer3 && pmBlock === PM_BLOCK_REQUIRES_CHECK) {\n // if the nick is in pendingPms it has already issued a whois request\n var awaitingWhois = !!(0, _find.default)(_lodash.default).call(_lodash.default, network.pendingPms, {\n nick: event.nick\n });\n network.pendingPms.push({\n bufferName: bufferName,\n message: _message\n }); // Don't send another whois if we are already awaiting another\n\n if (awaitingWhois) {\n return;\n }\n\n network.ircClient.whois(event.nick, event.nick, function (whoisData) {\n var _context9;\n\n (0, _forEach.default)(_context9 = network.pendingPms).call(_context9, function (pm, idx, obj) {\n var nickLower = pm.message.nick.toLowerCase();\n\n if (nickLower === whoisData.nick.toLowerCase()) {\n if (whoisData.operator) {\n _buffer3 = state.getOrAddBufferByName(network.id, pm.bufferName);\n state.addMessage(_buffer3, pm.message);\n }\n\n (0, _splice.default)(obj).call(obj, idx, 1);\n }\n });\n });\n return;\n } // Make sure we have a buffer for our message\n\n\n if (!_buffer3) {\n _buffer3 = state.getOrAddBufferByName(networkid, bufferName);\n }\n\n state.addMessage(_buffer3, _message);\n }\n\n if (command === 'wallops') {\n var _buffer4 = state.getOrAddBufferByName(networkid, '*');\n\n var _messageBody = TextFormatting.formatText('wallops', {\n text: event.message\n });\n\n state.addMessage(_buffer4, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: _messageBody,\n type: 'wallops'\n });\n }\n\n if (command === 'join') {\n // If we have any buffers marked as being redirected to this new channel, update\n // that buffer instead of creating a new one\n if (event.nick === client.user.nick) {\n var _context10;\n\n (0, _forEach.default)(_context10 = network.buffers).call(_context10, function (b) {\n if (((0, _flags.default)(b).redirect_to || '').toLowerCase() === event.channel.toLowerCase()) {\n state.$delete((0, _flags.default)(b), 'redirect_to');\n b.rename(event.channel);\n }\n });\n }\n\n var _buffer5 = state.getOrAddBufferByName(networkid, event.channel); // The case does not match, update buffer.name to the casing sent by the server\n\n\n if (_buffer5.name !== event.channel) {\n _buffer5.rename(event.channel);\n }\n\n state.addUserToBuffer(_buffer5, {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n realname: event.gecos,\n account: event.account || ''\n });\n\n if (event.nick === client.user.nick) {\n _buffer5.enabled = true;\n _buffer5.joined = true;\n (0, _flags.default)(_buffer5).channel_badkey = false;\n network.ircClient.raw('MODE', event.channel);\n network.ircClient.who(event.channel);\n }\n\n var nick = _buffer5.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n\n var _messageBody2 = TextFormatting.formatAndT('channel_join', null, 'has_joined', {\n nick: nick\n });\n\n state.addMessage(_buffer5, {\n time: (0, _now.default)(),\n nick: event.nick,\n message: _messageBody2,\n type: 'traffic',\n type_extra: 'join'\n });\n }\n\n if (command === 'kick') {\n var _buffer6 = state.getOrAddBufferByName(networkid, event.channel);\n\n state.removeUserFromBuffer(_buffer6, event.kicked);\n var _messageBody3 = '';\n\n if (event.kicked === client.user.nick) {\n _buffer6.joined = false;\n\n _buffer6.clearUsers();\n\n _messageBody3 = TextFormatting.formatAndT('channel_selfkick', {\n reason: event.message\n }, 'kicked_you_from', {\n nick: TextFormatting.formatUser(event),\n channel: event.channel\n });\n } else {\n _messageBody3 = TextFormatting.formatAndT('channel_kicked', {\n reason: event.message\n }, 'was_kicked_from', {\n nick: event.kicked,\n channel: event.channel,\n chanop: TextFormatting.formatUser(event.nick)\n });\n }\n\n state.addMessage(_buffer6, {\n time: (0, _now.default)(),\n nick: event.nick,\n message: _messageBody3,\n type: 'traffic',\n type_extra: 'kick'\n });\n }\n\n if (command === 'part') {\n var _buffer7 = state.getBufferByName(networkid, event.channel);\n\n if (!_buffer7) {\n return;\n }\n\n state.removeUserFromBuffer(_buffer7, event.nick);\n\n if (event.nick === client.user.nick) {\n _buffer7.joined = false;\n _buffer7.enabled = false;\n\n _buffer7.clearUsers();\n } // Remove the user from network state if no remaining common channels\n\n\n var remainingBuffers = state.getBuffersWithUser(networkid, event.nick);\n\n if (remainingBuffers.length === 0) {\n state.removeUser(networkid, {\n nick: event.nick\n });\n }\n\n var _nick = _buffer7.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n\n var _messageBody4 = TextFormatting.formatAndT('channel_part', {\n reason: event.message\n }, 'has_left', {\n nick: _nick\n });\n\n state.addMessage(_buffer7, {\n time: (0, _now.default)(),\n nick: event.nick,\n message: _messageBody4,\n type: 'traffic',\n type_extra: 'part'\n });\n }\n\n if (command === 'quit') {\n var buffers = state.getBuffersWithUser(networkid, event.nick);\n (0, _forEach.default)(buffers).call(buffers, function (buffer) {\n if (!buffer) {\n return;\n }\n\n if (event.nick === client.user.nick) {\n buffer.joined = false;\n buffer.clearUsers();\n }\n\n var nick = buffer.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n var messageBody = TextFormatting.formatAndT('channel_quit', {\n reason: event.message\n }, 'has_left', {\n nick: nick\n });\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: event.nick,\n message: messageBody,\n type: 'traffic',\n type_extra: 'quit'\n });\n });\n state.removeUser(networkid, {\n nick: event.nick\n });\n }\n\n if (command === 'invite') {\n var _buffer8 = network.serverBuffer();\n\n state.addMessage(_buffer8, {\n nick: '*',\n message: TextFormatting.t('invited_you', {\n nick: event.nick,\n channel: event.channel\n })\n });\n }\n\n if (command === 'account') {\n state.addUser(networkid, {\n nick: event.nick,\n account: event.account || ''\n });\n }\n\n if (command === 'whois') {\n var _context11;\n\n var obj = {\n nick: event.nick,\n host: event.hostname,\n username: event.ident,\n away: event.away || '',\n realname: event.real_name,\n hasWhois: true\n }; // Some other optional bits of info\n\n (0, _forEach.default)(_context11 = ['actual_host', 'helpop', 'bot', 'server', 'server_info', 'operator', 'channels', 'modes', 'idle', 'logon', 'registered_nick', 'account', 'secure', 'special']).call(_context11, function (prop) {\n if (typeof event[prop] !== 'undefined') {\n obj[prop] = event[prop];\n }\n });\n state.addUser(networkid, obj);\n }\n\n if (command === 'away') {\n state.addUser(networkid, {\n nick: event.nick,\n away: event.message || ''\n });\n\n var _buffer9 = state.getActiveBuffer();\n\n if (_buffer9 && event.nick === network.nick) {\n network.away = 'away';\n state.addMessage(_buffer9, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n type: 'presence',\n message: event.message\n });\n }\n }\n\n if (command === 'back') {\n state.addUser(networkid, {\n nick: event.nick,\n away: ''\n });\n\n var _buffer10 = state.getActiveBuffer();\n\n if (_buffer10 && event.nick === network.nick) {\n network.away = '';\n state.addMessage(_buffer10, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n type: 'presence',\n message: event.message\n });\n }\n }\n\n if (command === 'wholist') {\n state.usersTransaction(networkid, function (users) {\n var _context12;\n\n (0, _forEach.default)(_context12 = event.users).call(_context12, function (eventUser) {\n var _context13;\n\n var userObj = {\n nick: eventUser.nick,\n host: eventUser.hostname || undefined,\n username: eventUser.ident || undefined,\n away: eventUser.away ? 'Away' : '',\n realname: eventUser.real_name,\n account: eventUser.account || undefined\n };\n var user = state.addUser(networkid, userObj, users);\n\n if (!user) {\n // Should never happen as this network should always exist\n return;\n }\n\n var buffer = network.bufferByName(eventUser.channel);\n\n if (!buffer || !user.buffers[buffer.id]) {\n return;\n } // Add all the user channel modes\n\n\n var modes = user.buffers[buffer.id].modes;\n (0, _forEach.default)(_context13 = eventUser.channel_modes).call(_context13, function (mode) {\n if ((0, _indexOf.default)(modes).call(modes, mode) === -1) {\n modes.push(mode);\n }\n });\n });\n });\n }\n\n if (command === 'channel list start') {\n network.channel_list_cache = [];\n network.channel_list_state = 'updating';\n }\n\n if (command === 'channel list') {\n var _context14;\n\n network.channel_list_state = 'updating'; // Filter private channels from the channel list\n\n var filteredEvent = (0, _filter.default)(_lodash.default).call(_lodash.default, event, function (o) {\n return o.channel !== '*';\n }); // Store the channels in channel_list_cache before moving it all to\n // channel_list at the end. This gives a huge performance boost since\n // it doesn't need to be all reactive for every update\n\n network.channel_list_cache = (0, _concat.default)(_context14 = network.channel_list_cache || []).call(_context14, filteredEvent);\n }\n\n if (command === 'channel list end') {\n network.channel_list = network.channel_list_cache || [];\n network.channel_list_state = 'updated';\n delete network.channel_list_cache;\n }\n\n if (command === 'motd') {\n var _buffer11 = network.serverBuffer();\n\n var _messageBody5 = TextFormatting.formatText('motd', {\n text: event.motd\n });\n\n state.addMessage(_buffer11, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody5,\n type: 'motd'\n });\n }\n\n if (command === 'nick in use' && !client.connection.registered) {\n var _context15;\n\n var newNick = client.user.nick + rand(1, 100);\n\n var _messageBody6 = TextFormatting.formatAndT('nickname_alreadyinuse', null, 'nick_in_use_retrying', {\n nick: client.user.nick,\n newnick: newNick\n });\n\n (0, _forEach.default)(_context15 = network.buffers).call(_context15, function (b) {\n state.addMessage(b, {\n time: (0, _now.default)(),\n nick: '',\n message: _messageBody6,\n type: 'error'\n });\n });\n client.changeNick(newNick);\n }\n\n if (command === 'nick in use' && client.connection.registered) {\n var _buffer12 = state.getActiveBuffer();\n\n _buffer12 && state.addMessage(_buffer12, {\n time: (0, _now.default)(),\n nick: '',\n type: 'error',\n message: \"The nickname '\".concat(event.nick, \"' is already in use!\")\n });\n }\n\n if (command === 'nick') {\n if (event.nick === client.user.nick) {\n network.nick = event.new_nick;\n }\n\n state.changeUserNick(networkid, event.nick, event.new_nick);\n\n var _messageBody7 = TextFormatting.formatAndT('nick_changed', null, 'now_known_as', {\n nick: event.nick,\n newnick: event.new_nick\n });\n\n var _buffers = state.getBuffersWithUser(networkid, event.new_nick);\n\n (0, _forEach.default)(_buffers).call(_buffers, function (buffer) {\n state.addMessage(buffer, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody7,\n type: 'nick'\n });\n });\n }\n\n if (command === 'userlist') {\n var _context16, _context17;\n\n var _buffer13 = state.getOrAddBufferByName(networkid, event.channel);\n\n var hadExistingUsers = (0, _filter.default)(_context16 = (0, _keys.default)(_buffer13.users)).call(_context16, function (u) {\n return u !== network.ircClient.user.nick;\n }).length > 0;\n var users = [];\n (0, _forEach.default)(_context17 = event.users).call(_context17, function (user) {\n users.push({\n user: {\n nick: user.nick,\n username: user.ident,\n hostname: user.hostname\n },\n modes: user.modes\n });\n });\n state.addMultipleUsersToBuffer(_buffer13, users);\n\n if (!hadExistingUsers && network.ircClient.chathistory.isSupported()) {\n var correctBuffer = _buffer13.isChannel() || _buffer13.isQuery(); // TODO: If this is a reconnect (numConnects > 1) then paginate backwards\n // until we reach our last message.\n // OR\n // Add a marker at the gap between this new chathistory block starts and when\n // the existing messages end so that we can add a \"load missing messages\"\n // button there or have it auto request them when it scrolls into view\n\n\n if (correctBuffer) {\n _buffer13.requestLatestScrollback();\n }\n }\n }\n\n if (command === 'user updated') {\n var user = network.userByName(event.nick);\n\n if (user) {\n var _context18;\n\n (0, _forEach.default)(_context18 = (0, _entries.default)(event)).call(_context18, function (_ref) {\n var _ref2 = (0, _slicedToArray2.default)(_ref, 2),\n key = _ref2[0],\n val = _ref2[1];\n\n if ((0, _indexOf.default)(key).call(key, 'new_') !== 0) {\n return;\n }\n\n var paramName = key.substr(4);\n\n switch (paramName) {\n case 'gecos':\n user.realname = val;\n break;\n\n case 'ident':\n user.username = val;\n break;\n\n case 'hostname':\n user.host = val;\n break;\n\n default:\n }\n });\n }\n }\n\n if (command === 'channel info') {\n var _buffer14 = network.bufferByName(event.channel);\n\n if (!_buffer14) {\n return;\n }\n\n if (event.modes) {\n var _context19;\n\n var modeStrs = [];\n (0, _forEach.default)(_context19 = event.modes).call(_context19, function (mode) {\n var adding = mode.mode[0] === '+';\n var modeChar = mode.mode.substr(1);\n\n if (adding) {\n state.$set(_buffer14.modes, modeChar, mode.param);\n } else if (!adding) {\n state.$delete(_buffer14.modes, modeChar);\n }\n\n modeStrs.push(mode.mode + (mode.param ? ' ' + mode.param : ''));\n });\n\n if ((0, _flags.default)(_buffer14).requested_modes) {\n state.addMessage(_buffer14, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: _buffer14.name + ' ' + modeStrs.join(', ')\n });\n }\n }\n\n if (event.created_at) {\n _buffer14.created_at = new Date(event.created_at * 1000);\n }\n\n if (event.created_at && (0, _flags.default)(_buffer14).requested_modes) {\n var tFormat = _buffer14.setting('timestamp_full_format');\n\n var timeCreated = tFormat ? (0, _strftime.default)(tFormat, new Date(event.created_at * 1000)) : new Date(event.created_at * 1000).toLocaleString();\n state.addMessage(_buffer14, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: _buffer14.name + ' ' + timeCreated\n });\n }\n }\n\n if (command === 'mode') {\n var _buffer15 = network.bufferByName(event.target);\n\n var _modeStrs = {};\n\n if (_buffer15) {\n var _context20;\n\n // Join all the same mode changes together so they can be shown on one\n // line such as \"prawnsalad sets +b on nick1, nick2\"\n (0, _forEach.default)(_context20 = event.modes).call(_context20, function (mode) {\n _modeStrs[mode.mode] = _modeStrs[mode.mode] || []; // If this mode has a user prefix then we need to update the user object\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, network.ircClient.network.options.PREFIX, {\n mode: mode.mode[1]\n });\n\n if (prefix) {\n var _user = state.getUser(network.id, mode.param);\n\n if (_user) {\n var adding = mode.mode[0] === '+';\n var modes = _user.buffers[_buffer15.id].modes;\n var modeIdx = (0, _indexOf.default)(modes).call(modes, prefix.mode); // Add or remove the mode from the users mode list\n\n if (adding && modeIdx === -1) {\n modes.push(prefix.mode);\n } else if (!adding && modeIdx > -1) {\n (0, _splice.default)(modes).call(modes, modeIdx, 1);\n }\n }\n\n _modeStrs[mode.mode].push({\n target: mode.param\n });\n } else {\n // Not a user prefix, add it as a channel mode\n // TODO: Why are these not appearing as the 'channel info' command?\n var _adding = mode.mode[0] === '+';\n\n var modeChar = mode.mode.substr(1);\n\n if (_adding) {\n state.$set(_buffer15.modes, modeChar, mode.param);\n } else if (!_adding) {\n state.$delete(_buffer15.modes, modeChar);\n }\n\n _modeStrs[mode.mode].push({\n target: _buffer15.name,\n param: mode.param\n });\n }\n }); // Mode -> locale ID mappings\n // If a mode isn't found here, the local ID modes_other is used\n\n var modeLocaleIds = {\n '+o': 'modes_give_ops',\n '-o': 'modes_take_ops',\n '+h': 'modes_give_halfops',\n '-h': 'modes_take_halfops',\n '+v': 'modes_give_voice',\n '-v': 'modes_take_voice',\n '+a': 'modes_give_admin',\n '-a': 'modes_take_admin',\n '+q': 'modes_give_owner',\n '-q': 'modes_take_owner',\n '+b': 'modes_gives_ban',\n '-b': 'modes_takes_ban'\n }; // Some IRCd differences\n\n if (!IrcdDiffs.isQChannelModeOwner(network)) {\n delete modeLocaleIds['+q'];\n delete modeLocaleIds['-q'];\n }\n\n if (!IrcdDiffs.isAChannelModeAdmin(network)) {\n delete modeLocaleIds['+a'];\n delete modeLocaleIds['-a'];\n }\n\n if (!IrcdDiffs.supportsHalfOp(network)) {\n delete modeLocaleIds['+h'];\n delete modeLocaleIds['-h'];\n } // Some modes have specific data for its locale data while most\n // use a default. The returned objects are passed to the translation\n // functions to build the translation\n\n\n var modeLocaleDataBuilders = {\n default: function _default(targets, mode) {\n return {\n mode: mode + (targets[0].param ? ' ' + targets[0].param : ''),\n target: (0, _map.default)(targets).call(targets, function (t) {\n return t.target;\n }).join(', '),\n nick: event.nick\n };\n },\n b: function b(targets, mode) {\n return {\n mode: mode,\n target: targets[0].param ? targets[0].param : '',\n nick: event.nick\n };\n }\n }; // Show one line per mode, listing each effecting user\n\n _lodash.default.each(_modeStrs, function (targets, mode) {\n // Find a locale data builder for this mode\n var builders = modeLocaleDataBuilders;\n var localeDataFn = builders[mode[1]] || builders.default;\n var localeData = localeDataFn(targets, mode); // Translate using the built locale data\n\n var localeKey = modeLocaleIds[mode] || 'modes_other';\n var text = TextFormatting.t(localeKey, localeData);\n var messageBody = TextFormatting.formatText('mode', {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n target: (0, _map.default)(targets).call(targets, function (t) {\n return t.target;\n }).join(', '),\n text: text\n });\n state.addMessage(_buffer15, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: messageBody,\n type: 'mode'\n });\n });\n } else {\n var _context21;\n\n // target is not a channel buffer (user mode ?)\n // if mode had param, show in a new line\n var modeslines = {}; // Group each - or + modes to each of their own message lines\n\n (0, _forEach.default)(_context21 = event.modes).call(_context21, function (mode) {\n if (mode.param) {\n modeslines[mode.mode] = ' ' + mode.param;\n } else if (mode.mode[0] === '-') {\n var _context22;\n\n if (!modeslines['-']) {\n modeslines['-'] = '';\n }\n\n modeslines['-'] += (0, _slice.default)(_context22 = mode.mode).call(_context22, 1);\n } else {\n if (!modeslines['+']) {\n modeslines['+'] = '';\n }\n\n if (mode.mode[0] === '+') {\n var _context23;\n\n modeslines['+'] += (0, _slice.default)(_context23 = mode.mode).call(_context23, 1);\n } else {\n modeslines['+'] += mode.mode;\n }\n }\n });\n\n var _serverBuffer = network.serverBuffer();\n\n _lodash.default.each(modeslines, function (mode, value) {\n var text = TextFormatting.t('modes_other', {\n nick: event.nick,\n target: event.target,\n mode: value + mode\n });\n var messageBody = TextFormatting.formatText('mode', {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n target: event.target,\n text: text\n });\n state.addMessage(_serverBuffer, {\n time: (0, _now.default)(),\n nick: '',\n message: messageBody,\n type: 'mode'\n });\n });\n }\n }\n\n if (command === 'banlist') {\n var _buffer16 = state.getBufferByName(networkid, event.channel);\n\n if (_buffer16 && (0, _flags.default)(_buffer16).requested_banlist) {\n if (!event.bans || event.bans.length === 0) {\n state.addMessage(_buffer16, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: TextFormatting.t('bans_nobody'),\n type: 'banlist'\n });\n } else {\n var banText = '';\n\n _lodash.default.each(event.bans, function (ban) {\n var _context24, _context25;\n\n var dateStr = new Date(ban.banned_at * 1000).toDateString();\n banText += (0, _concat.default)(_context24 = (0, _concat.default)(_context25 = \"+b \".concat(ban.banned, \" [by \")).call(_context25, ban.banned_by, \", \")).call(_context24, dateStr, \"]\\n\");\n });\n\n state.addMessage(_buffer16, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: banText,\n type: 'banlist'\n });\n }\n\n (0, _flags.default)(_buffer16).requested_banlist = false;\n }\n }\n\n if (command === 'topic') {\n var _context26;\n\n var _buffer17 = state.getOrAddBufferByName(networkid, event.channel);\n\n _buffer17.topic = event.topic || '';\n var _messageBody8 = '';\n\n if (event.nick) {\n _messageBody8 = TextFormatting.formatAndT('channel_topic', null, 'changed_topic_to', {\n nick: event.nick,\n topic: event.topic\n });\n } else if ((0, _trim.default)(_context26 = _buffer17.topic).call(_context26)) {\n _messageBody8 = TextFormatting.formatText('channel_topic', _buffer17.topic);\n }\n\n if (_messageBody8) {\n state.addMessage(_buffer17, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody8,\n type: 'topic'\n });\n }\n }\n\n if (command === 'help') {\n var _buffer18 = state.getOrAddBufferByName(networkid, '*help');\n\n state.addMessage(_buffer18, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: event.help,\n type: 'help',\n tags: event.tags || {}\n });\n }\n\n if (command === 'ctcp response' || command === 'ctcp request') {\n var _buffer19 = network.bufferByName(event.target) || network.serverBuffer();\n\n var textFormatId = command === 'ctcp response' ? 'ctcp_response' : 'ctcp_request';\n\n var _messageBody9 = TextFormatting.formatText(textFormatId, {\n nick: event.nick,\n message: event.message,\n type: event.type\n });\n\n state.addMessage(_buffer19, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody9,\n type: 'error'\n });\n\n if (command === 'ctcp request' && event.type === 'VERSION') {\n client.ctcpResponse(event.nick, 'VERSION', 'Kiwi IRC');\n }\n }\n\n if (command === 'nick invalid') {\n var _messageBody10 = TextFormatting.formatText('general_error', {\n text: event.reason\n });\n\n var _buffer20 = state.getActiveBuffer();\n\n state.addMessage(_buffer20, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody10,\n type: 'error'\n });\n\n if (!isRegistered) {\n network.last_error_numeric = 432;\n network.last_error = event.reason;\n network.ircClient.quit();\n }\n }\n\n if (command === 'irc error') {\n var _buffer21;\n\n if (event.channel || event.nick) {\n _buffer21 = state.getOrAddBufferByName(network.id, event.channel || event.nick);\n }\n\n if (!_buffer21) {\n _buffer21 = network.serverBuffer();\n }\n\n if (!_buffer21) {\n // we could not find a buffer, this is likely because the network was removed\n return;\n } // TODO: Some of these errors contain a .error property whcih we can match against,\n // ie. password_mismatch.\n\n\n if (event.error === 'bad_channel_key') {\n (0, _flags.default)(_buffer21).channel_badkey = true;\n } // ignore error 432 (erroneous nickname) as it is handled above\n\n\n if (event.reason && network.last_error_numeric !== 432) {\n if (!isRegistered) {\n network.last_error = event.reason;\n }\n\n var _messageBody11 = TextFormatting.formatText('general_error', {\n text: event.reason || event.error\n });\n\n state.addMessage(_buffer21, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody11,\n type: 'error'\n });\n } // Getting an error about a channel while we are not joined means that we couldn't join\n // or do some action on it. Disable it until we manually reattempt to join.\n\n\n if (_buffer21.isChannel() && !_buffer21.joined) {\n _buffer21.enabled = false;\n }\n }\n\n next();\n }\n}\n\nfunction rand(min, max) {\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"IrcClient\"]\r\nwindow._kiwi_exports.libs.IrcClient = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MessageListMessageModern.vue?vue&type=template&id=fe3ccb9c&scoped=true&functional=true&\"\nimport script from \"./MessageListMessageModern.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListMessageModern.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageListMessageModern.vue?vue&type=style&index=0&id=fe3ccb9c&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n \"fe3ccb9c\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Sidebar.vue?vue&type=template&id=6e1b8873&\"\nimport script from \"./Sidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./Sidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Sidebar.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./InputText.vue?vue&type=template&id=54bd521c&\"\nimport script from \"./InputText.vue?vue&type=script&lang=js&\"\nexport * from \"./InputText.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InputText.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-userbox\"},[(_vm.isSelf)?_c('span',{staticClass:\"kiwi-userbox-selfprofile\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_you'))+\" \")]):_vm._e(),_c('div',{staticClass:\"kiwi-userbox-header\"},[_c('h3',[_c('away-status-indicator',{attrs:{\"network\":_vm.network,\"user\":_vm.user}}),_vm._v(\" \"+_vm._s(_vm.user.nick)+\" \"),(_vm.userMode)?_c('span',{staticClass:\"kiwi-userbox-modestring\"},[_vm._v(\"+\"+_vm._s(_vm.userMode))]):_vm._e()],1),_c('div',{staticClass:\"kiwi-userbox-usermask\"},[_vm._v(_vm._s(_vm.user.username)+\"@\"+_vm._s(_vm.user.host))])]),_c('div',{staticClass:\"kiwi-userbox-basicinfo\"},[_c('span',{staticClass:\"kiwi-userbox-basicinfo-title\"},[_vm._v(_vm._s(_vm.$t('whois_realname'))+\":\")]),_c('span',{staticClass:\"kiwi-userbox-basicinfo-data\",domProps:{\"innerHTML\":_vm._s(_vm.formattedRealname)}})]),_c('p',{staticClass:\"kiwi-userbox-actions\"},[(!_vm.isSelf && !_vm.buffer.isQuery())?_c('a',{staticClass:\"kiwi-userbox-action\",on:{\"click\":_vm.openQuery}},[_c('i',{staticClass:\"fa fa-comment-o\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('send_a_message'))+\" \")]):_vm._e(),(!_vm.whoisRequested)?_c('a',{staticClass:\"kiwi-userbox-action\",on:{\"click\":_vm.updateWhoisData}},[_c('i',{staticClass:\"fa fa-question-circle\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('more_information'))+\" \")]):_vm._e()]),(!_vm.isSelf)?_c('form',{staticClass:\"u-form kiwi-userbox-ignoreuser\"},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.ignore),expression:\"user.ignore\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.user.ignore)?_vm._i(_vm.user.ignore,null)>-1:(_vm.user.ignore)},on:{\"change\":function($event){var $$a=_vm.user.ignore,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.user, \"ignore\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.user, \"ignore\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.user, \"ignore\", $$c)}}}}),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('ignore_user'))+\" \")])])]):_vm._e(),(_vm.whoisRequested)?_c('div',{staticClass:\"kiwi-userbox-whois\",class:[_vm.whoisLoading?'kiwi-userbox-whois--loading':'']},[(_vm.whoisLoading)?[_c('i',{staticClass:\"fa fa-spinner\",attrs:{\"aria-hidden\":\"true\"}})]:[_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.user.away ? _vm.$t('whois_status') + ': ' + _vm.user.away : _vm.$t('whois_status_available'))+\" \")]),(_vm.user.account)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_account', {user: _vm.user.account}))+\" \")]):_vm._e(),_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_realname', {realname: _vm.user.realname}))+\" \")]),(_vm.user.bot)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(_vm._s(_vm.$t('user_bot')))]):_vm._e(),(_vm.user.helpop)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_help'))+\" \")]):_vm._e(),(_vm.user.operator)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_op'))+\" \")]):_vm._e(),(_vm.user.server)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_server', { server: _vm.user.server, info: (_vm.user.server_info ? (\"(\" + (_vm.user.server_info) + \")\") : '') }))+\" \")]):_vm._e(),(_vm.user.secure)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_secure'))+\" \")]):_vm._e(),(_vm.user.channels)?_c('span',{staticClass:\"kiwi-userbox-whois-line\",domProps:{\"innerHTML\":_vm._s(_vm.$t('user_channels', {channels: _vm.userChannels}))},on:{\"click\":function($event){return _vm.onChannelsClick($event)}}}):_vm._e()]],2):_vm._e(),(_vm.buffer.isChannel() && _vm.areWeAnOp && !_vm.isSelf)?_c('div',{staticClass:\"kiwi-userbox-opactions\"},[_c('form',{staticClass:\"u-form\",on:{\"submit\":function($event){$event.preventDefault();}}},[(_vm.isUserOnBuffer)?_c('label',[_vm._v(\" \"+_vm._s(_vm.$t('user_access'))+\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.userMode),expression:\"userMode\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.userMode=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_vm._l((_vm.availableChannelModes),function(mode){return _c('option',{key:mode.mode,domProps:{\"value\":mode.mode}},[_vm._v(\" \"+_vm._s(mode.description)+\" \")])}),_c('option',{attrs:{\"value\":\"\"}},[_vm._v(_vm._s(_vm.$t('user_normal')))])],2)]):_vm._e(),(_vm.isUserOnBuffer)?_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-kick kiwi-userbox-opaction\",on:{\"click\":_vm.kickUser}},[_c('i',{staticClass:\"fa fa-sign-out\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_kick'))+\" \")])]):_vm._e(),_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-ban kiwi-userbox-opaction\",on:{\"click\":_vm.banUser}},[_c('i',{staticClass:\"fa fa-ban\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_ban'))+\" \")])]),(_vm.isUserOnBuffer)?_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-kickban kiwi-userbox-opaction\",on:{\"click\":_vm.kickbanUser}},[_c('i',{staticClass:\"fa fa-exclamation-triangle\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_kickban'))+\" \")])]):_vm._e()])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupError.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupError.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-personal\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('personal_client')))]),_c('p',[_vm._v(_vm._s(_vm.$t('personal_addjoin')))]),_c('p',[_vm._v(_vm._s(_vm.$t('personal_return')))]),_c('button',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.addNetwork}},[_vm._v(\" \"+_vm._s(_vm.$t('personal_add'))+\" \")]),_vm._v(\" \"),_c('br'),(_vm.networks.length>0)?_c('a',{staticClass:\"u-link kiwi-personal-existing-networks\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_vm._v(\" \"+_vm._s(_vm.$t('personal_saved'))+\" \")]):_vm._e(),_c('div',{staticClass:\"kiwi-aboutnew-content\",class:{'kiwi-aboutnew-content--open': _vm.about_open},domProps:{\"innerHTML\":_vm._s(_vm.aboutContent)}}),_c('div',{staticClass:\"kiwi-aboutnew\"},[_c('div',{staticClass:\"kiwi-aboutnew-sep\"}),_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){_vm.about_open=!_vm.about_open}}},[_vm._v(\" Link to your network / channel \")]),_c('div',{staticClass:\"kiwi-aboutnew-help\"},[_c('a',{on:{\"click\":function($event){_vm.about_open=!_vm.about_open}}},[_c('i',{staticClass:\"fa fa-question-circle\",attrs:{\"aria-hidden\":\"true\"}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=35f9c35c&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n/* eslint-disable */\n// command descriptions can be either a static string or a translation key prefixed with locale_id_\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = [{\n command: 'msg',\n alias: [],\n description: 'locale_id_command_msg'\n}, {\n command: 'action',\n alias: [],\n description: 'locale_id_command_action'\n}, {\n command: 'join',\n alias: [],\n description: 'locale_id_command_join'\n}, {\n command: 'part',\n alias: [],\n description: 'locale_id_command_part'\n}, {\n command: 'cycle',\n alias: [],\n description: 'locale_id_command_cycle'\n}, {\n command: 'nick',\n alias: [],\n description: 'locale_id_command_nick'\n}, {\n command: 'query',\n alias: [],\n description: 'locale_id_command_query'\n}, {\n command: 'invite',\n alias: [],\n description: 'locale_id_command_invite'\n}, {\n command: 'topic',\n alias: [],\n description: 'locale_id_command_topic'\n}, {\n command: 'notice',\n alias: [],\n description: 'locale_id_command_notice'\n}, {\n command: 'quote',\n alias: [],\n description: 'locale_id_command_quote'\n}, {\n command: 'kick',\n alias: [],\n description: 'locale_id_command_kick'\n}, {\n command: 'clear',\n alias: [],\n description: 'locale_id_command_clear'\n}, {\n command: 'ctcp',\n alias: [],\n description: 'locale_id_command_ctcp'\n}, {\n command: 'quit',\n alias: [],\n description: 'locale_id_command_quit'\n}, {\n command: 'server',\n alias: [],\n description: 'locale_id_command_server'\n}, {\n command: 'whois',\n alias: [],\n description: 'locale_id_command_whois'\n}, {\n command: 'whowas',\n alias: [],\n description: 'locale_id_command_whowas'\n}, {\n command: 'away',\n alias: [],\n description: 'locale_id_command_away'\n}, {\n command: 'back',\n alias: ['active'],\n description: 'locale_id_command_back'\n}, {\n command: 'encoding',\n alias: [],\n description: 'locale_id_command_encoding'\n}, {\n command: 'ignore',\n alias: [],\n description: 'locale_id_command_ignore'\n}, {\n command: 'unignore',\n alias: [],\n description: 'locale_id_command_unignore'\n}, {\n command: 'dice',\n alias: [],\n description: 'locale_id_command_dice'\n}];\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"res\"]) window._kiwi_exports[\"res\"] = {};\nwindow._kiwi_exports[\"res\"][\"autocompleteCommands\"]\r\nwindow._kiwi_exports.res.autocompleteCommands = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar StatePersistence = /*#__PURE__*/function () {\n function StatePersistence(storageKey, state, storage, logger) {\n (0, _classCallCheck2.default)(this, StatePersistence);\n this.storageKey = storageKey;\n this.state = state;\n this.storage = storage;\n this.logger = logger;\n this.isPersisting = false;\n this.includeBuffers = true;\n this.watcher = null;\n this.state.persistence = this;\n }\n\n (0, _createClass2.default)(StatePersistence, [{\n key: \"loadStateIfExists\",\n value: function () {\n var _loadStateIfExists = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var storedState;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (this.storageKey) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 2:\n _context.next = 4;\n return this.storage.get(this.storageKey);\n\n case 4:\n storedState = _context.sent;\n\n if (storedState) {\n if (this.logger) {\n this.logger('Importing state', storedState);\n }\n\n this.state.importState(storedState);\n }\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function loadStateIfExists() {\n return _loadStateIfExists.apply(this, arguments);\n }\n\n return loadStateIfExists;\n }()\n }, {\n key: \"stopWatchingState\",\n value: function stopWatchingState() {\n if (this.watcher) {\n this.watcher();\n this.watcher = null;\n }\n }\n }, {\n key: \"watchStateForChanges\",\n value: function watchStateForChanges() {\n var _this = this;\n\n if (!this.storageKey) {\n return;\n } // Throttle saving the state into storage so we don't thrash the disk\n\n\n var debouncedSaveState = _lodash.default.debounce(function () {\n if (_this.logger) {\n _this.logger('State updated, setting localStorage');\n }\n\n _this.storage.set(_this.storageKey, _this.state.exportState(_this.includeBuffers));\n }, 1000);\n\n this.state.$watch('networks', debouncedSaveState, {\n deep: true\n });\n this.state.$watch('user_settings', debouncedSaveState, {\n deep: true\n }); // We need to touch each property of each buffer for that we want to save our state on.\n // If any of the properties change then the $watch()er will call debouncedSaveState()\n\n this.watcher = this.state.$watch(function () {\n var _context2;\n\n var watchVals = [];\n (0, _forEach.default)(_context2 = _this.state.networks).call(_context2, function (network) {\n var _context3, _context4;\n\n var buffersVals = [];\n buffersVals.push((0, _map.default)(_context3 = network.buffers).call(_context3, function (b) {\n return b.name;\n }).join(','));\n (0, _forEach.default)(_context4 = network.buffers).call(_context4, function (buffer) {\n buffersVals.push([buffer.name, buffer.settings, buffer.joined, buffer.enabled, buffer.last_read]);\n });\n watchVals.push(buffersVals);\n });\n return (0, _stringify.default)(watchVals);\n }, debouncedSaveState);\n this.isPersisting = true;\n }\n }, {\n key: \"forgetState\",\n value: function () {\n var _forgetState = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n this.state.resetState();\n _context5.next = 3;\n return this.storage.set(this.storageKey, null);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function forgetState() {\n return _forgetState.apply(this, arguments);\n }\n\n return forgetState;\n }()\n }]);\n return StatePersistence;\n}();\n\nexports.default = StatePersistence;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"StatePersistence\"]\r\nwindow._kiwi_exports.libs.StatePersistence = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./ServerSelector.vue?vue&type=template&id=f413800a&\"\nimport script from \"./ServerSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./ServerSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ServerSelector.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n props: ['network'],\n data: function data() {\n return {\n recaptchaUrl: '',\n recaptchaSiteId: '',\n recaptchaResponse: '',\n showCaptcha: false\n };\n },\n created: function created() {\n var _this = this;\n\n var options = this.$state.settings.startupOptions;\n this.recaptchaSiteId = options.recaptchaSiteId || '';\n this.recaptchaUrl = options.recaptchaUrl || 'https://www.google.com/recaptcha/api.js';\n this.listen(this.$state, 'network.connecting', function (event) {\n event.network.ircClient.once('socket connected', function () {\n if (_this.recaptchaResponse) {\n event.network.ircClient.raw('CAPTCHA', _this.recaptchaResponse);\n }\n });\n });\n this.listen(this.$state, 'irc.raw.CAPTCHA', function (command, event, network) {\n if (network !== _this.network) {\n return;\n }\n\n if (event.params[0] === 'NEEDED') {\n _this.loadRecaptcha();\n }\n });\n },\n methods: {\n loadRecaptcha: function loadRecaptcha() {\n var _this2 = this;\n\n this.showCaptcha = true; // Recaptcha calls this callback once it's loaded and ready to be used\n\n window.recaptchaLoaded = function () {\n window.grecaptcha.render(_this2.$refs.captchacontainer, {\n sitekey: _this2.recaptchaSiteId,\n callback: _this2.recaptchaSuccess,\n 'expired-callback': _this2.recaptchaExpired\n });\n };\n\n var scr = document.createElement('script');\n scr.src = this.recaptchaUrl + '?onload=recaptchaLoaded&render=explicit';\n scr.defer = true;\n this.$el.appendChild(scr);\n },\n recaptchaSuccess: function recaptchaSuccess(response) {\n this.recaptchaResponse = response; // If we have a network instance already, send the captcha response\n\n if (this.network && this.network.state === 'connecting') {\n this.network.ircClient.raw('CAPTCHA', response);\n }\n\n this.showCaptcha = false;\n },\n recaptchaExpired: function recaptchaExpired() {\n this.recaptchaResponse = '';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"Captcha\"]\r\nwindow._kiwi_exports.components.Captcha = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./StateBrowser.vue?vue&type=template&id=15af12f8&\"\nimport script from \"./StateBrowser.vue?vue&type=script&lang=js&\"\nexport * from \"./StateBrowser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StateBrowser.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./CommonLayout.vue?vue&type=template&id=5651b698&\"\nimport script from \"./CommonLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./CommonLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CommonLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./LoadingAnimation.vue?vue&type=template&id=0d280fd9&\"\nimport script from \"./LoadingAnimation.vue?vue&type=script&lang=js&\"\nexport * from \"./LoadingAnimation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:'messagelist-' + _vm.buffer.name,staticClass:\"kiwi-messagelist\",class:{'kiwi-messagelist--smoothscroll': _vm.smooth_scroll},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.onListClick($event)}}},[_c('div',{directives:[{name:\"resizeobserver\",rawName:\"v-resizeobserver\",value:(_vm.onListResize),expression:\"onListResize\"}]},[(_vm.shouldShowChathistoryTools)?_c('div',{staticClass:\"kiwi-messagelist-scrollback\"},[(!_vm.buffer.flag('is_requesting_chathistory'))?_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.buffer.requestScrollback()}}},[_vm._v(\" \"+_vm._s(_vm.$t('messages_load'))+\" \")]):_c('a',{staticClass:\"u-link\"},[_vm._v(\"...\")])]):_vm._e(),_vm._l((_vm.filteredMessagesGroupedDay),function(day){return _c('div',{key:day.dayNum},[(_vm.filteredMessagesGroupedDay.length > 1 && day.messages.length > 0)?_c('div',{key:'msgdatemarker' + day.dayNum,staticClass:\"kiwi-messagelist-seperator\"},[_c('span',[_vm._v(_vm._s((new Date(day.messages[0].time)).toDateString()))])]):_vm._e(),_vm._l((day.messages),function(message){return [(_vm.shouldShowUnreadMarker(message))?_c('div',{key:'msgunreadmarker' + message.id,staticClass:\"kiwi-messagelist-seperator\"},[_c('span',[_vm._v(_vm._s(_vm.$t('unread_messages')))])]):_vm._e(),_c('div',{key:'msg' + message.id,class:[\n 'kiwi-messagelist-item',\n _vm.selectedMessages[message.id] ?\n 'kiwi-messagelist-item--selected' :\n ''\n ]},[(message.render() && message.template && message.template.$el)?_c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:(message.template.$el),expression:\"message.template.$el\"}]}):(_vm.listType === 'modern')?_c('message-list-message-modern',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):(_vm.listType === 'inline')?_c('message-list-message-inline',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):(_vm.listType === 'compact')?_c('message-list-message-compact',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):_vm._e()],1)]})],2)}),_c('transition',{attrs:{\"name\":\"kiwi-messagelist-joinloadertrans\"}},[(_vm.shouldShowJoiningLoader)?_c('div',{staticClass:\"kiwi-messagelist-joinloader\"},[_c('LoadingAnimation')],1):_vm._e()]),(_vm.shouldRequestChannelKey)?_c('buffer-key',{attrs:{\"buffer\":_vm.buffer,\"network\":_vm.buffer.getNetwork()}}):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-nicklist\",class:{\n 'kiwi-nicklist--filtering': _vm.filter_visible,\n 'kiwi-nicklist--avatars': _vm.shouldShowAvatars,\n }},[_c('div',{staticClass:\"kiwi-nicklist-usercount\",on:{\"click\":_vm.toggleUserFilter}},[_c('span',[_vm._v(\" \"+_vm._s(_vm.filter_visible ? _vm.sortedUsers.length : _vm.$t('person', {count: _vm.sortedUsers.length}))+\" \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user_filter),expression:\"user_filter\"}],ref:\"user_filter\",attrs:{\"placeholder\":_vm.$t('filter_users')},domProps:{\"value\":(_vm.user_filter)},on:{\"blur\":_vm.onFilterBlur,\"input\":function($event){if($event.target.composing){ return; }_vm.user_filter=$event.target.value}}}),_c('i',{staticClass:\"fa fa-search\"})]),_c('DynamicScroller',{staticClass:\"kiwi-nicklist-users\",attrs:{\"items\":_vm.sortedUsers,\"min-item-size\":34,\"key-field\":'nick'},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var item = ref.item;\n var index = ref.index;\n var active = ref.active;\nreturn [_c('DynamicScrollerItem',{attrs:{\"item\":item,\"active\":active,\"size-dependencies\":[],\"data-index\":index}},[_c('nicklist-user',{key:item.nick,attrs:{\"user\":item,\"nicklist\":_vm.self,\"network\":_vm.network}})],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channellist\",class:{'kiwi-channellist-padding-top': !_vm.list.length}},[_c('div',{staticClass:\"kiwi-channellist-content-container\"},[_c('div',{staticClass:\"kiwi-channellist-nav\"},[_c('form',{staticClass:\"u-form u-form--big kiwi-channellist-search\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.search),expression:\"search\"}],staticClass:\"u-input\",attrs:{\"placeholder\":_vm.$t('do_search')},domProps:{\"value\":(_vm.search)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.search=$event.target.value}}}),_c('a',{staticClass:\"u-button kiwi-channellist-refresh\",class:{\n 'u-button-primary': !_vm.isLoading,\n 'u-button-secondary': _vm.isLoading,\n },on:{\"click\":_vm.maybeUpdateList}},[(!_vm.isLoading)?_c('i',{staticClass:\"fa fa-refresh\",attrs:{\"aria-hidden\":\"true\"}}):_c('i',{staticClass:\"fa fa-refresh fa-spin\",attrs:{\"aria-hidden\":\"true\"}})])]),(_vm.list.length)?_c('div',{staticClass:\"kiwi-channellist-pagination\"},[_c('a',{on:{\"click\":_vm.prevPage}},[_c('i',{staticClass:\"fa fa-step-backward\",attrs:{\"aria-hidden\":\"true\"}})]),_vm._v(\" \"+_vm._s(_vm.page + 1)+\" / \"+_vm._s(_vm.maxPages + 1)+\" \"),_c('a',{on:{\"click\":_vm.nextPage}},[_c('i',{staticClass:\"fa fa-step-forward\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e()]),_c('div',{staticClass:\"kiwi-channellist-table\"},[(!_vm.isLoading && !_vm.noResults)?_c('table',{key:_vm.last_updated,attrs:{\"width\":\"100%\"}},[_c('tbody',_vm._l((_vm.paginated),function(channel){return _c('tr',{key:channel.channel},[_c('td',{staticClass:\"kiwi-channellist-user-center\"},[(channel.num_users >= 0)?_c('span',{staticClass:\"kiwi-channellist-users\"},[_c('i',{staticClass:\"fa fa-user\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(channel.num_users)+\" \")]):_vm._e()]),_c('td',[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.joinChannel(channel.channel)}}},[_vm._v(\" \"+_vm._s(channel.channel)+\" \")])]),_c('td',{staticClass:\"kiwi-channellist-table-topic\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.formatAndTrimTopic(channel.topic))}})]),_c('td',{staticClass:\"kiwi-channellist-user-center\"},[_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":function($event){return _vm.joinChannel(channel.channel)}}},[_vm._v(\" \"+_vm._s(_vm.$t('container_join'))+\" \")])])])}),0)]):(_vm.noResults)?_c('div',{staticClass:\"kiwi-channellist-info\"},[_c('p',[_vm._v(_vm._s(_vm.$t('channel_list_nonefound')))])]):_c('div',{staticClass:\"kiwi-channellist-info\"},[_vm._v(_vm._s(_vm.$t('channel_list_fetch')))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContainerHeader.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContainerHeader.vue?vue&type=style&index=0&lang=less&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _localesList = _interopRequireDefault(require(\"@/res/localesList\"));\n\nvar _SettingsAliases = _interopRequireDefault(require(\"./SettingsAliases\"));\n\nvar _SettingsAdvanced = _interopRequireDefault(require(\"./SettingsAdvanced\"));\n\n/**\n * Returns an object for a vuejs computated property on a state settings value\n * This allows default settings from the server config, but overrides with user config\n */\nfunction bindSetting(settingName) {\n return {\n get: function settingGetter() {\n return this.$state.setting(settingName);\n },\n set: function settingSetter(newVal) {\n this.$state.setting(settingName, newVal);\n }\n };\n}\n\nvar _default = {\n components: {\n SettingsAliases: _SettingsAliases.default,\n SettingsAdvanced: _SettingsAdvanced.default\n },\n data: function data() {\n return {\n theme: '',\n customThemeUrl: '',\n pluginUiElements: _GlobalApi.default.singleton().appSettingsPlugins,\n localesList: _localesList.default\n };\n },\n computed: {\n themeSupportsMonospace: function themeSupportsMonospace() {\n var themeMgr = _ThemeManager.default.instance();\n\n var val = themeMgr.themeVar('supports-monospace');\n return val === '1';\n },\n canRegisterProtocolHandler: function canRegisterProtocolHandler() {\n return !!navigator.registerProtocolHandler && this.$state.setting('allowRegisterProtocolHandler');\n },\n timestamps_24h: {\n get: function get24Timestamps() {\n // %H is 24 hour format\n return this.$state.setting('buffers.timestamp_format').substr(0, 2) === '%H';\n },\n set: function set24Timestamps(newVal) {\n var newFormat = newVal ? '%H:%M:%S' : '%l:%M:%S %p';\n this.$state.setting('buffers.timestamp_format', newFormat);\n }\n },\n settings: function getSettings() {\n return this.$state.settings;\n },\n settingShowAutoComplete: bindSetting('showAutocomplete'),\n settingUseMonospace: bindSetting('useMonospace'),\n settingHighlights: bindSetting('highlights'),\n settingBufferColourNicknames: bindSetting('buffers.colour_nicknames_in_messages'),\n settingBufferShowTimestamps: bindSetting('buffers.show_timestamps'),\n settingBufferShowEmoticons: bindSetting('buffers.show_emoticons'),\n settingBufferBlockPms: bindSetting('buffers.block_pms'),\n settingBufferScrollbackSize: bindSetting('buffers.scrollback_size'),\n settingBufferExtraFormatting: bindSetting('buffers.extra_formatting'),\n settingBufferTrafficAsActivity: bindSetting('buffers.traffic_as_activity'),\n settingBufferMuteSound: bindSetting('buffers.mute_sound'),\n settingBufferShareTyping: bindSetting('buffers.share_typing'),\n settingBufferInlineLinkPreviews: bindSetting('buffers.inline_link_auto_previews'),\n settingDefaultBanMask: bindSetting('buffers.default_ban_mask'),\n settingDefaultKickReason: bindSetting('buffers.default_kick_reason'),\n settingAdvancedEnable: {\n get: function getSettingShowAdvancedTab() {\n return this.$state.ui.show_advanced_tab;\n },\n set: function setSettingShowAdvancedTab(newVal) {\n this.$state.ui.show_advanced_tab = newVal;\n }\n },\n settingLanguage: {\n get: function getSettingLanguage() {\n return this.$state.setting('language') || '';\n },\n set: function setSettingLanguage(newVal) {\n this.$state.setting('language', newVal || null);\n }\n },\n messageLayouts: function messageLayouts() {\n return {\n traditional: 'compact',\n modern: 'modern',\n inline: 'inline'\n };\n },\n settingMessageLayout: {\n set: function setSettingMessageLayout(newVal) {\n var l = this.messageLayouts;\n this.$state.setting('buffers.messageLayout', l[newVal] || l.modern);\n },\n get: function get() {\n var s = this.$state.setting('buffers.messageLayout');\n\n var l = _lodash.default.invert(this.messageLayouts);\n\n return l[s];\n }\n }\n },\n created: function created() {\n this.listenForThemeSettings();\n },\n methods: {\n closeSettings: function closeSettings() {\n this.$state.$emit('active.component');\n },\n refreshTheme: function refreshTheme() {\n _ThemeManager.default.instance().reload();\n },\n listenForThemeSettings: function listenForThemeSettings() {\n var _this = this;\n\n var themeMgr = _ThemeManager.default.instance();\n\n var watches = []; // Called when the current theme changes (including url refreshes)\n\n var updateFn = function updateFn() {\n var theme = themeMgr.currentTheme();\n _this.theme = theme.name;\n _this.customThemeUrl = theme.name === 'custom' ? theme.url : '';\n };\n\n var watchTheme = function watchTheme(newVal) {\n themeMgr.setTheme(newVal);\n };\n\n var watchCustomThemeUrl = function watchCustomThemeUrl(newVal) {\n if (themeMgr.currentTheme().name === 'custom') {\n themeMgr.setCustomThemeUrl(newVal);\n }\n }; // Remove all our attached events to cleanup\n\n\n var teardownFn = function teardownFn() {\n _this.$state.$off('theme.change', updateFn);\n\n (0, _forEach.default)(watches).call(watches, function (unwatchFn) {\n return unwatchFn();\n });\n\n _this.$off('hook:destroy', teardownFn);\n }; // Update our info with the latest theme settings before we start\n // listening for changes\n\n\n updateFn();\n this.$state.$on('theme.change', updateFn);\n this.$once('hook:destroyed', teardownFn); // $watch returns a function to stop watching the data field. Add them into\n // an array to make it easier to iterate over them all and unwatch them all\n // when needed.\n\n watches = [this.$watch('theme', watchTheme), this.$watch('customThemeUrl', watchCustomThemeUrl)];\n },\n enableAdvancedTab: function enableAdvancedTab() {\n var _this2 = this;\n\n this.settingAdvancedEnable = true;\n this.$nextTick(function () {\n _this2.$refs.tabs.setActiveByName('advanced');\n\n _this2.$el.scrollTop = 0;\n });\n },\n makeDefaultProtocolHandler: function makeDefaultProtocolHandler() {\n navigator.registerProtocolHandler('irc', document.location.origin + document.location.pathname + '#%s', 'Kiwi IRC');\n navigator.registerProtocolHandler('ircs', document.location.origin + document.location.pathname + '#%s', 'Kiwi IRC');\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AppSettings\"]\r\nwindow._kiwi_exports.components.AppSettings = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UrlEmbed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UrlEmbed.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelList.vue?vue&type=script&lang=js&\"","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.get = get;\nexports.set = set;\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar supportedCached = null;\n\nfunction get(name) {\n if (!isSupported()) {\n return _promise.default.resolve();\n }\n\n return new _promise.default(function (resolve) {\n resolve(window.localStorage.getItem(name));\n });\n}\n\nfunction set(name, val) {\n if (!isSupported()) {\n return _promise.default.resolve();\n }\n\n return new _promise.default(function (resolve) {\n resolve(window.localStorage.setItem(name, val));\n });\n}\n\nfunction isSupported() {\n if (supportedCached === null) {\n supportedCached = storageAvailable('localStorage');\n }\n\n return supportedCached;\n} // https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API#Testing_for_availability\n\n\nfunction storageAvailable(type) {\n var storage;\n\n try {\n var x = '__storage_test__';\n storage = window[type];\n storage.setItem(x, x);\n storage.removeItem(x);\n return true;\n } catch (e) {\n return e instanceof DOMException && ( // everything except Firefox\n e.code === 22 || // Firefox\n e.code === 1014 || // test name field too, because code might not be present\n // everything except Firefox\n e.name === 'QuotaExceededError' || // Firefox\n e.name === 'NS_ERROR_DOM_QUOTA_REACHED') && // acknowledge QuotaExceededError only if there's something already stored\n storage.length !== 0;\n }\n}","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n data: function data() {\n return {\n logo: '',\n c: '',\n x: '',\n Y: [],\n t: 0,\n fontSize: 72,\n font: 'bold ' + 72 + 'px verdana',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce eu arcu ipsum. ',\n animationFrame: null,\n destroying: false\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.logo = this.$el.querySelector('.kiwi-loading-logo');\n this.c = this.$el.querySelector('.kiwi-loading-animation');\n this.x = this.c.getContext('2d');\n var tmpText = '';\n\n for (var i = 0; i < 9; i += 1) {\n tmpText += this.text;\n }\n\n this.text = String(tmpText).match(/.{1,43}/g);\n this.c.width = 1256;\n this.c.height = 1080;\n\n for (var _i = 0; _i < this.text.length; _i += 1) {\n this.Y.push(_i * this.fontSize - 1600);\n }\n\n this.logo.onload = function () {\n if (_this.destroying) {\n // the component has already been destroyed, we nolonger need the animation\n return;\n }\n\n _this.draw();\n };\n },\n beforeDestroy: function beforeDestroy() {\n this.destroying = true;\n cancelAnimationFrame(this.animationFrame);\n },\n methods: {\n draw: function draw() {\n this.x.clearRect(0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'source-over';\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'xor';\n this.x.fillStyle = '#000';\n this.x.font = this.font;\n\n for (var i = 0; i < this.text.length; i += 1) {\n if (this.t % 4.5 < 2) {\n this.Y[i] += (250 + (10 + i) / this.text.length * 4000) / 120;\n\n if (this.Y[i] > i * this.fontSize) {\n this.Y[i] = i * this.fontSize;\n }\n } else {\n if (this.text.length - (this.t % 4.5 - 2) / 2.5 * this.text.length * 1.75 < i) {\n this.Y[i] += 10 + this.Y[i] / 20;\n }\n\n if (this.Y[i] > 1080 || this.Y[i] < 0) {\n this.Y[i] = -1500 + i * this.fontSize;\n }\n }\n\n if (this.Y[i] > -100) {\n this.x.fillText(this.text[i], 0, this.fontSize + this.Y[i]);\n }\n }\n\n this.x.globalCompositeOperation = 'source-out';\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'source-over';\n this.x.globalAlpha = 0.1;\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalAlpha = 1;\n this.animationFrame = requestAnimationFrame(this.draw);\n this.t += 1 / 40;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"LoadingAnimation\"]\r\nwindow._kiwi_exports.components.LoadingAnimation = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n'kiwi public'; // Do channels support half-op mode\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.supportsHalfOp = supportsHalfOp;\nexports.isAChannelModeAdmin = isAChannelModeAdmin;\nexports.isQChannelModeOwner = isQChannelModeOwner;\nexports.extbanAccount = extbanAccount;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nfunction supportsHalfOp(network) {\n var ircdType = network.ircd.toLowerCase();\n var notSupported = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notSupported.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notSupported[i]) > -1) {\n return false;\n }\n }\n\n return true;\n} // Does channel mode +a = admin\n\n\nfunction isAChannelModeAdmin(network) {\n var ircdType = network.ircd.toLowerCase();\n var notAdmin = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notAdmin.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notAdmin[i]) > -1) {\n return false;\n }\n }\n\n return true;\n} // Does channel mode +q = owner\n\n\nfunction isQChannelModeOwner(network) {\n var ircdType = network.ircd.toLowerCase();\n var notOwner = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notOwner.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notOwner[i]) > -1) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction extbanAccount(network) {\n // Eg. InspIRCd-2.0\n // Eg. UnrealIRCd-4.0.17\n // Eg. ircd-seven-1.1.7\n // Eg. u2.10.12.10+snircd(1.3.4a)\n var ircdType = network.ircd.toLowerCase(); // Eg. ~,qjncrRa\n // Eg. ,qjncrRa\n\n var extban = network.ircClient.network.supports('EXTBAN') || '';\n\n if (!extban) {\n return '';\n }\n\n var prefix = extban.split(',')[0];\n var type = 'a'; // https://docs.inspircd.org/3/modules/services_account/#extended-bans\n\n if ((0, _indexOf.default)(ircdType).call(ircdType, 'inspircd') > -1) {\n type = 'R';\n }\n\n return prefix + type;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"IrcdDiffs\"]\r\nwindow._kiwi_exports.helpers.IrcdDiffs = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./IrcInput.vue?vue&type=template&id=37274569&\"\nimport script from \"./IrcInput.vue?vue&type=script&lang=js&\"\nexport * from \"./IrcInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IrcInput.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-bufferkey kiwi-warning-block\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.joinChannel($event)}}},[_c('label',[_vm._v(_vm._s(_vm.$t('bufferkey_input')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.buffer.key),expression:\"buffer.key\"},{name:\"focus\",rawName:\"v-focus\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.buffer.key)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.buffer, \"key\", $event.target.value)}}}),_c('div',{staticClass:\"kiwi-bufferkey-buttons\"},[_c('span',{staticClass:\"kiwi-bufferkey-button\",on:{\"click\":_vm.joinChannel}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('bufferkey_rejoin', {channel: _vm.buffer.name}))+\" \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=less&\"","import { render, staticRenderFns } from \"./MessageListAvatar.vue?vue&type=template&id=482f7543&functional=true&\"\nimport script from \"./MessageListAvatar.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListAvatar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPrompt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPrompt.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-confirm', {\n props: ['label', 'flipConnotation'],\n data: function data() {\n return {\n state: 'pre'\n };\n },\n computed: {\n connoteCss: function connoteCss() {\n return {\n yes: this.flipConnotation ? 'warning' : 'primary',\n no: this.flipConnotation ? 'primary' : 'warning'\n };\n }\n },\n created: function created() {\n if (!this.$slots.default) {\n this.state = 'prompt';\n }\n },\n methods: {\n prompt: function prompt() {\n this.state = 'prompt';\n },\n complete: function complete(val) {\n this.$emit('submit', val);\n this.$emit(val ? 'ok' : 'cancel');\n this.state = 'pre';\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputConfirm\"]\r\nwindow._kiwi_exports.components.utils.InputConfirm = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./Welcome.vue?vue&type=template&id=3295b70b&\"\nimport script from \"./Welcome.vue?vue&type=script&lang=js&\"\nexport * from \"./Welcome.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Welcome.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./AppSettings.vue?vue&type=template&id=610c0267&\"\nimport script from \"./AppSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./AppSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppSettings.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _xhr = _interopRequireDefault(require(\"xhr\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _Logger = _interopRequireDefault(require(\"./Logger\"));\n\nvar log = _Logger.default.namespace('ConfigLoader');\n\nvar ConfigLoader = /*#__PURE__*/function () {\n function ConfigLoader() {\n (0, _classCallCheck2.default)(this, ConfigLoader);\n this.config = (0, _create.default)(null);\n this.valReplacements = (0, _create.default)(null);\n }\n\n (0, _createClass2.default)(ConfigLoader, [{\n key: \"addValueReplacement\",\n value: function addValueReplacement(key, value) {\n this.valReplacements[key] = value;\n return this;\n }\n }, {\n key: \"loadFromUrl\",\n value: function loadFromUrl(configUrl) {\n var _this = this;\n\n return new _promise.default(function (resolve, reject) {\n (0, _xhr.default)({\n url: configUrl\n }, function (err, response) {\n if (err) {\n reject();\n return;\n }\n\n var configObj = null;\n\n try {\n configObj = _json.default.parse(response.body);\n } catch (parseErr) {\n log.error('Config ' + parseErr.message);\n var errMsg = 'Config file error: ' + parseErr.message.replace('JSON5: ', ''); // Convert \"at 22:16\" to \"at line 22, position 16\"\n\n /* eslint-disable arrow-body-style */\n\n errMsg = errMsg.replace(/at (\\d+):(\\d+)/g, function (m, m1, m2) {\n var _context;\n\n return (0, _concat.default)(_context = \"line \".concat(m1, \", position \")).call(_context, m2);\n });\n reject(errMsg);\n return;\n }\n\n _this.setConfig(configObj);\n\n resolve(_this.config);\n });\n });\n }\n }, {\n key: \"loadFromObj\",\n value: function loadFromObj(configObj) {\n var _this2 = this;\n\n return new _promise.default(function (resolve, reject) {\n _this2.setConfig(configObj);\n\n resolve(_this2.config);\n });\n }\n }, {\n key: \"setConfig\",\n value: function setConfig(confObj) {\n var _this3 = this;\n\n var walkObject = function walkObject(obj, target) {\n _lodash.default.each(obj, function (_val, key) {\n var val = _val;\n\n if (typeof val === 'string') {\n val = _this3.insertReplacements(val);\n target[key] = val;\n } else if ((0, _typeof2.default)(val) === 'object') {\n target[key] = _lodash.default.isArray(val) ? [] : {};\n walkObject(val, target[key]);\n } else {\n target[key] = val;\n }\n });\n };\n\n this.config = (0, _create.default)(null);\n walkObject(confObj, this.config);\n }\n }, {\n key: \"insertReplacements\",\n value: function insertReplacements(input) {\n var out = input;\n var keys = (0, _keys.default)(this.valReplacements);\n\n for (var i = 0; i < keys.length; i++) {\n var k = keys[i];\n\n if (input === '{{' + k + '}}') {\n // If we have an exact match, return the exact replacement value we have as\n // it may not be a string\n return this.valReplacements[k];\n }\n\n out = out.replace('{{' + k + '}}', this.valReplacements[k]);\n }\n\n return out;\n }\n }]);\n return ConfigLoader;\n}();\n\nexports.default = ConfigLoader;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"ConfigLoader\"]\r\nwindow._kiwi_exports.libs.ConfigLoader = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _default = {\n props: ['filter', 'buffer', 'items'],\n data: function data() {\n return {\n items_: [{\n text: 'anick1',\n type: 'user'\n }, {\n text: 'anick2',\n type: 'user'\n }, {\n text: 'bnick3',\n type: 'user'\n }, {\n text: 'cnick4'\n }, {\n text: 'dnick5'\n }],\n selected_idx: 0\n };\n },\n computed: {\n filteredItems: function filteredItems() {\n var _context, _context2;\n\n var filterVal = ((0, _filter.default)(this) || '').toLowerCase();\n return (0, _sort.default)(_context = (0, _filter.default)(_context2 = (0, _lodash.default)(this.items)).call(_context2, function (item) {\n var _context3, _context4;\n\n var s = false;\n\n if ((0, _indexOf.default)(_context3 = item.text.toLowerCase()).call(_context3, filterVal) === 0) {\n s = true;\n }\n\n (0, _forEach.default)(_context4 = item.alias || []).call(_context4, function (alias) {\n var _context5;\n\n if ((0, _indexOf.default)(_context5 = alias.toLowerCase()).call(_context5, filterVal) === 0) {\n s = true;\n }\n });\n return s;\n })).call(_context, function (a, b) {\n return a.text.localeCompare(b.text);\n }).value();\n },\n filteredAndLimitedItems: function filteredAndLimitedItems() {\n var _context6,\n _this = this;\n\n return (0, _filter.default)(_context6 = this.filteredItems).call(_context6, function (item, itemIdx, items) {\n var numItems = items.length - 1;\n var idxFrom = _this.selected_idx - 3;\n var idxTo = _this.selected_idx + 3;\n var isInRange = false; // Adjust the number of items before and after the selected item\n // when we reach either end of the list.\n // If we don't do this then this:\n // * Item 1\n // * item 2\n // * Item 3\n // * Item 4\n // * Item 5 < selected\n // Can turn into this:\n // * Item 4\n // * Item 5 < selected\n\n if (idxFrom < 0) {\n idxTo += -idxFrom;\n idxFrom = 0;\n } else if (idxTo > numItems) {\n idxFrom -= idxTo - numItems;\n idxTo = numItems;\n }\n\n if (itemIdx >= idxFrom && itemIdx <= idxTo) {\n isInRange = true;\n } // Keep track of the pre-limited index for item selection\n\n\n item.idx = itemIdx;\n return isInRange;\n });\n },\n selectedItem: function selectedItem() {\n var item = this.filteredItems[this.selected_idx];\n return item || null;\n }\n },\n watch: {\n selected_idx: function watchSelectedIdx() {\n var _this2 = this;\n\n // nextTick() as the DOM hasn't updated yet\n this.$nextTick(function () {\n var el = _this2.$el.querySelector('.kiwi-autocomplete-item--selected');\n\n if (!el) {\n return;\n }\n\n _this2.$el.scrollTop = el.offsetTop - el.getBoundingClientRect().height * 2;\n });\n this.tempCurrentItem();\n },\n filter: function watchFilter() {\n var numItems = this.filteredAndLimitedItems.length - 1;\n\n if (this.selected_idx > numItems) {\n this.selected_idx = numItems;\n }\n }\n },\n mounted: function mounted() {\n this.tempCurrentItem();\n },\n methods: {\n handleOnKeyDown: function handleOnKeyDown(event) {\n var handled = false;\n var cancelKeyCodes = [13, // return\n 188, // comma\n 190 // period\n ];\n\n if ((0, _indexOf.default)(cancelKeyCodes).call(cancelKeyCodes, event.keyCode) > -1) {\n // If no item is selected (ie. on an empty list), leave the return key\n // to do its default action as if the autocomplete box isn't active.\n if (!this.selectedItem) {\n this.cancel();\n } else {\n this.selectCurrentItem();\n\n if (event.keyCode === 13) {\n event.preventDefault();\n }\n\n handled = true;\n }\n } else if (event.keyCode === 38 || event.keyCode === 9 && event.shiftKey) {\n // Up or tab + shift\n if (this.selected_idx > 0) {\n this.selected_idx--;\n } else {\n // Wrap around to the end\n this.selected_idx = this.filteredItems.length - 1;\n }\n\n event.preventDefault();\n handled = true;\n } else if (event.keyCode === 40 && !event.altKey || event.keyCode === 9) {\n // Down or tab\n if (this.selected_idx < this.filteredItems.length - 1) {\n this.selected_idx++;\n } else {\n // Wrap around to the start\n this.selected_idx = 0;\n }\n\n event.preventDefault();\n handled = true;\n } else if (event.keyCode === 16) {\n handled = true;\n }\n\n return handled;\n },\n openQuery: function openQuery(nick) {\n var buffer = this.$state.addBuffer(this.buffer.networkid, nick);\n this.$state.setActiveBuffer(buffer.networkid, buffer.name);\n this.cancel();\n },\n tempCurrentItem: function tempCurrentItem() {\n var item = this.selectedItem;\n\n if (!item) {\n return;\n }\n\n this.$emit('temp', item.value || item.text, item);\n },\n selectCurrentItem: function selectCurrentItem() {\n var item = this.selectedItem;\n var value = '';\n\n if (item) {\n value = item.value || item.text;\n }\n\n this.$emit('selected', value, item);\n },\n cancel: function cancel() {\n this.$emit('cancel');\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AutoComplete\"]\r\nwindow._kiwi_exports.components.AutoComplete = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./TabbedView.vue?vue&type=template&id=6c7be4c1&\"\nimport script from \"./TabbedView.vue?vue&type=script&lang=js&\"\nexport * from \"./TabbedView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TabbedView.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _BouncerProvider = _interopRequireDefault(require(\"@/libs/BouncerProvider\"));\n\nvar _Captcha = _interopRequireDefault(require(\"@/components/Captcha\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nvar log = _Logger.default.namespace('Welcome.vue');\n\nvar _default = {\n components: {\n Captcha: _Captcha.default,\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n errorMessage: '',\n network: null,\n channel: '',\n nick: '',\n password: '',\n showChannel: true,\n showPass: true,\n toggablePass: true,\n showNick: true,\n show_password_box: false,\n connectWithoutChannel: false,\n showPlainText: false,\n captchaReady: false\n };\n },\n computed: {\n startupOptions: function startupOptions() {\n return this.$state.settings.startupOptions;\n },\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n footerText: function footerText() {\n var footer = this.$state.settings.startupOptions.footerText;\n return typeof footer === 'string' ? footer : '';\n },\n buttonText: function buttonText() {\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n },\n isNickValid: function isNickValid() {\n var nickPatternStr = this.$state.setting('startupOptions.nick_format');\n var nickPattern = '';\n\n if (!nickPatternStr) {\n // Nicks cannot start with [0-9- ]\n // ? is not a valid nick character but we allow it as it gets replaced\n // with a number.\n nickPattern = /^[a-z_\\\\[\\]{}^`|][a-z0-9_\\-\\\\[\\]{}^`|]*$/i;\n } else {\n // Support custom pattern matches. Eg. only '@example.com' may be allowed\n // on some IRCDs\n var pattern = '';\n var flags = '';\n\n if (nickPatternStr[0] === '/') {\n // Custom regex\n var pos = (0, _lastIndexOf.default)(nickPatternStr).call(nickPatternStr, '/');\n pattern = nickPatternStr.substring(1, pos);\n flags = nickPatternStr.substr(pos + 1);\n } else {\n // Basic contains rule\n pattern = _lodash.default.escapeRegExp(nickPatternStr);\n flags = 'i';\n }\n\n try {\n nickPattern = new RegExp(pattern, flags);\n } catch (error) {\n log.error('Nick format error: ' + error.message);\n return false;\n }\n }\n\n return this.nick.match(nickPattern);\n },\n readyToStart: function readyToStart() {\n var ready = !!this.nick;\n\n if (!this.connectWithoutChannel && !this.channel) {\n ready = false;\n } // Make sure the channel name starts with a common channel prefix\n\n\n if (!this.connectWithoutChannel) {\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var _context;\n\n if ((0, _indexOf.default)(_context = '#&').call(_context, bufferObj.name[0]) === -1) {\n ready = false;\n }\n });\n } // If toggling the password is is disabled, assume it is required\n\n\n if (!this.toggablePass && !this.password) {\n ready = false;\n }\n\n if (!this.isNickValid) {\n ready = false;\n }\n\n return ready;\n }\n },\n watch: {\n show_password_box: function show_password_box(newVal) {\n if (newVal === false) {\n // clear the password when show password is unchecked\n this.password = '';\n }\n }\n },\n created: function created() {\n var _context2;\n\n var options = this.startupOptions;\n var connectOptions = this.connectOptions(); // Take some settings from a previous network if available\n\n var previousNet = null;\n\n if ((0, _trim.default)(_context2 = connectOptions.hostname).call(_context2)) {\n var _context3;\n\n previousNet = this.$state.getNetworkFromAddress((0, _trim.default)(_context3 = connectOptions.hostname).call(_context3));\n }\n\n if (previousNet && previousNet.connection.nick) {\n this.nick = previousNet.connection.nick;\n } else if (Misc.queryStringVal('nick')) {\n this.nick = Misc.queryStringVal('nick');\n } else {\n this.nick = options.nick;\n }\n\n this.nick = this.processNickRandomNumber(this.nick || '');\n\n if (options.password) {\n this.password = options.password;\n } else if (previousNet && previousNet.password) {\n this.password = previousNet.password;\n this.show_password_box = true;\n } else {\n this.password = '';\n }\n\n this.channel = decodeURIComponent(window.location.hash) || options.channel || '';\n this.showChannel = typeof options.showChannel === 'boolean' ? options.showChannel : true;\n this.showNick = typeof options.showNick === 'boolean' ? options.showNick : true;\n this.showPass = typeof options.showPassword === 'boolean' ? options.showPassword : true;\n this.toggablePass = typeof options.toggablePassword === 'boolean' ? options.toggablePassword : true;\n this.connectWithoutChannel = !!options.allowNoChannel;\n\n if (options.bouncer) {\n this.toggablePass = false;\n this.showPass = true;\n this.showChannel = false;\n this.connectWithoutChannel = true;\n var bouncer = new _BouncerProvider.default(this.$state);\n bouncer.enable(connectOptions.hostname, connectOptions.port, connectOptions.tls, connectOptions.direct, connectOptions.direct_path);\n }\n\n if (options.autoConnect && this.nick && (this.channel || this.connectWithoutChannel)) {\n this.startUp();\n }\n },\n methods: {\n onAltClose: function onAltClose(event) {\n if (event.channel) {\n this.channel = event.channel;\n }\n\n if (event.nick) {\n this.nick = event.nick;\n }\n\n if (event.password) {\n this.password = event.password;\n }\n\n if (event.error) {\n this.errorMessage = event.error;\n }\n\n this.$state.settings.startupOptions.altComponent = null;\n },\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n formSubmit: function formSubmit() {\n if (this.readyToStart) {\n this.startUp();\n }\n },\n startUp: function startUp() {\n var _this = this;\n\n this.errorMessage = '';\n var options = (0, _assign.default)({}, this.$state.settings.startupOptions);\n var connectOptions = this.connectOptions();\n var netAddress = (0, _trim.default)(_lodash.default).call(_lodash.default, connectOptions.hostname); // Check if we have this network already\n\n var net = this.network || this.$state.getNetworkFromAddress(netAddress);\n var password = this.password; // If the network doesn't already exist, add a new one\n\n net = net || this.$state.addNetwork('Network', this.nick, {\n server: netAddress,\n port: connectOptions.port,\n tls: connectOptions.tls,\n password: password,\n encoding: (0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding),\n direct: connectOptions.direct,\n path: connectOptions.direct_path || '',\n gecos: options.gecos,\n username: options.username\n }); // Clear the server buffer in case it already existed and contains messages relating to\n // the previous connection, such as errors. They are now redundant since this is a\n // new connection.\n\n net.serverBuffer().clearMessages(); // If we retreived an existing network, update the nick+password with what\n // the user has just put in place\n\n net.connection.nick = this.nick;\n\n if (options.bouncer) {\n var _context4;\n\n // Bouncer mode uses server PASS\n net.connection.password = (0, _concat.default)(_context4 = \"\".concat(this.nick, \":\")).call(_context4, password);\n net.password = '';\n } else {\n net.connection.password = '';\n net.password = password;\n }\n\n if ((0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding || '')) {\n net.connection.encoding = (0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding);\n }\n\n this.network = net; // Only switch to the first channel we join if multiple are being joined\n\n var hasSwitchedActiveBuffer = false;\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var newBuffer = _this.$state.addBuffer(net.id, bufferObj.name);\n\n newBuffer.enabled = true;\n\n if (newBuffer && !hasSwitchedActiveBuffer) {\n _this.$state.setActiveBuffer(net.id, newBuffer.name);\n\n hasSwitchedActiveBuffer = true;\n }\n\n if (bufferObj.key) {\n newBuffer.key = bufferObj.key;\n }\n }); // switch to server buffer if no channels are joined\n\n if (!options.bouncer && !hasSwitchedActiveBuffer) {\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n net.ircClient.connect();\n\n var onRegistered = function onRegistered() {\n if (_this.$refs.layout) {\n _this.$refs.layout.close();\n }\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n var onClosed = function onClosed() {\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n },\n processNickRandomNumber: function processNickRandomNumber(nick) {\n // Replace ? with a random number\n var tmp = (nick || '').replace(/\\?/g, function () {\n return Math.floor(Math.random() * 100).toString();\n });\n return (0, _trim.default)(_lodash.default).call(_lodash.default, tmp);\n },\n handleCaptcha: function handleCaptcha(isReady) {\n this.captchaReady = isReady;\n },\n connectOptions: function connectOptions() {\n var options = (0, _assign.default)({}, this.$state.settings.startupOptions);\n var connectOptions = Misc.connectionInfoFromConfig(options); // If a server isn't specified in the config, set some defaults\n // The webircgateway will have a default network set and will connect\n // there instead. This just removes the requirement of specifying the same\n // irc network address in both the server-side and client side configs\n\n connectOptions.hostname = connectOptions.hostname || 'default';\n\n if (!connectOptions.port && connectOptions.direct) {\n connectOptions.port = connectOptions.tls ? 443 : 80;\n } else if (!connectOptions.port && !connectOptions.direct) {\n connectOptions.port = connectOptions.tls ? 6697 : 6667;\n }\n\n return connectOptions;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"Welcome\"]\r\nwindow._kiwi_exports.components.startups.Welcome = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _default = {\n data: function data() {\n return {\n title: 'Where are you connecting today?',\n buttonText: '',\n server_type: 'default',\n server: '',\n tls: false,\n nick: '',\n password: '',\n encoding: 'utf8',\n channel: '',\n znc_network: '',\n znc_network_support: true,\n direct: false,\n direct_path: '',\n show_type_switcher: true,\n show_password_box: false,\n is_connecting: false,\n network: null\n };\n },\n created: function () {\n var _created = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var _this = this;\n\n var saveThisSessionsState, network, fragment, uriCheck, connections, con;\n return _regenerator.default.wrap(function _callee$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n saveThisSessionsState = false; // If we have networks from a previous state, launch directly into it\n\n if (this.$state.networks.length > 0) {\n network = this.$state.networks[0];\n this.$state.setActiveBuffer(network.id, network.serverBuffer().name);\n saveThisSessionsState = true;\n this.$emit('start');\n } else if (window.location.hash.substr(1)) {\n fragment = window.location.hash.substr(1); // Check to see if we're dealing with an encoded irc: uri (browsers do this\n // when clicking an IRC link)\n\n uriCheck = fragment.substr(0, 7).toLowerCase();\n\n if (uriCheck === 'ircs%3a' || uriCheck.substr(0, 6) === 'irc%3a') {\n fragment = decodeURIComponent(fragment);\n }\n\n connections = Misc.parseIrcUri(fragment); // If more than 1 connection string is given, skip the connection screen\n // and add them all right away.\n\n if (connections.length === 0) {\n saveThisSessionsState = true;\n this.applyDefaults();\n } else if (connections.length === 1) {\n saveThisSessionsState = false;\n this.server_type = 'default_simple';\n this.show_type_switcher = false;\n con = connections[0];\n this.server = con.server + ':' + con.port;\n this.tls = con.tls;\n this.nick = this.processNickRandomNumber(con.nick);\n this.channel = con.channels.join(',');\n this.direct = con.direct;\n this.encoding = con.encoding;\n\n if (con.params.type === 'znc') {\n // Older ZNC versions only support user:pass while newer supports\n // user/network:pass. Setting the network to _ denotes that we are\n // connecting to an older ZNC without network support.\n if (con.params.network === '_') {\n this.znc_network_support = false;\n } else {\n this.znc_network = con.params.network || '';\n }\n\n this.server_type = 'znc';\n this.title = 'Enter your password to connect to ZNC';\n } else {\n this.title = 'Enter a nickname to join';\n }\n } else if (connections.length > 1) {\n saveThisSessionsState = false;\n (0, _forEach.default)(connections).call(connections, function (con, idx) {\n var _context;\n\n var net = _this.$state.addNetwork(con.server, con.nick, {\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || ''\n });\n\n (0, _forEach.default)(_context = con.channels).call(_context, function (channelName) {\n var buffer = _this.$state.addBuffer(net.id, channelName);\n\n buffer.enabled = true;\n }); // Set the first server buffer active\n\n if (idx === 0) {\n _this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n });\n this.$emit('start');\n }\n } else {\n saveThisSessionsState = true;\n this.applyDefaults();\n }\n\n if (this.$state.settings.startupOptions.greetingText) {\n this.title = this.$state.settings.startupOptions.greetingText;\n }\n\n if (this.$state.settings.startupOptions.buttonText) {\n this.buttonText = this.$state.settings.startupOptions.buttonText;\n } else {\n this.buttonText = this.$t('connect');\n }\n\n if (saveThisSessionsState) {\n this.$state.persistence.watchStateForChanges();\n }\n\n case 5:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee, this);\n }));\n\n function created() {\n return _created.apply(this, arguments);\n }\n\n return created;\n }(),\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n startUp: function startUp() {\n var _this2 = this;\n\n var net;\n\n if (!this.nick) {\n this.$el.querySelector('.kiwi-customserver-nick input').focus();\n return;\n }\n\n var nick = this.nick;\n\n if (this.server_type === 'znc') {\n // Older ZNC versions only support user:pass while newer supports user/network:pass\n var password = nick;\n\n if (this.znc_network) {\n password += '/' + this.znc_network;\n }\n\n password += ':' + this.password;\n net = this.$state.addNetwork('ZNC', 'ZNC', {\n server: this.server.split(':')[0],\n port: (0, _parseInt2.default)(this.server.split(':')[1] || 6667, 10),\n tls: this.tls,\n password: password\n });\n } else {\n net = this.$state.addNetwork('Network', nick, {\n server: this.server.split(':')[0],\n port: (0, _parseInt2.default)(this.server.split(':')[1] || 6667, 10),\n tls: this.tls,\n password: this.password,\n direct: this.direct,\n path: this.direct_path,\n encoding: this.encoding\n });\n }\n\n if (net) {\n var hasSetActiveBuffer = false;\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj, idx) {\n var buffer = _this2.$state.addBuffer(net.id, bufferObj.name);\n\n buffer.enabled = true;\n\n if (bufferObj.key) {\n buffer.key = bufferObj.key;\n }\n\n if (idx === 0) {\n _this2.$state.setActiveBuffer(net.id, buffer.name);\n\n hasSetActiveBuffer = true;\n }\n });\n\n if (!hasSetActiveBuffer) {\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n this.is_connecting = true;\n this.network = net;\n net.ircClient.connect();\n\n var onRegistered = function onRegistered() {\n (0, _setTimeout2.default)(function () {\n _this2.is_connecting = false;\n }, 1000);\n\n _this2.$emit('start');\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n var onClosed = function onClosed() {\n (0, _setTimeout2.default)(function () {\n _this2.is_connecting = false;\n }, 1000);\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n }\n },\n processNickRandomNumber: function processNickRandomNumber(nick) {\n // Replace ? with a random number\n var tmp = (nick || '').replace(/\\?/g, function () {\n return Math.floor(Math.random() * 100).toString();\n });\n return (0, _trim.default)(_lodash.default).call(_lodash.default, tmp);\n },\n infoClick: function infoClick() {\n if (this.network) {\n var net = this.network;\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n this.$emit('start');\n },\n applyDefaults: function applyDefaults() {\n this.server = this.$state.settings.startupOptions.server;\n this.tls = this.$state.settings.startupOptions.tls;\n this.nick = this.processNickRandomNumber(this.$state.settings.startupOptions.nick);\n this.channel = this.$state.settings.startupOptions.channel;\n this.direct = this.$state.settings.startupOptions.direct;\n this.direct_path = this.$state.settings.startupOptions.direct_path;\n this.encoding = this.$state.settings.startupOptions.encoding; // Only include the port in the server box if it's not the default\n\n if (this.$state.settings.startupOptions.port.toString() !== '6667') {\n this.server += ':' + this.$state.settings.startupOptions.port.toString();\n }\n\n this.title = 'Where are you connecting today?';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"CustomServer\"]\r\nwindow._kiwi_exports.components.startups.CustomServer = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputText.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputText.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListAvatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListAvatar.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=style&index=0&lang=less&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _reverse = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reverse\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _default = {\n props: ['network'],\n data: function data() {\n return {\n sidebarOpen: false,\n page: 0,\n page_size: 200,\n search: '',\n last_updated: 0\n };\n },\n computed: {\n noResults: function noResults() {\n return this.listState === 'updated' && this.filteredList.length === 0;\n },\n isLoading: function isLoading() {\n return this.listState === 'updating';\n },\n listState: function listState() {\n return this.network.channel_list_state;\n },\n list: function list() {\n return this.network.channel_list || [];\n },\n filteredList: function filteredList() {\n var _this = this,\n _context4;\n\n var list = [];\n\n if (this.search.length <= 2) {\n list = this.list;\n } else {\n var _context;\n\n list = (0, _filter.default)(_context = this.list).call(_context, function (channel) {\n var _context2, _context3;\n\n var found = false;\n\n if ((0, _indexOf.default)(_context2 = channel.channel.toLowerCase()).call(_context2, _this.search) > -1) {\n found = true;\n }\n\n if ((0, _indexOf.default)(_context3 = channel.topic.toLowerCase()).call(_context3, _this.search) > -1) {\n found = true;\n }\n\n return found;\n });\n }\n\n return (0, _reverse.default)(_context4 = _lodash.default.sortBy(list, 'num_users')).call(_context4);\n },\n paginated: function paginated() {\n var offset = this.page * this.page_size;\n var list = this.filteredList;\n var channels = [];\n\n for (var i = offset; i < offset + this.page_size; i++) {\n if (list[i]) {\n channels.push(list[i]);\n }\n }\n\n return channels;\n },\n maxPages: function maxPages() {\n return Math.floor(this.filteredList.length / this.page_size);\n },\n canGoForward: function canGoForward() {\n return this.page * this.page_size >= this.filteredList.length;\n },\n canGoBackward: function canGoBackward() {\n return this.page > 0;\n }\n },\n watch: {\n search: function search() {\n this.page = 0;\n }\n },\n methods: {\n nextPage: function nextPage() {\n if (this.page < this.maxPages) {\n this.page++;\n }\n },\n prevPage: function prevPage() {\n if (this.page > 0) {\n this.page--;\n }\n },\n maybeUpdateList: function maybeUpdateList() {\n if (this.listState !== 'updating') {\n this.network.ircClient.raw('LIST');\n }\n },\n formatAndTrimTopic: function formatAndTrimTopic(rawTopic) {\n var showModes = this.$state.setting('showChanlistModes');\n var topic = showModes ? rawTopic : rawTopic.replace(/^\\[([^\\]]+)\\] ?/, '');\n var blocks = (0, _MessageParser.default)(topic, {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n joinChannel: function joinChannel(channelName) {\n this.$state.addBuffer(this.network.id, channelName);\n this.network.ircClient.join(channelName);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ChannelList\"]\r\nwindow._kiwi_exports.components.ChannelList = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/values\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/defineProperty\"));\n\nvar _TypingStatusIndicator = _interopRequireDefault(require(\"./TypingStatusIndicator\"));\n\nvar _default = {\n components: {\n TypingStatusIndicator: _TypingStatusIndicator.default\n },\n props: ['buffer'],\n computed: {\n users: function users() {\n if (this.buffer.isQuery()) {\n // if this is a query return the target as users\n var network = this.$state.getActiveNetwork();\n var user = this.$state.getUser(network.id, this.buffer.name);\n return user ? (0, _defineProperty2.default)({}, user.nick, user) : {};\n }\n\n return this.buffer.users;\n },\n typingUsers: function typingUsers() {\n var _context,\n _this = this;\n\n var myNick = this.$state.getActiveNetwork().nick;\n return (0, _filter.default)(_context = (0, _values.default)(this.users)).call(_context, function (u) {\n return u.nick !== myNick && u.typingStatus(_this.buffer.name).status;\n });\n }\n },\n methods: {\n userColour: function userColour(user) {\n return user && this.buffer.setting('colour_nicknames_in_messages') ? user.getColour() : '';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"TypingUsersList\"]\r\nwindow._kiwi_exports.components.TypingUsersList = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NicklistUser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NicklistUser.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-sidebar kiwi-theme-bg\",class:['kiwi-sidebar-section-' + _vm.section]},[(!_vm.sidebarState.isOpen)?_c('span',{staticClass:\"kiwi-sidebar-options\"},[_c('div',{staticClass:\"kiwi-sidebar-close\",on:{\"click\":function($event){return _vm.sidebarState.close()}}},[_vm._v(\" \"+_vm._s(_vm.$t('close'))),_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e(),(_vm.sidebarState.activeComponent)?[_c(_vm.sidebarState.activeComponent,{tag:\"component\",attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}})]:(_vm.buffer)?[(_vm.buffer.isChannel())?[(_vm.section === 'settings')?_c('div',{staticClass:\"kiwi-sidebar-buffersettings\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('tabbed-view',[_c('tabbed-tab',{attrs:{\"header\":_vm.$t('settings'),\"focus\":true}},[_c('h3',[_vm._v(_vm._s(_vm.$t('channel_settings')))]),_c('hr'),_c('channel-info',{attrs:{\"buffer\":_vm.buffer}}),_c('div',{staticClass:\"kiwi-sidebar-settings\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('side_settings')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_joins')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowJoinParts),expression:\"settingShowJoinParts\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowJoinParts)?_vm._i(_vm.settingShowJoinParts,null)>-1:(_vm.settingShowJoinParts)},on:{\"change\":function($event){var $$a=_vm.settingShowJoinParts,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowJoinParts=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowJoinParts=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowJoinParts=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_topics')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowTopics),expression:\"settingShowTopics\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowTopics)?_vm._i(_vm.settingShowTopics,null)>-1:(_vm.settingShowTopics)},on:{\"change\":function($event){var $$a=_vm.settingShowTopics,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowTopics=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowTopics=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowTopics=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_nick_changes')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowNickChanges),expression:\"settingShowNickChanges\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowNickChanges)?_vm._i(_vm.settingShowNickChanges,null)>-1:(_vm.settingShowNickChanges)},on:{\"change\":function($event){var $$a=_vm.settingShowNickChanges,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowNickChanges=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowNickChanges=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowNickChanges=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_mode_changes')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowModeChanges),expression:\"settingShowModeChanges\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowModeChanges)?_vm._i(_vm.settingShowModeChanges,null)>-1:(_vm.settingShowModeChanges)},on:{\"change\":function($event){var $$a=_vm.settingShowModeChanges,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowModeChanges=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowModeChanges=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowModeChanges=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_formatting')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingExtraFormatting),expression:\"settingExtraFormatting\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingExtraFormatting)?_vm._i(_vm.settingExtraFormatting,null)>-1:(_vm.settingExtraFormatting)},on:{\"change\":function($event){var $$a=_vm.settingExtraFormatting,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingExtraFormatting=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingExtraFormatting=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingExtraFormatting=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_colours')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingColouredNicklist),expression:\"settingColouredNicklist\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingColouredNicklist)?_vm._i(_vm.settingColouredNicklist,null)>-1:(_vm.settingColouredNicklist)},on:{\"change\":function($event){var $$a=_vm.settingColouredNicklist,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingColouredNicklist=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingColouredNicklist=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingColouredNicklist=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('settings_share_typing')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShareTyping),expression:\"settingShareTyping\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShareTyping)?_vm._i(_vm.settingShareTyping,null)>-1:(_vm.settingShareTyping)},on:{\"change\":function($event){var $$a=_vm.settingShareTyping,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShareTyping=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShareTyping=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShareTyping=$$c}}}})])])])],1),_c('tabbed-tab',{attrs:{\"header\":_vm.$t('access')}},[_c('a',{staticClass:\"u-link kiwi-sidebar-accesstab\",class:{\n 'kiwi-sidebar-accesstab--active': _vm.accessTab === 'banlist'\n },on:{\"click\":function($event){_vm.accessTab='banlist'}}},[_vm._v(\" \"+_vm._s(_vm.$t('banned'))+\" \")]),_c('a',{staticClass:\"u-link kiwi-sidebar-accesstab\",class:{\n 'kiwi-sidebar-accesstab--active': _vm.accessTab === 'invitelist'\n },on:{\"click\":function($event){_vm.accessTab='invitelist'}}},[_vm._v(\" \"+_vm._s(_vm.$t('invited'))+\" \")]),(_vm.accessTab==='banlist')?_c('channel-banlist',{attrs:{\"buffer\":_vm.buffer}}):_vm._e(),(_vm.accessTab==='invitelist')?_c('channel-invitelist',{attrs:{\"buffer\":_vm.buffer}}):_vm._e()],1),_c('tabbed-tab',{attrs:{\"header\":_vm.$t('notifications')}},[_c('buffer-settings',{attrs:{\"buffer\":_vm.buffer}})],1),_vm._l((_vm.pluginUiElements),function(item){return _c('tabbed-tab',{key:item.id,attrs:{\"header\":item.title}},[_c(item.component,_vm._b({tag:\"div\"},'div',item.props,false))],1)})],2)],1):(_vm.section === 'user')?_c('div',{staticClass:\"kiwi-sidebar-userbox\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-box',{attrs:{\"user\":_vm.sidebarState.sidebarUser,\"buffer\":_vm.buffer,\"network\":_vm.network}})],1):(_vm.section === 'nicklist')?_c('nicklist',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):(_vm.section === 'about')?_c('sidebar-about-buffer',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):_vm._e()]:(_vm.buffer.isQuery())?[(_vm.section === 'user')?_c('div',{staticClass:\"kiwi-sidebar-userbox\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-box',{attrs:{\"user\":_vm.sidebarState.sidebarUser,\"buffer\":_vm.buffer,\"network\":_vm.network}})],1):_vm._e()]:_vm._e()]:[_vm._v(\" \"+_vm._s(_vm.$t('side_buffer'))+\" \")]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: {\n network: Object\n },\n data: function data() {\n return {\n new_nick: '',\n error_message: '',\n self_user_settings_open: false\n };\n },\n computed: {\n modeString: function modeString() {\n var _context;\n\n var str = '';\n (0, _forEach.default)(_context = this.network.ircClient.user.modes).call(_context, function (mode) {\n str += mode;\n }); // Only show the + if there are modes to show\n\n if (str) {\n str = '+' + str;\n }\n\n return str;\n },\n netUser: function netUser() {\n return this.network.ircClient.user;\n },\n awayStatus: {\n get: function get() {\n return this.network.currentUser().away;\n },\n set: function set(val) {\n this.network.ircClient.raw('AWAY', val ? 'Currently away' : '');\n }\n }\n },\n created: function created() {\n var _this = this;\n\n this.listen(this.network.ircClient, 'nick in use', function (event) {\n _this.error_message = TextFormatting.t('error_nick_in_use', {\n nick: event.nick\n });\n });\n },\n methods: {\n openSelfActions: function openSelfActions() {\n this.self_user_settings_open = true;\n },\n openProfile: function openProfile() {\n this.$state.$emit('userbox.show', this.network.currentUser());\n },\n closeSelfUser: function closeSelfUser() {\n this.$emit('close');\n },\n onNewNickSubmit: function onNewNickSubmit(newVal) {\n this.new_nick = newVal;\n this.changeNick();\n },\n changeNick: function changeNick() {\n var _context2;\n\n var nick = (0, _trim.default)(_context2 = this.new_nick).call(_context2);\n\n if (nick.length === 0) {\n this.error_message = TextFormatting.t('error_empty_nick');\n return;\n }\n\n if (nick.match(/(^[0-9])|(\\s)/)) {\n this.error_message = TextFormatting.t('error_no_number');\n return;\n }\n\n this.error_message = '';\n this.network.ircClient.changeNick(nick);\n this.userNameCancel();\n },\n userNameCancel: function userNameCancel() {\n this.self_user_settings_open = false;\n },\n networkSupportsAway: function networkSupportsAway() {\n return this.network.ircClient.network.cap.isEnabled('away-notify');\n },\n checkUserAway: function checkUserAway() {\n return !!this.network.currentUser().away;\n },\n getUserFromString: function getUserFromString(name) {\n return this.$state.getUser(this.network.id, name);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"SelfUser\"]\r\nwindow._kiwi_exports.components.SelfUser = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.extractBuffers = extractBuffers;\nexports.extractURL = extractURL;\nexports.stripStyles = stripStyles;\nexports.mentionsNick = mentionsNick;\nexports.queryStringVal = queryStringVal;\nexports.networkErrorMessage = networkErrorMessage;\nexports.connectionInfoFromConfig = connectionInfoFromConfig;\nexports.matchUri = matchUri;\nexports.parseIrcUri = parseIrcUri;\nexports.parsePresetServer = parsePresetServer;\nexports.dedotObject = dedotObject;\nexports.replaceObjectProps = replaceObjectProps;\nexports.dateIso = dateIso;\nexports.parseIntZero = parseIntZero;\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _TextFormatting = require(\"./TextFormatting\");\n\nvar strftimeUTC = _strftime.default.timezone('+0');\n/**\n * Extract an array of buffers from a string, parsing multiple buffer names and channel keys\n * \"#chan,#chan2\" => 2 channels without a key\n * \"#chan,#chan2 key\" => 2 channels, the first having a key\n * \"#chan,#chan2 key1,key2\" => 2 channels, both having a key\n * \"#chan,#chan2 ,key2\" => 2 channels, the second having a key\n * @param {string} str List of buffer names and channel keys\n */\n\n\nfunction extractBuffers(str) {\n var spaceIdx = (0, _indexOf.default)(str).call(str, ' ');\n if (spaceIdx === -1) spaceIdx = str.length;\n var bufferNames = str.substr(0, spaceIdx).split(',');\n var keys = str.substr(spaceIdx + 1).split(',');\n var buffers = [];\n (0, _forEach.default)(bufferNames).call(bufferNames, function (bufferName, idx) {\n // return if bufferName is empty\n if (!(0, _trim.default)(bufferName).call(bufferName)) {\n return;\n }\n\n buffers.push({\n name: bufferName,\n key: keys[idx] || ''\n });\n });\n return buffers;\n}\n\nfunction extractURL(str) {\n var matches = str.match(_TextFormatting.urlRegex);\n return matches ? matches[0] : '';\n}\n\nfunction stripStyles(str) {\n return str.replace(/(\\x03[0-9]{0,2})?([\\x02\\x16\\x1d\\x1f]+)?/g, '');\n}\n/**\n * Does a string mention a nickname?\n * @param {string} input The string to search within\n * @param {string} nick The nick to search for\n */\n\n\nfunction mentionsNick(input, nick) {\n var _context, _context2, _context3;\n\n if ((0, _indexOf.default)(_context = input.toLowerCase()).call(_context, nick.toLowerCase()) === -1) {\n return false;\n }\n\n var punc = '\\\\s,.!:;+()\\\\[\\\\]?¿\\\\/<>@-';\n\n var escapedNick = _lodash.default.escapeRegExp(nick);\n\n var stylesStrippedInput = stripStyles(input);\n var r = new RegExp((0, _concat.default)(_context2 = (0, _concat.default)(_context3 = \"(^|[\".concat(punc, \"])\")).call(_context3, escapedNick, \"([\")).call(_context2, punc, \"]|$)\"), 'i');\n return r.test(stylesStrippedInput);\n}\n/**\n * Get a query string value from the current URL\n * @param {string} _name The query string variable name\n * @param {string} _url The full URL to extract the variable from\n */\n\n\nfunction queryStringVal(_name, _url) {\n var url = _url || window.location.href;\n\n var name = _lodash.default.escapeRegExp(_name);\n\n var regex = new RegExp('[?&]' + name + '(=([^]*)|&|#|$)');\n var results = regex.exec(url);\n\n if (!results) {\n return null;\n }\n\n if (!results[2]) {\n return '';\n }\n\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n/**\n * Convert a known error code to a human readable message\n * @param {string} err The error message from the network connection\n */\n\n\nfunction networkErrorMessage(err) {\n var errs = {\n err_unknown_host: 'Unknown domain name or host',\n err_forbidden: 'Forbidden to connect',\n err_timeout: 'Took too long to connect',\n err_refused: 'The server refused the connection',\n err_tls: 'Could not connect securely',\n err_proxy: 'The Kiwi IRC server had an error'\n };\n return errs[err] || 'Unknown error';\n}\n/**\n * Take a users connection object (usually from startupOptions) and normalise a connection\n * settings object. Parses websocket/direct/kiwiServer/etc options and creates a single\n * object that Kiwi can consistently read from.\n * @param {Object} config User provided connection config object\n */\n\n\nfunction connectionInfoFromConfig(config) {\n var connection = {\n tls: false,\n port: 0,\n hostname: '',\n direct: false,\n direct_path: ''\n };\n var wsUri = config.websocket ? matchUri(config.websocket) : null;\n\n if (wsUri) {\n var _context4;\n\n connection.direct = true;\n connection.tls = (0, _indexOf.default)(_context4 = ['wss', 'https', 'ircs']).call(_context4, wsUri.protocol) > -1;\n connection.port = wsUri.port;\n connection.hostname = wsUri.hostname;\n connection.direct_path = wsUri.path;\n\n if (wsUri.search) {\n connection.direct_path += '?' + wsUri.search;\n }\n } else {\n connection.tls = config.tls;\n connection.port = config.port;\n connection.hostname = config.server;\n connection.direct = !!config.direct;\n connection.direct_path = config.direct_path || '';\n }\n\n return connection;\n}\n\nfunction matchUri(uri) {\n var reg = /(?:([a-z]+):\\/\\/)?([a-z.0-9-]+)(?::(?:(\\+)?([0-9]+)))?(?:\\/([^?]*))?(?:\\?(.*))?/;\n /*\n 0: \"ws://hostname.com:6676/erferf?foo=val\"\n 1: \"ws\"\n 2: \"hostname.com\"\n 3: undefined\n 4: \"6676\"\n 5: \"erferf\"\n 6: \"foo=var\"\n */\n\n var m = uri.match(reg);\n\n if (!m) {\n return null;\n }\n\n return {\n protocol: (m[1] || '').toLowerCase(),\n hostname: m[2] || '',\n port: parseIntZero(m[4] || ''),\n path: '/' + (m[5] || ''),\n search: m[6] || ''\n };\n}\n/**\n * Parse a connection string into an object\n * E.g. [ircs?://]irc.network.net:[+]6667/channel?nick=mynick;\n * Multiple connections may be given, separated by ;\n * @param {string} str The connection string URI\n */\n\n\nfunction parseIrcUri(str) {\n var _context5;\n\n var reg = /(?:(ircs?):\\/\\/)?([a-z.0-9-]+)(?::(?:(\\+)?([0-9]+)))?(?:\\/([^?]*))?(?:\\?(.*))?/;\n var connections = [];\n (0, _forEach.default)(_context5 = str.split(';')).call(_context5, function (connectionString) {\n var _context6, _context7;\n\n if (!connectionString) {\n return;\n }\n\n var m = connectionString.match(reg);\n\n if (!m) {\n return;\n }\n\n var tls = m[1] === 'ircs' || !!m[3];\n var params = (0, _create.default)(null);\n (0, _forEach.default)(_context6 = (m[6] || '').split('&')).call(_context6, function (p) {\n var parts = p.split('=');\n\n if (parts.length === 2) {\n params[parts[0].toLowerCase()] = parts[1];\n }\n });\n var channels = m[5] || params.channel || '';\n channels = (0, _map.default)(_context7 = (0, _lodash.default)(channels.split(',')).compact()).call(_context7, function (_channelName) {\n var hasPrefix = _channelName[0] === '#' || _channelName[0] === '&';\n var channelName = hasPrefix ? _channelName : '#' + _channelName;\n return channelName;\n });\n connections.push({\n tls: tls,\n server: m[2],\n port: (0, _parseInt2.default)(m[4] || (tls ? 6697 : 6667), 10),\n channels: channels,\n nick: params.nick || '',\n encoding: params.encoding || 'utf8',\n params: params\n });\n });\n return connections;\n}\n/**\n * Parse preset server string to an object\n * format: freenode|irc.freenode.net:+6697\n * @param {string} input Preset server string\n */\n\n\nfunction parsePresetServer(input) {\n var ret = {\n name: '',\n server: '',\n port: 6667,\n tls: false\n };\n\n ret.toUri = function () {\n var _context8, _context9;\n\n return (0, _concat.default)(_context8 = (0, _concat.default)(_context9 = \"\".concat(ret.server, \":\")).call(_context9, ret.tls ? '+' : '')).call(_context8, ret.port);\n };\n\n var val = input;\n var pipePos = (0, _indexOf.default)(val).call(val, '|');\n\n if (pipePos > -1) {\n ret.name = val.substr(0, pipePos);\n val = val.substr(pipePos + 1);\n }\n\n var colonPos = (0, _indexOf.default)(val).call(val, ':');\n\n if (colonPos === -1) {\n ret.server = val;\n val = '';\n } else {\n ret.server = val.substr(0, colonPos);\n val = val.substr(colonPos + 1);\n }\n\n if (val[0] === '+') {\n ret.tls = true;\n val = val.substr(1);\n }\n\n if (val.length > 0) {\n ret.port = (0, _parseInt2.default)(val, 10);\n val = '';\n }\n\n if (!ret.name) {\n ret.name = ret.server;\n }\n\n return ret;\n}\n/**\n * Scan though an object and extend any dot notated keys\n * @param {Object} confObj Source object to traverse\n */\n\n\nfunction dedotObject(confObj, _place) {\n var place = _place || [];\n var regex = /\\w\\.\\w/;\n\n _lodash.default.each(confObj, function (val, key) {\n var ourPlace = (0, _concat.default)(place).call(place, [key]);\n\n if ((0, _typeof2.default)(val) === 'object') {\n dedotObject(confObj[key], ourPlace);\n return;\n }\n\n if (regex.test(key)) {\n delete confObj[key];\n\n _lodash.default.set(confObj, ourPlace.join('.'), val);\n }\n });\n}\n/**\n * Replace the target object with source, while keeping the target object reference intact.\n * Delete all the properties from the target object and copy the properties from source\n * over to the target.\n * a = {one: 1, two: 2, three: 3}\n * b = {four: 4, five: 5, six: 6}\n * replaceObjectProps(a, b)\n * a.one === undefined;\n * a.six === 6;\n * @param {Object} target The target object that will be replaced\n * @param {Object} source The source object from which all properties will be copied from\n */\n\n\nfunction replaceObjectProps(target, source) {\n var _context10, _context11;\n\n (0, _forEach.default)(_context10 = (0, _keys.default)(target)).call(_context10, function (prop) {\n return delete target[prop];\n });\n (0, _forEach.default)(_context11 = (0, _keys.default)(source)).call(_context11, function (prop) {\n target[prop] = source[prop];\n });\n}\n/**\n * Create an ISO8601 formatted date\n * @param {Date} date The date object to create the time from. Defaults to the current time\n */\n\n\nfunction dateIso(date) {\n var d = date || new Date();\n return strftimeUTC('%Y-%m-%dT%H:%M:%S.%LZ', d);\n}\n/**\n * Cast a string to an int, returning 0 if it fails\n * @param {String} inp The number as a string to convert to an int\n */\n\n\nfunction parseIntZero(inp) {\n var int = (0, _parseInt2.default)(inp, 10);\n return (0, _isNan.default)(int) ? 0 : int;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"Misc\"]\r\nwindow._kiwi_exports.helpers.Misc = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _eventEmitter = _interopRequireDefault(require(\"event-emitter\"));\n\nvar NetworkProvider = /*#__PURE__*/function () {\n function NetworkProvider() {\n (0, _classCallCheck2.default)(this, NetworkProvider);\n (0, _eventEmitter.default)(this);\n this.providers = [];\n }\n\n (0, _createClass2.default)(NetworkProvider, [{\n key: \"addProvider\",\n value: function addProvider(provider) {\n var _this = this;\n\n this.providers.push(provider);\n provider.on('networks', function (networks) {\n _this.emit('networks', _this.availableNetworks());\n });\n }\n }, {\n key: \"availableNetworks\",\n value: function availableNetworks() {\n var _context;\n\n var networks = (0, _create.default)(null);\n (0, _forEach.default)(_context = this.providers).call(_context, function (provider) {\n var pType = provider.type;\n\n if (provider.networks.length > 0) {\n var _context2;\n\n networks[pType] = networks[pType] || [];\n networks[pType] = (0, _concat.default)(_context2 = networks[pType]).call(_context2, provider.networks);\n }\n });\n return networks;\n }\n }]);\n return NetworkProvider;\n}();\n\nexports.default = NetworkProvider;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"NetworkProvider\"]\r\nwindow._kiwi_exports.libs.NetworkProvider = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/assertThisInitialized\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/getPrototypeOf\"));\n\nvar _eventemitter = _interopRequireDefault(require(\"eventemitter3\"));\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = (0, _construct.default)(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !_construct.default) return false; if (_construct.default.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call((0, _construct.default)(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar IpcBroadcastChannel = /*#__PURE__*/function (_EventEmitter) {\n (0, _inherits2.default)(IpcBroadcastChannel, _EventEmitter);\n\n var _super = _createSuper(IpcBroadcastChannel);\n\n function IpcBroadcastChannel() {\n var _context;\n\n var _this;\n\n (0, _classCallCheck2.default)(this, IpcBroadcastChannel);\n _this = _super.call(this);\n _this.bc = new BroadcastChannel('kiwi-ipc');\n _this.bc.onmessage = (0, _bind.default)(_context = _this.onmessage).call(_context, (0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n (0, _createClass2.default)(IpcBroadcastChannel, [{\n key: \"send\",\n value: function send(msg) {\n if (this.bc) {\n this.bc.postMessage(msg);\n }\n }\n }, {\n key: \"onmessage\",\n value: function onmessage(msg) {\n this.emit('message', msg);\n }\n }]);\n return IpcBroadcastChannel;\n}(_eventemitter.default);\n\nvar IpcLocalStorage = /*#__PURE__*/function (_EventEmitter2) {\n (0, _inherits2.default)(IpcLocalStorage, _EventEmitter2);\n\n var _super2 = _createSuper(IpcLocalStorage);\n\n function IpcLocalStorage() {\n var _context2;\n\n var _this2;\n\n (0, _classCallCheck2.default)(this, IpcLocalStorage);\n _this2 = _super2.call(this);\n window.addEventListener('storage', (0, _bind.default)(_context2 = _this2.onmessage).call(_context2, (0, _assertThisInitialized2.default)(_this2)));\n return _this2;\n }\n\n (0, _createClass2.default)(IpcLocalStorage, [{\n key: \"send\",\n value: function send(msg) {\n localStorage.setItem('kiwi-ipc', (0, _stringify.default)(msg));\n localStorage.removeItem('kiwi-ipc');\n }\n }, {\n key: \"onmessage\",\n value: function onmessage(msg) {\n if (msg.key === 'kiwi-ipc' && msg.newValue) {\n try {\n var parsedMsg = {\n data: JSON.parse(msg.newValue)\n };\n this.emit('message', parsedMsg);\n } catch (e) {\n this.emit('error');\n }\n }\n }\n }]);\n return IpcLocalStorage;\n}(_eventemitter.default);\n\nvar _default = window.BroadcastChannel ? new IpcBroadcastChannel() : new IpcLocalStorage();\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"IPC\"]\r\nwindow._kiwi_exports.libs.IPC = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarAboutBuffer.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarAboutBuffer.vue?vue&type=style&index=0&lang=less&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"@/libs/bufferTools\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['network', 'sidebarState'],\n data: function data() {\n return {\n collapsed: false,\n channel_filter: '',\n channel_filter_display: false,\n channel_add_display: false,\n channel_add_input_has_focus: false,\n channel_add_input: ''\n };\n },\n computed: {\n serverBuffer: function serverBuffer() {\n return this.network.serverBuffer();\n },\n isActiveNetwork: function isActiveNetwork() {\n return this.$state.getActiveNetwork() === this.network;\n },\n totalNetworkCount: function totalNetworkCount() {\n return this.$state.networks.length;\n },\n serverUnread: function serverUnread() {\n var _context;\n\n if (!this.collapsed) {\n return (0, _flags.default)(this.serverBuffer).unread;\n }\n\n var totalUnread = 0;\n (0, _forEach.default)(_context = this.network.buffers).call(_context, function (buffer) {\n if (buffer.isSpecial()) {\n return;\n }\n\n totalUnread += (0, _flags.default)(buffer).unread;\n });\n return totalUnread;\n },\n serverHighlight: function serverHighlight() {\n var _context2;\n\n if (!this.collapsed) {\n return (0, _flags.default)(this.serverBuffer).highlight;\n }\n\n var highlight = false;\n (0, _forEach.default)(_context2 = this.network.buffers).call(_context2, function (buffer) {\n if (buffer.isSpecial()) {\n return;\n }\n\n if ((0, _flags.default)(buffer).highlight) {\n highlight = true;\n }\n });\n return highlight;\n },\n filteredBuffers: function filteredBuffers() {\n var filter = this.channel_filter;\n var filtered = [];\n\n if (!filter) {\n filtered = this.network.buffers;\n } else {\n filtered = (0, _filter.default)(_lodash.default).call(_lodash.default, this.network.buffers, function (buffer) {\n var name = buffer.name.toLowerCase();\n return (0, _indexOf.default)(name).call(name, filter) > -1;\n });\n }\n\n return bufferTools.orderBuffers(filtered);\n }\n },\n methods: {\n onNewChannelInputFocus: function onNewChannelInputFocus() {\n // Auto insert the # if no value is already in. Easier for mobile users\n if (!this.channel_add_input) {\n this.channel_add_input = '#';\n }\n\n this.channel_add_input_has_focus = true;\n },\n onNewChannelInputBlur: function onNewChannelInputBlur() {\n // Remove the # since we may have auto inserted it as they tabbed past\n if (this.channel_add_input === '#') {\n this.channel_add_input = '';\n } // If nothing was entered into the input box, hide it just to clean up the UI\n\n\n if (!this.channel_add_input) {\n this.channel_add_display = false;\n }\n\n this.channel_add_input_has_focus = false;\n },\n submitNewChannelForm: function submitNewChannelForm() {\n var _this = this;\n\n var newChannelVal = this.channel_add_input;\n this.channel_add_input = '#';\n var network = this.network;\n var bufferObjs = Misc.extractBuffers(newChannelVal); // Only switch to the first channel we join if multiple are being joined\n\n var hasSwitchedActiveBuffer = false;\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var chanName = bufferObj.name;\n var ignoreNames = ['#0', '0', '&0'];\n\n if ((0, _indexOf.default)(ignoreNames).call(ignoreNames, chanName) > -1 || chanName.replace(/[#&]/g, '') === '') {\n return;\n }\n\n var newBuffer = _this.$state.addBuffer(network.id, chanName);\n\n if (newBuffer && !hasSwitchedActiveBuffer) {\n _this.$state.setActiveBuffer(network.id, newBuffer.name);\n\n hasSwitchedActiveBuffer = true;\n }\n\n if (bufferObj.key) {\n newBuffer.key = bufferObj.key;\n }\n\n if (network.isChannelName(chanName)) {\n network.ircClient.join(chanName, bufferObj.key);\n }\n });\n },\n onChannelFilterInputBlur: function onChannelFilterInputBlur() {\n var _this2 = this;\n\n // Hacky, but if we remove the channel filter UI at this blur event and the user\n // clicked a link in this filter UI, then the click event will not hit the target\n // link as it has been removed before the event reaches it.\n (0, _setTimeout2.default)(function () {\n _this2.closeFilterChannel();\n }, 200);\n },\n closeBuffer: function closeBuffer(buffer) {\n this.$state.removeBuffer(buffer);\n },\n awayNotifySupported: function awayNotifySupported() {\n return this.network.ircClient.network.cap.isEnabled('away-notify');\n },\n showMessageCounts: function showMessageCounts(buffer) {\n return !buffer.setting('hide_message_counts');\n },\n setActiveBuffer: function switchContainer(buffer) {\n // Clear any active component to show the buffer again\n this.$state.$emit('active.component', null);\n this.$state.setActiveBuffer(buffer.networkid, buffer.name);\n\n if (this.$state.ui.is_narrow) {\n this.$state.$emit('statebrowser.hide');\n }\n },\n isActiveBuffer: function isActiveBuffer(buffer) {\n return buffer.networkid === this.$state.ui.active_network && buffer.name === this.$state.ui.active_buffer;\n },\n showNetworkSettings: function showNetworkSettings(network) {\n network.showServerBuffer('settings');\n },\n showNetworkChannels: function showNetworkChannels(network) {\n network.showServerBuffer('channels');\n },\n onSearchChannelClick: function onSearchChannelClick() {\n // If we have no other buffers than the server buffer, take them straight\n // to the channel list for searching\n if (this.network.buffers.length > 1) {\n this.toggleFilterChannel();\n } else {\n this.network.showServerBuffer('channels');\n }\n },\n toggleAddChannel: function toggleAddChannel() {\n this.channel_add_display = !this.channel_add_display;\n this.channel_filter_display = false;\n },\n toggleFilterChannel: function toggleFilterChannel() {\n this.channel_filter_display = !this.channel_filter_display;\n this.channel_add_display = false;\n },\n closeFilterChannel: function closeFilterChannel() {\n this.channel_filter = '';\n this.channel_filter_display = false;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowserNetwork\"]\r\nwindow._kiwi_exports.components.StateBrowserNetwork = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Container.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Container.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n components: {},\n props: ['buffer', 'message'],\n data: function data() {\n return {\n requestingInput: false\n };\n },\n computed: {},\n methods: {\n urlPreview: function urlPreview(url) {\n this.$state.$emit('mediaviewer.show', url);\n },\n areWeAnOp: function areWeAnOp() {\n var ourNick = this.buffer.getNetwork().nick;\n return this.buffer.isUserAnOp(ourNick);\n },\n isSelf: function isSelf() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.message.nick);\n return this.buffer.getNetwork().ircClient.user.nick === user.nick;\n },\n onBan: function onBan(reason) {\n var network = this.buffer.getNetwork();\n network.ircClient.mode(this.buffer.name, '+b', this.message.nick);\n },\n onKick: function onKick(promptedReason) {\n var network = this.buffer.getNetwork();\n var defaultReason = this.$state.setting('buffers.default_kick_reason');\n var reason = promptedReason || defaultReason;\n network.ircClient.raw('KICK', this.buffer.name, this.message.nick, reason);\n },\n openQuery: function openQuery() {\n var network = this.buffer.getNetwork();\n var buffer = this.$state.addBuffer(network.id, this.message.nick);\n this.$state.setActiveBuffer(network.id, buffer.name);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageInfo\"]\r\nwindow._kiwi_exports.components.MessageInfo = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NetworkSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NetworkSettings.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-container\",class:{\n /* 'kiwi-container-' + bufferType: true, */\n 'kiwi-container--sidebar-drawn': _vm.sidebarState.isDrawn,\n 'kiwi-container--sidebar-open': _vm.sidebarState.isOpen,\n 'kiwi-container--no-sidebar': _vm.buffer && _vm.buffer.isSpecial,\n}},[(_vm.buffer)?[_c('div',{staticClass:\"kiwi-container-toggledraw-statebrowser\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_c('div',{staticClass:\"kiwi-container-toggledraw-statebrowser-messagecount\",class:[\n _vm.unreadMessages.highlight ?\n 'kiwi-container-toggledraw-statebrowser-messagecount--highlight' :\n '' ]},[_c('span',{staticClass:\"kiwi-container-statebrowser-messagecount-alert\"},[_vm._v(\" \"+_vm._s(_vm.unreadMessages.count > 999 ? '999+' : _vm.unreadMessages.count)+\" \")]),_vm._m(0)])]),_c('container-header',{attrs:{\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}),_vm._t(\"before\"),(_vm.buffer.getNetwork().state !== 'connected' && !_vm.buffer.isServer())?_c('not-connected',{attrs:{\"buffer\":_vm.buffer,\"network\":_vm.buffer.getNetwork()}}):_vm._e(),_c('div',{staticClass:\"kiwi-container-content\"},[(_vm.buffer.isServer())?[_c('server-view',{attrs:{\"network\":_vm.network}})]:[_c('message-list',{attrs:{\"buffer\":_vm.buffer}}),(!_vm.buffer.isSpecial())?_c('sidebar',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):_vm._e()],_vm._t(\"after\")],2)]:[_c('div',{staticClass:\"kiwi-container-empty\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('container_welcome')))]),_c('a',{staticClass:\"u-button\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_vm._v(\" \"+_vm._s(_vm.$t('container_statebrowser'))+\" \")])])]],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"kiwi-container-statebrowser-messagecount-close\"},[_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})])}]\n\nexport { render, staticRenderFns }","var render, staticRenderFns\nimport script from \"./SidebarState.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarState.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar Vue = require('vue');\n\nVue.component('tabbed-tab', {\n props: {\n header: {\n status: String\n },\n focus: {\n status: Boolean\n },\n name: {\n status: String\n }\n },\n data: function data() {\n return {\n active: false\n };\n },\n template: 'Some quick examples on how you can link directly to your network or channels. Even better, embed them into an iframe directly on your website.
As a bonus, you can link to multiple IRC networks at the same time:
Or maybe you host a ZNC server and want to link to it:
All your settings and networks will be remembered for when you come back. You won't need to be re-entering your favourite networks every time you open Kiwi anymore.
Now that over 50% of internet usage is now on mobile, Kiwi has complete mobile support with new layouts and messages. Everything is accessible with just your fingers.
Opening photos and videos within Kiwi now gets pinned at the bottom of the screen. This lets you switch channels, keep talking without it going off-screen, and have that permenant youtube video playing while you're talking.
When connecting to a ZNC server, Kiwi will now automatically detect it and look for any other networks in your ZNC account. If any are found then they are shown in a list - just one click away from connecting to it.
A full alias editor to create command aliases to handle users in your channel, administrate your network or project, or even join multiple commands into a single helpful command. Created by a simple text editor that lets you copy/paste/share your aliases wherever you please.
If you're a power IRC user or like to get indepth, Kiwi now uses the raw IRC protocol directly in the browser. Look at the raw IRC messages going back and forth, send raw commands, or use it's scripting to test out new protocol ideas and experiments.
IRC is being pushed forward by the IRCv3 working group which brings us new features that any IRC client can be using. Not only taking part, but Kiwi is one of the most IRCv3 complete web clients that exists.
\";\n// Exports\nmodule.exports = code;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-serverview\"},[_c('div',{staticClass:\"kiwi-serverview-inner\"},[_c('tabbed-view',{key:_vm.network.id,ref:\"tabs\",on:{\"changed\":_vm.tabChanged}},[_c('tabbed-tab',{attrs:{\"header\":_vm.$t('messages'),\"focus\":_vm.hasMessages,\"name\":\"messages\"}},[_c('message-list',{attrs:{\"buffer\":_vm.serverBuffer}})],1),(!_vm.restrictedServer)?_c('tabbed-tab',{attrs:{\"header\":_vm.$t('settings'),\"focus\":!_vm.hasMessages,\"name\":\"settings\"}},[_c('network-settings',{attrs:{\"network\":_vm.network}})],1):_vm._e(),(_vm.networkConnected)?_c('tabbed-tab',{attrs:{\"header\":_vm.$t('channels'),\"name\":\"channels\"}},[_c('channel-list',{attrs:{\"network\":_vm.network}})],1):_vm._e(),_vm._l((_vm.pluginUiElements),function(item){return _c('tabbed-tab',{key:item.id,attrs:{\"header\":item.title}},[_c(item.component,_vm._b({tag:\"div\"},'div',item.props,false))],1)})],2)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _NetworkProvider = _interopRequireDefault(require(\"@/libs/NetworkProvider\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _StateBrowserNetwork = _interopRequireDefault(require(\"./StateBrowserNetwork\"));\n\nvar _StateBrowserUsermenu = _interopRequireDefault(require(\"./StateBrowserUsermenu\"));\n\nvar _AppSettings = _interopRequireDefault(require(\"./AppSettings\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar netProv = new _NetworkProvider.default();\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n StateBrowserNetwork: _StateBrowserNetwork.default,\n StateBrowserUsermenu: _StateBrowserUsermenu.default\n },\n props: ['networks', 'sidebarState'],\n data: function data() {\n return {\n show_provided_networks: false,\n provided_networks: (0, _create.default)(null),\n pluginUiElements: _GlobalApi.default.singleton().stateBrowserPlugins\n };\n },\n computed: {\n getNetwork: function getNetwork() {\n return this.$state.getActiveNetwork();\n },\n isPersistingState: function isPersistingState() {\n return !!this.$state.persistence;\n },\n isRestrictedServer: function isRestrictedServer() {\n return !!this.$state.settings.restricted;\n },\n networksToShow: function networksToShow() {\n var _context;\n\n return (0, _filter.default)(_context = this.networks).call(_context, function (net) {\n return !net.hidden;\n });\n }\n },\n created: function created() {\n var _this = this;\n\n netProv.on('networks', function (networks) {\n _this.provided_networks = networks;\n });\n },\n methods: {\n clickAddNetwork: function clickAddNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.getNetworkFromAddress('');\n\n if (typeof network === 'undefined') {\n network = this.$state.addNetwork('Network', nick, {});\n }\n\n network.showServerBuffer('settings');\n },\n clickAppSettings: function clickAppSettings() {\n this.$state.$emit('active.component.toggle', _AppSettings.default);\n },\n hideStatebrowser: function hideStatebrowser() {\n this.$state.$emit('statebrowser.hide');\n },\n connectProvidedNetwork: function connectProvidedNetwork(pNet) {\n var net = this.$state.addNetwork(pNet.name, pNet.nick, {\n server: pNet.server,\n port: pNet.port,\n tls: pNet.tls,\n password: pNet.password\n });\n net.ircClient.connect();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowser\"]\r\nwindow._kiwi_exports.components.StateBrowser = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=style&index=0&lang=less&\"","import { render, staticRenderFns } from \"./UserBox.vue?vue&type=template&id=60d846c0&\"\nimport script from \"./UserBox.vue?vue&type=script&lang=js&\"\nexport * from \"./UserBox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UserBox.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-settings-advanced\"},[_c('div',{staticClass:\"kiwi-settings-advanced-notice\"},[_vm._v(_vm._s(_vm.$t('settings_advanced_header')))]),_c('form',{staticClass:\"u-form\"},[_c('div',{staticClass:\"kiwi-settings-advanced-filter-container\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.filterString),expression:\"filterString\"}],staticClass:\"u-input\",attrs:{\"placeholder\":_vm.$t('settings_advanced_filter')},domProps:{\"value\":(_vm.filterString)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.filterString=$event.target.value}}}),(!_vm.filterString)?_c('i',{staticClass:\"fa fa-search\",attrs:{\"aria-hidden\":\"true\"}}):_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){_vm.filterString = ''}}})]),_c('table',{staticClass:\"u-table kiwi-settings-advanced-table\",attrs:{\"cellspacing\":\"0\"}},[(_vm.filteredSettings.length === 0)?_c('tr',[_c('td',{staticClass:\"kiwi-settings-advanced-noresult\"},[_vm._v(\" \"+_vm._s(_vm.filterString)+\" - \"+_vm._s(_vm.$t('not_found'))+\" \")])]):_vm._l((_vm.filteredSettings),function(setting){return _c('tr',{key:setting.key,class:{'kiwi-advanced-setting': !setting.modified,\n 'kiwi-advanced-setting--modified': setting.modified,\n }},[_c('td',[_c('label',{attrs:{\"for\":'setting-' + setting.key}},[_vm._v(_vm._s(setting.key))])]),(setting.modified)?_c('td',[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.resetValue($event, setting.key)}}},[_vm._v(\" \"+_vm._s(_vm.$t('settings_advanced_reset'))+\" \"),_c('i',{staticClass:\"fa fa-undo\",staticStyle:{\"margin-left\":\"10px\"}})])]):_c('td'),_c('td',[(setting.type === 'boolean')?_c('input',{attrs:{\"id\":'setting-' + setting.key,\"type\":\"checkbox\"},domProps:{\"checked\":setting.val},on:{\"change\":function($event){return _vm.updateSetting($event, setting.key)}}}):(setting.type === 'number')?_c('input',{staticClass:\"u-input\",attrs:{\"id\":'setting-' + setting.key,\"type\":\"number\"},domProps:{\"value\":setting.val},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==13){ return null; }return $event.target.blur()},\"change\":function($event){return _vm.updateSetting($event, setting.key)},\"blur\":function($event){return _vm.updateSetting($event, setting.key)}}}):_c('input',{staticClass:\"u-input\",attrs:{\"id\":'setting-' + setting.key},domProps:{\"value\":setting.val},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==13){ return null; }return $event.target.blur()},\"blur\":function($event){return _vm.updateSetting($event, setting.key)}}})])])})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\n\nvar _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/values\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar htmlparser = _interopRequireWildcard(require(\"htmlparser2\"));\n\nvar Colours = _interopRequireWildcard(require(\"@/helpers/Colours\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('irc-input', {\n props: ['placeholder'],\n data: function data() {\n return {\n last_known_value: '',\n text_value: '',\n current_el: null,\n current_el_pos: 0,\n default_colour: null,\n code_map: (0, _create.default)(null)\n };\n },\n computed: {\n editor: function editor() {\n return this.$refs.editor;\n }\n },\n mounted: function mounted() {\n this.resetStyles();\n },\n methods: {\n onTextInput: function onTextInput(event) {\n // Mobile devices trigger a textInput event for things such as autocompletion\n // and suggested words. Unfortunately they end with a return character which\n // is not what we expect, so prevent the original event from inserting anything\n // and manually place it in with the current word.\n if (event.data[event.data.length - 1] === '\\n') {\n var _context;\n\n event.preventDefault();\n this.setCurrentWord((0, _trim.default)(_context = event.data).call(_context));\n }\n },\n onPaste: function onPaste(event) {\n var _this = this;\n\n event.preventDefault();\n\n if (typeof event.clipboardData !== 'undefined') {\n var _context2;\n\n var ignoreThisPaste = false;\n var clpData = event.clipboardData;\n (0, _forEach.default)(_context2 = clpData.types).call(_context2, function (type) {\n var ignoreTypes = ['Files', 'image'];\n (0, _forEach.default)(ignoreTypes).call(ignoreTypes, function (ig) {\n if ((0, _indexOf.default)(type).call(type, ig) > -1) {\n ignoreThisPaste = true;\n }\n });\n });\n\n if (ignoreThisPaste) {\n return;\n }\n\n document.execCommand('insertText', false, clpData.getData('text/plain'));\n } else {\n // IE11\n var clpText = window.clipboardData.getData('Text');\n\n if (!clpText) {\n return;\n }\n\n var selection = window.getSelection();\n var range = selection.getRangeAt(0);\n\n if (range) {\n range.deleteContents();\n range.insertNode(document.createTextNode(clpText));\n }\n }\n\n (0, _setTimeout2.default)(function () {\n _this.updateValueProps();\n }, 0);\n },\n onFocus: function onFocus(event) {\n // when the input is empty there are no children to remember the current colour\n // so upon regaining focus we must set the current colour again\n if (!this.getRawText() && this.default_colour) {\n this.setColour(this.default_colour.code, this.default_colour.colour);\n }\n\n this.$emit('focus', event);\n },\n updateValueProps: function updateValueProps() {\n var selection = window.getSelection();\n\n if (selection.rangeCount === 0) {\n return;\n }\n\n this.current_el_pos = selection.anchorOffset;\n this.current_el = selection.anchorNode;\n this.maybeEmitInput();\n },\n selectionToEnd: function selectionToEnd() {\n // Move the caret to the end\n var el = this.$refs.editor.lastChild || this.$refs.editor;\n this.current_el = el;\n\n if (el.nodeType === 3) {\n this.current_el_pos = el.length;\n } else {\n this.current_el_pos = 0;\n }\n },\n setValue: function setValue(newVal) {\n this.value = newVal;\n this.$refs.editor.innerHTML = newVal;\n },\n getValue: function getValue() {\n return this.$refs.editor.innerHTML;\n },\n maybeEmitInput: function maybeEmitInput() {\n var currentHtml = this.$refs.editor.innerHTML;\n\n if (this.last_known_value !== currentHtml) {\n this.$emit('input', currentHtml);\n this.last_known_value = currentHtml;\n }\n },\n buildIrcText: function buildIrcText() {\n var _this2 = this,\n _context6;\n\n var source = this.$refs.editor.innerHTML;\n var textValue = ''; // Toggles are IRC style and colour codes that should be reset at the end of\n // the current tag\n\n var toggles = [];\n\n function addToggle(t) {\n toggles[toggles.length - 1] += t;\n }\n\n function getToggles() {\n return toggles[toggles.length - 1];\n }\n\n var parser = new htmlparser.Parser({\n onopentag: function onopentag(name, attribs) {\n toggles.push('');\n var codeLookup = '';\n\n if (attribs.style) {\n var _context3, _context4, _context5;\n\n var match = attribs.style.match(/color: ([^;]+)/);\n\n if (match) {\n codeLookup = match[1];\n var mappedCode = _this2.code_map[codeLookup];\n\n if (!mappedCode) {\n // If we didn't have an IRC code for this colour, convert the\n // colour to its hex form and check if we have that instead\n var m = codeLookup.match(/^rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)$/);\n\n if (m) {\n var hex = Colours.rgb2hex({\n r: (0, _parseInt2.default)(m[1], 10),\n g: (0, _parseInt2.default)(m[2], 10),\n b: (0, _parseInt2.default)(m[3], 10)\n });\n mappedCode = _this2.code_map[hex];\n }\n }\n\n if (mappedCode) {\n textValue += '\\x03' + mappedCode;\n addToggle('\\x03' + mappedCode);\n }\n }\n\n if ((0, _indexOf.default)(_context3 = attribs.style).call(_context3, 'bold') > -1) {\n textValue += '\\x02';\n addToggle('\\x02');\n }\n\n if ((0, _indexOf.default)(_context4 = attribs.style).call(_context4, 'italic') > -1) {\n textValue += '\\x1d';\n addToggle('\\x1d');\n }\n\n if ((0, _indexOf.default)(_context5 = attribs.style).call(_context5, 'underline') > -1) {\n textValue += '\\x1f';\n addToggle('\\x1f');\n } // Welcome to the IE/Edge sucks section, time to do crazy things\n // IE11 doesnt support document.execCommand('styleWithCSS')\n // so we have individual nodes instead, which are handled below\n\n } else if (attribs.color) {\n // IE likes to remove spaces from rgb(1, 2, 3)\n // it also likes converting rgb to hex\n var _mappedCode = _this2.code_map[attribs.color] || _this2.code_map[attribs.color.replace(/,/g, ', ')] || _this2.code_map[Colours.hex2rgb(attribs.color)];\n\n if (_mappedCode) {\n textValue += '\\x03' + _mappedCode;\n addToggle('\\x03' + _mappedCode);\n }\n } else if (name === 'strong') {\n textValue += '\\x02';\n addToggle('\\x02');\n } else if (name === 'em') {\n textValue += '\\x1d';\n addToggle('\\x1d');\n } else if (name === 'u') {\n textValue += '\\x1f';\n addToggle('\\x1f');\n } else if (name === 'div' || name === 'br') {\n // divs and breaks are both considered newlines. For each line we need to\n // close all current toggles and then reopen them for the next so that the\n // styles continue .\n textValue += getToggles();\n textValue += '\\n';\n textValue += getToggles();\n }\n\n if (attribs.src && _this2.code_map[attribs.src]) {\n textValue += _this2.code_map[attribs.src];\n }\n },\n ontext: function ontext(text) {\n textValue += text;\n },\n onclosetag: function onclosetag(tagName) {\n textValue += getToggles();\n toggles.pop();\n }\n }, {\n decodeEntities: true\n });\n parser.write(source);\n parser.end(); // Firefox likes to add